Общая тенденция к отслеживанию всей активности в блокчейне, а также растущее из года в год количество физических атак на держателей биткоинов, заставляют признать, что приватность в Биткоине — это уже не вопрос о том, есть ли вам “что-то скрывать”, — это залог вашей безопасности и безопасности ваших средств.
Тема приватности в Биткоине достаточно сложна и требует базового понимания того, как работают транзакции и кошельки. Эта статья содержит минимальный набор правил защиты своей приватности, а также ссылки на материалы, которые помогут вам глубже погрузиться в эту тему.
UTXO #
В Биткоине нет привычного “баланса”, как на вашем банковском счете. Баланс кошелька состоит из UTXO (Unspent Transaction Outputs) — “неизрасходованных выходов транзакций”. Их можно представить как монеты произвольного номинала: каждая входящая транзакция создает новую “монету”, и чтобы потратить ее, нужно целиком передать в новую транзакцию. Если номинал “монеты” больше, чем сумма платежа, — создается сдача в виде нового UTXO. Если одного UTXO недостаточно, чтобы покрыть перевод, то на входе транзакции используются несколько UTXO одновременно.
💡 Баланс Биткоин-кошелька — это сумма UTXO входящих платежей и сдач. Разобраться в концепции UTXO вам поможет серия статей от Unchained Capital.
“AML”-слежка #
Именно отслеживание таких сдач и связок UTXO позволяет аналитическим фирмам строить графы транзакций, отслеживать пользователей и оценивать “риски”. Поэтому приватность в Биткоине напрямую связана с тем, как вы управляете своими UTXO.
💡 Чем сложнее внешнему наблюдателю восстановить историю ваших монет, тем сложнее составить ваш “риск-профиль”. Сами по себе оценки “риска” и понятие “грязных биткоинов” являются глобальным мошенничеством. Но большинство пользователей так или иначе вынуждены сталкиваться с этим вредоносным явлением. О том, почему AML — это скам, читайте в нашем блоге.
Простые практики приватности #
К сожалению, для приватности, как и для безопасности, не существует “волшебной кнопки”. Это постоянный процесс. Ниже перечислены несколько самых базовых правил, которые помогут вам начать использовать Биткоин гораздо более приватно:
Не используйте адреса повторно #
Эта концепция была предложена еще самим Сатоши в Белой книге:
Дополнительной защитой будет являться генерация новой пары “открытый/закрытый ключ” для каждой транзакции: это предотвратит связывание различных платежей с их общим отправителем или адресатом. Некоторого публичного связывания все же не избежать: транзакции с несколькими входами доказывают, что эти суммы принадлежат одному лицу. Риск состоит в том, что раскрытие личности владельца ключа может привести к раскрытию и всех принадлежащих ему транзакций.
Каждый адрес должен использоваться лишь один раз. Повторное использование облегчает связывание транзакций. Создание новых адресов для каждой входящей транзакции реализовано во множестве Биткоин-кошельков, таких как Sparrow Wallet, Electrum, Blue Wallet, Trezor Suite, Ashigaru и других. Однако, все ещё существуют кошельки, использующие один и тот же постоянный адрес, особенно это относится к бесчисленным щиткоин-кошелькам, которых, разумеется, стоит избегать.
💡 HD-кошелек (иерархически детерминированный) — это кошелек, который из одной сид-фразы, согласно BIP32/44, может порождать практически бесконечное количество приватных и публичных ключей.
Для пользователя это означает:
- У вас есть одна сид-фраза — обычно 12/24 слова.
- Из нее в строго определенном порядке генерируются новые пары ключей.
- Кошелек автоматически использует новый адрес для каждой входящей транзакции, чтобы внешние наблюдатели не могли связать все поступления с одним и тем же адресом.
- При восстановлении кошелька по сид-фразе вся эта структура воссоздается полностью, и вы снова получаете доступ ко всем своим “разбросанным” UTXO.
Проще говоря: одна фраза = бесконечный набор уникальных адресов, которые связаны невидимой для посторонних логикой, но доступны только владельцу seed.
Избегайте круглых сумм #
“Круглые” суммы платежей (например, ровно 0.1 BTC) легко распознаются в блокчейне как платеж и упрощают анализ, поскольку пользователю сложно создать выход сдачи с “круглой” суммой. Проще говоря, если аналитическая программа видит круглую сумму, она понимает, что этот перевод инициирован человеком, ведь у компьютеров нет “тяги” к использованию круглых сумм.
Маркеруйте свои платежи #
Помечайте в кошельке, откуда пришел UTXO (например: “биржа”, “зарплата”, “покупка P2P”). Это помогает не смешивать монеты случайно. То же касается и платежей — ваши сдачи должны быть помечены, и вы всегда будете знать, куда отправляли биткоины. Например, кошелек Sparrow Wallet не позволяет пользователю отправить транзакцию без указания “Label”. Все заметки сохраняются локально и не передаются в блокчейн.
Разделяйте KYC и не-KYC монеты #
Храните монеты, полученные с биржи, и UTXO, не связанные с вашей личностью, в разных кошельках или на отдельных аккаунтах (счетах).
Не смешивайте UTXO из разных источников #
Например, не смешивайте в одной транзакции вашу зарплату и монеты, полученные из других источников. А смешивание KYC и не-KYC монет делает отслеживание и даже деанонимизацию пользователя тривиальной. Используйте функцию Coin Control в вашем кошельке для выбора конкретных входов для транзакции.
💡 Подробное описание принципов анализа активности пользователя в блокчейне, а также методов защиты от этого, безусловно, вредоносного и опасного явления, вы можете найти в серии статей “Понимание приватности в сети Биткоин с помощью OXT”.
Эти простые практики не дадут абсолютной анонимности, но закроют самые очевидные “дыры”, которыми пользуются аналитические компании. Обеспечение собственной безопасности и безопасности своих биткоинов от деанонимизации чем-то напоминает старую шутку про медведя. Вам не нужно бежать быстрее, чем гонящийся за вами медведь, вам нужно лишь обогнать самого медленного бегущего рядом с вами человека. Если вы выполняете базовый минимум, аналитикам и мошенникам будет не до вас – вокруг море людей, являющихся куда более легкой добычей.
