前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >BTA | 厉晹Roy Li:浅谈区块链技术在企业级应用中的实践

BTA | 厉晹Roy Li:浅谈区块链技术在企业级应用中的实践

作者头像
区块链大本营
发布2018-05-11 15:35:36
9590
发布2018-05-11 15:35:36
举报
文章被收录于专栏:区块链大本营区块链大本营

厉晹用三个词来开场,Ropsten / Kovan / Rinkeby,他指出,这三个词都是以太坊网络的名字,但是又有多少人真正知道其中的意思。在此基础上,他讲到了公链应使用什么样的共识机制,为什么区块链技术的迭代难度比传统技术难很多,以及目前区块链技术的发展阶段。以下为厉晹的详细分享,希望对你有所帮助。

厉晹 Roy Li简介:

Ruff Chain创始人 & Ruff CEO,知名网络安全专家,区块链资深专家,复旦大学硕士生导师。曾任Verisign, Trend Micro安全顾问,Nokia 北美技术总监。Ruff Chain是一个基于物联网的全新区块链底层架构平台,有去中心化、开放、开源和高效的特点,致力于实现物联网领域真正的去中心化物权交易。

以下为厉晹的分享实录:

我今天的话题是区块链技术在企业应用的实践。

近来,由于市场环境不好,很多人说区块链技术由于基础设施不成熟,还在很初期,很难落地,所以市场上很多Token都会变成空气币。我认为我们不能一棍子打死。

市场上确实有一些技术不是很成熟,落地性能很差的应用,但是,还是有一些技术离企业级比较近的应用,在这个过程中,我们要站在一个比较理性的角度分析,而不是拍脑袋。

我们自己本身是做企业级应用的,中间做了很多的探索,也做了很多技术分析。那么,是不是能满足比较高的TPS就一定好呢?

不是。当然TPS是一个比较好的指标,但除此,你还要看出币方式,还要看通过什么方式解决区块链问题。我想知道在座的多少人是真正对区块链了解的,这三个词有多少人知道是什么意思?这三个词背后的历史,你了解了之后,你出去可以给人吹一壶了。

Ropsten / Kovan / Rinkeby

其实这三个词都是以太坊测试网络的名字,这三个都是可以选择的以太坊的测试网络,以太坊出现了两个客户端,Geth 是第一个客户端,由于它的性能不是很强,它要同步的速度很慢,后来做了一款以太坊全节点的软件,是用 last 语言写的,后来由于这两个版本的客户端互相之间产生一些兼容的问题,导致以太坊的测试网络为了照顾兼容性,测试网络做了比较大的修改,最后就变成了 Ropsten。

后面还有两个测试网络,因为以太坊的物质机制是 POW,这个 W 是有成本的,矿工是有成本的,所以最早期的时候以太坊的测试网络由于它的币价很低很低没什么价值,另外一点它本身不可能拉到非常多的算力支撑以太坊的测试网络,所以它就很容易被恶意攻击。因为整体网络的算力不够大,大量的攻击把这个 Ropsten,出一个块一千万是最高的 gas,475万的 gas 被攻击到一个块90多个亿的 gas 了,根本不能玩了。

Ropsten 首先不能在这么低的情况下使用 POW,所以他们就使用了一个 POA,最后这个概念就变成了 Kovan,是基于 POA 的网络。比如你是一家知名的机构社区里很牛的人,我信你就让你成为一个,所以它很像 DPOS,但是它不是通过投票选出来的,是通过社区里公认你这几个就是比较大的节点,所以他就干了这个事。基金会也觉得这个东西挺好的,我们不能再用原来的方式,于是自己也做了一个 POA 方式的测试网络,叫做 Rinkeby,这些就是这三个词汇。

这个故事告诉我们,任何一条公链在它早期能启动的时候,你们要注意一点:最开始的时候很难做到非常非常高的去中心化,POW 是想解决去中心化的问题,它的算力非常分散。但是在早期的时候相对比较集中,我们所谓去中心但是不是无中心,可能有多个比较集中的中心,更加适合网络的启动。

同样 LTA 你们听说过吧,它有一个中心化的协调器在协调做这些,关于矿工打造的问题他们是用这个方式。早期的企业级应用你要做条公链的话,最开始启动时必须要考虑到这样的问题。所以你可能用 POA 的方式固定一下,跟大家讲这个小历史,一方面你可以跟别人吹,在座的有志做公链开发的话也要注意,早期你们有非常强算力支撑的时候你如何能启动。

公链应该使用什么样的共识机制

下一个话题就是一个企业最早如果想要做公链的时候,你们第一个需要面对的是你到底使用什么样的共识机制?比如说BFT容错率很高,但是它有个问题,这个Scalability,它的性能和节点的平方成反比,就是说你节点多十倍的话,你的性能就会下降100倍,根据超级账本所带来的数据,包括很多人做的分析,你达到一百个节点的时候你BFT就很难再运用了。

但是好处也在此,你即便 50% 的节定都是鳄鱼节点依然不会有太大的影响。DPOS 是我比较推荐的,做公链的时候早期可以用这个,你通过 DPOS 的方式过渡,当时也有用双层的 POS 也是一样,但是它的问题在于有比较大的Scalability,这点对于比特币本身不是一个非常大的问题。因为我是搞安全的,安全的瓶颈绝对不是在那一层上,它其实有更多的问题,SPV 的节点被证明即使它不存整个块的数据,但是依然保证比较高的安全性,因为你最后发现有一个长短链的 POW 的机制。但是 DPOS 就会有很多这样的问题,在 DPOS 的过程中你是轻节点,不存储所有的数据的话,这当中会有问题。

