Транзакции в блокчейне Ethereum технически инициируются владельцами внешних учетных записей (а не контрактами). Например, если пользователь А отправляет 1 эфир пользователю Б, операция списания одного счета и зачисления другого меняет состояние блокчейна.

Изменения произошли исключительно на виртуальной машине Ethereum (EVM). Транзакции Ethereum должны транслироваться по всей сети, и любой узел может транслировать запросы на выполнение транзакций на EVM.

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

  • Обычная транзакция: транзакция, которая происходит с одного счета на другой.

  • Транзакция исполнения контракта: транзакция, которая взаимодействует с развернутым смарт-контрактом (адрес «получателя» — это адрес смарт-контракта).

  • Транзакция развертывания контракта: транзакция без адреса «кому» (поле данных используется только для развертывания кода смарт-контракта).

Как проверить статус транзакции Ethereum

Вот краткое пошаговое руководство по отслеживанию транзакций Ethereum:

Шаг 1. Выберите обозреватель блокчейна Ethereum

Некоторые обозреватели блокчейнов специфичны для Ethereum, например Etherscan, Ethplorer и EthVM. Другие поддерживают мультичейны, например Blockchain.com и Tokenview.

Шаг 2. Введите хэш транзакции в поле поиска вашего обозревателя блокчейна.

Например, на Etherscan поле поиска расположено в левом верхнем углу экрана рядом с раскрывающимся меню «Все фильтры». В зависимости от инструмента пользователи могут искать информацию по адресу кошелька, хешу транзакции (txid), блоку, токену или имени домена.

txid — уникальный идентификатор, прикрепленный к конкретной транзакции. Все транзакции, совершаемые внутри цепочки или с внешними адресами, имеют уникальный txid, указанный в деталях транзакции.

В зависимости от платформы его также можно называть «хешем» или «txn-хешем». Обычно это выглядит как строка случайных букв и цифр. Например, в MetaMask пользователи могут увидеть txid сразу после перехода на вкладку «Активность» и выбора транзакции.

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

Шаг 3. Нажмите значок «Поиск» или «Ввод» в браузере блокчейна.

Шаг 4. Проверьте, успешна ли транзакция

Как узнать, была ли транзакция ETH успешной: Подробности, указывающие статус транзакции, будут отображаться в обозревателе блокчейна. Если транзакция была успешно проверена и теперь находится в блокчейне, там будет написано «успех» или «успех».

Если ошибок не отображается, транзакция завершилась успешно. ETH должен быть зачислен на кошелек назначения или счет биржи в течение 24 часов с момента отправки.

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

  • Сообщение об ошибке или символ: красный восклицательный знак или сообщение об ошибке «Плохой заказ» или «Нет газа» указывают на то, что транзакция не удалась и средства не достигли намеченного места назначения. В случае ошибки «низкий уровень газа» пользователи могут удвоить первоначально указанный предел газа и повторить попытку.

  • Исправлено: проблема была связана с ошибкой пользователя смарт-контракта. Это означает, что пользователи должны внимательно проверять детали транзакции.

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

  • Ожидание: транзакция все еще ожидает проверки или обработки, но находится в пуле транзакций браузера. Иногда ожидающие транзакции все же могут быть отменены или заменены пользователем.

  • Сколько времени занимает обработка транзакции Ethereum?

    Среднее время обработки транзакции в блокчейне Ethereum обычно составляет от 15 секунд до 5 минут, в зависимости от множества факторов. К ним относятся сумма, уплаченная за ее обработку (комиссия за транзакцию) и степень занятости сети во время обработки.

    После слияния Ethereum перешел от блокчейна с доказательством работы к блокчейну с доказательством доли. Однако скорость транзакций остается примерно такой же. По данным Ethereum Foundation, распространенным заблуждением является то, что слияние значительно ускоряет транзакции.

    Однако есть небольшая разница: слоты появляются ровно каждые 12 секунд после слияния по сравнению с каждые 13,3 секунды до слияния. Тем не менее, большинство пользователей едва заметят изменения, поскольку обработка, как правило, по-прежнему зависит от перегрузки сети и комиссий за транзакции.

    Когда транзакция инициируется, она регистрируется в мемпуле Ethereum и ожидает, пока валидатор ее подхватит. Мемпул функционирует во многом как комната ожидания, где происходят ожидающие транзакции.

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

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

    Почему трейдерам следует проверять статус сделки?

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

    Таким образом, перегрузка сети и спрос прямо пропорциональны транзакционным издержкам. Когда спрос высок, затраты растут; при низком спросе верно обратное. Тем не менее, проверка статуса транзакции помогает трейдерам отслеживать затраты на использование сети.

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

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

    Помимо статуса транзакции, Ethereum Blockchain Explorer также может раскрыть следующую полезную информацию:

    • Временная метка: дата и время добавления транзакции в блокчейн.

    • Подтверждения блоков: количество блоков, добытых с момента подтверждения транзакции.

    • Комиссия за транзакцию: комиссия, выплачиваемая майнерам или валидаторам.

    • Цена ETH: цена ETH на момент обработки.

    • Базовая комиссия: минимальная комиссия, необходимая для транзакции на Ethereum.

    • Лимит газа: максимальное количество газа, выделенное отправителем для обработки транзакции.

    • Nonce: уникальный номер, который отмечает каждую транзакцию, выполненную в кошельке пользователя. Он увеличивается на единицу каждый раз, когда отправляется новая транзакция.

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