Как умело скрыть адреса Биткоин (часть I)
04.07.2017
Несмотря на то, что экосистема первой цифровой денежной единицы создавалась как конфиденциальная, сегодня существуют различные методики, способные отследить связь между криптовалютой Биткоин и определенным адресом. К ним относятся: ведение слежки за некодированной p2p-сетью, мониторинг открытого распределенного реестра, изучение политики «Знай своего клиента» (KYC), а также борьба с отмыванием денежных средств (AML). Такие концепции позволят раскрыть массу интересных для наблюдателя сведений о держателе криптовалютного кошелька и проведенных с него транзакциях.
Получается, что всецело уповать на приватность системы неразумно. Каждый участник сети Bitcoin желает засекретить информацию о том, на какие цели он тратит криптомонеты и какой объем активов имеется у него на счету. К тому же, интернет-предприниматели также ратуют за повышение уровня конфиденциальности системы, поскольку прозорливые конкуренты получили возможность узнать детали проведенных ими транзакций и обернуть ситуацию в свою пользу.
Отслеженные криптомонеты потенциально становятся «запятнанными» и могут быть оценены в разы меньше, нежели «чистые», что идет вразрез с функцией взаимозаменяемости. Данный аспект создает серьезную проблему при использовании Биткоинов для проведения транзакций. Преобладающее большинство пользователей сети первой криптовалюты не осведомлены о наличии возможности усовершенствовать степень приватности хранилища виртуальных монет и обеспечить взаимозаменяемость.
Здесь можно воспользоваться одним из двух существующих способов:
- Невидимые транзакции. Методика была запущена в 2014 году.
- Многоразовые платежные коды. Способ обрел популярность в 2016 году.
Где кроется проблема?
Чтобы добиться улучшения конфиденциальности наряду с повышением защиты экосистемы Bitcoin, рекомендуется всякий раз при получении очередной транзакции на кошелек, генерировать новый адрес. Данный способ нельзя считать панацеей, однако он идеально подходит для осложнения процесса слежки за связью номеров хранилищ с конкретным клиентом, которая проводится в двустороннем порядке: отправитель и получатель.
Адресату следует формировать и передавать адрес отправителю криптомонет до того, как средства будут отправлены вторым из них на счет первого. Стоит отметить, что данная концепция изобилует «подводными камнями» и, в некоторых случаях, ее применение будет считаться неразумным (например, публикация адресов Биткоин на одном из благотворительных сайтов с целью собирания пожертвований на счет).
К тому же, если вновь сгенерированный номер будет передан через небезопасный канал, то это приведет к абсолютной потере приватности. Методика проведения невидимых транзакций, разработанная в 2014 году одним из создателей компании Bitcoin Core Питером Тоддом, способна решить проблему сети и повысить степень ее приватности. В концепции используются несколько криптографических приемов, которые применяют в работе систему, специализирующуюся на обмене ключами (Diffie—Hellman) и позволяющую участникам получать переводы на еще не сформированные и никому не известные адреса.
Как использовать невидимые транзакции?
В настоящее время, существует несколько проверенных вариантов формирования скрытых платежей, призванных повысить степень конфиденциальности Биткоинов. Рассмотрим лишь один из них. Использование невидимых транзакций подразумевает наличие у отправителя и адресата пары криптографически защищенных ключей: публичного и приватного. Интересно, что такие ключи могут даже не принадлежать экосистеме Bitcoin. Скрытые от общего обозрения приватные и публичные ключи можно использовать несколькими методами:
- Применение в стандартных криптографических задачах. Здесь речь идет о шифровании электронных писем, поступивших на e-mail клиента. Так, в ходе передачи транзакции, отправитель может прибегнуть к помощи невидимого публичного ключа адресата и зашифровать необходимое к передаче сообщение. Расшифровка данного уведомления может быть произведена только адресатом, владеющим невидимым приватным ключом. Стоит отметить, что вариант кодирования оповещения получателем для отправителя не годится для использования в скрытых переводах.
- Объединение двух невидимых приватных ключей через математическую формулу. Этот способ позволит создать приватный Биткоин-ключ, который может быть применен для соответствующего адреса. Применение невидимых приватных ключей отправителя и получателя позволяет им генерировать номер кошелька Bitcoin наряду с приватным ключом, необходимым для доступа к нему.
- Получение номера кошелька Биткоин через применение одного скрытого приватного и аналогичного публичного ключа. Так, стороны имеют право формировать номера криптовалютных хранилищ посредством соединения собственного приватного и чужого публичного ключа.
Во второй части нашего повествования, рассмотрим способ применения многоразовых платежных кодов и узнаем, насколько он позволяет повысить степень конфиденциальности транзакций.
Назад