Как проследить транзакции Биткоин кошелька. Визуализация транзакций Bitcoin

Информация о Биткоин кошельках

Все транзакции в сети блокчейне (сети Биткоин) являются публичными. То есть для интересующего вас кошелька, даже если это чужой кошелёк, вы в любой момент можете узнать:

  • текущий баланс
  • общее количество транзакций, в том числе транзакций поступления и отправки денег
  • суммы прихода и расхода за всё время
  • адреса кошельков, которые отправили деньги или на которые были отправлены деньги с этого кошелька

Вся эта информация доступна на официальном сайте blockchain.com, который поддерживает поиск по сайту. Адресом Биткоин кошелька является длинная строка, которая состоит из букв и цифр, например: 1CeePVnmoGD3xpDtnFtshLHqA2jNrCNeEr

Кроме поиска, можно обратиться к сайту по прямым адресам:

https://www.blockchain.com/btc/address/АДРЕС_КОШЕЛЬКА

Если вам нужна информация в сыром виде, например, для обработки в вашей программе, то вы можете использовать адрес вида:

https://blockchain.info/rawaddr/АДРЕС_КОШЕЛЬКА

Например, для кошелька 1CeePVnmoGD3xpDtnFtshLHqA2jNrCNeEr: https://www.blockchain.com/btc/address/1CeePVnmoGD3xpDtnFtshLHqA2jNrCNeEr

Пролистнув чуть ниже вы сможете увидеть информацию о транзакциях, зелёным цветов обозначен приход средств, а красным — расходование:

Если кликнуть на адрес любого кошелька, то можно увидеть аналогичную информацию для него.

У каждой транзакции есть уникальный идентификатор, если кликнуть на него, то можно увидеть более подробную информацию:

Там вы увидите дополнительную информацию: время, стоимость перевода и прочее.

При переходе по ссылке «Посмотреть древовидную схему» вы сможете проследить последующий путь денег:

Информация для кошелька 1CeePVnmoGD3xpDtnFtshLHqA2jNrCNeEr вы сыром виде доступна по соответствующей ссылке https://blockchain.info/rawaddr/1CeePVnmoGD3xpDtnFtshLHqA2jNrCNeEr

Как можно увидеть, сайты blockchain.com и blockchain.info предоставляют нам достаточно информации о совершённых транзакциях. Но существуют и специальные программы для отслеживания пути Биткоинов.

Как построить схему движения денег Биткоин

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

Проблема в том, что данных много, и без каких-то средств содействия в них легко запутаться. Одним из вариантов является визуализация транзакций Bitcoin. Для неё можно использовать, например, инструмент Orbit.

Как установить Orbit

Программа Orbit устанавливает одинаково в любой Linux. Если у вас ещё не установлен пакет git, то начните с его установки, затем просто выполните команды:

git clone https://github.com/s0md3v/Orbit
cd Orbit/
python3 ./orbit.py -h

Если появилась справка, значит всё в порядке.

Как пользоваться Orbit

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

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

Как запустить Orbit для отслеживания биткоинов

Адрес моего кошелька 1CeePVnmoGD3xpDtnFtshLHqA2jNrCNeEr, он используется для пожертвований в пользу сайтов HackWare.ru, Kali.Tools, Miloserdov.org, SuIP.biz. Кстати, если вам нравятся какие-то из этих сайтов вы также можете их поддержать.

Кошелёк для анализа нужно указывать после опции -s. Все другие опции являются необязательными. Но первый запуск мы сделаем с опцией -d, которая регулирует глубину обхода. По умолчанию глубина обхода равна 3. Установим уровень на 1, чтобы посмотреть только кошельки, с которых или на которые делались транзакции в отношении этого кошелька:

python3 ./orbit.py -s 1CeePVnmoGD3xpDtnFtshLHqA2jNrCNeEr -d 1

При первом запуске программа выведет:

[-] Quark is neccessary to view graphs generated by Orbit.
[~] Downloading Quark [2.37 MB]

Эти строки означают, что установлена дополнительная программа Quark, которая необходима для генерации графов.

Когда все запросы будут завершены, то результаты будут сохранены в файл и этот файл будет открыт в веб-браузере. При анализе одного уровня получается такое солнышко, каждый луч которого показывает адрес кошелька, с/на который была сделана транзакция.


Продолжим и теперь сделаем анализ на два уровня:

python3 ./orbit.py -s 1CeePVnmoGD3xpDtnFtshLHqA2jNrCNeEr -d 2

В самом начале получаем такую схему:

Давайте проведём небольшой анализ. Начнём с поиска интересующего кошелька, вводим 1CeePVnmoGD3xpDtnFtshLHqA2jNrCNeEr и нажимаем кнопку Find. Искомый элемент будет выделен жёлтым, я вытащу его из общей группы, чтобы всегда знать, где он:

