到了2015年7月30日,以太坊Frontier网络发布。开发者们开始在Frontier网络上开发去中心化应用,矿工开始加入网络进行挖矿。矿工自身通过挖矿得到代币奖励,另一方面也提升了整网的算力,降低被黑客攻击的风险。
Frontier是以太坊发展过程中的第一个里程碑,它虽然在开发者心目中的定位是beta版本,但在稳定性和性能方面的表现远远超出了任何人的期望,从而吸引更多的开发者加入构建以太坊生态的行列。
2016年3月14日(π日),以太坊平台的第二个主要版本Homestead对外发布,同时也是以太坊发布的第一个正式版本。
2017年9月18日,以太坊开发团队开始测试「大都会」(Metropolis)版本的第一阶段:拜占庭分叉。2017年10月16日,主网在4,370,000区块高度成功完成拜占庭分叉。
此次硬分叉将为智能合约的开发者提供灵活的参数;同时,为后期大都会升级引入zkSnarks零知识证明等技术做了准备;延迟引爆难度炸弹,将冰河期推迟1年;挖矿难度显著降低,因此以太坊平台的交易速度会明显提高,对应的矿工们挖矿的收益从每区块5个以太币降低到3个。
2019年6月,「君士坦丁堡」硬分叉在 7080000 区块高度完成,升级中包括五项改进方案:
3)更良好的促进基于状态通道和链下交易的特定可扩展性解决方案;
4)随着更多事物被转移到第二层;
5)将块采矿奖励从 3 ETH减少到 2 ETH,以及延迟以太坊的难度炸弹 12 个月。
智能合约构建了以太坊丰富的DApp生态,让区块链更加落地,更加能与各行各业相结合,更加方便与物联网、大数据、人工智能、云计算这些技术相结合。
这也是以太坊区别于比特币即区块链1.0系统的最大魅力所在。
目前可能最成功的应用还是围绕着数字资产的金融生态,比如交易所。但是在资产交易之外,人们的探索也一直没有停止。
早在2017年,以摩根大通、芝加哥交易所集团、纽约梅隆银行、汤森路透、微软、英特尔、埃森哲等20多家全球顶尖金融机构和科技公司成立的企业以太坊联盟。
蚂蚁区块链的BaaS平台,微软云都是支持Quorum框架的。
那么,现在区块链的技术也遇到了瓶颈,也就是以太坊2.0概念被提出的原因。
主要的优化集中在三个方向:性能、隐私和手续费。
信标链,涉及核心部分、网络、签名方案和随机性。它在 Prysm Labs 创建的 Sapphire 测试网上运行。如果你有 Goerli ETH,则可以加入该测试网,质押gETH。
阶段1
是面向64条独立运行分片链的协议实现。每个分片都可以运行网络的一种状态。例如,你可以将 Maker 放在一个分片上,将其他 DeFi 应用放在另一个分片上,将 Eth1 链放在另一个分片上,将 Crypto Kitties 放在另一个分片上,依此类推……
阶段2
支持执行引擎,实现整个空间的交易和帐户模型。执行引擎使系统的复杂度最小。
不知道是否还会推出更多的后续阶段。尽管研究人员希望看到更多的 Eth2.0 分片链开发规划,但这一切仍处于发展的早期。
经过一段时间的开放讨论,以太坊的2.0技术也逐渐开始收敛:分片数量从之前的 1024 减少到 64,分片区块大小从(目标值 16,上限值 64)kB增加到(目标值 128,上限值 512)kB。分片总容量为 1.3-2.7 MB/s,具体值取决于时隙(slot time)。
如果需要的话,分片数量和区块大小可随时间的推移而增加,比方说 10 年后最终达到 1024 个分片,以及 1 MB 区块。
在 L1 和 L2 层实施了诸多简化方案:
3)无需通过去中心化交易所来促进跨分片交易费手续的支付;
4)执行环境能够进一步简化;
5)无需再混合序列化和哈希。
3)对 「突增性」 带宽需求更高,但对 「平均」 带宽的需求更低。
接近中心化系统的性能,大家知道,Visa 网络目前平均TPS为2000。
当前每笔交易只需耗费16个gas /字节,因此每笔交易 gas 花费为 8.125*16=130 gas。由于每批次有2048笔交易,因此每批次的交易成本为130 * 2048 = 266,240 gas。
如果将15个批次插入以太坊区块,由于每个批次可容纳 2048 笔交易,这意味着我们可以让每个区块打包15 * 2048 = 30,720笔交易。
30,720个交易/ 15秒=每秒2048笔交易。
当然以上知识理论推导,还存在一些实际问题需要解决:每个 zkRollup 批次都需要简短的加密证明(zk-SNARK),以证明该批次中交易的完整性。事实证明,生成此证明的计算费用十分昂贵。这才是达到理论吞吐量限制的主要瓶颈。
目前使用一个 CPU 和三个 GPU,需要几分钟时间才能生成一个这样的证明。尽管通过并行计算可以显着改善性能,但是将证明生成时间从几分钟减少到几秒钟,同时保持合理的成本,仍然是一个重要的挑战。
最后,再讲一下零知识证明,它被用于保护区块链上的数据隐私,非常适合用于医疗行业的电子病历(HDR)场景。
1、Bulletproofs 和 Zk-STARKs 不需要可信设置,zk-SNARKs则需要可信设置;zk-STARKs:通过证明者与验证者之间的交互来执行,以一种有效的数学方法,使得验证者通过验证每一个步骤,最终确信证明者确实知道某个信息或者拥有某种权益。
其特点是:证明快、验证快,但证明体积大 SNARK指无需双方交互,证明人单方出具即可,不需要反复在双方之间传递信息。其特点是:证明慢、验证快,证明体积小。
2、证明速度对比:Zk-STARKs > zk-SNARKs > Bulletproofs
3、文件大小:zk-SNARKs < Bulletproofs <Zk-STARKs
简单一句话:Zk-STARKs 太大,bulletproofs太慢,优点是不用预装,zk-SNARKs最优。
透明设置:设置过程创建一个参考字符串,是公共的,但是并不会产生有毒废料。这类似于 zk-STARK 工作方式。Fractal、Halo 和 SuperSonic-CG 都使用了透明设置方式。这种方法的缺点是证明大小通常很大。Factal 和 zk-STARK 证明可能高达250kB大小,这对于区块链应用来说是不切实际的。
Fractal 团队告诉我,他们正在努力缩小证明的大小。Halo 和 SuperSonic 具有10kB甚至更小的证明尺寸。(注意:zk-STARK 是特定的零知识证明的名称,类似于 Groth16 或 Fractal)
通用设置:设置过程创建结构化字符串(structured reference string),会产生有毒废料,但创建不再局限于单一电路。相反,一个参考字符串可以与无限数量(具有一定上限)的任意电路一起使用。例如 Marlin、SuperSonic-RSA 和 Plonk。
仪式结束后,可以更新这三个构造的参考字符串以提高安全性:如果当前的有毒废料泄漏,则只需更新建立过程来再次保护系统。(一些通用的 zk-SNARK,例如 AuroraLight 和 Libra 使用静态不可升级的通用设置。我们不会在本篇博客中讨论这些内容)。
涉及到比较多的理论知识和算法,需要花点时间才能理解。不过重点还是建议放在这些算法有什么用途,以及如何使用上面。
这个我们平时软件开发的快速迭代是一个道理。唯一不同的是,以太坊是一个承载了千亿资产的金融系统,每次升级资产的安全性和服务的连续性没有收到丝毫的影响。这也是这个项目值得关注的原因。
Q2:方便简单介绍一下 solidity 语言吗?
答:solidity是一种语法非常类似javascript的以太坊特有的脚本语言。它有高级语言的大多数特性,最常用的操作就是对以太坊的账户,账户中的余额进行操作。
solidity非常适合用于实现数字资产,比如ERC20,ERC721,ERC777都是非常常用的数字资产类型。
之前非常热闹的币圈项目资产都是围绕ERC20在做文章,以以太猫为代表的区块链游戏则是利用了ERC721标准。
Q3:区块链平台的迭代,受到公众性的影响,不能太快太激进,比如会有分叉的问题,老师觉得这个问题未来能够解决吗?在软件平台上,通常会出现马太效应,也就是胜者通吃,现在以太坊位居平台第一,是否其他平台就没有机会了呢?非中心化,也就是DAO的理论,好像是从以太坊开始才渗透的,但实际上权力的集中会带来效率,这个问题怎么看呢?
答:首先,明确一点,区块链项目的成功不仅仅取决于技术。V神发文也提到,社区远比代码重要。代码只是实现社区治理和规则的工具。
在解决一些基本问题上,并不会用到很高深的技术。反倒是区块链中的智能合约和通证机制,是组织改进非常核心的内容。
区块链平台的迭代,现在可以说满足不少的应用场景了。但是以太坊是为全球用户服务,所以技术难度会更大。
我们研究区块链,还是更多放在如何将区块链技术落地,改造一个行业,或者解决一些核心社会问题,比如:医疗、教育等。
以太坊的DAO是非常好的思路,去中心化也是相对的,也就是多中心化。PoS的思想就是,干系人关系越大,投票的权重也越大。不是每人都可以投票。
Q4:请问王老师, 接下来以太坊生态中,对于普通的个人开发者,最大的机会在哪里呢?
答:我们面向的未来是一个可编程的社会,有大量的商业规则和逻辑需要转化为智能合约,人工智能解决了生产力的问题,区块链能够更加有效和公平地治理这些生产力。咱们开发者了解这些原理,就可以在具体的某个场景中,帮助实现这些逻辑,贡献社会价值。
当然区块链的底层也有很多技术挑战,但是这更加适合有一定学术研究基础的同学了。
技术参与建议还是放在区块链应用方向,区块链底层不太适合大多数人。
比如做区块链的工具就是很好的思路,像imtoken类似的引用。比如:etherscan这类。
Q5:DApp方向有什么好的建议吗?
答:广义上讲,我觉得有几个方向吧,一个是金融类,一个是个人信息类。金融就是数字资产的交易,投资,增值等,因为这个领域也越来越合规了,监管已经进来。个人信息的隐私保护,越来越被看重,个人信用、健康档案,个人消费画像,越来越需要恢复主权。
Comunion的DAO,这是一个非公司,但超越公司的组织。不同背景,不同角度的思想在一起碰撞,会产生非同一般的效果。
DAO的财务和人员管理,都是非常需要DApp这类工具帮助的。