EOS、以太坊、亦来云,三大公链开发者纵论DApp(上)区块链
现在很多DApp资源还是放在中心化服务器上,因此DAPP就是要求资源也是去中心化。
今天,dapdap给大家带来三大公链开发者对目前DAPP的理解,这是一篇采访稿,由比特大学联合创始人兼法律顾问张烽主持,主要的对话嘉宾有:李刚,EOS开发者,人人通证CTO;古千峰,以太坊开发者,BTC media 亚太区CTO,IPFS原力区创始成员;宋世军,亦来云开发者,亦来云生态应用负责人。
一、什么是DApp
在采访上,张烽提出:“DAPP的概念好象还没有完全取得一致,那么不妨先请各位介绍DAPP概念”。
宋世军表示:“对DAPP目前是各有各的定义。以太坊最早提出这一概念。我们从字面上说decentralized APP,脱离中心化服务器的,脱离中心来运行的,就是DAPP。甚至哪怕有服务器,但这个服务器不受任何中心控制的,就是属于DAPP。”
张烽认为:“DAPP就是去除中心化控制,不受任何中心化的控制。”
李刚认为和宋世杰说的是同一个定义,不过得补充下,那就是:“不受中心化控制,还有一个好处稳定性会增加,比如阿里云服务器,阿里云、腾讯出过事,但如果部署在以太坊、EOS,就不会出现宕机概念。
传统服务器,一是提供资源,二是处理逻辑。处理逻辑以太坊智能合约就处理得很好。但去中心,还有一个是资源。现在很多DAPP资源还是放在中心化服务器上,因此DAPP就是要求资源也是去中心化。”
张烽复议:“不光是运行去中心化,资源去中心化也是很重要的”。
宋世军也提到:“大家都觉得区块链是去中心化,其实对应用来说链就是一个中心,以太坊自己就是一个中心,只是这个中心不能被人控制。”
古千峰:“数据怎么共识,怎么同步,这些都是链上的事情,对于DAPP应用开发者,不用太在意,只要选择一条与自己的应用相适应的区块链即可。”
二、关于稳定性
张烽:“前段时间有一个很火的游戏FORMO3D,非常火。有人比较了一下,他在以太坊上很稳定,但是在EOS上不太稳定、容易被攻破,请大家谈谈这是什么原因,如果这个游戏运行在亦来云上又会是如何?”
古千峰:我对EOS也稍微了解过一点。我的理解是EOS在安全机制上有一个设计缺陷,设计缺陷不是代码层面的缺陷,比如OWNER和ACTIVE的账户机制,我需要授权DAPP使用我的账户,我要把ACTIVE的权限交给他。以太坊有一个对应的APROVAL方法,但EOS上授权以后就很难控制了,这个账户权限问题属于设计缺陷。
还有一个开户问题。EOS的开户,有点象传销。除了某些钱包服务商提供的免费增值服务外,一般人需要找人帮他开户,那么帮他开户的人可能会把OWNER权限拿到手上,等用户账户中有了大量数字资产时,用Owner权限控制这个账户。从比特币到以太坊,账户都是随机数产生私钥,并由私钥通过复杂算法得到公钥。EOS在这方面有很大的不同,也是很多数字货币用户不习惯的地方。
张烽:这个特点在FOMO3D游戏上有体现吗?
李刚:刚才古总说的两个问题。一个是账户权限问题是有漏洞,我觉得其实现在还有漏洞,设计上是有问题。最近有一个RAM泄漏问题,即当你每次发起一笔交易的时候,你可以有一个附言的内容,这个东西会被别人滥用,因为他不仅有留言,还有一个触发机制,你这个合约会触发另一个合约。
比如你给我汇款,我可能是一个智能合约,那么这个智能合约就会触发回调函数,我的回调函数会操纵你的账号的权限给我。我这回调函数就会操作你的账号,他的RAM是要钱的,但是我可能借机往你的数据库插入新的记录。
古千峰:我搞不清楚BM设计这个机制的时候他是有意还是无意。
李刚:我们看到以太坊只提供VM,没有任何其他系统服务,相当于一个CPU,没有文件服务,没有数据库,你自己写一个地址,按地址去读的,甚至可以用汇编去写,结构非常简单。
EOS问题在于设计复杂,更象是一个OS,提供权限管理,以太坊没有权限管理,只有签名。EOS有账号的概念,更象一个操作系统,同时有数据库,以太坊没有的。
以太坊不能太复杂,要是超过交易时间就会被断了。所以说,数据库也是账号权限管理,而且账号还可以互相转让,结构非常复杂。一旦复杂,出错的概念大大增加,比以太坊设计上大两个数量级。推出也才一年,又有权限管理又有数据库,这么复杂的项目,还要把IPFS放进去。
第二种,古总刚才说的开户的费用。EOS它不是真正的一个分布式,他需要开户是因为没有本质的区别,但是这个公私钥本身。但是这个公私钥本身不代码账号,账号在系统的智能合约里,你可以把你创建的公私钥来管理一个账号,或者由两个公私钥来管理。
我们要求是由两个公钥都签名才能交易,他把这个做在系统里面。或者有两个公私钥来管理。有点象以太坊的多签。
EOS的公私钥和账号不是一一对应,而以太坊是一一对应。这就导致账号要帮人帮你创建, 不能天然用公钥来做账号。
宋世军:前面说的都很好的。亦来云和这二者不太一样,当然也有很多地方是一样的。亦来云的话,底层链类似比特币结构,智能合约层面上更象以太坊,在POW基础上,跑一个VM,更象以太坊。如果在亦来云上面做一个FOMO3D上,更象以太坊版本。
但我们还有第三种方式,有一个RUNTIME,可以象写一个普通的PC程序,它在运行在特定的环境,这个环境不是智能合约,更像是函数编程。靠整个代码,类似所见即所得的运行,我们知道智能合约就是从源码证明所见即所得的运行。
如果在亦来云Runtime上实现FOMO3D游戏,前面账号和权限的问题就不会有,更多地是看代码层面上有没有BUG。
张烽:如果代码层面没有BUG,那么在亦来云上跑还是比较安全。
古千峰:RUNTIME,可以跑两个东西,一是智能合约,还有一个编译成一个代码放在RUNTIME里,是两种还是一种?
宋世军:RUNTIME不能完全等价智能合约,是一种可信代码,因为智能合约更多强调共识。这点涉及我们的一个核心价值观,比特币没有计算就是一个简单脚本,以太坊加了一个智能合约,以太坊把记账和运算绑在一起在节点上,这一万个节点计算能力是串行,以太坊运算能力是串行的。
我们是觉得这个世界很多场景可信要求级别不一样,这就是为什么会有POS,DPOS,它们把这可信调弱一点,TPS高一点,这是一种平衡方式。
我们是另一种方式,记录层面上是全网记录,所有节点参加,但是计算层面是少数节点参加。有点象联盟链,比如计算只要有三个人认可,就可以了,RUNTIME有点象这个。我们有一个运行在节点,也可以运行在普通PC上,RUNTIME可以运行在手机上,可以运行在PC,用SPV和链连结起来。
李刚:运算能力可以无限扩展。
宋世军:链层面是BTC,智能合约层面是ETH,再加传统的互联网运行环境。
在这一篇文章中,三位开发者分别给我们带了“什么是DAPP”,“DAPP的稳定性”与fomo3D如果在eos生态上运行有什么优劣性,做出EOS和ETH生态的一些对比。在下一篇文章中我们将带来“DAPP的可靠性和其处理速度”。
部分现场资料来源于张烽(亦来云董事、比特大学创始人)
1.TMT观察网遵循行业规范,任何转载的稿件都会明确标注作者和来源;
2.TMT观察网的原创文章,请转载时务必注明文章作者和"来源:TMT观察网",不尊重原创的行为TMT观察网或将追究责任;
3.作者投稿可能会经TMT观察网编辑修改或补充。