加入收藏 | 设为首页 | 会员中心 | 我要投稿 甘孜站长网 (https://www.0836zz.com.cn/)- 运维、物联设备、数据计算、智能推荐、云管理!
当前位置: 首页 > 运营中心 > 建站资源 > 经验 > 正文

区块链真能改变世界?细谈区块链应用落地的六大挑战

发布时间:2018-09-18 12:23:23 所属栏目:经验 来源:佚名
导读:很多人都说2018年会是区块链商用化的元年,但2018年都过大半年了,区块链距离改变我们的生活还非常远,除了ICO可作为募资跟投资的手段之外,区块链的应用可说是寥寥可数,目前排行最热门的DAPP,其DAU最多也不过数千人,连早期试用者都还很少,更别提什么
副标题[/!--empirenews.page--]

很多人都说2018年会是区块链商用化的元年,但2018年都过大半年了,区块链距离改变我们的生活还非常远,除了ICO可作为募资跟投资的手段之外,区块链的应用可说是寥寥可数,目前排行最热门的DAPP,其DAU最多也不过数千人,连早期试用者都还很少,更别提什么改变人类生活了。

区块链真能改变世界?细谈区块链应用落地的六大挑战
▲去中心化应用的DAU非常低

如果要票选21世纪以来最被炒作、吹捧的技术,区块链绝对会榜上有名,由于区块链是多个计算机科学技术综合应用的产物,其运作逻辑与限制,对普罗大众来说并不是这么好理解,这导致很多所谓的媒体、专家、政治人物,都错误理解了区块链的特性,你听这些人讲区块链,会错认区块链是万灵丹,似乎任何难题只要套上「去中心化」、「区块链」就能解决。

本文将尝试用较浅白的语言,让大家了解区块链应用落地的六大挑战。

挑战一:效能与可扩展性

区块链的应用,也就是DAPP,必须运行在「支援智能合约的底层链」上,我们可以把底层链想像成是如Android或iOS的作业系统,如果作业系统有问题,运行在其上应用程式当然也会有问题,目前底层链的最大问题,就是效能跟可扩展性不足,拿以太坊为例,以太坊的TPS (transaction per second ——每秒能处理信息交换量)约在15 ~30的水准,做个对比,VISA的TPS平均是2,000~4,000,其峰值可达到25,000 ,两者根本不在同一个水平,这也是为什么去年加密猫跟今年的FOMO 3D虽然用户不多,但却足以瘫痪以太坊,让网路交易塞车的原因。

区块链真能改变世界?细谈区块链应用落地的六大挑战
▲区块链的TPS 远低于 VISA

为什么区块链会跟传统中心化系统(如VISA)的效能有如此巨大差异?主要原因在于区块链是分散式帐本的技术,不管是什么DAPP,其运算结果都必须同步在每个节点上才能算达成共识。这就好比一群人做决定,必须经过讨论才能达成共识,但一个人做决定只要过自己这关就好了,前者一定会比后者慢。

所有区块链系统都无可避免的会遇到三个因素的平衡难题—— 效能、安全性、去中心化,这三者不可能完美兼顾,目前主流公链如比特币跟以太坊,都是往「安全性」与「去中心化」靠拢,而牺牲了效能。

但只要效能问题一天不解决,DAPP 就无法落地成为大规模应用,很多顶尖的电脑科学家都千方百计想优化区块链的共识演算法,试图解决效能问题,于是就有了「千链大战」,各种底层链项目如雨后春笋般不断冒出,很多项目都声称其链的TPS 可达数十万甚至百万以上,但或多或少都有所妥协,像是EOS 牺牲了去中心化特性(只有21个节点),而IOTA 则牺牲了安全性(没有矿工机制,节点作恶代价低)。

挑战二:更新不易

众所周知,所有的公链都是开源项目,一般人若想成为节点,必须下载其开源软件才能参与网路并共同维护帐本,每个人都运行一样的软件,才能让节点间的帐本能够同步。换句话说,如果今天有工程师优化了共识演算法,推出新版本的软体,也必须让所有节点都买单下载,才会让改版真的成功。

但问题是,共识算法的更新,往往会牵涉矿工节点的利益。举例来说,目前业界的普遍看法都是PoW虽然安全但太没有效率,新一代的区块链往往采用PoS或是DPoS,于是乎原本用PoW的区块链,也想改成PoS或DPoS ,但如果撤销PoW机制,原本矿工花大把钞票购置的的矿机就瞬间变成废铁了!矿工当然不愿意这么做,这正是以太坊目前所面临的问题,在可能冲击矿工利益的状况下,以太坊的工程师社群只能渐进修改共识机制,不能躁进,不然矿工会不愿意下载新版本的软体而导致帐本分岔。

这就是区块链奇耙的地方,因为它是分散式的系统,即便工程师想更新软件,也得网路的节点都买单才行,这加深了区块链技术更新的难度。

挑战三:责任归属问题

区块链去中心化的特性,使出事后的责任归属变得相当困难。举例来说,假设某银行被骇客入侵,受害者可以找银行求偿,但如果区块链被51% 攻击,用户必须自己承受所有的损失,对于已经习惯中心化系统的人来说,这样的「特性」是很难接受的。

挑战四:不能保证上链内容的正确性

区块链虽然可以在一定程度上确保帐本不可被窜改,但是却不能保障内容写入区块链前的正确性,举例来说,一个洒农药的香蕉,仍然可以在农产品履历追溯的区块链写上自己的香蕉是「有机」的。

其实光这点就可以打破很多人对区块链的应用的想像,举例来说前阵子柯文哲曾表示想要用区块链纪录选举募款金额,以避免名嘴追杀,但事实上,就算真的把募款金额上链,我们也不能保证上链的募款金额是正确的,或是真的把每一笔募款都上链了,在无法确保这两件事的前提下,用区块链纪录募款金额只不过是脱裤子放屁罢了。(微信公众号:币圈实操指南)

同样的问题,也出现在智能合约的触发条件上,举个例子,假设有个DAPP 是世界杯博弈的应用,今天有个赌局是赌德国足球队是否会赢球,用户用以太币跟庄家对赌,假设德国队真的踢赢了,由于这个讯息独立于区块链之外,智能合约必须仰赖外部输入「德国队赢球」这个讯息才会触发打币的条件,这时候会面临两个问题:

一、谁来输入「德国队赢球」这个讯息

二、谁来确保「德国队赢球」这个讯息是正确的

你可能会说,智能合约可以接世界杯官网的API 啊,官网的资讯总不会错吧!这时第二层问题就来了,你怎么能确保这个智能合约接的API 是正确的呢?如果合约代码有后门怎么办?

通常这类的问题,会由投票的方式决定,也就是说只要过半数用户认可「德国队赢球」这个资讯,它就自动会成为触发智能合约的条件。

那我们再更深入地问一个问题,德国队赢球是大众可认知的讯息,但如果智能合约的触发条件无法被大众认知,只有少数人能够知道呢?这样就不能用投票的方式解决了,势必要找公证人来当讯息的输入者,但问题又回到原点,如果要找公证人,那我还做智能合约干嘛,干脆写法律合约就好了…

所以看出问题了吗?智能合约的应用范围是有限的,只要智能合约的运作需要输入外部讯息,合约本身怎么设计就会变得比较复杂,智能合约并不能取代所有的传统合约。

挑战五:需要审核智能合约的代码

DAPP 的智能合约代码会写在区块链上,这意味着代码是公开的,可供大众检视,但一般民众看不懂代码,如果真的要确保代码没有问题,势必得要找一个公正的第三方审核代码的安全性…

等等,区块链本身不是就是要「去信任」(trustless)吗?怎么这时候又要找第三方了?

(编辑:甘孜站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读