另外 DPOS 的投票机制被设计就是相对比较容易攻破的点,这些都是考虑的。POW 肯定是最好,但是我前面讲过了,在你全网的算力比较低的情况下,或者是你本身币的价值不是很高的情况下,POW 会出现一些问题。

另外一点就是我们做 CAPA,现在很多基础设施是想解决区块链某方面的问题,其中就包括了 Sharding 分片技术,分片技术现在也不是很成熟,但是也是大家比较公认的方向,我不需要把全网分成很多区块并行做我想做的事情。这个 Cluster 包含了合约的执行,比如 US 干了一件事,US 是我觉得特别有意思的,由于合约在执行过程中它的依赖关系,会导致我本来想并行执行合约是很困难的,你给我把数据整理的好,我的并行执行效率越高就给你的奖励越高,US 干的这个事非常有意思,这是我们在 Cluster 领域里都在想解决的问题,US 把问题交给打包者了,你爱怎么打包怎么打包,我解决我想解决的问题,做这类的企业我还是比较钦佩的。

最后 Optimization 更多的是节点端本身的优化,gas 你本身的记账节点是有限的,你在规定的出块期间内能达到的 gas 是有限的,基本上就是那个量级如何提升量级,以太坊不是 TSO 的模式,它用了 400 多个G内存,这400多G 的读写是个问题,有人提升数据读写的能力,现在市场上在干这个事,这都是非常有意思的。当这些技术慢慢成熟的时候,现在区块链扩展技术会变的强很多,你的硬盘能达到瞬时读写的性能,理论上 gas 可以提升非常多,这个是 Optimization 需要考虑的。

区块链技术的迭代难度比传统技术难很多

为什么区块链的技术迭代比传统的会难,是因为区块链本身分布式系统所面临的问题和中心化系统面临的问题不一样,可能会大相径庭。比如 US 里,他的白皮书里有一段是这么些的:兆与兆之间的原子交易,原子性就是不可切分,多兆之间的原子性只能是串性执行不能并行执行。你优化的时候,你会发现这些有 80-90% 的冲突是可以避免,只有像交易所之类的前后已经理不清楚的关系可能会有1-2% 的可能性,这样你是处理不了的,但是在绝大多数情况下可以处理的。第二是Storage,前面有企业说他加了 IPFS,IPFS 的问题很大,性能现在没办法保障,这点我问过很多做 P2P 的高手专家,表示目前非结构化的数据存储就是无解的,很难真正做到像 IPFS。

我个人是比较看好 IPFS 的未来,但是它现在落地性的问题基本上是没有解。最后一个就是 Contract 合约,合约的立即执行,如果你用 UTSO 的方式很容易就把它给执行了。我前两天跟帅初聊这个他就说:合约是非常复杂的东西,合约中间的冲突不一定是兆之间的冲突,很有可能是别的东西的冲突。

目前来讲合约还是比较初级的阶段,我们如何能更高效地调整合约的执行顺序,找到合约之间的关联性调整它们的顺序,高效地执行合约,这也是未来的发展方向。

区块链技术正处于理论到实践的阶段

最后一点我认为目前所有做区块链是处于从理论开始到实践的阶段,到 2019 年再谈区块链,你如果没有实践的技术你不要再跟我说链。我认为 2017 年你可以做,尤其是从2018年开始已经很难这么做了,大家觉得太多的人去吹他自己的东西,包括有一些吹十年之内未能拿的到的东西,他们在落地上都有问题。

现在看相对比较成功的链它的性能可能不是最好的,但是有一点,极大的降低了开发者开发 APP 的成本。为什么去年 '首次代币发行' 这么火,为什么去年做 Token的这么多,再前一年每年那么多人做这个东西,现在你基于 '首次代币发行' 自己做一套 Token 就可以直接发行属于你自己的 Token,对一年编程经验的人学点JAVA 3 天就可以做出,它已经普及到任何程序员都可以做。

未来很多你们不懂区块链怎么开发的,但是你可以开发出一个 APP,开发出属于自己的分布式应用,这个是将来一个很大的趋势。Ruff 这个公司做了四年,我们成功的在物联网领域里做了这么多年的物联网操作系统,我们现在可以用更加抽象的方式开发这些边缘计算中的一些应用,并且这些应用和区块链结合,这些上传的应用都是被标准化的抽象过的数据,这是我相对比较自豪的地方,这也是 Ruff 推出来至少在程序员的社区里还是有很多人看好的,他们认为这是我们离物理列相对比较接近的部分。

我做公链这么长的时间以来,做公链和做原来的操作系统有一个感受是一样的,只有我降低了整个开发的门槛,让更多人可以进来,降低了门槛之后才会有更多的应用,比我更有创意的人会做出你想象不到的应用出来。所以我们的口号就是“Code Easier,Change Faster”,只有所有人能够轻松愉快地开发出 APP,这套公链才是成功的,这是我对公链的态度并且对公链如何取得成功的看法。

感谢今天这样的机会在此和大家分享,我今天的分享就到这里,谢谢。

Roy Li BTA演讲现场实录:

视频内容
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-04-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 区块链大本营 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云区块链服务平台 TBaaS
腾讯云区块链服务平台(Tencent Blockchain as a Service,简称TBaaS)致力于打造全球领先的企业级区块链技术平台,帮助客户、开发者及合作伙伴轻松创建和管理可托管、可扩展的区块链网络,助力产业协同发展。TBaaS 支持长安链·ChainMaker、Hyperledger Fabric等区块链底层平台,简化部署、运维及开发流程,实现业务快速上链,提升链上治理效率。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档