1.1.4 dApp和智能合约的效率
从以上的特性可以推导出的一件事是:基于公链的移动端应用不好做。 首先,是技术层面的困难。移动端计算性能和存储空间受限,对于任何 dApp 来说都难以在移动端上跑公链的全量节点。因此,如果预期 dApp 的主要应用场景是在移动端,那么会面临网络贡献量与使用量不匹配的问题。
其次,是政策方面的困难。无论在任何一个国家和地区,拥有移动市场半壁江山的苹果,都遵循需要有一个应用开发者来承担应用可能带来的侵权风险的原则。这导致一些基于社区开发的开源项目,无法登陆苹果 App Store,因为事实上没有人可以为应用中的内容负责。这种冲突,有点类似于实体经济中的共享经济,共享经济瓦解了酒店集团、出租车公司的利益,同时分散了他们的责任。一旦出现事故,难以确定责任主体,也就无从谈及追责和赔偿。
其三,「不可篡改」=「无法消错」。我们早前经常听说区块链是「不可回滚」的,后来我们又听说很多区块链社区投票一致实现了「集体回滚」。区块链本质上是一种数据库技术,在当今的大部分认知中,区块链被认为是一种「先进」的数据库技术。然而事实上,区块链却是一种天生瘸腿的数据库技术。在数据库最基础的四大功能「增删改查」(CURD)中,区块链只能实现增和查两项。这在区块链的特性中被体现为「不可篡改性」,而大多数情况下这对于一项数据库技术来说并不是什么好事。在传统数据库中,管理员拥有对数据库进行任意修改的权限,这意味着数据库中的数据出现异常,管理员一个人就可以实现数据的修正。而在区块链中,并没有这个管理员,想要实现数据修正,必须所有用户同意才可以。
为进一步说明这个问题,我们假设有一个顶尖黑客通过漏洞,为自己的 QQ账号增加了 100 万Q币。腾讯技术部门的成员发现了这一问题,只要在数据库中将对应 QQ 的 Q币值改回去就可以了。 而如果此时,Q币是使用区块链存储的,那么麻烦就来了,因为这个黑客修改100万Q币的行为已经发生而且被同步到了每一个用户的手里,那么腾讯不得不发出一个公告「请求」8 亿 QQ 用户共同修改这一事实才能「回滚」。这一问题不仅仅针对数据,而且也是对于智能合约。
另外,dApp在以太坊这些新一代区块链技术中,主要通过智能合约实现。各节点全部不仅要存储全部智能合约,包括绝大多数垃圾合约,而且需要运行同样合约,既浪费存储又浪费算力。
版权申明:本内容来自于互联网,属第三方汇集推荐平台。本文的版权归原作者所有,文章言论不代表链门户的观点,链门户不承担任何法律责任。如有侵权请联系QQ:3341927519进行反馈。