Ёпсель Бздынька
Креатор
- Регистрация
- 6 Авг 2016
- Сообщения
- 173
- Реакции
- 719
За короткое время криптовалютные технологии прошли огромный путь — от биткойна до смарт-контрактов и попыток создания децентрализованных организаций на блокчейне. Развитие движется семимильными шагами, скоро уже с трудом можно будет понять, что нам принесёт день завтрашний в этом, сбивающим с ног, потоке эволюции. Давайте попробуем разглядеть, куда же уносит нас его стремительное течение…
Криптотехнологии, несмотря на кажущийся прорыв и инновационность, на самом деле не появились из ниоткуда: они основаны на десятилетиях упорных исследований и разработок, приведших нас к нынешнему положению вещей. Оглянувшись на историю, мы можем понять мотивы, которые стояли за движением, породившим биткойн, и посмотреть глазами его сторонников в будущее.
До 1970-х годов, криптография в основном являлась прерогативой военных и спецслужб. Но ситуация в корне изменилась после двух публикаций, которые сделали криптографию достоянием общественности:
В следующие несколько лет, эти идеи стали основой нового зарождавшегося движения.
В конце 1992-го года Эрик Хьюз, Тимоти Мэй, и Джон Гилмор основали небольшую группу и стали каждый месяц встречаться в компании Гилмора «Cygnus Solutions», располагавшейся на побережье залива Сан-Франциско. Свою группу они в шутку называли «шифропанки«, как производное от слов «шифр» и «киберпанк».
Примерно в это же время был создан список рассылки «Шифропанки», и несколько месяцев спустя Эрик Хьюз опубликовал «Манифест шифропанка«.
В нём он пишет:
Например, у вас наверняка есть занавески на окнах, чтобы посторонние не заглядывали в ваш дом. Это не потому, что вы совершаете что-то противозаконное или аморальное, а просто потому, что у вас нет желания выставлять свою личную жизнь напоказ.
Список известных сторонников движения шифропанков и их достижения:
90-е годы ознаменовались чередой «криптовойн», вызванных тем, что правительство США пыталось подавить распространение сильной криптографии, сделав ее недоступной для обычных людей.
Криптография всегда была уделом военных и спецслужб, но теперь технологии шифрования были включены ещё и в Список Военных Материалов. Это наложило строгие ограничения на экспорт этих технологий.
Таким образом даже экспорт ключей SSL с длиной до 40 бит оказался под запретом, а все более короткие ключи могли быть взломаны за несколько дней с помощью всего лишь одного персонального компьютера.
Однако судебные иски от гражданских активистов и правозащитников, широкое распространение криптографического программного обеспечения далеко за пределы США, а также, обнаруженный Мэттом Блэйзом, бэкдор в «сертифицированной» микросхеме, разработанной АНБ для перехвата коммуникаций (Clipper chip), заставили правительство отступить.
В 1997-ом году Адам Бэк создал схему «доказательство работы» (Proof of Work) Hashcash, изначально разработанную как анти-спам механизм. При отправке писем теперь требовалось выполнять некоторые вычисления. Это делало спам-рассылки дорогими и затратными по времени.
Бэк предполагал, что Hashcash будет проще в использовании, чем DigiCash, разработанный ранее Дэвидом Чаумом, поскольку в нём не требовалось создания учетных записей. Hashcash даже имел некоторую защиту от «двойной траты«.
В 1998-ом году Вэй Дай опубликовал свою работу «b—money«. В ней он описал механизм, обеспечивающий исполнение контрактов между анонимными участниками. Он предложил две интересные концепции, которые кажутся нам знакомыми. Во-первых, это протокол, согласно которому каждый участник должен поддерживать отдельную базу данных о том, сколько денег принадлежит каждому пользователю системы, учётные единицы (внутренняя валюта) создаются на основе вычислительной сложности (предтеча PoW). Во-вторых, вариант первой системы, где учетные записи о том, кто сколько имеет денег хранятся некоторым подмножеством участников. Требуется также резервировать часть своих средств на специальном аккаунте для гарантии честности (подобие автоматического эскроу), это заставляет пользователей соблюдать правила системы.
Bitcoin использует первую из описанных концепций — «доказательство работы», в то время как некоторые другие криптовалюты реализовали вариант последней, которую мы теперь называем «доказательство доли» (Proof-Of-Stake).
2000-е годы
На протяжении многих лет шифропанки, проводя исследования и эксперименты, делились результатами своих работ друг с другом и с обществом, таким образом шаг за шагом, по кирпичикам выстраивая основы, необходимые для дальнейшего продвижения. Вскоре наступил переломный момент. Им стало создание шифропанковских денег в 2000-е годы.
В 2004 году Хэл Финни создал «многоразовое доказательство работы» (RPOW). Этот алгоритм был основан на ранее опубликованном Hashcash Адама Бэка. Единицами учёта RPOW стали уникальные криптографические маркеры. Их можно было использовать только один раз, так же, как неизрасходованные выходы транзакций в Bitcoin. Однако проверка и защита от «двойной траты» по-прежнему была завязана на центральный сервер.
В 2005 году Ник Сабо опубликовал работу, названную «bit gold«. Данное предложение стало дальнейшим развитием идеи RPOW Хэла Финни, и совсем немного не дотягивало до полноценных цифровых наличных. Сабо не смог предложить механизм, ограничивающий общее количество «цифрового золота». Он рассчитывал на то, что стоимость «голдов» будет оцениваться по-разному, на основе объема вычислительной работы, затраченной для их создания.
И, наконец, в 2008 году некто, под псевдонимом Сатоши Накамото, опубликовал свою брошюру о Bitcoin, в качестве основы своей идеи сославшись на Hashcash и b-money. В электронном письме Сатоши к Вэй Дай, он напрямую заявляет, что узнал о b-money от Адама Бэка.
Сатоши посвятил один из разделов своей брошюры теме приватности, вот что он пишет:
Bitcoin стал крепкой основой для всего движения шифропанков, позволив таким организациям, как WikiLeaks продолжать свою деятельность. Они смогли и дальше получать пожертвования в Bitcoin, даже после того, как были полностью отрезаны от традиционной банковской системы.
Борьба за Приватность
Несмотря на то, что экосистема биткойна сильно разрослась за последние несколько лет, о проблеме приватности, как будто бы уже все и забыли.
Многие ранние пользователи Bitcoin предполагали, что эта система даст им полную анонимность. Но как мы знаем, вопреки этому, правоохранительные органы всё же смогли найти способы деанонимизации Bitcoin-пользователей во время расследований.
Проект Open Bitcoin Privacy Project был создан с целью выявлять слабые стороны биткойна, обучать пользователей способам сохранить свою приватность, вырабатывать рекомендации по его правильному и безопасному использованию для биткойн-сервисов, которые позволяют купить и продать биткоин. Группа занимается моделированием угроз, пытаясь выявить векторы атак на приватность Bitcoin-кошельков.
Их модель в настоящее время выделяет следующие категории атакующих:
Самую большую угрозу приватности Bitcoin несут блокчейн-аналитики. Поскольку любая транзакция в сети становится общедоступной раз и навсегда, кто угодно в настоящем или будущем сможет иметь возможность анализировать блокчейн в целях раскрытия личностей отправителей и получателей.
Таким образом одно из самых надёжных правил сохранения приватности — никогда не использовать повторно один и тот же Bitcoin-адрес. Сатоши Накамото также акцентирует на этом внимание в своей брошюре о Bitcoin:
Множество систем и подходов были разработаны с целью повышения приватности пользователей. Например, Питер Вуйле, один из разработчиков Bitcoin Core, разработал BIP32. В котором предложил использовать иерархически детерминированные (HD-hierarchical deterministic) кошельки, что значительно упростило управление Bitcoin-адресами.
Хотя повышение приватности и не являлось основной мотивацией Вуйле, появление концепции HD-кошельков в разы упростило возможность избегать повторное использование адресов, поскольку данная технология позволяет легко создавать новые адреса, как для входящих, так и исходящих транзакций.
Адреса на эллиптической кривой Диффи-Хеллмана-Меркле (ECDHM — Elliptic Curve Diffie-Hellman-Merkle) — это схема использования адресов, которая также повышает уровень приватности. ECDHM-адреса могут быть общедоступны и использоваться отправителями и получателями для секретных транзакций на традиционные Bitcoin-адреса, которые блокчейн-аналитики не смогут отслеживать. В результате этого ECDHM-адреса могут быть «повторно использованы» без потери приватности, которая, как правило возникает именно из-за повторного использования Биткойн адреса.
Некоторые примеры схем ECDHM-адресов включают: Stealth-адреса, предложенные Питером Тоддом; многоразовые платежные коды Юстуса Ранвье, описанные в BIP47; нешироковещательный обмен адресами, описанный Джастином Ньютоном в BIP75 и другие.
Bitcoin-перемешивание (mixing) является более трудоёмким методом повысить свою приватность. Концепция перемешивания койнов с другими участниками аналогична концепции «перемешивания сетей», изобретенная Дэвидом Чаумом.
Было разработано несколько различных алгоритмов для перемешивания:
CoinJoin — впервые был предложен соучредителем Blockstream Грегори Максвеллом для перемешивания монет, CoinJoin по сути позволяет пользователям создавать транзакции со многими входами от нескольких людей, а затем отправлять койны нескольким получателям, которые потом совершают обратный перевод тем же самым людям, таким образом, «перемешивание» сумм транзакций вместе делает затруднительным точно выяснить, какие входы с какими выходами связаны.
JoinMarket — созданный разработчиком Крисом Белчером. JoinMarket позволяет держателям Bitcoin смешивать их монеты с помощью CoinJoin с монетами других пользователей за некоторую плату. Он использует своего рода смарт-контракт, так что ваши закрытые ключи никогда не покидают ваш компьютер, тем самым снижая риск потерь. Проще говоря, JoinMarket в децентрализованном стиле позволяет повысить приватность Bitcoin-сделок за небольшую плату.
CoinShuffle — децентрализованный протокол смешивания, разработанный группой исследователей из Университета Саар в Германии, CoinShuffle является улучшением CoinJoin. Он не нуждается в доверенной третьей стороны, чтобы собирать смешиваемые транзакции и, таким образом, не требует дополнительных комиссионных сборов.
CoinSwap — ещё одна концепция, разработанная Максвеллом, CoinSwap существенно отличается от CoinJoin тем, что использует серию из четырех транзакций с мультиподписью (двух платежей эскроу-депонирования и двух платежей освобождения эскроу-депозита), взаимного обмена койнов между двумя сторонами, не требующего доверия. Это гораздо менее эффективно, чем CoinJoin, но потенциально сможет обеспечить гораздо больше приватности, даже содействовать взаимообмену монет между различными блокчейнами.
В то время как перемешивание равносильно «попытке раствориться в толпе», часто толпа оказывается не слишком велика. Перемешивание следует рассматривать, как возможность запутать следы, но не обеспечить полную анонимность. Оно создаёт трудности для простого исследователя блокчейна в попытке отследить движение средств, но более изощрённые аналитики всё равно имеют возможность распутывать операции перемешивания.
Кристов Атлас (основатель проекта Open Bitcoin Privacy Project) опубликовал свои выводы о недостатках в клиентах CoinJoin еще в 2014 году.
Атлас отметил, что даже, обладая довольно примитивными инструментами анализа, он смог сгруппировать 69% входов и 53% выходов единой CoinJoin транзакции.
Существуют даже отдельные криптовалюты, которые были разработаны, чтобы обеспечить максимальную приватность транзакций.
Одним из таких примеров является Dash, криптовалюта, разработанная Эваном Даффилдом и Даниэлем Диасом. Она имеет функцию под названием «Darksend» — улучшенная версия CoinJoin. Два основных принципа — это использование кратных сумм транзакций и регламентированный временной интервал перемешиваний.
Dash-смешивание использует кратные номиналы — 0.1DASH, 1DASH, 10DASH и 100DASH, чтобы сделать группировку входов и выходов более запутанной и сложной. В каждой сессии перемешивания, пользователи указывают одни и те же номиналы для входов и выходов транзакций.
Для того, чтобы максимально повысить приватность путем перемешивания и сделать затруднительными «атаки по времени«, Darksend запускается автоматически через заданные промежутки времени.
Ещё одна, ориентированная на приватность, криптовалюта CryptoNote, была основана даже не на Bitcoin, а имеет собственную реализацию. Она была выпущена в 2014 году Николасом ван Саберхагеном. Позднее данная концепция была также реализована в нескольких других криптовалютах, таких как Monero, например. Основные нововведения — использование кольцевых подписей и уникальных одноразовых ключей.
Обычные цифровые подписи, подобные тем, что используются в Bitcoin, включают одну пару ключей — один открытый и один закрытый. Это позволяет владельцу адреса доказать, что он принадлежит ему, подписывая исходящие транзакции соответствующим закрытым ключом.
Кольцевые подписи были впервые предложены в 2001 году Ади Шамиром и несколькими другими исследователями. Они основывались на схеме групповой подписи, которая была впервые предложена в 1991 году Дэвидом Чаумом и Евгеном ван Хейстом. Кольцевые подписи объединяют людей в группы, каждая из которых имеет свой собственный открытый и закрытый ключ.
Основное различие с обычными схемами цифровой подписи в том, что подписывающему нужен единый закрытый ключ группы, таким образом проверяющий не может точно установить личность подписавшего.
В следствие этого, если вы столкнулись с кольцевой подписью, сделанной открытым ключом группы людей: Алисы, Боба и Кэрол, вы можете утверждать только то, что один из этих людей был подписчик, но не сможете точно знать, кому именно принадлежит транзакция. Данная схема добавляет ещё один уровень запутанности, что ещё больше затрудняет для блокчейн-аналитиков возможность связывать платежи с конкретными лицами по мере их прохождения через систему.
Довольно интересно, что кольцевые подписи были разработаны специально ради улучшения возможностей анонимных доносов. Они позволяют осуществлять утечку секретов без раскрытия конкретной личности, в то же время доказывая, что источником секретов является некая авторитетная личность или группа.
CryptoNote также спроектирован ради снижения рисков, связанных с повторным использованием ключа и возможностью отслеживать входы-выходы транзакций. Каждый адрес для оплаты является уникальным одноразовым ключом, полученным на основе данных одновременно и отправителя, и получателя. Как только вы используете кольцевую подпись на входящую транзакцию, она добавляет ещё больше неопределенности в отношении того, какой выход только что был потрачен.
Если блокчейн-аналитик попытается нарисовать граф использованных адресов, связывая их с помощью транзакций в блокчейне, это будет дерево, потому что ни один адрес никогда не используется дважды. Число возможных графов возрастает экспоненциально по мере добавления всё большего числа транзакций к графу, так как каждая кольцевая подпись создаёт двусмысленность относительно того, как и куда передаётся между адресами сумма транзакции.
Таким образом, невозможно точно быть уверенным в том, какой именно адрес отправил денежные средства на другой адрес.
В зависимости от размера кольца, использованного для подписи, неоднозначность для одной транзакции может изменяться от «одного из двух» до «одного из 1000″. Каждая сделка увеличивает энтропию и создаёт дополнительные трудности для блокчейн-аналитика.
Грядущие инновации
Несмотря на то, что у криптовалют существует ещё немало проблем с приватностью, будущее представляется в радужном цвете. День за днём шифропанки, не покладая рук, трудятся над улучшением и адаптацией своих алгоритмов.
Ожидается, что следующий шаг вперед в улучшении приватности будет связан с использованием «доказательства с нулевым знанием», которое было впервые предложено в 1985 году с целью расширения возможностей криптографических протоколов.
Алгоритм, первоначально предложенный Адамом Бэком в 2013 году как «биткойны с гомоморфным значением», был в последствии использован Максвеллом в его работе над Конфиденциальными транзакциями. Он использует «доказательство диапазона с нулевым знанием» для того, чтобы создавать биткойн-транзакции, в которых адреса и значения скрыты от всех, кроме участников транзакции.
Это огромный шаг вперёд сам по себе, но, в случае объединения «Конфиденциальных транзакций» с CoinJoin, и вовсе мы будем иметь возможность создать сервис для перемешивания, который разъединит любые связи между входами и выходами транзакций.
Когда Максвелл представил сайдчейн-элементы на встрече биткойн-разработчиков в Сан-Франциско, он сказал:
Недавно Максвеллу удалось провести первый успешный платёж с условием нулевого знания (ZKCP) в сети Bitcoin. ZKCP представляет собой протокол, который позволяет покупателю приобрести информацию у продавца с использованием Bitcoin без необходимости доверия ему. Приобретенная информация передаётся только в том случае, если произведена оплата. Покупателю и продавцу нет необходимости доверять друг другу или зависеть от арбитража третьей стороны.
Я писал о Zerocoin несколько лет назад и обращал внимание на технические проблемы, которые ему необходимо преодолеть, прежде чем систему можно будет использовать на практике. С тех пор исследователи сумели создать гораздо более эффективные способы доказательства и решить проблему доверия, которая была в первом поколении системы. Сейчас мы видим, что идеи, заложенные в Zerocoin, были воплощены в Zcash, во главе с Уилкокс-О’Хирном. Команда разработчиков Zerocoin практически полностью перешла в Zcash.
Zcash предлагает полную конфиденциальность платежей при сохранении децентрализованной сети и использовании открытого блокчейна. Zcash-транзакции автоматически скрывают отправителя, получателя и суммы всех транзакций в блокчейне. Только тот, кто владеет ключом для просмотра, сможет увидеть содержимое транзакции. Вследствие того, что содержимое Zcash-сделок зашифровано и является приватным, для этой системы пришлось разработать новый криптографический метод верификации платежей.
Zcash использует конструкцию доказательства с нулевым знанием, названную zk—SNARK, которая была создана командой опытных криптографов.
Вместо того, чтобы публично демонстрировать переводы и суммы транзакций, метаданные каждой транзакции шифруются, и для доказательства действительности транзакций используется zk-SNARK. Zcash имеет все шансы стать первой цифровой платежной системой, которая обеспечивает полную анонимность с «защитой от дурака». Т.е. не требуя от пользователя каких-то особых действий для повышения приватности, а имея полную приватность, благодаря своей архитектуре.
Добавим немного панка в шифропанк
Долгие десятилетия поисков и исследований привели к тому, что теперь отдельные люди и группы могут общаться и взаимодействовать друг с другом совершенно анонимно, благодаря компьютерным технологиям.
Два человека могут свободно обмениваться сообщениями, вести бизнес, заключать электронные контракты, даже не зная истинного имени или юридического адреса своего контрагента. Вполне естественно, что правительства будут вмешиваться в эти процессы, в попытках замедлить или остановить распространение данных технологий, ссылаясь на соображения национальной безопасности, использование технологий преступниками и возможности выхода общества из-под их контроля.
Мы должны защищать нашу приватности, если хотим, чтобы от неё хоть что-то осталось. Люди защищали свою приватность на протяжении многих веков при помощи шёпота, темноты, конвертов, закрытых дверей, тайных сигналов и курьеров.
До начала 20-го века, технологии не могли обеспечить высокую приватность, но и не давали никому возможности вести тотальную слежку.
Сейчас мы живем в мире, где тотальная слежка со стороны спецслужб стала чем-то само собой разумеющимся, а приватность — нет, даже несмотря на существование технологий, нацеленных на её повышение. Мы вступаем в фазу, которую многие называют Криптовойны 2.0.
Хотя шифропанки вышли победителями из Криптовойн 90-х, нельзя позволять себе почивать на лаврах. Зуко уже переживал провалы шифропанков в прошлом, и он предупреждает, что провал всё ещё снова возможен.
Шифропанки считают, что приватность является фундаментальным правом человека, в том числе неприкосновенность личной жизни со стороны правительств. Они понимают, что ослабляя безопасность системы по какой-либо причине, в том числе — из-за доступа «доверенных авторитетов», мы делаем систему небезопасной для всех, кто её использует.
Шифропанки пишут код, т.к. знают, что кто-то должен писать программы, чтобы тем самым защищать свою приватность. И они возлагают на себя эту миссию. Они публикуют свой код в открытом доступе так, чтобы любой мог изучать его, исследовать на наличие уязвимостей, дополнять и улучшать.
Их код является свободным и бесплатным для любого использования. Шифропанков абсолютно не волнует, если кто-то не одобряет их программное обеспечение. Они знают, что программы невозможно уничтожить, что распределённые сети с огромным количеством пользователей не смогут быть закрыты и остановлены кем-либо.
Изначальный список рассылки шифропанков, к сожалению, больше не существует, но сейчас нас стало ещё больше, чем когда-либо прежде. Мы обсуждаем наши идеи в разнообразных списках рассылок, чатах и социальных медиа-платформах. Ещё много работы предстоит сделать. В то же время был достигнут огромный прогресс в разработке и развёртывании систем, повышающих приватность, они всё ещё далеки от совершенства, и всё ещё слишком сложны для повседневного использования. Впереди нас ждёт ещё много сражений на пути к победе в Криптовойнах; так что беритесь за свои клавиатуры и давайте приближать нашу победу все вместе!
Источник:
Криптотехнологии, несмотря на кажущийся прорыв и инновационность, на самом деле не появились из ниоткуда: они основаны на десятилетиях упорных исследований и разработок, приведших нас к нынешнему положению вещей. Оглянувшись на историю, мы можем понять мотивы, которые стояли за движением, породившим биткойн, и посмотреть глазами его сторонников в будущее.
До 1970-х годов, криптография в основном являлась прерогативой военных и спецслужб. Но ситуация в корне изменилась после двух публикаций, которые сделали криптографию достоянием общественности:
- публикация американского правительства о стандарте шифрования данных DES (Data Encryption Standard)
- первая общедоступная работа по криптографии с открытым ключом, «Новые направления в криптографии» Уитфилда Диффи и Мартина Хеллмана.
В следующие несколько лет, эти идеи стали основой нового зарождавшегося движения.
В конце 1992-го года Эрик Хьюз, Тимоти Мэй, и Джон Гилмор основали небольшую группу и стали каждый месяц встречаться в компании Гилмора «Cygnus Solutions», располагавшейся на побережье залива Сан-Франциско. Свою группу они в шутку называли «шифропанки«, как производное от слов «шифр» и «киберпанк».
Примерно в это же время был создан список рассылки «Шифропанки», и несколько месяцев спустя Эрик Хьюз опубликовал «Манифест шифропанка«.
В нём он пишет:
Вы можете подумать: «Да. Это всё замечательно, но я же не какой-нибудь шифропанк, я ничего плохого не делаю. Мне нечего скрывать». Как отметил Брюс Шнайер, «нечего скрывать» — это аргумент, вытекающий из неверного понимания, что якобы «приватность» — это стремление скрыть что-то плохое.«В электронный век приватность является насущной потребоностью открытого общества. Приватность — это не секретность. «Приватность» — это, когда я не хочу, чтобы весь мир видел, что я делаю, в отличие от «секретности» — которая подразумевает, что вообще никто не должен знать о том, что я делаю. «Приватность» — это способность избирательно раскрывать себя миру».
Например, у вас наверняка есть занавески на окнах, чтобы посторонние не заглядывали в ваш дом. Это не потому, что вы совершаете что-то противозаконное или аморальное, а просто потому, что у вас нет желания выставлять свою личную жизнь напоказ.
Список известных сторонников движения шифропанков и их достижения:
- Джейкоб Аппельбаум: разработчик сети Tor
- Джулиан Ассанж: основатель WikiLeaks
- Адам Бэк: изобретатель Hashcash, сооснователь Blockstream
- Брэм Коэн: создатель BitTorrent
- Хэл Финни: автор PGP 2.0, создатель Многоразового Доказательства работы
- Тим Хадсон: соавтор SSLeay (предшественник OpenSSL)
- Paul Kocher: соавтор SSL 3.0
- Мокси Марлинспайк: основатель Open Whisper Systems (разработчик Signal)
- Стивен Шир: создатель концепции «свидетельство канарейки»
- Брюс Шнайер: широко известный исследователь безопасности
- Зуко Уилкокс-О‘Хирн: разработчик DigiCash, основатель Zcash
- Филипп Циммерман: Создатель PGP 1.0
90-е годы ознаменовались чередой «криптовойн», вызванных тем, что правительство США пыталось подавить распространение сильной криптографии, сделав ее недоступной для обычных людей.
Криптография всегда была уделом военных и спецслужб, но теперь технологии шифрования были включены ещё и в Список Военных Материалов. Это наложило строгие ограничения на экспорт этих технологий.
Таким образом даже экспорт ключей SSL с длиной до 40 бит оказался под запретом, а все более короткие ключи могли быть взломаны за несколько дней с помощью всего лишь одного персонального компьютера.
Однако судебные иски от гражданских активистов и правозащитников, широкое распространение криптографического программного обеспечения далеко за пределы США, а также, обнаруженный Мэттом Блэйзом, бэкдор в «сертифицированной» микросхеме, разработанной АНБ для перехвата коммуникаций (Clipper chip), заставили правительство отступить.
В 1997-ом году Адам Бэк создал схему «доказательство работы» (Proof of Work) Hashcash, изначально разработанную как анти-спам механизм. При отправке писем теперь требовалось выполнять некоторые вычисления. Это делало спам-рассылки дорогими и затратными по времени.
Бэк предполагал, что Hashcash будет проще в использовании, чем DigiCash, разработанный ранее Дэвидом Чаумом, поскольку в нём не требовалось создания учетных записей. Hashcash даже имел некоторую защиту от «двойной траты«.
В 1998-ом году Вэй Дай опубликовал свою работу «b—money«. В ней он описал механизм, обеспечивающий исполнение контрактов между анонимными участниками. Он предложил две интересные концепции, которые кажутся нам знакомыми. Во-первых, это протокол, согласно которому каждый участник должен поддерживать отдельную базу данных о том, сколько денег принадлежит каждому пользователю системы, учётные единицы (внутренняя валюта) создаются на основе вычислительной сложности (предтеча PoW). Во-вторых, вариант первой системы, где учетные записи о том, кто сколько имеет денег хранятся некоторым подмножеством участников. Требуется также резервировать часть своих средств на специальном аккаунте для гарантии честности (подобие автоматического эскроу), это заставляет пользователей соблюдать правила системы.
Bitcoin использует первую из описанных концепций — «доказательство работы», в то время как некоторые другие криптовалюты реализовали вариант последней, которую мы теперь называем «доказательство доли» (Proof-Of-Stake).
2000-е годы
На протяжении многих лет шифропанки, проводя исследования и эксперименты, делились результатами своих работ друг с другом и с обществом, таким образом шаг за шагом, по кирпичикам выстраивая основы, необходимые для дальнейшего продвижения. Вскоре наступил переломный момент. Им стало создание шифропанковских денег в 2000-е годы.
В 2004 году Хэл Финни создал «многоразовое доказательство работы» (RPOW). Этот алгоритм был основан на ранее опубликованном Hashcash Адама Бэка. Единицами учёта RPOW стали уникальные криптографические маркеры. Их можно было использовать только один раз, так же, как неизрасходованные выходы транзакций в Bitcoin. Однако проверка и защита от «двойной траты» по-прежнему была завязана на центральный сервер.
В 2005 году Ник Сабо опубликовал работу, названную «bit gold«. Данное предложение стало дальнейшим развитием идеи RPOW Хэла Финни, и совсем немного не дотягивало до полноценных цифровых наличных. Сабо не смог предложить механизм, ограничивающий общее количество «цифрового золота». Он рассчитывал на то, что стоимость «голдов» будет оцениваться по-разному, на основе объема вычислительной работы, затраченной для их создания.
И, наконец, в 2008 году некто, под псевдонимом Сатоши Накамото, опубликовал свою брошюру о Bitcoin, в качестве основы своей идеи сославшись на Hashcash и b-money. В электронном письме Сатоши к Вэй Дай, он напрямую заявляет, что узнал о b-money от Адама Бэка.
Сатоши посвятил один из разделов своей брошюры теме приватности, вот что он пишет:
Сатоши Накамото дал мощный толчок прогрессу в сфере криптовалют. Он передал в руки общественности свою систему уже в полностью рабочем состоянии. Благодаря тому, что исходные коды были опубликованы в открытом виде, теперь любой может их использовать, расширять функционал, вносить улучшения и даже делать собственные ответвления (форки), создавая на базе Bitcoin криптовалюты с произвольно заданными правилами и параметрами.«Традиционная банковская модель поддерживает необходимый уровень конфиденциальности, предоставляя доступ к информации лишь сторонам-участницам и доверенному третьему лицу. Необходимость открытой публикации транзакций исключает такой подход, однако приватность по-прежнему можно сохранить, если публичные ключи будут анонимными. Открытой будет информация о том, что кто-то отправил кому-то некоторую сумму, но без привязки к конкретным личностям. Столько же данных раскрывается и на фондовых биржах, которые публикуют время и объем частных сделок, не указывая, между кем именно они были совершены.»
Bitcoin стал крепкой основой для всего движения шифропанков, позволив таким организациям, как WikiLeaks продолжать свою деятельность. Они смогли и дальше получать пожертвования в Bitcoin, даже после того, как были полностью отрезаны от традиционной банковской системы.
Борьба за Приватность
Несмотря на то, что экосистема биткойна сильно разрослась за последние несколько лет, о проблеме приватности, как будто бы уже все и забыли.
Многие ранние пользователи Bitcoin предполагали, что эта система даст им полную анонимность. Но как мы знаем, вопреки этому, правоохранительные органы всё же смогли найти способы деанонимизации Bitcoin-пользователей во время расследований.
Проект Open Bitcoin Privacy Project был создан с целью выявлять слабые стороны биткойна, обучать пользователей способам сохранить свою приватность, вырабатывать рекомендации по его правильному и безопасному использованию для биткойн-сервисов, которые позволяют купить и продать биткоин. Группа занимается моделированием угроз, пытаясь выявить векторы атак на приватность Bitcoin-кошельков.
Их модель в настоящее время выделяет следующие категории атакующих:
- Блокчейн-аналитики — пытаются связывать различные сделки с одной и той же личностью, отыскивая одинаковые значения сумм в потоке транзакций.
- Сетевые аналитики — пытаются связать между собой различные транзакции и биткойн-адреса вместе на основе сетевых адресов (IP-адрес), мониторя активность узлов сети.
- Физические злоумышленники — пытаются получить доступ к физическому устройству, на котором хранится кошелёк, чтобы управлять им или произвести по нему анализ.
- Участники транзакции — создают транзакции, которые помогают им отслеживать и деанонимизировать активность на блокчейне.
- Сервисы онлайн-кошельков — могут требовать личную информацию от пользователей, а затем наблюдать за их операциями.
Самую большую угрозу приватности Bitcoin несут блокчейн-аналитики. Поскольку любая транзакция в сети становится общедоступной раз и навсегда, кто угодно в настоящем или будущем сможет иметь возможность анализировать блокчейн в целях раскрытия личностей отправителей и получателей.
Таким образом одно из самых надёжных правил сохранения приватности — никогда не использовать повторно один и тот же Bitcoin-адрес. Сатоши Накамото также акцентирует на этом внимание в своей брошюре о Bitcoin:
Последние инновации«Дополнительной защитой будет являться генерация новой пары «открытый/закрытый ключ» для каждой транзакции: это предотвратит связывание различных платежей с их общим отправителем или адресатом. Некоторого публичного связывания всё же не избежать: транзакции с несколькими входами доказывают, что эти суммы принадлежат одному лицу. Риск состоит в том, что раскрытие личности владельца ключа может привести к раскрытию и всех принадлежащих ему транзакций»
Множество систем и подходов были разработаны с целью повышения приватности пользователей. Например, Питер Вуйле, один из разработчиков Bitcoin Core, разработал BIP32. В котором предложил использовать иерархически детерминированные (HD-hierarchical deterministic) кошельки, что значительно упростило управление Bitcoin-адресами.
Хотя повышение приватности и не являлось основной мотивацией Вуйле, появление концепции HD-кошельков в разы упростило возможность избегать повторное использование адресов, поскольку данная технология позволяет легко создавать новые адреса, как для входящих, так и исходящих транзакций.
Адреса на эллиптической кривой Диффи-Хеллмана-Меркле (ECDHM — Elliptic Curve Diffie-Hellman-Merkle) — это схема использования адресов, которая также повышает уровень приватности. ECDHM-адреса могут быть общедоступны и использоваться отправителями и получателями для секретных транзакций на традиционные Bitcoin-адреса, которые блокчейн-аналитики не смогут отслеживать. В результате этого ECDHM-адреса могут быть «повторно использованы» без потери приватности, которая, как правило возникает именно из-за повторного использования Биткойн адреса.
Некоторые примеры схем ECDHM-адресов включают: Stealth-адреса, предложенные Питером Тоддом; многоразовые платежные коды Юстуса Ранвье, описанные в BIP47; нешироковещательный обмен адресами, описанный Джастином Ньютоном в BIP75 и другие.
Bitcoin-перемешивание (mixing) является более трудоёмким методом повысить свою приватность. Концепция перемешивания койнов с другими участниками аналогична концепции «перемешивания сетей», изобретенная Дэвидом Чаумом.
Было разработано несколько различных алгоритмов для перемешивания:
CoinJoin — впервые был предложен соучредителем Blockstream Грегори Максвеллом для перемешивания монет, CoinJoin по сути позволяет пользователям создавать транзакции со многими входами от нескольких людей, а затем отправлять койны нескольким получателям, которые потом совершают обратный перевод тем же самым людям, таким образом, «перемешивание» сумм транзакций вместе делает затруднительным точно выяснить, какие входы с какими выходами связаны.
JoinMarket — созданный разработчиком Крисом Белчером. JoinMarket позволяет держателям Bitcoin смешивать их монеты с помощью CoinJoin с монетами других пользователей за некоторую плату. Он использует своего рода смарт-контракт, так что ваши закрытые ключи никогда не покидают ваш компьютер, тем самым снижая риск потерь. Проще говоря, JoinMarket в децентрализованном стиле позволяет повысить приватность Bitcoin-сделок за небольшую плату.
CoinShuffle — децентрализованный протокол смешивания, разработанный группой исследователей из Университета Саар в Германии, CoinShuffle является улучшением CoinJoin. Он не нуждается в доверенной третьей стороны, чтобы собирать смешиваемые транзакции и, таким образом, не требует дополнительных комиссионных сборов.
CoinSwap — ещё одна концепция, разработанная Максвеллом, CoinSwap существенно отличается от CoinJoin тем, что использует серию из четырех транзакций с мультиподписью (двух платежей эскроу-депонирования и двух платежей освобождения эскроу-депозита), взаимного обмена койнов между двумя сторонами, не требующего доверия. Это гораздо менее эффективно, чем CoinJoin, но потенциально сможет обеспечить гораздо больше приватности, даже содействовать взаимообмену монет между различными блокчейнами.
В то время как перемешивание равносильно «попытке раствориться в толпе», часто толпа оказывается не слишком велика. Перемешивание следует рассматривать, как возможность запутать следы, но не обеспечить полную анонимность. Оно создаёт трудности для простого исследователя блокчейна в попытке отследить движение средств, но более изощрённые аналитики всё равно имеют возможность распутывать операции перемешивания.
Кристов Атлас (основатель проекта Open Bitcoin Privacy Project) опубликовал свои выводы о недостатках в клиентах CoinJoin еще в 2014 году.
Атлас отметил, что даже, обладая довольно примитивными инструментами анализа, он смог сгруппировать 69% входов и 53% выходов единой CoinJoin транзакции.
Существуют даже отдельные криптовалюты, которые были разработаны, чтобы обеспечить максимальную приватность транзакций.
Одним из таких примеров является Dash, криптовалюта, разработанная Эваном Даффилдом и Даниэлем Диасом. Она имеет функцию под названием «Darksend» — улучшенная версия CoinJoin. Два основных принципа — это использование кратных сумм транзакций и регламентированный временной интервал перемешиваний.
Dash-смешивание использует кратные номиналы — 0.1DASH, 1DASH, 10DASH и 100DASH, чтобы сделать группировку входов и выходов более запутанной и сложной. В каждой сессии перемешивания, пользователи указывают одни и те же номиналы для входов и выходов транзакций.
Для того, чтобы максимально повысить приватность путем перемешивания и сделать затруднительными «атаки по времени«, Darksend запускается автоматически через заданные промежутки времени.
Ещё одна, ориентированная на приватность, криптовалюта CryptoNote, была основана даже не на Bitcoin, а имеет собственную реализацию. Она была выпущена в 2014 году Николасом ван Саберхагеном. Позднее данная концепция была также реализована в нескольких других криптовалютах, таких как Monero, например. Основные нововведения — использование кольцевых подписей и уникальных одноразовых ключей.
Обычные цифровые подписи, подобные тем, что используются в Bitcoin, включают одну пару ключей — один открытый и один закрытый. Это позволяет владельцу адреса доказать, что он принадлежит ему, подписывая исходящие транзакции соответствующим закрытым ключом.
Кольцевые подписи были впервые предложены в 2001 году Ади Шамиром и несколькими другими исследователями. Они основывались на схеме групповой подписи, которая была впервые предложена в 1991 году Дэвидом Чаумом и Евгеном ван Хейстом. Кольцевые подписи объединяют людей в группы, каждая из которых имеет свой собственный открытый и закрытый ключ.
Основное различие с обычными схемами цифровой подписи в том, что подписывающему нужен единый закрытый ключ группы, таким образом проверяющий не может точно установить личность подписавшего.
В следствие этого, если вы столкнулись с кольцевой подписью, сделанной открытым ключом группы людей: Алисы, Боба и Кэрол, вы можете утверждать только то, что один из этих людей был подписчик, но не сможете точно знать, кому именно принадлежит транзакция. Данная схема добавляет ещё один уровень запутанности, что ещё больше затрудняет для блокчейн-аналитиков возможность связывать платежи с конкретными лицами по мере их прохождения через систему.
Довольно интересно, что кольцевые подписи были разработаны специально ради улучшения возможностей анонимных доносов. Они позволяют осуществлять утечку секретов без раскрытия конкретной личности, в то же время доказывая, что источником секретов является некая авторитетная личность или группа.
CryptoNote также спроектирован ради снижения рисков, связанных с повторным использованием ключа и возможностью отслеживать входы-выходы транзакций. Каждый адрес для оплаты является уникальным одноразовым ключом, полученным на основе данных одновременно и отправителя, и получателя. Как только вы используете кольцевую подпись на входящую транзакцию, она добавляет ещё больше неопределенности в отношении того, какой выход только что был потрачен.
Если блокчейн-аналитик попытается нарисовать граф использованных адресов, связывая их с помощью транзакций в блокчейне, это будет дерево, потому что ни один адрес никогда не используется дважды. Число возможных графов возрастает экспоненциально по мере добавления всё большего числа транзакций к графу, так как каждая кольцевая подпись создаёт двусмысленность относительно того, как и куда передаётся между адресами сумма транзакции.
Таким образом, невозможно точно быть уверенным в том, какой именно адрес отправил денежные средства на другой адрес.
В зависимости от размера кольца, использованного для подписи, неоднозначность для одной транзакции может изменяться от «одного из двух» до «одного из 1000″. Каждая сделка увеличивает энтропию и создаёт дополнительные трудности для блокчейн-аналитика.
Грядущие инновации
Несмотря на то, что у криптовалют существует ещё немало проблем с приватностью, будущее представляется в радужном цвете. День за днём шифропанки, не покладая рук, трудятся над улучшением и адаптацией своих алгоритмов.
Ожидается, что следующий шаг вперед в улучшении приватности будет связан с использованием «доказательства с нулевым знанием», которое было впервые предложено в 1985 году с целью расширения возможностей криптографических протоколов.
Алгоритм, первоначально предложенный Адамом Бэком в 2013 году как «биткойны с гомоморфным значением», был в последствии использован Максвеллом в его работе над Конфиденциальными транзакциями. Он использует «доказательство диапазона с нулевым знанием» для того, чтобы создавать биткойн-транзакции, в которых адреса и значения скрыты от всех, кроме участников транзакции.
Это огромный шаг вперёд сам по себе, но, в случае объединения «Конфиденциальных транзакций» с CoinJoin, и вовсе мы будем иметь возможность создать сервис для перемешивания, который разъединит любые связи между входами и выходами транзакций.
Когда Максвелл представил сайдчейн-элементы на встрече биткойн-разработчиков в Сан-Франциско, он сказал:
Максвелл явно чувствует то же самое по поводу приватности в Bitcoin и хочет сделать так, чтобы у нас изначально были «Конфиденциальные транзакции». Мы уже видели, что Blockstream реализует конфиденциальные транзакции внутри сайдчейна Liquid, чтобы маскировать переводы между биржами.«Одно из самых больших сожалений для инженеров-ветеранов IETF — это то, что Интернет с самого начала не был построен на основе шифрования, как метода передачи данных по умолчанию»
Недавно Максвеллу удалось провести первый успешный платёж с условием нулевого знания (ZKCP) в сети Bitcoin. ZKCP представляет собой протокол, который позволяет покупателю приобрести информацию у продавца с использованием Bitcoin без необходимости доверия ему. Приобретенная информация передаётся только в том случае, если произведена оплата. Покупателю и продавцу нет необходимости доверять друг другу или зависеть от арбитража третьей стороны.
Я писал о Zerocoin несколько лет назад и обращал внимание на технические проблемы, которые ему необходимо преодолеть, прежде чем систему можно будет использовать на практике. С тех пор исследователи сумели создать гораздо более эффективные способы доказательства и решить проблему доверия, которая была в первом поколении системы. Сейчас мы видим, что идеи, заложенные в Zerocoin, были воплощены в Zcash, во главе с Уилкокс-О’Хирном. Команда разработчиков Zerocoin практически полностью перешла в Zcash.
Zcash предлагает полную конфиденциальность платежей при сохранении децентрализованной сети и использовании открытого блокчейна. Zcash-транзакции автоматически скрывают отправителя, получателя и суммы всех транзакций в блокчейне. Только тот, кто владеет ключом для просмотра, сможет увидеть содержимое транзакции. Вследствие того, что содержимое Zcash-сделок зашифровано и является приватным, для этой системы пришлось разработать новый криптографический метод верификации платежей.
Zcash использует конструкцию доказательства с нулевым знанием, названную zk—SNARK, которая была создана командой опытных криптографов.
Вместо того, чтобы публично демонстрировать переводы и суммы транзакций, метаданные каждой транзакции шифруются, и для доказательства действительности транзакций используется zk-SNARK. Zcash имеет все шансы стать первой цифровой платежной системой, которая обеспечивает полную анонимность с «защитой от дурака». Т.е. не требуя от пользователя каких-то особых действий для повышения приватности, а имея полную приватность, благодаря своей архитектуре.
Добавим немного панка в шифропанк
Долгие десятилетия поисков и исследований привели к тому, что теперь отдельные люди и группы могут общаться и взаимодействовать друг с другом совершенно анонимно, благодаря компьютерным технологиям.
Два человека могут свободно обмениваться сообщениями, вести бизнес, заключать электронные контракты, даже не зная истинного имени или юридического адреса своего контрагента. Вполне естественно, что правительства будут вмешиваться в эти процессы, в попытках замедлить или остановить распространение данных технологий, ссылаясь на соображения национальной безопасности, использование технологий преступниками и возможности выхода общества из-под их контроля.
Мы должны защищать нашу приватности, если хотим, чтобы от неё хоть что-то осталось. Люди защищали свою приватность на протяжении многих веков при помощи шёпота, темноты, конвертов, закрытых дверей, тайных сигналов и курьеров.
До начала 20-го века, технологии не могли обеспечить высокую приватность, но и не давали никому возможности вести тотальную слежку.
Сейчас мы живем в мире, где тотальная слежка со стороны спецслужб стала чем-то само собой разумеющимся, а приватность — нет, даже несмотря на существование технологий, нацеленных на её повышение. Мы вступаем в фазу, которую многие называют Криптовойны 2.0.
Хотя шифропанки вышли победителями из Криптовойн 90-х, нельзя позволять себе почивать на лаврах. Зуко уже переживал провалы шифропанков в прошлом, и он предупреждает, что провал всё ещё снова возможен.
Шифропанки считают, что приватность является фундаментальным правом человека, в том числе неприкосновенность личной жизни со стороны правительств. Они понимают, что ослабляя безопасность системы по какой-либо причине, в том числе — из-за доступа «доверенных авторитетов», мы делаем систему небезопасной для всех, кто её использует.
Шифропанки пишут код, т.к. знают, что кто-то должен писать программы, чтобы тем самым защищать свою приватность. И они возлагают на себя эту миссию. Они публикуют свой код в открытом доступе так, чтобы любой мог изучать его, исследовать на наличие уязвимостей, дополнять и улучшать.
Их код является свободным и бесплатным для любого использования. Шифропанков абсолютно не волнует, если кто-то не одобряет их программное обеспечение. Они знают, что программы невозможно уничтожить, что распределённые сети с огромным количеством пользователей не смогут быть закрыты и остановлены кем-либо.
Изначальный список рассылки шифропанков, к сожалению, больше не существует, но сейчас нас стало ещё больше, чем когда-либо прежде. Мы обсуждаем наши идеи в разнообразных списках рассылок, чатах и социальных медиа-платформах. Ещё много работы предстоит сделать. В то же время был достигнут огромный прогресс в разработке и развёртывании систем, повышающих приватность, они всё ещё далеки от совершенства, и всё ещё слишком сложны для повседневного использования. Впереди нас ждёт ещё много сражений на пути к победе в Криптовойнах; так что беритесь за свои клавиатуры и давайте приближать нашу победу все вместе!
Источник:
Для просмотра скрытого содержимого вам нужно войти или зарегистрироваться.