Секретные послания, зашитые в блокчейн биткоина

Секретные послания, зашитые в блокчейн биткоина

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

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

WikiLeaks и слухи о смерти Ассанжа

В 2016 году в сети разошёлся слух: основатель WikiLeaks Джулиан Ассанж мёртв. Источником был анонимный пост на имиджборде 8chan - площадке, где непроверенные вбросы появляются регулярно. Слух быстро набрал обороты, и организации нужно было его опровергнуть, причём убедительно.

Здесь и возникла сложность. Twitter-аккаунт WikiLeaks в тот момент вызывал подозрения - команда не была уверена, что его не взломали, а сообщение с потенциально скомпрометированного аккаунта никого бы не убедило. Нужен был способ высказаться так, чтобы подделать сказанное было нельзя в принципе.

WikiLeaks выбрали биткоин. Организация использовала несколько своих адресов, чтобы записать короткий текст прямо в данные транзакции: «were fine 8chan post fake» - «всё в порядке, пост на 8chan фейк».

Смысл этого хода простой: запись в блокчейне после подтверждения сетью изменить нельзя. Твит можно удалить, аккаунт можно скомпрометировать, а транзакцию - нет. WikiLeaks обращались к этому приёму не раз.

WikiLeaks и утечка Cablegate, зашитая в блокчейн

Ещё раньше, в 2010 году, WikiLeaks оказались в центре одной из крупнейших утечек в истории дипломатии - Cablegate, публикации сотен тысяч секретных телеграмм посольств США по всему миру. Скандал был международного масштаба, и организация искала способ закрепить след своей работы там, где его невозможно стереть или заблокировать.

По данным исследователя Кена Ширриффа - того самого, который позже заставит майнить биткоин бортовой компьютер лунной программы «Аполлон», - WikiLeaks встроили в блокчейн файл размером 2,5 мегабайта, связанный именно с этой утечкой. Для 2010 года, когда сеть биткоина была совсем юной, а транзакции обрабатывали куда меньше данных, чем сегодня, это был заметный по объёму технический трюк.

Рядом с самим файлом организация оставила и отдельное благодарственное сообщение создателю биткоина: «Free speech and free enterprise! Thank you, Satoshi!» - «Свобода слова и свободное предпринимательство! Спасибо, Сатоши!». Понятно почему: анонимность и неподконтрольность биткоина оказались ровно тем свойством, которое позволило WikiLeaks закрепить свою работу так, чтобы её нельзя было удалить ни судебным решением, ни давлением на конкретную компанию - в блокчейне нет ни сервера, который можно отключить, ни компании, которой можно предъявить претензию.

Фотография Нельсона Манделы, закодированная в фальшивых адресах

Следующий случай устроен куда хитрее технически. Кто-то решил зашить в блокчейн не текст и не файл целиком, а имя файла - «Nelson-Mandela.jpg» - причём сделал это без использования специальных полей для данных, которые для такого обычно и предназначены. Произошло это 7 декабря 2013 года.

Автор преобразовал название файла в последовательность hex-значений - шестнадцатеричных кодов, которыми можно записать любой текст, а затем замаскировал эти значения под настоящие биткоин-адреса и отправил на них символические суммы. Со стороны такая транзакция выглядит как обычный перевод на несколько разных кошельков. На деле каждый «адрес» - это часть закодированного сообщения, а не рабочий кошелёк, способный кому-то принадлежать.

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

Тексты песен, мемы и то, что обычно туда попадать не должно

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

Самый известный пример такого рода - полный текст песни Рика Эстли Never Gonna Give You Up, встроенный в одну конкретную транзакцию. Пул для майнинга Eligius, добывавший блоки в первые годы существования сети, был известен тем, что регулярно вставлял в свои блоки католические молитвы, оскорбления и именно такие рикроллы - розыгрыши со ссылкой, которая на самом деле ведёт на клип этой песни.

У подобной свободы есть и куда менее приятная сторона. По данным того же исследования, в блокчейне зафиксировано более тысячи случаев откровенно нецензурной лексики и свыше 60 упоминаний расистских оскорблений. Это не баг и не случайность, а прямое следствие того, что запись в блокчейн никто не модерирует и не может удалить постфактум: если кто-то решил вписать туда что-то оскорбительное, заплатив за это минимальную комиссию, оно останется там навсегда наравне с посланиями WikiLeaks и данью памяти криптографам.

Как это вообще технически работает

За всеми этими примерами стоят два разных подхода, разделённые примерно одним годом истории биткоина.

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

В версии Bitcoin Core 0.9.0 разработчики предложили официальную альтернативу - команду OP_RETURN. Она позволяет добавить в транзакцию произвольные данные легальным путём, без фиктивных адресов и без сжигания монет, но с жёстким ограничением: не больше 40 байт на одну транзакцию. Разработчики сознательно сделали лимит маленьким - идея была в том, чтобы оставить возможность для коротких меток и подписей, не превращая блокчейн в полноценное хранилище файлов.

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

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

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

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