文章目录

  • 叔块、与奖励计算
    • 临时分叉
    • 叔块的由来
    • 如何计算奖励
  • 区块有意思
    • 众筹合约引发的悲剧

叔块、与奖励计算

临时分叉

区块链由于是一种去中心化的技术,全世界所有的矿工同时工作,各自独立的挖掘满足要求的区块。由于是各自独立的工作,就有可能出现两个独立的矿工在同一时间挖出了同一个区块,就像下面这种情况,被称为临时分叉。


区块链是个势利眼,只承认最长的链,黄色和绿色的区块谁先有后继区块,变成最长的链,谁就会被承认

叔块的由来

以太坊创造了一个新的名词叔块(Uncle Block) 对高度3的区块来说,绿色区块是他的父区块。黄色区块虽然失败了,但好歹也是高度1的区块的子区块,绿区块的兄弟区块。于是,高度3的区块就尊称这个黄区块为叔叔,叔块就是这么得名的

注意:虚线部分仅仅用来陈述关系,不表示有实际连接

以太坊为什么要这么设计呢?因为以太坊的区块时间是9~12秒左右,相对于比特币,更容易出现临时分叉和孤儿区块。而且较短的区块时间,也使得区块在整个网络中更难以充分传播,尤其是对那些网速慢的矿工,这是一种极大的不公平。为了平衡各方利益,才设计了这样一个叔块机制。叔块在全部挖掘出来的区块中占的比例叫叔块率,目前叔块率在9.7%左右.

注意:叔块中的交易会重新回归交易池,等待重新打包。一个区块最多只能包含2个叔块

如何计算奖励

4370000高度时候从5ETH已经转变成了3ETH,7280000高度时从3ETH已经转变成了2ETH

  1. 固定奖励2ETH,每个普通区块都有
  2. 区块内包含的所有程序的Gas花费的总和
  3. 如果普通区块包含了叔块,则包含叔块的普通块可以获的固定奖励的1/32,也就是2/32 = 0.0625

叔块奖励 = ( 叔块高度 + 8 - 包含叔块的区块的高度 ) * 普通区块奖励 / 8,从公式可以看出来,叔块被发现的越早,则奖励越高


区块有意思

在以太坊区块中,有一个非常有意思的区块,区块号为4356580。此区块矿工拿到的交易手续费达190个以太币(如图)

众筹合约引发的悲剧

原来在这个区块打包的交易恰好碰上了一个ICO众筹项目,不同的地址向同一个智能合约发送代币,为了交易的快速确认很多人提高了交易手续费,这才导致矿工爽歪歪。悲剧的是很多的交易最后失败而告终,转账的金额会退还给from账户,但是手续费就落入到矿工的腰包了。

