公链课堂(三)公链开发的困境

我们从来不曾怀疑科学技术是第一生产力,就像21世纪,互联网颠覆人类传统交流方式和生活习惯一样,社会在不断进步,科学技术必然也在与时俱进,在区块链逐步走入大众视野的同时,很多人断言,它将开启一个新的时代。然而,区块链发展至今所面临的困境也不少。就拿2018年炒得火热的公链项目来说,开发公链的人不在少数,但是落地成型的至今罕见。

公链开发面临的问题

1.性能与去中心化的冲突

通常来说我们遇到的公有链要么就是性能差要么就是去中心化的程度比较差,也就是说性能和去中心化几乎是鱼与熊掌不可兼得的状态。选择很强的性能,就不得不放弃高度的去中心化,想做到去中心化程度强,有很多节点,就不得不面对性能差的问题了。总体来说,性能和去中心化之间暂时无法调和的矛盾是当前公链开发要解决的最主要问题。

大家都知道,在公有链的领域,共识协议非常重要,因为共识协议决定了公有链的安全边界和安全程度,以及他的性能上限。比特币和以太坊用的共识协议是POW协议。不过现在,以太坊的共识协议也在不断优化。以太坊联合创始人Vitalik Buterin在4月初的以太坊核心开发会议上曾说道:“以太坊不是比特币,矿工们无法控制以太坊,如果他们开始变得贪婪,那我们只会加快Casper的发展,实现可能性较大的就是采用POS+POW协议。还有一些公链采用POS协议。

先拿POW协议来说,该协议规模化特别的好,但是同时也存在不可避免的硬伤,那就是速度很慢。相比而言,POS协议规模化同样很好,但是通常来说他有分配不均和富者恒富的问题,目前,公链较少的单纯使用POW协议。

还有一种共识协议交PBFT协议,通常使用在商业的SELL部署的网络中,它本身性能非常高,但是由于PBFT协议要求节点之间相互通信,所以当节点增多的时候,速度就会变慢,也就是说PBFT协议不能支持非常多的节点数量。

2.开发难度高,人才稀缺

公链的开发离不开高端技术人才。从2008年到现在,对公有链控制权的争夺逐渐提上日程。从比特币到以太坊,再到年初被捧上神坛的EOS,拓荒者的故事被多重演绎,但链的性能似乎并不够完美。

揭开区块链的神秘面纱,其底层语言并非高深莫测。基本上就是Go语言、C++、Java这些主流语言,准入门槛看起来很低,实则不然。区块链是综合学科,涉及到密码学、数学、经济学等多个学科,仅仅会写代码很简单,关键是还要具备区块链思维。从事公链开发,必须掌握共识机制和分布式存储这些概念。看上去没有新的技术,但是将理念与实践融会贯通才是真正最难的地方。

同样是做技术,公有链开发者千金难求,在现有的公有链上直接开发应用的技术人员就相对较多,所以说公链开发从0到1是个非常艰难的过程,这是一段不断试错,不断调整的征程,难以攻克的技术关卡是最大的挑战。其次,如何将理论落实在实践中,让区块链技术真正服务于商业应用才是公链开发的核心所在。

亲爱的小伙伴们大家好,感谢大家阅读本周公链课堂。欢迎下周继续关注!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181123G1MUZX00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券