Биткойн: стресс-тест технологий

press-bitcoinВиртуальная валюта: математически элегантная, невероятно популярная, очень спорная. Обзорная статья авторитетного журнала «The Economist» исследует успех Биткойна и те препятствия, которые перед ним стоят.

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

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

Биткойн начинался в 2008, на самом пике финансового кризиса, с документа, опубликованного под псевдонимом Сатоши Накамото. Техническая документация, изложенная в документе, была реализована в программном обеспечении с открытым исходным кодом в следующем году. Проект первоначально прозябал в безвестности и по-настоящему популярен стал только в 2012 году. С тех пор он и не покидает передовые полосы новостей.

Теперь инвесторы финансируют стартапы, связанные с биткойном, а Министерство финансов Германии признало его “единицей учета”. Высокопоставленные официальные лица из комитета американского Сената 18 ноября этого года заявили, что использование Биткойна законно и выгодно для потребителей. Но было также немало случаев связанной с биткойн преступной деятельности, особенно уклонения от налогов. Биткойн-обменники и онлайн-кошельки нередко банкротились или закрывались. Silk Road, сайт где незаконные товары и услуги продавались за биткойны, был закрыт ФБР в октябре, но вскоре был вновь открылся как Silk Road 2.0. Цена Биткойна сильно колебалась, достигнув $250 в апреле 2013, затем упав до $70 в июле, и лишь в ноябре уверенно перевалила за $1000. Такой рост многим напоминает инвестиционный «пузырь».

Теперь, система Биткойн подвергается вполне серьезной нагрузке. Её коллективная вычислительная мощность в 250 раз превысила производительность мировых top 500 суперкомпьютеров вместе взятых: более 64,000 петафлоп. Успех Биткойна выявил и его три слабости. Он не настолько надежен и анонимен, как о нем говорят; “майнинговая” система, которая отвечает за выпуск биткойнов и обеспечивает целостность валюты, привела к вычислительной гонке вооружений; наконец, распределенная база данных о транзакциях становится слишком громоздкой.

Могут ли корректирующие механизмы, встроенные в Биткойн, компенсировать эти слабости, устранить недостатки, и вывести всю систему на траекторию устойчивого роста?

С технической точки зрения, Биткойн использует криптографию с открытым ключом, которая основана на создании и взаимодействии пары ключей: публичный ключ, который может свободно распространяться по сети, и секретный ключ, который следует хранить в полном секрете. Публичный ключ сродни номеру банковского счёта. При помощи своего секретного ключа, владелец биткойнов подтверждает любой платеж, «подписывая” содержимое транзакции. Кто угодно может проверить транзакцию, чтобы убедиться в том, что перевод подписан именно секретным ключом отправителя.  Все транзакции записываются в единую публичную бухгалтерскую книгу, которая называется «блокчейн».

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

Деньги оставляют следы

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

miner-coin

В системе Биткойн проверкой и проводкой транзакций занимаются пользователи с достаточным вычислительным ресурсом, также известные, как «майнеры». Они группируют новые транзакции в блоки и добавляют их предыдущим, время от времени получая за это вознаграждение в 25 биткойнов (около $25,000 на один блок, на момент написания статьи). Построить новый блок можно только выполняя сложные расчеты, которые включают новые транзакции и криптографический фундамент предыдущего блока. Этот результат сложно получить, но просто проверить, когда он получен одним из майнеров. Примерно раз в 10 минут, один из майнеров «решает блок» и получает вознаграждение размером 25 биткойнов, а новый блок присоединяется к цепочке. Затем процесс повторяется заново.

Добыча цифрового золота

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

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

Майнеры формируют группы, которые называют «пулами». «Пул» в переводе с английского — это бассейн, и сравнение вполне оправданно. Словно вода по множеству труб, вычислительная мощь многих распределенных по планете майнеров сливается воедино. Только коллективно они могут решить сложнейшую вычислительную задачу создания нового блока.

Вначале, майнинг осуществлялся на самых обычных компьютерах, но вскоре перекочевал на мощные графические ускорители, которые выполняют параллельные операции более эффективно. Затем майнеры достаточно быстро перешли на программируемые чипы (FPGA). А в прошлом году FPGA сменили чипы ASIC, разработанные специально для биткойн-вычислений.

