Введение
Что такое Биткоин-миксер?
Безопасность и анонимность таких централизованных сервисов, конечно, под вопросом. У пользователей нет гарантий, что они получат свои средства обратно и что они не будут испорчены каким-либо образом. Кроме того, при использовании миксера стоит обратить внимание на то, что IP и Биткоин-адреса могут логироваться третьей стороной. В итоге пользователи отказываются от контроля над своими средствами в надежде получить обратно несвязанные.
Более интересный подход существует в виде транзакций CoinJoin, которые обеспечивают более значительную степень несвязанности. Это значит, что после CoinJoin никакие доказательства не могут гарантированно доказать связь пользователя с его предыдущими транзакциями. Многие решения CoinJoin являются децентрализованной альтернативой микшерам. Несмотря на то, что в схеме может присутствовать координатор, пользователям не нужно жертвовать хранением своих средств.
Что такое CoinJoin?
Биткоин-транзакции состоят из входов и выходов. Когда пользователь хочет совершить транзакцию, он принимает UTXO в качестве входных данных, задает выходные данные и подписывает входные. Важно подчеркнуть, что каждый вход подписывается самостоятельно, и пользователи могут устанавливать несколько выходов (выводов на разные адреса).
Если мы рассмотрим данную транзакцию с четырьмя входами (каждый по 0.2 BTC) и двумя выходами (0.7 BTC и 0.09 BTC), то можем сделать несколько предположений. Во-первых, мы видим, что отправитель переводит кому-то средства и возвращает часть себе. Так как используются четыре входа, больший выход, вероятно, предназначен для получателя. Заметьте, что в выходах не хватает 0.01 BTC - это вознаграждение майнеру.
Также возможно, что отправитель хочет создать больший UTXO из меньшего, чтобы объединить более мелкие входы для получения желаемых 0.7 BTC.
Другое предположение, которое мы можем сделать, - каждый вход подписан самостоятельно. Данная транзакция можен иметь до четырех сторон, подписавших входы. В этом и заключается принцип, делающий CoinJoin эффективным.
Как работает CoinJoin?
Идея заключается в том, что участвовать в транзакции будут несколько сторон, внося средства и указывая желаемый выход. Так как входы становятся объединенными, становится невозможно точно сказать, какой вход какому пользователю принадлежит. Рассмотрим схему ниже:
Здесь есть четыре участника, желающих разорвать связь между транзакциями. Они объединяются между собой (или через специального координатора), чтобы объявить входы и выходы, которые хотели бы включить.
Координатор получает всю информацию, включает данные в транзакцию, и каждый участник подписывает ее перед тем, как отправить в сеть. Как только пользователи ее подтверждают, транзакция не может быть изменена, не став недействительной. Таким образом, нет риска того, что координатор похитит средства.
Но даже это не гарантировано. Кто может сказать, рассматривая вышеупомянутую сделку, что там четыре участника? Может, это один человек отправляет свои средства на четыре адреса? Или два человека совершают две отдельные покупки и возвращают по 0,2 BTC на свои адреса? Или четыре человека отправляют новым участникам или обратно самим себе? Мы не можем быть уверенными.
Конфиденциальность через отрицание
Сам факт существования CoinJoin достаточен для того, чтобы поставить под сомнение методы анализа транзакций. В большинстве случаев вы можете понять, что был использован CoinJoin, но не можете узнать, кому были переведены средства. С ростом популярности предположение о том, что входные данные принадлежат одному пользователю, стало необоснованным, что привело к резкому массовому повышению конфиденциальности экосистеме.
Заключение
Для тех, кто доверяет надежности и методологии третьих сторон, простое решение - миксинговые сервисы. Для тех, кто предпочитает прозрачные и не хранящие средства сервисы, в качестве альтернативы подходит CoinJoin. По этому принципу можно осуществлять транзакции самостоятельно, если пользователи технически подкованы, или с помощью программных инструментов, являющихся абстракцией более сложных механизмов. На данный момент уже существует несколько таких инструментов, популярность которых продолжает расти, поскольку пользователи стремятся к большей конфиденциальности.