全部版块 我的主页
论坛 金融投资论坛 六区 金融实务版 比特币、区块链与元宇宙
1186 1
2019-10-08

AIU人工智能学院:数据科学、人工智能从业者的在线大学。
数据科学(Python/R/Julia)数据分析、机器学习、深度学习

1EOS的现状

与大多数数字货币类似,EOS使用区块链来记录参与者的转账信息及市场行为。由于每个区块总是指向前一个区块,因此一个区块链条包含了所有在网络上发生的交易信息。区块链是一个公开的、可审计的账簿,每个人都能够查看详细数据,并验证交易、市场订单和买卖盘数据。

如果比特币成功地把货币的理念带给了大家;以太坊主要实现一个图灵完备的训练机,并引入智能合约。那么EOS的最大价值则是商用,EOS的所有价值都是围绕商用来的。EOS在各个点的极致优化上,都是围绕解决商用的问题。它最终的目的,是希望真真正正把区块链技术像Windows系统一样带给大家,系统上运行着很多DApps

首先,RC(Release Candidate/发布候选版)1版已经完成,大家在GitHub上可以看到。包括很多的见证人和很多节点的候选人,在官方的组织下已经跑起来了一些测试。

第二,官方和社区测试网络已稳定运行——测试网络以实现几千左右TPS。

实际上,EOS官方和社区测试的网络已在稳定运行,测试性能在1000-3000 TPS,跟BitShares的测试性能基本一致。当然它声称可以实现百万级TPS还没有实现,但毕竟在它真正发布出来之前,我们谁也不知道它最后会采用一种什么样的方案。我推测可能是跨链,多个链条无限扩容这种形式。

第三,EOS VC的合作伙伴已经有4家,总金额共计6亿美元,为的就是共建EOS生态。如果EOS VC认为比较好的项目,Block.one可能也会跟着投一些钱,来支持这个生态的开发。

第四,目前已有超过70家的见证人节点参与超级节点的竞选。此外,有多个知名的项目正在迁移到EOS上,比如Bancor项目。

2EOS vs以太坊

首先,EOS有非常好的可扩展性

这个可扩展性跟它的并行处理能力是比较相似的。总体来说就是它的性能相对较高,不会有几个DApps比较火就影响到整个系统的情况。

第二是免执行智能合约

这是作为一个商业应用公链的一个必备因素。

第三是对抗DOS攻击的能力

主要是指粉尘攻击。比如其他绝大多数的区块链项目为什么都涉及到转账的手续费?它们真的要收这点钱吗?其实不是,其本质是链上的左右交易都需要矿工把信息给记录下来,如果不收钱会造成大量的请求发布到网络当中,从而造成网络拥堵。

一旦收取手续费,就不会出现一些恶意的转账了。EOS如何避免这种情况呢?做法是假如你持有1%的EOS,那么你就有整个网络1%的使用权,你持有50%就有50%的使用权,不能越界。假如你持有10%,但你用不了这么多,你可以租借给别人,收取一定的费用,通过收取这个费用也可以抵消整个通胀带来的一些负面影响。

第四是高级用户账户的管理能力。

EOS本身的设计是面向用户的,就像我们现在所熟悉的互联网产品一样。比如「找回密码」功能,用户在最开始的时候设定一个辅助找回用户,如果自己的密码丢了,可以加辅助找回用户共同协作,把密码找回来。

这个在技术上是不难实现的,但却给DApp的落地提供了很大的便捷。区块链项目不再是高高在上,而是真正走进我们的生活。

第五是完善的社区管理方案和区块链宪法

本质上来说,真正用代码去实现的机制管不到所有场景,所以现在BM希望引入一些人治的机制。大家共同约定好一个宪法,然后根据这个宪法来写合约,如果有人违背就施行一些惩罚,就像现实社会中的情况一样。

3BFT-DPOS共识机制

这个DPoS就是--持有多少票就有多少话语权的机制。整个DPos机制就是一个投票决定,在DPos机制里面,系统会选择得票最高的21个节点(100个备选节点),这个数字是可以更改的。这21个节点选出来后,整个路径的规划方案就已经选好了,分别选取延时最小的路线,希望在0.5秒之内能够进行确认,能省一毫秒就省一毫秒。这21个节点就开始出块。

这会有一个问题,就是假设每个节点确认出块的时间是3秒(在EOS里,一个见证人是连出6块,0.5秒一块),那么整个确认流程就要1分钟,这是无法接受的。怎么办呢?就是引入BFT共识机制。

aBFT(异步拜占庭容错)的方法是,一个节点出块完成后立马广播给其他20个人,不按固定的顺序。这20个人在0.5秒内收到广播后就会给你一个反馈。只要超过15个人确认,这个信息就不可逆了。这样整个时间从一分钟就缩短到了0.5秒。

