В эру цифровых технологий криптовалюты стали популярными как средства для инвестирования и финансовых операций. Однако с увеличением их использования возросло и количество преступлений, связанных с ними.
Особое внимание уделяется биткоину — пиринговой платежной системе, использующей одноименную валюту для учета операций. Как и любая другая платежная система, биткоин может быть использован для различных незаконных действий, таких как мошенничество, финансирование терроризма и отмывание денег. Следует отметить, что активность транзакций в биткоинах обычно превышает таковую в других криптовалютах, за исключением Ethereum. Именно поэтому эта платежная система вызывает повышенный интерес со стороны правоохранительных органов и специалистов по кибербезопасности.
Одним из эффективных методов для выявления и анализа незаконных действий в криптовалютной сфере является визуализация блокчейна, которая позволяет наглядно представить сложные структуры данных и обнаружить взаимосвязи между различными транзакциями.
В МТУСИ разработали методику визуализации блокчейна сети биткоин для поиска доказательств совершения преступлений. В разработке методики принимали участие: Ванюшина Анна Вячеславовна — кандидат технических наук, доцент кафедры «Информационная безопасность» МТУСИ; Осин Андрей Владимирович — кандидат технических наук, доцент кафедры «Информационная безопасность» МТУСИ и Киямов Марат Мулланурович — магистрант кафедры «Информационная безопасность» МТУСИ.
Основная особенность исследования заключается в создании новых подходов к анализу данных о транзакциях в блокчейнах, которые позволяют визуализировать и исследовать потоки средств, выявлять взаимосвязи между участниками сети и особенности структуры данных. Один из видов визуализации данных в области компьютерных наук — это визуализация графов.
«Некоторые реализации блокчейна применяют графовую структуру для хранения транзакций вместо цепочки блоков, где узлы представляют адреса (от учетной записи к учетной записи), а ребра — сами транзакции (суммы переводов). Визуализация графов позволяет наглядно продемонстрировать, как активы перемещаются от одной учетной записи к другой в блокчейне-поставок и достичь более высокой производительности и масштабируемости», — пояснила Анна Вячеславовна.
«Направленный ациклический граф (DAG) и блокчейн имеют некоторые сходства, оба используются для представления процессов хранения данных и выполнения транзакций. Поэтому использование DAG помогает улучшить качество и интерпретируемость при визуализации, что, в свою очередь, содействует расследованию преступлений, связанных с использованием платежей в криптовалюте», — отметил Андрей Владимирович.
Для построения графов были созданы новые алгоритмы, основанные на различных аспектах записей о транзакциях. Были предложены модели графов, содержащие вершины и направленные ребра, соединяющие исходные и целевые точки с различными отношениями.
1. Граф транзакций биткоин-транзакции, который демонстрирует связи между транзакциями и их входами-выходами.
2. Граф адресов, который отображает связи между адресами кошельков в сети биткоина.
3. Граф потока средств, который показывает движение средств между двумя внешне управляемыми счетами (EOA) в блокчейне.
Методы построения графов были протестированы на реальных данных сетей Bitcoin и Ethereum.
«Для оценки использовались транзакционные данные Bitcoin, загруженные из ядра Bitcoin. Мы установили локальный узел Bitcoin и собрали около 25,7 МБ данных, включая 46 700 блоков и соответствующие транзакции. Данные Ethereum были загружены из набора данных Ethereum XBlock pro (блоки, транзакции, информация о контрактах и вызовах, ERC20 и ERC721). Данные, загруженные из ядра Bitcoin, представлены в бинарном формате (.bat), так как они не могут быть использованы напрямую для построения графов. Мы использовали Bitcoin ETL, библиотеку на основе Python, для преобразования бинарных данных в сжатый формат JSON. Файлы JSON были загружены, и необходимые характеристики были извлечены. Затем графы были построены с применением алгоритмов и загружены в графовую базу данных Neo4j для визуализации», — рассказал Марат Мулланурович.
В результате исследования предлагается обобщенный алгоритм построения графов для анализа транзакций в сети блокчейн:
1. Сбор данных о транзакциях из выбранного блокчейн-эксплорера.
2. Инициализация графа, заключающаяся в создании пустого ориентированного графа для анализа.
3. Добавление вершин (узлов) для каждого элемента, который необходимо проанализировать (например, транзакции, адреса кошельков или счета).
4. Добавление ребер (связей) для каждой транзакции или элемента данных между соответствующими вершинами в графе. Для этого необходимо проанализировать входы и выходы транзакций или связи между адресами кошельков и счетами.
5. Анализ полученного графа для выявления связей и паттернов. Для визуализации графа можно использовать библиотеки для работы с графами, такие как NetworkX для Python.
6. Дополнительные шаги (в зависимости от типа графа):
– Для графа транзакций: можно добавить веса ребер (например, сумму транзакции) или метки вершин (например, идентификатор отправителя или получателя).
– Для графа адресов: можно добавить информацию о количестве транзакций между каждым адресом или о сумме транзакций между ними.
– Для графа потока средств: можно добавить метки ребер (например, дату транзакции) или информацию о количестве переданных средств.
Этот алгоритм можно адаптировать для построения различных графов в сети блокчейн в зависимости от целей анализа.
Исследование показало, что визуализация блокчейна является эффективным инструментом в борьбе с преступной деятельностью.
Результаты исследования могут быть использованы для разработки новых инструментов и платформ, которые помогут в противодействии преступной деятельности и повышении безопасности блокчейн-систем.