Наш корреспондент посетил майнера, который возится со стойкой майнингового оборудования в своей скромной квартирке. Он говорит, что заказал своё оборудование ASIC несколькими месяцами ранее, но из-за того, что заказанный прибор прибыл позже чем ожидалось, он упустил настоящее «золотое дно». Несмотря на это, аппарат генерировал биткойны настолько быстро, что окупил себя за несколько дней. Однако сверхприбыль, добытая на ранних ASIC-комбайнах, имеет тенденцию быстро исчезать по мере распространения этого оборудования. Между июлем, когда оборудование прибыло, и серединой ноября, вычислительная мощность биткойн сети увеличилась в 25 раз, с 200 триллионов до 5 квадриллионов хэшей в секунду. Это случилось из-за выхода новейшего поколения более эффективных ASIC-комбайнов в октябре. Мощность увеличивалась в 2013 году настолько быстро, что это привело к полному исчезновению практики «вирусного майнинга», когда хакеры заражали чужие компютеры и заставляли их копать для себя монеты. Просто такая деятельность перестала быть выгодной.

Один из биткойн-разработчиков, Майк Хирн говорит, что эта мощность сети еще не предел. С каждым новым поколением ASIC, прибыльность майнинга быстро стремится к точке, когда он окупается только при дешевом или бесплатном электричестве. Благодаря этому, окупаемость майнинг-оборудования все время падает. Уже можно и не надеяться на приумножение своих денег в несколько раз, как это было возможно еще в начале этого года. Все признаки налицо, что майнинг быстро становится бизнесом, которым занимаются только профессионалы. Уже появились крупные «майнинговые фермы» с бесконечными рядами ASIC стоек. Однако, согласно программному коду системы Биткойн, вознаграждение за блок падает вдвое каждые 210,000 блоков, то есть примерно каждые четыре года. Где-то в 2017 году, с сегодняшнего значения в 25 приз за блок упадёт до 12.5 биткойн. Но если доходы от майнинга упадут вдвое, найдется ли достаточно желающих обеспечивать безопасность сети, достоверность и целостность цепочки блоков?

Нужны обновления

Чтобы предотвратить эту проблему, разработчики Биткойн сейчас пересматривают систему комиссий за биткойн-транзакции. Сейчас, взнос за транзакции исключительно добровольный и чаще всего фиксированный (около 5 центов за транзакцию) для ускорения подтверждения перевода. Это предлагается заменить на «рыночный» механизм, когда транзакции конкурируют за право быть включенными в блок, предлагая разный уровень комиссии.  “Узлы в распределенной сети должны пытаться получить компенсацию за то, что они проводят транзакции,” объясняет Хирн.

Растущая популярность Биткойна имеет и другие побочные эффекты. Каждый участник системы должен хранить копию базы данных блокчейн. А это на сегодняшний день аж 11 гигабайт, и количество требуемого места быстро растет. Уже один этот фактор ощутимо мешает повседневному использованию. Отец-основатель системы предлагал метод «обрезки» блокчейна, так чтобы в нем оставались лишь непотраченные суммы, но этот метод пока не реализован.

С резким увеличением количества транзакций в секунду, втиснуть всю финансовую активность в блок предустановленного размера стало проблематичным. А это значит, что требуется внести изменения в программный код Биткойн, увеличив количество транзакций в блоке. Назрела необходимость и некоторых других изменений. Следующая проблема относится к так называемым «полным узлам» сети Биткойн, которых десятки тысяч по всему миру. Эти узлы транслируют информацию о транзакциях и передают обновления блокчейна. Однако, как говорит Мэтью Грин, специалист по безопасности Университета Джона Хопкинса, система не предусматривает вознаграждение для этих узлов — вознаграждается только майнинг. Растущая стоимость обслуживания данных узлов может привести к их свертыванию и поставить способность системы Биткойн к масштабированию под угрозу.

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

Майк Хирн отмечает, что программисты, работающие над внесением изменений в программный код Биткойна, не имеют каких-либо преимуществ или специального уровня доступа к системе. Любые их изменения в программный код должны принять как минимум 80% узлов, чтобы они заработали. С этого момента, блоки будут приниматься по новым правилам. “Правила этой системы не выбиты в граните,” говорит он. Улучшения возможны, но только по воле всего сообщества. Биткойн поэтому является одновременно и гибким, и жестким.

До сих пор, Биткойн успешно преодолевал все препятствия. Но будет ли так и впредь: ведь растущая популярность — это и растущее давление? “В моем представлении он похож на механические часы,” говорит мистер Хирн. Биткойн работает как часы, но сам механизм хрупок, и в один прекрасный момент он может не выдержать давления и разбиться.

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

Источник: Economist



Categories: Безопасность, Технологии

Leave a Reply

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

Notify of
avatar
wpDiscuz