手机版

nonce是什么 以太坊转账打包顺序由什么决定?

币友提问于2020-07-28 07:08:59 百度搜索更多类似文章,点击进入>>>

最佳答案:

  在以太坊上发生的每笔交易都有一个值叫 nonce,这个值用于计算一个以太坊地址中发出的交易数量。一个以太坊地址里的所有转账会按照你发起转账的时间,给每一笔交易排序,从 0 开始计数。地址每发送一笔交易,交易的随机数 nonce 就会增加 1,而转入这个地址的交易则不会改变 nonce 值。

  以太坊区块链对 nonce 做了这样三条规定:

  矿工需要按照 nonce 值从小到大去打包转账,所以在 nonce 为 0 的交易未被矿工打包前,nonce 为 1,2,3···的交易无论矿工费给的多高,都必须一直排队等着(就好比早高峰堵车的时候我们不能加塞,无论是拉斯莱斯还是奇瑞,都只能老老实实排队)。 nonce 是连续的,不能跳过。当 nonce 为 1 的交易没有发起时,nonce 不能从 0 直接跳到 2,即 nonce 为 2 的交易只能发生在 nonce 为 1 的交易后面。 如果有两笔交易 nonce 相同,其中一笔交易成功后,另外一笔交易就会显示被替代,转账失败。

  根据以太坊 nonce 的第三条规则,当有两个 nonce 值相同的交易发生时,就只能有一笔交易被成功打包,一山不容二虎。同理,在第一笔交易没有转账成功时,后续发起的第二笔、第三笔、···· 第 n 笔交易的 nonce 值均为 0,其中只有一笔交易能被矿工成功打包,其他的交易会全部显示失败。那么,哪笔交易能成功呢,有什么判断标准么?

  Nonce 值相同的交易,给矿工的手续费最高的那笔更容易成功,这不是以太坊区块链的规定,而是矿工们逐利使然,谁不想多赚点钱呢。矿工当然就会选择给的手续费更多的那笔交易来打包,其他的相同 nonce 的交易则都会被矿工丢弃,显示在你的钱包软件里就是失败的状态。

  这 n 笔先后发起, nonce 值相同的交易,就像是起跑线不同,终点线却相同的运动员,只有第一名的飞人博尔特能被大众关注,其他人则籍籍无名。

nonce是什么

以上就是《nonce是什么 以太坊转账打包顺序由什么决定?》相关问答,希望对您有所帮助!

本文标题:nonce是什么 以太坊转账打包顺序由什么决定?
本文地址:https://www.zuanbi8.com/coin/wenda/769555.html
风险提示 >>本站所提供资讯信息不代表任何投资暗示!
你可能感兴趣

其他人都在看