Теперь нажимаем кнопку Make Clusters, чтобы сформировать кластеры на основе алгоритма определения сообществ. После этого используем Color Clusters, чтобы назначить кластерам разные цвета. Наконец нажимаем Spacify, чтобы исправить перекрывающиеся узлы и грани:

Стало заметно лучше.

Продолжу анализ. Для демонстрации интересных находок, я удалю некоторые «кусты». Можно удалять узлы по одному, для этого нажмите в меню кнопку Delete. Также можно выделять сразу несколько используя инструмент Lasso:

Посмотрите на выделенный зелёным треугольник:

Все полученные биткоины я обналичиваю в обменниках (мне не нужны биткоины, мне нужно платить по счетам). То есть этот «кучерявый» узел, который я обозначил буквой B — это обменник. Свой кошелёк я обозначил буквой A. Следовательно, можно сделать вывод: жертвователь (кстати, спасибо ему за поддержку, и вообще, спасибо всем, кто поддерживает, особенно материально!), так вот, жертвователь купил биткоины в этом обменнике (они пришли в узел C), а затем отправил на другой кошелёк (D) и затем часть суммы отправил мне.

Исходя из графика можно подумать, что мы одновременно воспользовались одним обменником — но это необязательно так, поскольку на графике показаны вообще все транзакции, которые когда-либо были сделаны моим кошельком. Ещё один вариант — транзакция AB это тоже пожертвование, которое было сделано кем-то напрямую через обменник.

Немного перераспределил узлы, посмотрите на точку B — она связана с теми же узлами, что и мой кошелёк (A), то есть с D, E, F, G. От пользователя B пришло пожертвование, то есть он где-то на обменнике купил Биткоины, и отправил часть суммы мне, а я вернул эти биткоины обратно на обменники.

Это же самое можно сказать и про точку C, этот пользователь покупает-продаёт на обменниках и однажды часть суммы прислал мне. Как вариант, эти кошельки получили средства из другого источника (не обменники), но обналичивали их через них, и также прислали мне несколько баксов.

По умолчанию глубина поиска равна трём, то есть если запустить без опции -d:

python3 ./orbit.py -s 1CeePVnmoGD3xpDtnFtshLHqA2jNrCNeEr

то можно получить примерно такую картину:

По умолчанию Orbit обрабатывает только последние 50 транзакций от каждого кошелька. Вы можете изменить это значение опцией -l. Можно как уменьшить, так и увеличить количество охватываемых переводов.

Кошельки, которые сделали всего пару взаимодействий с нашей целью, могут быть неважны, можно сказать Orbit обходить топ N кошельков на каждом уровне, это делается опцией -t.

Если вы хотите просмотреть собранные данные просмотрщиком графов по вашему выбору, вы можете использовать опцию -o. После неё нужно указать один из поддерживаемых форматов:

  • graphml (поддерживается большинством просмотрщиков графов)
  • json (для сырой оработки)

Заключение

Инструмент Orbit не предназначен для деанонимизации пользователей Биткоин, но он может помочь собрать интересную информацию. Например, как выяснилось, мир довольно тесен, и я вместе с другими пользуемся примерно одними и теми же обменниками.

Под пристальным вниманием находятся биткоины с интересной «судьбой» или происхождением. Например, общественность наблюдает за самыми первыми биткоинами, которые намайнил автор Bitcoin. Этих биткоинов много, и попытка обналичить вполне может раскрыть загадку, кто изобрёл Биткоин. Также общественность наблюдает за биткоинами, которые захватила ФБР у Silk Road и разными криминальными биткоинами.

Это возможно благодаря тому, что анонимность и децентрализация находятся в конфликте. В качестве меры противодействия такому анализу можно создавать уникальные адреса кошельков для каждой транзакции, например, wikileaks генерирует уникальный адрес кошелька для каждого жертвователя. Но если затем они сливаются (на любом этапе) в один кошелёк, то эта мера теряет смысл.

Можно предположить другие проблемы связанные с прозрачностью блокчейна: например, кому-то (допустим мне, в пожертвовании на сайт), перевели криминальные биткоины. А я без задней мысли поменял их на рубли через обменник, где указал номер своей карты. Получается, у правоохранительных органов ко мне могут, как минимум, возникнуть вопросы…

Рекомендуется Вам:

One Comment to Как проследить транзакции Биткоин кошелька. Визуализация транзакций Bitcoin

  1. Qwerty121212:

    на сайте блокчйн.ком при нажатии на кошелек нет функции "просмотреть древовидную схему"., у вас на скринах имеется, почему я не вижу на интересующих меня кошельках данную опцию?

     

Добавить комментарий

Ваш e-mail не будет опубликован.