Разнообразие способов применения и техник безопасности в Биткойне

Разнообразие способов применения и техник безопасности в Биткойне

Несколько месяцев назад я проводил встречу повышения квалификации хакеров совместно с Chaincode Labs, где мы рассматривали философию Биткойна, его безопасность, методы внедрения и технологии. Это первый из серии постов, в которых я собираюсь написать о некоторых вещах, что мы обсуждали, надеюсь, это сделает разработку протокола Биткойна более доступной и поможет очертить границы дискуссии вокруг системных изменений.

Перед тем, как я начну в общих чертах говорить о безопасности Биткойна или разработке протокола, нам нужно условиться об одной вещи: что ЕСТЬ Биткойн? Или, по крайней мере, какие ключевые свойства Биткойна мы должны защищать по мере того, как намереваемся изменить систему?

Конечно же, Биткойн это множество разных вещей — всё зависит от того, кого спрашиваете, но чтобы понять, что является критическим для его работы, нам нужно понять, почему люди используют Биткойн. Так или иначе, разрабатываемые свойства являются теми, о которых больше всего беспокоятся пользователи Биткойна, они не являются какими-то случайными дизайнерскими решениями, которые создатель Биткойна достал из шляпы.

Из всех свойств Биткойна, отсутствие необходимости в доверии, или способность использовать Биткойн лишь на основании открытого ПО, которое вы запускаете, до сих пор оставалось основным. Если точнее, интерес в Биткойне появляется почти эксклюзивно из желания избежать необходимости доверия к третьей стороне или группе третьих сторон. Вряд ли это будет для кого-то новостью, однако понимание почему именно отсутствие доверия так важно (и какие формы оно принимает) критично для построения и улучшения технологии Биткойн.

Споры о будущем Биткойна, возникавшие на протяжении одного или двух лет, часто описывались в качестве выбора между двумя крайностями – Биткойн является либо платёжной системой без необходимости в доверии, либо цифровым золотом без необходимости в доверии. Это далеко не самая точная характеристика, но она предоставляет полезную основу для понимания главных способов применения Биткойна — большинство из них могут быть сгруппированы в одну из этих двух распространённых категорий. Далее, модели доверия этих двух категорий сильно отличаются, и всегда кажется, что те кто отстаивает одну группу методов применения больше чем другую, чаще спорят о большей пользе одной модели доверия в сравнении с другой.

Использование Биткойна в качестве цифрового золота работает преимущественно посредством пользователей, полностью подтверждающих всю историю транзакций в цепи, доверяя лишь открытому софту, который они запускают самостоятельно, ради поддержки лимита в 21 миллион монет и подтверждения платежей. Бесспорно, необходимо некоторое доверие к майнерам чтобы убедиться, что целостность блокчейна не подверглась реорганизации, финансовые стимулы, включённые в систему, обеспечивают таким действиям ощутимые затраты. Конечно, чтобы убедиться, что вы не доверяете майнерам и пулам относительно идеальной безопасности их операций, пользователям нужно ждать большого количества «подтверждений» (к примеру, ждать неделю или две, временной отрезок, в рамках которого люди могут отреагировать на проблемы; всё же, в конце концов, это долгосрочная инвестиция так? Что такое одна дополнительная неделя ради покупки?).

Хотите ли вы цифровое золото потому что не доверяете способности вашего центробанка защитить вашу валюту от неконтролируемой инфляции (или хотите застраховаться от такого сценария) или желаете застраховаться от глобального финансового спада (и не хотите заботиться о хранении физического золота), или вам просто необходим защищённый средне-срочный плацдарм для переводов больших объёмов денег, тут является первостепенным отсутствие необходимости в доверии к кому-то, порог подтверждений вместе с необходимостью в выполнении сложных работ обеспечивают его.

В противоположность этому, способы применения Биткойна, сегодня подпадающие под категорию «платежной системы», почти всегда требуют от слегка укороченной модели доверия чтобы она была практичной, хотя и в разных степенях. Несомненно, платёжная система, требующая неделю или больше на завершение платежа не сможет соревноваться с более быстрыми альтернативами. Так что пользователи Биткойна полагаются на 6 (или меньше!) подтверждений для защиты своего платежа, потенциально открывая себя бесконечному количеству временных атак*. Но все таки эти способы применения остаются возможными только потому, что пользователи могут частично обойти элемент доверия третьим лицам используя Биткойн, даже если это потребует некоторого доверия к майнерам.

Если вы хотите получить систему, которая предоставляет нецензурируемые платежи через улучшения приватности, защищающие пользователей от захвата активов правительствами и от заморозки частными компаниями, то вы используете Биткойн потому что не хотите доверять третьей стороне. Если вам нужно место для хранения активов или система переводов с высоким уровнем программируемости и системами криптографического подтверждения владения, которых не найти нигде в остальном финансовом мире, Биткойн (или другие криптовалюты) является скорее всего вашей единственной возможностью обойти одиночные точки уязвимости в централизованном доверии третьим лицам. Даже если вы просто хотите дешёвую международную систему платежей, и сами сильно не беспокоитесь о необходимости в отсутствии доверия, в любом случае вы всё равно выберете Биткойн, так как хотите заиметь выгоды, ассоциированные с отправкой средств без участия единичной, централизованной стороны, а также из-за расходов (или цензуры) ассоциированных с недостатком конкуренции между подобными контрагентами.

Совершенно точно, отсутствие необходимости в доверии и способность работать без риска третьих сторон является критичным для функциональности Биткойна, однако отдельные пользователи (и способы применения) хотят одобрения разных уровней подобного доверия, и хотят верить лишь в отдельные компании. Когда принимаем решения относительно изменений в Биткойне, критично, чтобы мы, сообщество пользователей Биткойна, внимательно учли эффекты от таких изменений. Мы должны учитывать не только нашу собственную способность использовать биткойн, но также учитывать, как предлагаемые изменения могут востребовать от других доверять третьим лицам ещё пуще, нежели они это делают на данный момент.

