Bitcoin и вопросы анонимности

Bitcoin и вопросы анонимности

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

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

Взгляните на самые популярные способы работы с Bitcoin, не раскрывая своего имени.

CoinJoin

CoinJoin, решения, которое увеличивает конфиденциальность биткойн-транзакций за счет использования совместных транзакций.

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

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

Coinjoin для «объединенных транзакций»

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

В 2013 году было распространено мнение, что совместное использование несколькими кошельками одной транзакции подразумевает, что одно лицо отвечает за кошельки, присутствующие в транзакции. Здесь на помощь приходит gmaxwell: почему разные люди не могут объединиться, чтобы объединить свои переводы в одной транзакции?

Именно эта концепция используется в Coinjoin: несколько пользователей объединяются для выполнения одной совместной транзакции, тем самым разрывая связь между отправителем и получателем перевода.

Преимущества

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

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

Недостатки

Транзакции CoinJoin можно сравнить со смешиванием: идея не в том, чтобы определить, какой эмитент и какой получатель подключены.

У этого есть два основных недостатка, которые удалось преодолеть другим протоколам анонимности:

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

Как мы видели, это решение можно использовать в Биткойнах, хотя оно и имеет недостатки. Другие криптовалюты также приняли эту концепцию и адаптировали ее, например Dash (DASH), PrivateSend которой является модифицированной версией CoinJoin. Но существует еще одно достаточно популярное решение — CryptoNote.

CryptoNote: протокол анонимных транзакций

CryptoNote — это протокол, который с 2013 года используется для повышения конфиденциальности транзакций за счет использования уникальных адресов и кольцевых подписей.

CryptoNote был предложен Николасом ван Саберхагеном в техническом документе «CryptoNote V2.0» в октябре 2013 года.

В отличие от Coinjoin, идея здесь состоит в том, чтобы создать новый протокол, который преодолеет недостатки Bitcoin, добавив при этом функции, обеспечивающие анонимность и конфиденциальность его пользователей. Целью протокола является выполнение двух условий для транзакций:

  1. Невозможность отслеживания: для каждой входящей транзакции все возможные отправители равновероятны.
  2. Неассоциативность: для двух исходящих транзакций невозможно доказать, что они были отправлены одному и тому же лицу.

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

Для двух условий, представленных выше, были использованы и объединены несколько технологий для достижения общей цели.

Использование уникальных адресов

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

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

Таким образом, ни один наблюдатель не может определить, были ли транзакции отправлены на конкретный адрес или связывать два адреса вместе.

Фирменные кольца

В дополнение к этому CryptoNote использует одноразовую кольцевую подпись — чтобы гарантировать невозможность отслеживания. Этот подход в некотором смысле сопоставим с тем, как работает Coinjoin: кольцевая подпись позволяет вам подписывать транзакцию с N открытыми ключами и одним закрытым ключом, соответствующим одному из N открытых ключей. Эти открытые ключи выбираются из всех выходов блокчейна, имеющих ту же сумму, что и потраченный выход.

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

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

CryptoNote используется во многих криптовалютах, таких как Monero или Bytecoin, при этом известно несколько вариантов реализации. Например, в случае с Monero в январе 2017 года протокол был улучшен для интеграции Ring CT. Это улучшает кольцевые подписи, позволяя с разумной эффективностью скрывать суммы, источники и назначения транзакций.

Ну и последнее, о чем стоит упомянуть — это MimbleWimble.

Что такое MimbleWimble

MimbleWimble — это протокол, созданный анонимным разработчиком, с упором на конфиденциальность транзакций. Это, в частности, протокол, используемый многообещающими криптовалютами BEAM и GRIN.

MimbleWimble был предложенный в 2016 году анонимным разработчиком, подписавшим технический документ по имени Том Элвис Риддл. Это отсылка к злому герою Гарри Поттера, и эта анонимность напоминает нам Сатоши Накамото и Bitcoin.

MimbleWimble не предназначен для изобретения велосипеда, его протокол стремится гарантировать анонимность за счет объединения двух методов: Coinjoin и конфиденциальных транзакций.

Coinjoin и конфиденциальные транзакции

Как мы объясняли выше, Coinjoin позволяет нарушить связь между отправителем и получателем транзакции, объединив большое количество переводов в одну транзакцию. Однако он не позволяет скрыть суммы транзакций.

Именно здесь вступают в силу конфиденциальные транзакции. Этот тип транзакции позволяет раскрыть сумму соответствующей транзакции только ее участникам. Это достигается за счет использования обязательства Педерсена, позволяющего пользователю создать сообщение m, которое будет зашифровано с использованием секрета r, применяя алгоритм обязательства: c = C (m, r). Это параметр c, который публично раскрывается, но его содержимое может быть расшифровано только при наличии секрета r.

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

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

Обратите внимание, что протокол MimbleWimble до сих пор внедрялся разными командами, включая BEAM и GRIN.

Конфиденциальные активы BEAM

BEAM — одна из криптовалют, основанная на протоколе MimbleWimble. В дополнение к элементам, обеспечивающим конфиденциальность, описанным выше, команда разработчиков интегрировала новую функцию: конфиденциальные активы.

Этот процесс позволяет маркировать монеты BEAM для создания различных сопоставленных токенов, развивающихся в цепочке блоков BEAM, и используя преимущества частных функций протокола MimbleWimble.

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

Затем эти токены могут быть предметом торговли, но также могут воспользоваться полным набором функций конфиденциальности протокола. Таким образом, тип токена также может быть скрыт, не раскрывая никакой информации о типе токена или количестве транзакций.

Команда описывает их как токены, которые в конечном итоге могут представлять практически любой актив (например, для использования в STO).

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