Blockchain-эксплореры: как читать транзакцию, проверять подтверждения и находить нужные данные в блоке

Прямой ответ​


Blockchain-эксплорер — это веб-интерфейс к полному узлу, который индексирует блоки и транзакции. Чтобы прочитать транзакцию, достаточно вставить её хеш (txid) в строку поиска. Эксплорер покажет отправителя, получателя, сумму, комиссию, статус (подтверждена или нет) и количество подтверждений. Для Bitcoin ключевые поля — входы (inputs), выходы (outputs), размер в байтах и ставка комиссии в sat/vB. Для Ethereum — газ, цена газа, nonce, статус выполнения и логи смарт-контракта.

Популярные эксплореры и их различия​


СетьЭксплорерОсобенности
Bitcoinmempool.spaceВизуализация мемпула, прогноз комиссии, RBF-статус
Bitcoinblockchain.comПростой интерфейс, подходит для быстрой проверки
Ethereumetherscan.ioДекодирование input data, трассировка внутренних транзакций
Ethereumeth.blockscout.comОткрытый код, поддержка тестовых сетей
Ethereumethplorer.ioАкцент на токенах ERC-20 и портфелях

Все они показывают одни и те же данные из блокчейна, но отличаются подачей: mempool.space лучше для анализа комиссии и мемпула, Etherscan — для работы со смарт-контрактами.

Анатомия транзакции Bitcoin​


Поля и структура записи в эксплорере​


Когда вы открываете транзакцию в эксплорере, видите следующие данные:

  • TxID (Transaction ID) — SHA-256 хеш сериализованной транзакции. Уникальный идентификатор, по которому ищется запись.
  • Status — «Confirmed» или «Unconfirmed». Неподтверждённая транзакция находится в мемпуле и ещё не включена в блок.
  • Confirmations — количество блоков, добавленных после того, в который вошла транзакция. Одно подтверждение означает, что транзакция в последнем блоке.
  • Timestamp — время включения в блок (не время создания транзакции).
  • Fee — комиссия, которую заплатил отправитель. Разница между суммой входов и суммой выходов.
  • Fee rate — комиссия за виртуальный байт (sat/vB). Определяет приоритет в мемпуле.
  • Size / Virtual size (vsize) — фактический размер транзакции в байтах и виртуальный размер с учётом witness-данных SegWit.

Входы и выходы (UTXO-модель)​


Bitcoin работает по модели UTXO (Unspent Transaction Output). Каждая транзакция потребляет один или несколько предыдущих выходов и создаёт новые.

Вход (Input) содержит:

  • Ссылку на предыдущую транзакцию и номер выхода (txid:vout).
  • Скрипт разблокировки (подпись + публичный ключ или witness-данные для SegWit).

Выход (Output) содержит:

  • Сумму в сатоши.
  • Скрипт блокировки (обычно P2PKH, P2SH, P2WPKH или P2TR).

Если сумма входов превышает сумму выходов, разница — комиссия майнеру. Явного поля «комиссия» в самой транзакции нет; эксплорер вычисляет её как разницу.

Пример чтения транзакции в mempool.space​


  1. Вставьте txid в поиск.
  2. Вверху — статус и количество подтверждений.
  3. Секция «Inputs» показывает адреса-источники и суммы.
  4. Секция «Outputs» — адреса-получатели и суммы.
  5. Если один из выходов возвращается на адрес, похожий на адрес отправителя, это сдача (change). Кошелёк создаёт новый адрес для сдачи автоматически.
  6. Вкладка «Details» показывает fee rate, размер и RBF-флаг.

Если транзакция помечена как RBF (Replace-By-Fee), отправитель может заменить её на новую с более высокой комиссией, пока она не подтверждена. Подробнее об этом механизме — в материале Зависшая транзакция Bitcoin: как работают RBF и CPFP и когда они не помогут.

Скрипты блокировки и типы адресов​


Эксплорер показывает тип скрипта в каждом выходе. Понимание типа помогает определить, какой формат адреса использован:

Тип скриптаФормат адресаПример
P2PKHНачинается с 11A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa
P2SHНачинается с 33J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy
P2WPKH (SegWit v0)Начинается с bc1qbc1qp6ejw8ptj9l9pkscmlf8fhhkrrjeawgpyjvtq8
P2TR (Taproot)Начинается с bc1pbc1p...

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

Анатомия транзакции Ethereum​


Поля записи в Etherscan​


  • TxHash — Keccak-256 хеш транзакции. Аналог txid в Bitcoin.
  • Status — «Success» или «Failed». В отличие от Bitcoin, транзакция может быть подтверждена, но завершиться ошибкой выполнения (например, revert в смарт-контракте). Газ при этом всё равно списывается.
  • Block — номер блока, в который вошла транзакция.
  • Timestamp — время создания блока.
  • From — адрес отправителя (EOA или контракт).
  • To — адрес получателя или адрес контракта, который вызывается.
  • Value — количество ETH, переданное напрямую.
  • Transaction Fee — произведение использованного газа на эффективную цену газа.
  • Gas Price / Effective Gas Price — цена за единицу газа. После EIP-1559 состоит из base fee (сжигается) и priority fee (чаевые валидатору).
  • Gas Limit — максимальное количество газа, которое отправитель готов потратить.
  • Gas Used — фактически израсходованный газ.
  • Nonce — порядковый номер транзакции отправителя. Гарантирует уникальность и порядок.
  • Input Data — произвольные данные вызова. Для перевода ETH это пустое поле; для вызова контракта — закодированный ABI-вызов (селектор функции + аргументы).

Чтение Input Data​


Если транзакция взаимодействует со смарт-контрактом, поле Input Data содержит:

  • Первые 4 байта — селектор функции (хеш сигнатуры).
  • Остальное — аргументы, закодированные по стандарту ABI.

