В этой статье мы разберем транзакции биткоина и научимся очень быстро парсить RawTX из сети блокчейн в папку Google Drive все это поможет нам лучше понять, как работает транзакции биткоина и каково все её содержимое в сети блокчейн.
Для начала нам нужно знать, что все транзакции биткоина хранятся в [txid].
txid - это идентификатор транзакции, хранящиеся в блокчейне биткоина, RawTX хранится в форме двойного хеширования.
Это означает, что RawTX дважды прошла через алгоритм SHA256, чтобы получить хэш транзакции, который мы видим в блокчейне.
Например, транзакция с таким хешем: d76641afb4d0cc648a2f74db09f86ea264498341c49434a933ba8eef9352ab6f
Транзакции в блокчейне биткоина хранится в форме двойного хеширования:
SHA256(SHA256(0100000001f2068914e2fea859cacd8df990daf4008f11296b3cb953794051147a265d850a000000008b483045022043784344e1e0cb498c1d73b4cee970fb0f9adf38b7891d0b1310fdb9cbc23929022100a734f4e97a05bd169a9f0eb296fc841fa57f8753db09869f8f6f8cc1232616d4014104d6597d465408e6e11264c116dd98b539740e802dc756d7eb88741696e20dfe7d3588695d2e7ad23cbf0aa056d42afada63036d66a1d9b97070dd6bc0c87ceb0dffffffff0100b864d9450000001976a9142df31a60b02cce392822c9a87198753578ef7de888ac00000000) = d76641afb4d0cc648a2f74db09f86ea264498341c49434a933ba8eef9352ab6f
Чтобы получить RawTX нам просто нужно ввести идентификатор транзакции [txid],
https://blockchain.info/rawtx/[txid]?format=hex
далее мы получим сведения в HEX формате это и есть наш заветный RawTX.
но как мы знаем в одном Биткоин Адресе могут быть очень много транзакции [txid] и это является основной проблемой на поиск которой уходит много времени, нагружает наш ПК и занимает много места на диске.
Чтобы решить эту проблему достаточно воспользоваться API
сайта https://chain.so/api/
И так, мы указываем один Биткоин Адрес в bash-скрипт: getrawtx.sh «address»
и дальше извлекаем весь предыдущий выходной хэш — все входы ссылаются на выход (UTXO)
UTXO - это (неизрасходованный выход транзакции) который будет потрачен на новом входе. Хэш-значение этого
UTXO
сохраняется в обратном порядке.
В результате весь неизрасходованный выход транзакции будет сохранен в файле: «RawTX.json»
Чтобы получить RawTX
из Биткоин Адреса воспользуемся Bash-скриптом: getrawtx.sh
Как же парсить в папку Google Drive?
Для этого можно воспользоваться Терминалом для Google Colab [TerminalGoogleColab]
Ранее я записывал видеоинструкцию: «TERMINAL в Google Colab создаем все удобства для работ в GITHUB»
Давайте разберем в детали работу Bash-скрипта: getrawtx.sh
./getrawtx.sh 12ib7dApVFvg82TXKycWBNpN8kFyiAN1dr
Биткоин Адрес которую мы указываем для команды утилиты wget
https://chain.so/api/v2/get_tx_spent/BTC/12ib7dApVFvg82TXKycWBNpN8kFyiAN1dr
Какое преимущество получаем мы в итоге:
парсинг RawTX работает быстро и все сохраняется в один файл в папке Google Drive
в отличие от команды getrawtransaction
«txid»
, в консолиBitcoin Сore
нам не нужно вводить«txid»
достаточно ввести только Биткоин Адрес getrawtx.sh «address»bash-скрипт: getrawtx.sh через API сайта https://chain.so/api/ находит неизрасходованный выход транзакции
(UTXO)
Исходный код: https://github.com/demining/CryptoDeepTools/tree/main/01BlockchainGoogleDrive
Telegram: https://t.me/cryptodeeptech
teemour
что такое `Биткоин Адрес` ? Где вы взяли такое понятие?
cryptodeeptech Автор
https://en.bitcoinwiki.org/wiki/Bitcoin_address
splix
Может быть, но как вы используете этот термин выглядит странно. Например фраза "в одном Биткоин Адресе могут быть очень много транзакции" совсем непонятна.