Я просканировал весь блокчейн биткоина в поисках изображений. То, что я нашёл, вас шокирует

Bitcoin Magazine
Я просканировал весь блокчейн биткоина в поисках изображений. То, что я нашёл, вас шокирует
Я просканировал блокчейн биткоина в поисках изображений; то, что я нашёл, вас шокирует. В интернете много говорится о произвольных данных и контенте, которые можно обнаружить в блокчейне биткоина. Эта возможность не только породила нишевую арт-сцену, но и привела к движению против «неденежных транзакций» в сети биткоина. Послушав кого-нибудь из сторонников или противников этой идеи, можно решить, что блокчейн — это, по сути, стена, покрытая граффити.
Что ж, я решил проверить это на практике: действительно ли в блокчейне есть изображения? И что это на самом деле означает для биткоинеров, которые просто пытаются запустить собственный полный узел и максимизировать свой финансовый суверенитет?
Моя методология была простой: я собирался купить новый жёсткий диск для хранения блокчейна, а затем запустить по данным классическое программное обеспечение для восстановления изображений — то, что используют для спасения снимков со сломанных жёстких дисков, то, что предназначено для поиска необработанных данных изображений.
Для восстановления изображений я выбрал PhotoRec — программу с открытым исходным кодом, существующую уже более 20 лет. Она предназначена для поиска файлов изображений в необработанных данных. С её помощью можно восстанавливать изображения и другие форматы файлов с жёстких дисков, которые вышли из строя или были повреждены. Её, кстати, часто используют для восстановления утерянных файлов wallet.dat из ранних дней биткоин-кошельков, до распространения формата seed-фраз.
Синхронизация полного узла биткоина
Для хранения полного блокчейна биткоина я решил купить жёсткий диск на 4 терабайта за пару сотен долларов. Затем я установил на него последнюю версию Bitcoin Core и начал синхронизацию цепочки. Этот процесс, который включает загрузку и проверку учётной целостности всех транзакций в истории биткоина, занял около 72 часов, или три дня, в автоматическом режиме и в фоновом режиме под управлением ПО Bitcoin Core.
Я делал это на в остальном мощной игровой машине; главным узким местом по времени был жёсткий диск, который медленно читает и записывает данные по мере необходимости при синхронизации блокчейна биткоина. Медленная часть процесса связана с набором непотраченных выходов транзакций, или UTXO. Когда пользователь синхронизирует блокчейн, каждое непотраченное значение транзакции (выход) или положительный баланс организуется в набор UTXO, и по мере того как эти значения тратятся, они удаляются из набора, а новый адрес, на который были отправлены эти сатоши, добавляется.
На жёстком диске процесс индексации UTXO мог бы занять три недели по некоторым оценкам, поэтому, чтобы ускорить его, мой clanker (ИИ-агент) предложил индексировать данные в оперативной памяти, а затем перенести их обратно на 4-терабайтный жёсткий диск. Хотя весь процесс, работавший в фоновом режиме, занял три дня, SSD мог бы справиться со всей задачей примерно за день. SSD-накопители намного быстрее жёстких дисков; они более современны, но при этом легко в четыре раза дороже, а то и больше.
После того как блокчейн был полностью загружен и проверен, мы перенесли индекс UTXO из оперативной памяти обратно на диск и запустили ПО биткоина; цепочка была полностью синхронизирована, а кошелёк готов к работе. Теперь пришло время следующего шага: восстановления изображений, хранящихся в блокчейне.
Восстановление изображений в блокчейне с помощью PhotoRec
Имея полный блокчейн биткоина на своём жёстком диске, я выключил Bitcoin Core и попросил свой clanker (ИИ-агент Cursor) запустить PhotoRec 7.2 по диску. Процесс PhotoRec по умолчанию ищет форматы jpg, png, gif, tif, bmp, ico, psd и raw. Процесс работал более 11 часов над данными блокчейна и в итоге нашёл… (барабанная дробь) … ничего.
Более терабайта данных блокчейна и полдня сканирования — и ни одного изображения. Страница вики PhotoRec приводит простой пример того, как работает программа: «PhotoRec определяет файл JPEG, когда блок начинается с: 0xff, 0xd8, 0xff, 0xe0, 0xff, 0xd8, 0xff, 0xe1 или 0xff, 0xd8, 0xff, 0xfe». Иными словами, программа ищет в данных на диске байты, которые сигнализируют о наличии файла изображения.
Программа способна давать ложные срабатывания; она сохранила 8 файлов ICO и 4 идентичных файла PNG, которые при открытии не показывают никаких изображений, как видно на картинке ниже. Так что, по сути, никаких осмысленных изображений какого-либо рода найдено не было.
Куда делись jpeg-и? Магические трюки XOR
Как такое возможно? Годами криптолюди говорили об NFT и о том, как записать данные изображений в блокчейн биткоина. В этой нише перемещались миллионы долларов, и прямо сейчас по этому вопросу ведётся целая культурная война. Неужели в цепочке действительно нет изображений?
Оказывается, риски, связанные с произвольными данными, обсуждались и планировались в кругах разработчиков Bitcoin Core уже давно, ещё в 2011 году. XOR, простая техника обфускации данных, используется для перемешивания всех данных блокчейна, пока они хранятся на жёстком диске.
Возможно, вы слышали, что фундаментальный язык компьютеров состоит из нулей и единиц. Так вот, если вкратце, XOR сравнивает две цифры, или бита, и возвращает 1, если биты различаются, или 0, если биты одинаковы. В случае биткоина XOR сравнивает каждый бит данных блокчейна со случайным ключом, сгенерированным во время первоначальной установки, в результате чего данные в состоянии покоя не имеют для других программ никакого смысла. Однако когда работает ПО биткоина, у него есть ключ, чтобы расшифровать эти данные и использовать их по своему усмотрению. XOR к тому же очень быстр, поэтому он не оказывает существенного влияния на производительность. Вот пример генезис-блока биткоина до и после XOR.
XOR в настоящее время применяется как к данным блокчейна, так и к набору UTXO. XOR впервые обсуждался в 2014 году, когда антивирусное ПО начало «спотыкаться» о данные блокчейна, которые оно интерпретировало как вирусный код. Затем антивирус помещал блок в карантин, повреждая данные блокчейна и приводя к сбою биткоина, делая синхронизацию невозможной. К концу 2015 года XOR был внедрён для данных набора UTXO в состоянии покоя, а в 2024 году он был внедрён для всех данных блокчейна в состоянии покоя.
Кстати, процесс XOR означает, что никакие произвольные данные не могут быть идентифицированы или извлечены из блокчейна без намеренного обхода XOR — процесса, который не нужен для денежного использования биткоина. Поскольку ПО Bitcoin Core хранит простую базу данных о местоположении каждого перемешанного блока, оно может легко получить свои данные, расшифровать их и целенаправленно использовать.
Синхронизация биткоина в неперемешанном виде — это отдельный процесс, который может занять столько же времени, сколько и синхронизация с нуля, поскольку по сути ему приходится заново переписывать весь терабайт данных в новом порядке, а в этом мало смысла для того, кто просто хочет обычных преимуществ приватности и безопасности от запуска биткоин-узла. Поэтому, что касается подавляющего большинства копий данных блокчейна биткоина, хранящихся на компьютерах обычных биткоинеров по всему миру, там фактически нет произвольных данных или изображений, которые можно было бы идентифицировать. Шокирует, я знаю. Не стесняйтесь провести тест PhotoRec самостоятельно на своём собственном узле!
Эта статья «Я просканировал весь блокчейн биткоина в поисках изображений. То, что я нашёл, вас шокирует» впервые появилась на Bitcoin Magazine и написана Хуаном Гальтом.
Источник: BitcoinMagazine
Новости в мире криптовалют
Случайная цитата о деньгах
"Обладание всякого рода благами – еще не все. Получать наслаждение от этого обладания – вот в чем счастье."















* для поиска по базе прокси просто вводите название страны, например: Россия, США, Таиланд