Etherscan автоматически декодирует input для верифицированных контрактов и показывает имя функции и параметры в читаемом виде. Если контракт не верифицирован, вы увидите только сырые шестнадцатеричные данные.

Пример: вызов функции transfer(address,uint256) на контракте ERC-20 будет иметь селектор 0xa9059cbb, за которым следуют 32 байта адреса получателя и 32 байта суммы.

Внутренние транзакции (Internal Transactions)​


Когда смарт-контракт вызывает другой контракт или отправляет ETH, это не создаёт отдельную транзакцию в блокчейне. Такие переводы фиксируются как внутренние транзакции и видны на отдельной вкладке в Etherscan. Они не имеют собственного хеша — только трассировочный путь (trace).

Внутренние транзакции важны при анализе: если вы видите, что баланс адреса изменился, но в списке обычных транзакций нет соответствующей записи, проверьте вкладку Internal Txns.

Логи событий (Event Logs)​


Смарт-контракты генерируют события (events), которые записываются в логи блока. В эксплорере они отображаются на вкладке «Logs». Каждый лог содержит:

  • Адрес контракта.
  • Топики (topics) — до 4 хешей, первый из которых — сигнатура события.
  • Данные (data) — неиндексируемые параметры.

Логи — основной способ отследить, что произошло внутри контракта: перевод токена, создание пары, минт NFT и т. д. Например, стандартное событие Transfer в ERC-20 имеет сигнатуру Transfer(address,address,uint256) и генерирует три топика: хеш сигнатуры, адрес отправителя и адрес получателя, а сумма хранится в поле data.

Проверка количества подтверждений​


Количество подтверждений — это глубина блока в цепочке. Для Bitcoin общепринятые ориентиры:

ПодтвержденийУровень уверенности
0Транзакция в мемпуле, может быть заменена (RBF) или отброшена
1Включена в блок, но реорганизация возможна
3Практически необратима для малых сумм
6Стандарт для бирж и крупных сумм

Для Ethereum финальность наступает через 2 эпохи (64 блока, ~12,8 минут) после The Merge. До этого момента теоретически возможна реорганизация, хотя на практике она крайне маловероятна для глубоких блоков.

Как найти транзакцию по адресу или сумме​


Эксплореры позволяют искать не только по хешу:

  • По адресу — вставьте адрес кошелька, и вы увидите все входящие и исходящие транзакции. В Bitcoin это может быть неполная картина, если кошелёк использует множество адресов (что нормально для HD-кошельков).
  • По блоку — укажите номер или хеш блока, чтобы увидеть все транзакции в нём.
  • По токену (Ethereum) — в Etherscan можно найти контракт токена и посмотреть все его переводы.

Для Bitcoin-кошельков с множеством адресов эксплорер покажет только те транзакции, которые связаны с конкретным введённым адресом. Чтобы увидеть полную картину, нужно знать все адреса кошелька или использовать дескриптор.

Типичные ошибки при чтении транзакций​


«Транзакция не подтверждается»​


Частая причина — слишком низкая комиссия. В mempool.space можно посмотреть текущую ставку, при которой транзакции попадают в блоки. Если ваша ставка ниже порога, транзакция будет ждать. Решение: RBF (если включён) или CPFP. Подробнее — в Зависшая транзакция Bitcoin: как работают RBF и CPFP и когда они не помогут и Комиссия в Bitcoin: как устроен механизм sat/vB, приоритет в мемпуле и почему транзакция может зависнуть.

«Средства ушли не туда»​


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

«Статус Failed, но газ списан»​


В Ethereum транзакция может завершиться ошибкой (revert), но газ всё равно расходуется. Это не баг, а защита сети от бесконечных вычислений. Причина обычно видна в декодированном input или в логах.

«Вижу два перевода на один адрес»​


В Bitcoin кошелёк может создать несколько выходов на один и тот же адрес (например, при консолидации UTXO). Это не дублирование, а нормальная работа.

«Баланс не совпадает с ожидаемым»​


В Ethereum баланс адреса в эксплорере отражает только нативный ETH. Токены ERC-20, ERC-721 и ERC-1155 хранятся в балансах соответствующих контрактов, а не в балансе самого адреса. Чтобы увидеть полный портфель, используйте вкладку «Token» в Etherscan или специализированные сервисы вроде ethplorer.io.

Безопасность при работе с эксплорерами​


  • Не вводите приватные ключи или seed-фразу на сайтах эксплореров. Они не требуют аутентификации для просмотра данных.
  • Проверяйте домен эксплорера. Фишинговые копии популярных сервисов существуют.
  • Если эксплорер просит «подключить кошелёк» для просмотра баланса — это подозрительно. Для чтения данных подключение не нужно.
  • При взаимодействии со смарт-контрактами через кошелёк всегда читайте, что именно подписываете. Не давайте unlimited approval, если это не требуется. Подробнее об отзывах доступов — в Token approvals в Ethereum: что даёт разрешение смарт-контракту и как отозвать лишние доступы.

Практический чек-лист проверки транзакции​


  1. Скопируйте txid/txhash из кошелька.
  2. Вставьте в эксплорер соответствующей сети.
  3. Проверьте статус: подтверждена ли транзакция и сколько подтверждений.
  4. Сверьте адрес получателя и сумму.
  5. Для Bitcoin: убедитесь, что комиссия адекватна текущей ставке мемпула.
  6. Для Ethereum: проверьте статус выполнения (Success/Failed), газ и логи.
  7. Если транзакция не подтверждается более 30 минут — проверьте fee rate и наличие RBF-флага.
  8. Если статус Failed — откройте декодированный input и логи, чтобы понять причину ошибки.

Источники​


 
Назад
Верх Низ