Возьмём к примеру системы Proof of Stake. В то время, как их постоянно сравнивают с Биткойном, подобные системы так и не справились с проблемой первоначальной самозагрузки – новые пользователи (или пользователи, бывшие в оффлайне на протяжении длинного отрезка времени, обычно на протяжении недели или месяца) не способны найти консенсус сети без доверия к какой-то третьей стороне на определённом этапе. Тогда как это почти идеально срабатывает в некоторых способах применения Биткойна, пользователи, желающие положить биткойны на сохранение, а затем вернуться к ним через пол года чтобы потратить, будут иметь такой же уровень безопасности, как и мульти-подписываемый централизованный блокчейн!

Ввиду вышесказанного, доверие не должно запрещаться, за исключением тех случаев, где иначе оно начинает вредить. Многие инвесторы, сильно заботящиеся о свойстве дефицитности Биткойна, рады доверять централизованным третьим лицам в виде биткойн-обменников и «Биткойн-банков». Многие Биткойн пользователи, желающие быстрых платежей для средних и малых транзакций, рады доверять майнерам в достаточной степени. Такие отношения доверия, пока пользователи к ним не принуждаются (либо с помощью чёткого требования либо достаточно сильного финансового стимула), могут предоставить значительно лучший пользовательский опыт через ещё более быстрые, дешёвые и дружественные пользователю транзакции.

Пользователи, желающие доверять майнерам с всего лишь одним или тремя подтверждениями, скорее всего будут склонны также доверять и сети Лайтнинг, которая требует чтобы пользователь был в состоянии надёжно подтвердить транзакцию в течении дня или трёх.

Пользователи, доверяющие сегодняшнему количеству Биткойн-бизнесов или как минимум одному или двум из них, могут быть заинтересованы в функционале низких комиссий объединённого сайдчейна. Пользователи, ищущие такие возможности, как получение средств на реальное имя, могут даже держать некоторое количество денег в Биткойн-банке. Будучи выстроены поверх блокчейна Биткойна, а не прямо на нём, все эти эти системы могут предоставить своим клиентам значительные улучшения опыта использования. И это без использования доверия в большей мере, нежели это необходимо, по крайней мере пока их опора, блокчейн Биткойна, остаётся по-настоящему не нуждающимся в доверии.

К сожалению, все лучшие инженерные решения, которые имеются у нас относительно не нуждающихся в доверии Биткойновых и похожих на него систем, провалили попытку масштабироваться до хотя бы приемлемых транзакционных объёмов. Далее, для того чтобы убедиться что свойства о которых беспокоятся пользователи остаются на месте без необходимости в доверии к третьим лицам в вопросе их работы (например в доверии майнерам или разработчикам в том, что они не будут увеличивать лимит в 21 миллион монет), Биткойн должен меняться лишь посредством консенсуса его растущей базы пользователей. Это приводит к тому, что протокол Биткойна буксует в политике и социальных дебатах, нанося вред подвижности изменения системы.

Сложив паззл воедино мы увидим картинку, где Биткойн должен эволюционировать если он хочет сохранить свои свойства не нуждающегося в доверии инструмента, в то же время предоставляя рабочую систему для его многочисленных, преимущественно отличающихся, способов применения. Пользователи, которые не нуждаются в таком или не хотят иметь «свободный от доверия» Биткойн (например потому что они желают иметь платёжную систему, не требующую недели на подтверждение платежа) могут и должны использовать самую оптимальную, вписывающуюся в их требования модель доверия – будет ли это сеть Лайтнинг, или объединённый сайдчейн, или совместно-майнящийся сайдчейн, TumbleBit или доверенный «Биткойн банк». Пользователи, которые даже не хотят доверять майнерам, должны быть в состоянии это делать, проводя свои транзакции на блокчейне и ожидая неделями чтобы убедиться, что даже будущие атаки вычислительными мощностями не обратят их вспять (и выплачивать комиссии ради того, чтобы быть уверенными, что достаточное количество хеш-мощности обеспечивает безопасность их транзакций).

Для того, чтобы заинтересовать пользователей продолжать совершать платежи и верить в Биткойн как они всегда делали, сообщество пользователей Биткойна должно продолжать поддерживать позицию, что изменения в сети происходят исключительно при использовании механизма консенсуса среди постоянно расширяющейся базы пользователей. И наоборот, чтобы удержать Биткойн от ненужной стагнации, его сообщество должно хотеть формировать консенсус и вносить изменения, которые будут помогать используемой ими системе без возможности нанесения ей вреда посторонними и совершать поступки на основе здравомыслия, в какой форме бы ни пришлось это делать. Что важно, это означает, что все применяемые изменения, которые не навредят полезности Биткойна во множестве способов его применения, но в то же время при ожиданиях, что они окажутся полезны, должны быть приняты как можно скорее. Я всегда вдохновляюсь социальной упругостью Биткойн-сообщества, и продолжаю быть оптимистичным насчёт появления единого видения ради продолжения восходящего движения Биткойн-протокола.

*Посмотрите, например, на атаки на криптовалютные пулы в прошлом, совершённые через Border Gateway Protocol, позволившие атакующим на некоторый промежуток времени заполучить контроль над большей частью вычислительной мощности. Подобные атаки можно примерить на хостинг-провайдеров (то, чему криптовалютное пространство периодически становится свидетелем).  

Источник

 



Categories: Безопасность, Инвестиции, История, Криптофилософия

Tags: , ,

Leave a Reply

Оставьте первый комментарий!

Notify of
avatar
wpDiscuz