Nonce — это произвольное число, предназначенное для использования только один раз; оно генерируется, когда транзакция хэшируется майнером.
Что такое nonce?
Nonce (буквальное значение — для одного случая) — это метод последовательности и разделения транзакций на блокчейне Ethereum и других платформах смарт-контрактов. В криптографии используется как неповторяющееся число для защиты связи. Кошелек Ethereum может передавать в сеть несколько транзакций со счета без значительной задержки между ними. В связи с этим необходим механизм, позволяющий определить, какая транзакция обрабатывается первой. В ином случае возникнут сбои, вызванные конфликтующими транзакциями, связанными с переводом баланса счета.
В этом процессе, однако, могут возникнуть проблемы, поскольку если транзакция с более низким значением nonce застрянет (из-за объема газа), то все полученные после этого транзакции с более высоким значением nonce также застрянут.
В том случае, если транзакция застряла и не была одобрена, пользователи могут повысить цену на газ и отправить ту же транзакцию с тем же номером nonce. Поскольку номер nonce остался прежним, а плата была увеличена, вероятность одобрения этой транзакции выше. В некоторых кошельках обе эти функции автоматизированы.