联盟链要对区块链做减法¶
作者:梁永甫|区块链架构师
当前联盟链平台在公有链的基础上,对共识机制做调整,去掉公有属性,使得准入可控、效率提升,这实际上是对区块链在做减法。但这是否足够呢?
我们在应用中很快发现,联盟链的使用比较受限制,一条链基本上只能做一项业务,而且成员的扩展会面临很多问题,这个扩展并不是在技术上增加一个节点,而是在业务上增加一个参与方。
问题是新增加的成员能看哪些数据,不能看哪些数据,有时候他可能只需要了解其中很少数据就可以了,大部分数据不需让他看到。试问当前的联盟链平台怎么解决?可能会说,再建一条链,然后做跨链。
跨链也是现在大家重点在做的事情,就是因为看到了这样的问题。但是我们为什么不能从另一个角度思考,区块链本身是否就可以做到,毕竟使用跨链就意味着承认区块链在创建新的信息孤岛。只是以前“孤”在一个地方,现在“孤”在一个圈子, 这其实并没有解决让信息顺畅流通和共享的问题。
中本聪创建比特币的时候想到了区块链这种天才的解决方案,但这并不意味着它是唯一的解决方案。
既然是解决方案,那它要解决的是什么问题?明确了问题,然后再思考下去也许能找到新的解决方法呢。或者对区块链做一些改良让他更适合当下的商业需求。
为什么说要对区块链做减法?因为现在区块链设计得实在是太极致了,对不可篡改、可追溯有极致要求,在其他方面就会有所牺牲,比如隐私保护、性能。所以需要做减法,降低对这两个特性的支持,来提升对其他需求的满足度, 比如去掉历史状态数据,去掉merkle树。
那么,区块链的哪些方面还可以做减法呢?
现在全局唯一链这种形式是否也有改良的可能呢?为什么要全局唯一的链?为什么区块链网络里面不可以有多条链?每条链只跟踪一个事件的过程是否可行?在链产生的过程中增加一些防篡改机制,甚至是不用增加,因为联盟链不用像公有链那样完全自治,完全去中心化。
联盟链是商业链,是在当下商业规则下运行的,如果有些商业规则已经解决的问题,我们是否还要在技术层面去解决呢?如果有政府机构+第三方商业在里面背书,我们还需要花很大精力去解决防篡改的问题吗?
我们讲区块链的时候都是在讲区块链网络,我一直的观点是区块链有两个重要的属性,一个是存储,一个是网络。然而现在大部分的平台这两者之间是没有界限的,区块链网络就是要存储数据,或者每个节点都是全量数据。
那么存储和网络的功能是否可以更明确的区分出来呢?网络做成一个开放的网络,任何机构都可以接入,但网络节点并不存储数据,不感知数据,只转发数据,并通过应用层协议,对数据传输过程进行背书。数据节点才会存储数据,但也并不是存储网络中传输的所有数据,每个数据可以通过网络路由到需要存储的数据节点。
结合上面提到的减掉全局唯一链,是否可以构建一个开放的区块链网络,参与机构可以任意自由的选择数据的传输路径和存储节点?从而形成一个开放性的可信存储网络。只有这样,区块链才能作为一个基础设施存在,就像5G一样
技术对某一方面过于追求,往往会使得其他方面有所缺失。联盟链对区块链做减法的同时,其实也是在其他方面做加法,不让区块链做一个太偏科的学生。