首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

【许晓笛】重新理解EOS的系统架构

如果区块链智能合约系统想追求类似比特币的去中心化程度,理论上效率就会大打折扣。现实也是这样的:比特币每秒钟只能处理7笔左右的交易,每一笔交易要用至少30分钟才能确认,这种效率和速度是远远不如银行转账的。作为一个全球资产交易平台,比特币这样的效率或许可以接受,但对于智能合约平台这样的效率是远远不够的。因为在智能合约中,每一个动作都可以看成是一笔交易,例如五子棋游戏合约中,每下一步棋就是一个交易,用户是无法等待半个小时才能确认一步棋的。所以想要实现真正实用的智能合约平台,就要脱离比特币系统的架构,寻找新的系统组织形式。

03

区块链钱包开发原理,系统开发搭建分析

矿工通过getblocktemplate协议与节点交互,或矿池采用stratum协议与矿工交互。即为矿池的两种典型搭建模式。   与getwork相比,getblocktemplate协议让矿工自行构造区块,因此使得节点与挖矿完全分离。矿工拿到一系列数据后,开始挖矿:   1、构建coinbase交易。   2、coinbase交易放在交易列表之前,构建hashMerkleRoot。因coinbase、以及交易次序均可调整,因此hashMerkleRoot空间可以认为无限大。因此getblocktemplate协议也使矿工获得了巨大的搜索空间。   3、构建区块头。   4、挖矿,即矿工可以在nNonce、nTime、hashMerkleRoot提供的搜索空间中涉及任意的挖矿策略。   5、上交数据,如果挖矿成功即提交给节点,由节点验证并广播。   getblocktemplate协议的问题:   1、矿工通过HTTP方式调用RPC接口向节点申请挖矿数据,因此网络中最新区块变动无法告知矿工,造成算力浪费。   2、每次调用getblocktemplate,节点都会返回1.5M左右数据,因频繁交互将因此增加大量成本。   Stratum协议将解决上述问题。

03
领券