🎨 Что такое CoinJoin? Особенности технологии

3 мин. чтения

Биткоин часто презентуют как инструмент для анонимных платежей, но единственная заложенная в протокол анонимность – это псевдо-анонимные адреса кошельков, которые, на самом деле, достаточно уязвимы и часто компрометируются.

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

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

Каждый раз, когда очередной кошелек теряет приватность вследствие одной из вышеперечисленных причин, любой исследователь может “отмотать” назад все транзакции по этому кошельку и дальше по цепочке раскрыть владельцев предыдущих адресов. Эта особенность блокчейна несет в себе системный риск для всей сети. Ведь если достаточно большое количество адресов уже будет известно – можно будет поделить все монеты на “чистые” и “грязные” (замешанные в подозрительных транзакциях). Это угроза всей концепции децентрализации криптовалюты.

Как решить эту проблему?

CoinJoin – это технология для анонимизации транзакций биткоина, работающая по принципу микширования, предложенная разработчиком Грегори Максвеллом в 2013 году.

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

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

Идея такая: если подписанту А нужно платить на кошелек B, подписанту C на кошелек D, а подписанту E на кошелек F, то они создают общую транзакцию, где на входе видны A,C,E, а на выходе – пополнения кошельков B,D,F. И уже невозможно никак понять, чей платеж кому предназначался.

Если вам интересно посмотреть как это выглядит на блокчейне – вот пример транзакции CoinJoin с двумя участниками.

Что дает CoinJoin?

Помимо очевидной мгновенной дополнительной анонимизации, CJ дает еще долгоиграющий эффект – для любого исследователя, который по какой-то причине ищет “нить” к интересующему кошельку, такая двойная или тройная транзакция фактически означает глухой тупик.

Но это еще не все. Метод CoinJoin несет эффект коллективного “иммунитета” для всей системы: даже если далеко не все (но многие) пользователи начнут использовать этот метод, то для остальных это станет своеобразной защитой. Если существенное количество BTC хотя бы раз пройдет через такие транзакции – попытки создавать “белые” и “черные” списки потеряют всякий смысл.

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

Некоторые криптовалютные кошельки уже выходят с поддержкой технологии CoinJoin (к примеру, WasabiWallet), но нужно все же сказать, что широкого распространения перемешивание еще не приобрело. В день десятилетия Bitcoin была произведена самая большая смешанная анонимная транзакция размером в 34 BTC (на тот момент около $240,000).

Бесплатный базовый курс Bitcoin

Узнай больше чем 99% населения о Биткоин и других криптовалютах. Получай короткие и ёмкие Email с обучающими статьями каждый день в течение 7 дней. Каждый урок займет до 10 минут чтения. Отписка в любой момент одним кликом.