除此之外,每个主力见证人节点通过协商方式确定各自出块顺序并且每轮产生6个区块以减少网络延时的影响。在达到不可逆的状态之后就不发分叉,这是DPos的一个优点,因为大家是通过投票来得到一个共识的。

备注:每个EOS可以投30票,投票时需要将EOS质押3天,在质押的三天中,EOS不能取出,三天后可申请赎回。

所以,只有这21个超级节点才有权利进行挖矿,其他节点没有权利挖矿。根据EOSGO给出的竞选资料来看,要成为这21个超级节点,服务器至少要达到亚马逊AWSEC 2主机×1.32×large型,128核处理器,2TB内存,2×1920GB SSD,25Gb带宽。

超级节点承担的责任:

1.收集网络里的交易;

2.验证交易并把交易打包到区块;

3.广播区块给其他节点,在通过验证后将区块添加到自己本地区块链上。

4.维持EOS整个生态系统的稳定。

4EOS智能合约

EOS的智能合约使用C和C++作为编程语言,未来可能也会有Go或其他语言。底层采用WebAssembly JIT虚拟机。

另外,EOS已经拥有完善的开发和API文档。实话实说,虽然文档比较完善了,但现在例子其实还不够多,比如做一些智能合约的话,除了官方的文档之外其他的资料非常少。

EOS还支持STL开发库,现在C、C++语言中的一些非常成熟的库,我们就可以通过这种方式把它引入进来,降低开发成本。然后它采用的是zlib压缩算法,压缩智能合约体系。

5EOS的合约并行执行机制

说到EOS的合约并行执行机制,其实目前只是一个规划方案,还没有实现。我们知道,在以太坊上,这套机制其实是一个单线上同步执行的一套机制。相对于同步,异步的效率会跟高一些。EOS对智能合约的并行化处理将会在账户层,将不同账户的合约分配给不同“线程”同时并行异步处理。

因此,EOS可以看做是一台并行执行的程序,可以随时扩充创新计算机。从设定上来说确实是这个样子。但具体的落地,还得看整个开发的推进。

6基于通胀的Gas支付体系

在EOS中,用户不必支付任何燃料费用的开发者也并不需要直接支付代币来支付燃料费用,燃料费用本质上由系统通胀来支付。这是EOS跟其他项目的一个最大区别。

如果希望让整个系统的所有操作都免费的话,就需要做增发。目前EOS的年化通胀最高为5%,现在根据市值和节点的增加,可能跳到了1%或1.5%。具体多少,要看发布时的情况,我估计会有一个宪法来确定已多少年化通胀率来发起这个链。

另外,所需要的锁定代币的数量视乎于TPS以及合约所需要的执行时间,本质上跟你能使用的资源是成正比的。锁定了多少代币,就可以调用多少资源。由于代币总量和EOS的总处理能力是恒定的,因此不可能遇到垃圾流量攻击。

还有一种观点是,超级节点可能会进行一些资源上的扩充。为什么呢?我们拿到工资之后,随着EOS的DM上面的增多,它可能会对这个需求就会越来越大,在这个层面上,超级节点肯定会拿出一部分的资金进行整个系统的扩容。也就是说,EOS的处理能力会越来越强。



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2019-10-8 09:30:57

7侧链和子链跨链机制与默克尔证明

这是EOS的一个创新之一,基于EOS.io开发的联盟链,侧链,子链都可以通过其内置的跨链机制与其他同样基于EOS.io的区块链实现高速的跨链价值转移和信息传输。不过跨链具体怎么实现,现在还没有定论。可能是由多条链来处理不同的任务,但在多条链上面,所有的EOS是需要打通的,也需要各个链上都能打成一个共识。

另外,通过Dpos共识机制,跨链传输仅需0.5秒确认时间,不可逆确认仅需1秒。而且轻量级默克尔证明(LCV)与比特币的SPV相比,验证速度更快,需要传输的数据更少,更适合跨链操作。

未来可能会出现三种情况:

超级节点需要保存各个链上的全链数据;

只保存某个DApp和某条链的数据;

甚至有了轻客户端,完全不用保存数据。

可以看出,EOS在不断地做一些优化或妥协,希望把这个平台变得更加商业化,更可落地。

8令牌模型与资源使用状况

所有区块链都受到资源限制,需要一个系统来防止滥用。使用EOS 的区块链IO 软件,有三大类资源由应用程序共同使用:

1. 带宽和日志存储(磁盘);

2. 计算和计算积压工作(CPU);

3. 状态存储(RAM)。

8.1EOS Storage