02_如何计算叔块奖励相关推荐

  1. 以太坊Ghost协议和叔块

      GHOST(Greedy Heaviest Observed Subtree)是一种主链选择协议(不是侧链选择协议).举例来说:经典的Proof-of-Work(POW)是以取最长的主链为基本原则 ...

  2. python 如何计算代码块运行(执行)时间?time() time.time() time.clock() 区别

    1.引入time模块 2.调用time模块的time()函数 :用来获取当前的时间,返回的单位是秒 # 引入一个time模块, * 表示time模块的所有功能, # 作用: 可以统计程序运行的时间 f ...

  3. 以太坊(Ethereum ETH)的奖励机制

    如果问一块显卡它最恨什么,那么答案一定是以太坊. 以太坊,矿工为之疯狂,显卡为之颤抖,游戏玩家为之骂娘. 然而,除了购买矿机.连接矿池.卖币套现之外,是否有人关注过以太坊的奖励机制呢? 且听我慢慢道来 ...

  4. Nervos CKB 共识协议 NC-Max:突破 Nakamoto Consensus 吞吐量的极限

    带宽实际上是区块链吞吐量的最大限制,在美国旧金山举办的 Scaling Bitcoin Meetup 中,Nervos & Cryptape 研究员张韧从「带宽利用率」角度分析了诸多共识协议的 ...

  5. 区块链教程(二):基础概念介绍

    注:本教程为技术教程,不谈论且不涉及炒作任何数字货币 本系列重点在于以太坊基础知识.以太坊客户端以及以太坊solidity编程,因此博客重点在于以太坊核心知识点的掌握,区块链部分的基础知识可以作为补充 ...

  6. 区块链基础学习(二)

    二.以太坊介绍 首先我们要知道我们为什么要学习以太坊,主要有以下四个原因: 以太坊是区块链2.0的代表,学习以太坊能了解到区块链技术的所有知识 引入了智能合约,拓宽了区块链的应用场景 对开发者友好.对 ...

  7. blockchain 初步了解区块链

    业余时间学习下区块链相关的东西,参考资料: 廖雪峰区块链教程 尚硅谷深入理解以太坊核心技术 初步了解区块链 区块链的发展简史 以bitcoin为代表的区块链1.0,以智能合约为代表的区块链2.0,现在 ...

  8. 区块链技术及应用概述

    一.基本概念 什么是区块链? 区块链是一种以密码学方式保证的不可篡改和不可伪造的分布式账本. 关键特点:去中心化,不可篡改性,匿名性,安全可信 区块链架构 1.数据层:主要描述区块链系统的物理形式.它 ...

  9. 一种在外部中心化基础下的网络空间去中心化充盈区块链系统

    本文是<赛博空间学与赛博学>的第四章 赛博空间充盈计划 第四章内容全部一起放出,请点击下面推送阅读.可辅助上一期视频理解:网络补全计划! 区块链技术本质上就是赛博空间学的产物.在区块链的区 ...

  10. 序列1 - 以太坊的诞生,史上最大ICO之一

    在区块链1.0(比特币)这个序列中,我们详细分析了比特币和区块链的整个技术体系.从本课开始,本序列将系统化的分析以太坊的整个技术体系. 有兴趣朋友也可以进一步关注公众号"架构之道与术&quo ...

最新文章

  1. 关于 智能指针 的线程安全问题
  2. 如何更高效的管理原生微服务应用
  3. spring security源码分析之web包分析
  4. 请问一个表的update能同时触发两个触发器吗?
  5. 【Qt】Visual Studio编译Qt项目报Qt Version错误
  6. IoT -- (四) 物联网系统架构介绍
  7. P3-weixin 微信插件式开发规范
  8. python批量读取文件名_Python遍历目录并批量更换文件名和目录名的方法
  9. 【专栏精选】Assetbundle入门
  10. java Byte Stream and Character Stream的不同
  11. 流媒体服务器架设(转载)
  12. 英文文献翻译-----改进三维网格分析和分割的马尔可夫随机场
  13. php培训周期,合肥PHP培训周期为什么往往比2个月要长?
  14. 空间两直线间最短距离计算公式
  15. Java微信公众号开发之微信素材管理工具类
  16. 【Android踩过的坑】5.android.content.res.Resources$NotFoundException: String resource ID #0x0
  17. 【2023团体程序设计天梯赛CCCC】GPLT2023,L1~L2部分(PTA,L1-089~L1-096,L2-045~L2-048)题解代码复盘
  18. Android Studio 中的 gradle 介绍及build.gradle配置文件详解
  19. 语音识别发展史与入门书籍简介
  20. 一文搞懂C语言如何用指针来代替变量和数组进行数据的存储

热门文章

  1. C#文件和文件文件夹排序
  2. 【高级操作系统-陈渝】overviewCourse_shedulingRethink_OS_Components
  3. 逃离北上广:你以为回到小城市就很幸福了吗?
  4. 计算机网络知识点总结(一)-----蜂窝移动网络
  5. html上下两个箭头符号怎么打出来,往返双箭头符号怎么打
  6. 运行代码到一半不动了
  7. 《这里是中国》精美词句摘抄
  8. 经验分享:如何免费合并两个pdf文件
  9. Android tips(十)--允许模拟位置在Android M下的坑
  10. Mac,Windows11,Windows10局域网互传共享文件