EOS Storage的核心是IPFS,它本质上是个协议,不一定是Filecoin。这个Storage其实也是通过超级节点来为用户提供服务的,通过Storage的功能这些超级节点给大家提供一些去中心化的存储。本质上,这个东西依托IPFS协议,特性也很相似。开发者通过抵押EOS代币,获得Storage的存储空间和使用权限。

关于用户的权限与管理,正如上文所说,EOS跟以太坊的区别在于它的账户是可以找回的,不像其他平台是一串哈希值,EOS的账户名称是可以自定义的,甚至合约也可以取一个自己的名字。这样更贴近我们的使用习惯。

8.2RAM

8.2.1获取方式

EOS.IO 软件允许所有帐户由长度高达 12 个字符的唯一人类可读名称引用。名称由帐户的创建者选择。帐户创建者必须保留存储新帐户所需的 RAM,直到新帐户投注令牌以保留自己的 RAM。RAM是一种消耗性资源,必须通过购买方式得到,而且不可赎回,使用多少就被消耗了多少。

在EOSIO系统的实际用例中,RAM是用来在区块链上存储数据的必备资源,存储的数据越多,需要的RAM越多。也就是说,大量的操作都需要消耗RAM来存储数据,比如创建一个EOS账号、创建一个EOS智能合约、进行EOS转账等。再比如,在EOS上创建一个EOS账户,需要大约4KB RAM。包括项目方进行空投的时候,也是需要购买RAM来进行操作的。

为了保持超级节点的高效运行,RAM总量是有上限的,10亿EOS对应64G内存总量。RAM的价格基于Bancor算法,可简单理解为由市场供需决定,如果RAM供不应求,则买入RAM时就需要锁定更多的EOS;同时,卖出RAM也能获得更多的EOS。

需要注意的是,RAM不是通过买卖双方直接交易实现,而是通过链上购买的方式获得,本质是通过EOS Token在系统账户实现买卖,即不论是购买RAM,还是卖出RAM,都是参与者与系统账户之间的一种交互。

8.2.2发币需要等值于1300个EOS的RAM消耗

买卖RAM都是需要手续费的。双向收费每次为0.5%。为了保证网络的开发能力,BM建立了RAM的交易市场eosio.ram,让开发者有足够的资源可以使用。购买RAM时eosio.ram收取0.5%的手续费,出售RAM时也收取0.5%的手续费,整个交易是1%的手续费。这些手续费都是销毁的,用来通缩EOS。

8.2.3RAM价格的计算公式

这个交易市场的特点是:买卖公开透明,所有交易方都可以在查询;是与eosio.ram进行人机交易,系统根据bancor算法自动来定价;买家和卖家不需要像中心化交易那样竞价交易,只需要操作买卖数量;市场里没有假币,不能改数据库数据;也没有多空双爆,就是根据真实的买卖需求来。

那么,为什么RAM要通过交易获得,而NET和CPU是按照EOS持有量的比例来抵押获得呢?

BM的设计动机并不难猜测,那就是在缓解EOS的RAM供应压力的同时保证其的充分流动性。因为普通用户一般用不到RAM,通过交易的形式,可以让DApp的开发团队获得更多的内存。

拿在EOS系统上发币来说,通常发一个币需要20M的内存。目前RAM的价格约为0.063EOS/KB,那么就需要消耗1300个EOS。这也算是一种RAM的刚性需求了!

关于RAM的买卖这里就不赘述了,目前,绝大多数EOS钱包都支持RAM的买卖,按操作流程交易即可。

8.2.4RAM价格过高的治理之路

正因为RAM的市场化设计,使得EOS主网刚上线,就遭遇到RAM的爆炒行为。RAM价格从6月19日的0.017EOS/KB,一路飙升至0.92EOS/KB,创造了仅用10余天暴涨近53倍的“熊市”独特风景线。

更恐怖的是,在炒家争先恐后地抬高RAM价格的时候,RAM的占用率一度达到近80%,其中有75%都被投机市场控制。

我们知道,对EOS的DAPP开发者,RAM是很宝贵的资源,大量的操作需要消耗RAM。总量有限又有刚需,这就造成了RAM的稀缺性。随着EOS的DAPP越来越多,RAM不断地被开发者购入,如果再有投机者囤积RAM,那剩余可用的RAM就越来越少,购买RAM所需要的EOS就会越来越多,也就是说RAM的价格会越来越贵。

爆炒之下,项目方也意识到了价格畸形的状态有违初衷,对EOS系统的生态发展也构成了巨大的威胁,于是,BM通过官方电报群表示要“通过提高供应量来致力于解决RAM价格过高的问题”,随后,一系列诸如“EOS DRAM机制”、“RAM扩容”、“侧链开发”、“降低用户账户消耗”、“增加SSD作为RAM增加物理内存供应”的措施使得RAM的价格开始逐渐回归正常。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群