Share Dialog
Share Dialog
Subscribe to zxzyy10
Subscribe to zxzyy10
<100 subscribers
<100 subscribers
上一期文章的末尾提出了几个问题,本期将聚焦防篡改这一特性进行讨论。我们不会把问题完全割裂开来去一一作答,但是希望在完成本篇以后,区块链系统相关经验不那么丰富的读者可以有所收获,找到新的思考方向和切入点。
前文中的讨论我们可以得到一些较为直接且感性的结论:完全去中心化的特性以及系统数据公开透明的特性并不是所有区块链系统必须的要素,对于比特币系统而言,最终设计的电子账本最大的特性是防篡改性,前期的讨论中我们也提到系统中用来保证防篡改性或者说提高账本篡改难度的机制很多,甚至可以说整个系统的设计最终目的就是为了使得这个账本具有防篡改的功能,更具体一点,在各个加入网络中的节点身份平等的基础上,假设无第三方可信机构的基础上,完成防篡改的功能。
我们在这里一直反复多次强调系统的假设前提,因为目前网络中较多的读者能够读下去的文章里,往往直接切入到系统功能,而不对系统信任模型以及前提假设做过多的介绍。而要完成区块链认知从公链到联盟链的衔接,关键点就在于了解信任模型及前提假设的变换。
对于防篡改的特性,思考的第一个问题是,什么样的场景中需要防篡改这一特性?对于金融业务的账本应用,这一点显而易见,账本中记录的数据就是个人数字资产,篡改账本就能使得作恶方直接获取收益。或者说,数据库中记录的数据存在价值属性的时候,防篡改的特性是被需要的,如果非要贴近一些宣传类的文章使用的词语,可以理解为,在价值网络中,防篡改特性是被需要的。例如:政府专项拨款的支出记录、公益基金的支出记录。数据价值属性的体现可以是直接的个人或者组织资产类记录,也可以是修改后可以间接获益的数据类型,例如:车牌摇号或房产购置摇号,通过篡改数据库伪造虚假的不不合流程的摇号结果。
在当前以信任第三方机构为主要模式的情况下,这些数据记录被篡改引发的相似结果就是第三方机构的信用崩塌。区块链系统的防篡改特性引入到价值网络中,使得原来的价值网络附加了信任属性,成为大家所说的可信价值网络,此时的信用不是由第三方机构来构建或者背书的,而是由区块链系统的防篡改特性来保证的。
通过对防篡改性的一些拓展性思考,价值网络和可信网络这种概念被引入到体系之中。价值网络是构架在区块链系统之上的业务本身的属性,可信网络是由区块链的防篡改特性附加的,二者的联系是自然且直接的,因为对于不具备价值属性的网络,可信属性的添加显得十分多余。
我们从非技术角度看看早期以比特币系统为例的区块链系统中,这种可信价值网络存在什么样的特点。通常而言,我们认为这种网络以社会人个体为单位,每个个体经由共识过程确定阶段内的账本内容,通过签名的方式保证结果的不可抵赖性,利用这些机制在没有第三方可信机构的前提下,实现了账本数据可信可用的功能。这和我们生活中通过某种方式建立信任的过程十分相似,对于直觉比较敏锐,抽象能力较强的人而言,从中应该可以看到个人行为和某些社会机制电子信息化(信用体系)的雏形,从这一点出发可以理解价值信任网络的终极形态,也是近些年大家鼓吹的元宇宙——数字信息化社会。
近二十年来,早期互联网与移动互联网的发展给许多行业带来了十足的发展,例如:商贸及与其相关的支付,物流,但是生活中其他行业数字信息化的进程并没有想象中的迅速,早些年在政府部门办理部分业务时还需要携带大量证件,各个部门之间数据并不互通,办理业务的需要的证明手续常常需要花大量时间办理,因为缺乏直接的可信数据而要提供证明这一方法本身就大大降低了社会效率。如果把时间线拉的更近一些,跨省核酸的数据不互通互认在防疫过程中也给社会运转效率带来了影响。这些例子只是冰山一角,各行各业中信息化进程中理论上充斥着大量对可信价值网络的需求。数字信息化进程的底层,区块链技术或者说相关的构成可信价值网络的技术是不可或缺的。
通过以上讨论,需要防篡改特性的业务场景的理论上的一些特点已经显现出来。但是这些需求是不是具体需求呢?未必如此。在原有的不支持防篡改的系统中,一般存在一些最高权限管理人员,这些管理人员可以较为轻松的通过篡改数据来获取利益,且往往拥有推行某些制度的决定权。利益被侵害的一方希望可信价值的网络的引入能够保障自己的权益,但是被侵害方往往没有推行价值网络的权力,自底向上的推行在原有系统中存在作恶方,且作恶方权力较大时是很难进行的。习近平在2019年中央政治局第十八次集体学习时强调 把区块链作为核心技术自主创新重要突破口,加快推动区块链技术和产业创新发展。自上而下的推进技术发展,能把较多的理论需求转化为具体切实的需求。
其实当可信价值网络和社会组织以及社会运转效率联系到一起时,我们可以重新审视一下区块链的作用了。在之前的话题中,对于防篡改这一特性,我们考虑的更多的是,如何降低区块链系统被攻击的概率从而保护个人资产免受侵害,而有了防篡改特性之后,个人资产因篡改受到侵害的可能性降低了,同时我们也发现这种方式去管理个人资产效率并不高。但是如果我们从整体考虑呢,考虑比特币系统是金融领域基本功能信息化的一个试验系统。在这个过程中,更为抽象地去考虑节点代表的社会性质,如果节点不是以个人为单位而是以组织或者企业为单位呢?可信价值网络现在不在个体与个体之间建立了,因为从效率的角度来看,个体之间建立这种网络并没有提升效率,只是提升了安全性。当账本从个人账本转为企业账本,或者国家之间的贸易账本,这种可信价值网络将带来何种效率的提升呢?通常来讲,企业之间的资金结算甚至更大规模的结算,其效率都将在可信网络的加持下带来大幅提升,具体到细节则需要金融领域专业人员来进行说明与解释。之前的讨论中,我们一直在强调可信第三方缺失的前提条件可能是社会动荡,国家信用崩塌等情况,一般来说可信第三方在某种属性上是要高于其背书活动的参与者的,但是如果直接考虑国家行为,那么这个可信第三方是不是可以认为其不存在呢。
区块链系统存在的意义从最开始我们理解的缺失第三方可信机构的前提下保障个人账本的安全性扩展到了组织沟通协作之间的效率提升。而当防篡改特性的讨论的场景从个人记录安全上升组织效率管理,联盟链的雏形也快出现了。在这个场景下,数据的防篡改特性带来的可信网络是管理效率提升的前提和保障,在可信网络中与原本实体生活中一一映射的数据具有可信性,免去了实物证明提供这一较为繁琐的环节。联盟链中的参与节点通常以实体组织的形式存在,网络中节点身份往往不再代表个人,功能也不再显性地为个人服务,而是为组织协作与管理提供底层支持。这也是从公链接触到区块链概念的人群质疑联盟链作用的地方,个人无法从这种形式中显性获利,但社会效率的提高能使得社会中的个体隐性获益。
讨论至此,我们已经从最初公链上以社会人个体为单位的节点扩展到了以组织为单位的节点,防篡改的特性从保障个人资产数据的作用扩展到了保护组织数据使其具有可信性,给组织之间的协议或者组织内部的各类信息化管理提供基础。联盟链可能并没有提供比公链更多的功能,而是从最初的公链系统中提取出防篡改这个关键要素,节点层面从社会个体上升到社会组织。因此联盟链的场景通常出现在合作的组织之间,组织的规模可以从企业到地方政府到不同的政治经济体。如果说公链中的防篡改是为了个体之间做成一件事情(例如做出账本功能),那么联盟链的防篡改可以让组织之间做好一件事情(省去了繁杂的有效证明提供过程,例如结算过程中的合同指标),不仅如此,当合作关系中出现不愉快事件产生纠纷时,无法篡改的数据也可以作为责任划分的证明。
联盟链解决组织间合作效率问题是可以被理解的,那么私链又能做怎样的贡献呢?私链可以用来解决组织内部的管理和协作问题,从处理组织间的关系到处理单个组织内部关系。如果说联盟链用来对外保证合作,那么私链可以用来对内防家贼保证管理,防篡改特性以及内部数据在企业内公开透明的方式,对解决企业内部贪污等问题有一定帮助。从效率提升角度来看,联盟链或私链中的所有节点组成了一个利益共同体,通过加入可信价值网络的方式提高了整体的效率。
不同于比特币系统这样的早期区块链系统,联盟链和私链的应用是针对社会中现有管理方法和模式的补充和优化,它们的系统设计是建立在社会实际需求之上而不是建立在脱离当前社会模型的假设之上的。早期区块链系统给后续系统带来的启发是不可否认的,但是试想,如果有一天我们真的需要依赖建立在如此极端假设条件之上的系统,说明我们已不处在一个稳定正常的社会体系之中了,这是十分不幸的事情,真到了这种境地,所谓的金融系统基础功能的替代品对大多数平民的生活而言可能已失去了意义。
最后我们简单对比一下早期公链与典型联盟链因服务场景的转换带来的部分设计差异。
1)网络规模:
网络规模可以理解成节点数量,接入公链网络是非许可的,但并不代表这种设计对于一切场景都是好的,只是在最初的试验中作为了一种尝试。公链系统的服务场景下节点数量较多,传统分布式系统的共识协议在需要视图切换时开销很大无法应用于大网络之中,比特币系统中的中本聪共识通过引入POW的机制来激励矿工做出诚实的动作,在矿工动作诚实的前提下,对应于传统分布式系统中视图切换的开销就变小了。但是在联盟链服务的小规模网络中,传统分布式协议是可以被使用的。至于是否需要拜占庭容错这一性质,需要根据信任模型来做取舍。
2)节点身份与共识流程
在早期公链系统中,所有的节点都拥有多个身份,比如验证交易和打包区块,在网络中传播交易与区块等。每个节点在竞争到记账权以后可以自由选择打包何种交易,以何种顺序排列这些交易,由此也产生了各类获益方法。但是在联盟链系统当中,提出交易请求由客户完成,验证交易合法性由背书节点完成,将交易打包成区块由排序节点完成,节点的身份与需要完成的工作开始解耦,犹如社会分工一样专人专事,在这种框架下,共识过程与区块打包写入可以并行,相比于早期公链的先竞争记账权产生共识区块再传播的方法,这样的设计一定程度上提高了系统的工作效率。但是我们要看到,在这种框架下,其实隐性的信任模型是比较强的,各类节点之间需要较强的信任假设。
3)激励机制
联盟链和私链在某些场景下可以不需要在链上附加出块激励机制,链外的可获得利益会促使组成联盟链网络的各个组织节点会自发地去维护账本的完整性与一致性。激励机制其实是一直存在的,但是此时的区块链系统设计初衷是作为现实社会中各类社会活动的效率提升工具,因此链外的激励机制也能起到很好的作用,系统设计中的经济激励模型可以由已有的、现实社会中的激励来替代。
4)设计趋势
脱离早期公链系统这一前提,当下公链的设计也是逐步与早期联盟链设计思想贴近,或者说开始摒弃早期公链中设计的冗余条件,使用更贴近当前社会状况的假设来作为系统设计的前提。POW机制对矿工诚实性的激烈来自于算力带来的经济抵押,重点在于经济抵押变相带来的信用抵押,那么POS同样可以完成相似的工作。公链系统中layer2的链下计算,或者链下存储其实和联盟链中的背书验证以及其他节点存储是类似的,不同的是,公链系统的假设模型中,还是希望用密码学的方式去提供信任机制,因此需要各类证明方法来提供信任机制,而在联盟链中,这种不同分工节点之间的信任可能是被默认的。无状态区块链的引入就是这种解耦到达极致的情况,链上只存储证明完成结算,其他的工作均由链下完成。
这两篇文章从早期比特币系统的系统设计出发,通过对系统模型的前提假设的讨论,得到系统设计中冗余的部分,并从中抽取了最关键的防篡改特性。由防篡改特性应用场景的扩散,引入了业界经常提到的可信价值网络的概念,简单说明了元宇宙和区块链可能的关系。从可信价值网络与社会效率的关系理解联盟链与私链的作用以及其可能的服务场景,对比了服务场景切换后区块链系统设计上的一些取舍,引出了当下一些主流概念(例如各类layer2,无状态区块链等),意在通过非技术描述来串联当下出现的各类概念,并说明其来由,展望其发展方向。后续文章计划从区块链功能解耦开始,在讲解不同系统设计优劣的同时引入跨链分片等概念。
上一期文章的末尾提出了几个问题,本期将聚焦防篡改这一特性进行讨论。我们不会把问题完全割裂开来去一一作答,但是希望在完成本篇以后,区块链系统相关经验不那么丰富的读者可以有所收获,找到新的思考方向和切入点。
前文中的讨论我们可以得到一些较为直接且感性的结论:完全去中心化的特性以及系统数据公开透明的特性并不是所有区块链系统必须的要素,对于比特币系统而言,最终设计的电子账本最大的特性是防篡改性,前期的讨论中我们也提到系统中用来保证防篡改性或者说提高账本篡改难度的机制很多,甚至可以说整个系统的设计最终目的就是为了使得这个账本具有防篡改的功能,更具体一点,在各个加入网络中的节点身份平等的基础上,假设无第三方可信机构的基础上,完成防篡改的功能。
我们在这里一直反复多次强调系统的假设前提,因为目前网络中较多的读者能够读下去的文章里,往往直接切入到系统功能,而不对系统信任模型以及前提假设做过多的介绍。而要完成区块链认知从公链到联盟链的衔接,关键点就在于了解信任模型及前提假设的变换。
对于防篡改的特性,思考的第一个问题是,什么样的场景中需要防篡改这一特性?对于金融业务的账本应用,这一点显而易见,账本中记录的数据就是个人数字资产,篡改账本就能使得作恶方直接获取收益。或者说,数据库中记录的数据存在价值属性的时候,防篡改的特性是被需要的,如果非要贴近一些宣传类的文章使用的词语,可以理解为,在价值网络中,防篡改特性是被需要的。例如:政府专项拨款的支出记录、公益基金的支出记录。数据价值属性的体现可以是直接的个人或者组织资产类记录,也可以是修改后可以间接获益的数据类型,例如:车牌摇号或房产购置摇号,通过篡改数据库伪造虚假的不不合流程的摇号结果。
在当前以信任第三方机构为主要模式的情况下,这些数据记录被篡改引发的相似结果就是第三方机构的信用崩塌。区块链系统的防篡改特性引入到价值网络中,使得原来的价值网络附加了信任属性,成为大家所说的可信价值网络,此时的信用不是由第三方机构来构建或者背书的,而是由区块链系统的防篡改特性来保证的。
通过对防篡改性的一些拓展性思考,价值网络和可信网络这种概念被引入到体系之中。价值网络是构架在区块链系统之上的业务本身的属性,可信网络是由区块链的防篡改特性附加的,二者的联系是自然且直接的,因为对于不具备价值属性的网络,可信属性的添加显得十分多余。
我们从非技术角度看看早期以比特币系统为例的区块链系统中,这种可信价值网络存在什么样的特点。通常而言,我们认为这种网络以社会人个体为单位,每个个体经由共识过程确定阶段内的账本内容,通过签名的方式保证结果的不可抵赖性,利用这些机制在没有第三方可信机构的前提下,实现了账本数据可信可用的功能。这和我们生活中通过某种方式建立信任的过程十分相似,对于直觉比较敏锐,抽象能力较强的人而言,从中应该可以看到个人行为和某些社会机制电子信息化(信用体系)的雏形,从这一点出发可以理解价值信任网络的终极形态,也是近些年大家鼓吹的元宇宙——数字信息化社会。
近二十年来,早期互联网与移动互联网的发展给许多行业带来了十足的发展,例如:商贸及与其相关的支付,物流,但是生活中其他行业数字信息化的进程并没有想象中的迅速,早些年在政府部门办理部分业务时还需要携带大量证件,各个部门之间数据并不互通,办理业务的需要的证明手续常常需要花大量时间办理,因为缺乏直接的可信数据而要提供证明这一方法本身就大大降低了社会效率。如果把时间线拉的更近一些,跨省核酸的数据不互通互认在防疫过程中也给社会运转效率带来了影响。这些例子只是冰山一角,各行各业中信息化进程中理论上充斥着大量对可信价值网络的需求。数字信息化进程的底层,区块链技术或者说相关的构成可信价值网络的技术是不可或缺的。
通过以上讨论,需要防篡改特性的业务场景的理论上的一些特点已经显现出来。但是这些需求是不是具体需求呢?未必如此。在原有的不支持防篡改的系统中,一般存在一些最高权限管理人员,这些管理人员可以较为轻松的通过篡改数据来获取利益,且往往拥有推行某些制度的决定权。利益被侵害的一方希望可信价值的网络的引入能够保障自己的权益,但是被侵害方往往没有推行价值网络的权力,自底向上的推行在原有系统中存在作恶方,且作恶方权力较大时是很难进行的。习近平在2019年中央政治局第十八次集体学习时强调 把区块链作为核心技术自主创新重要突破口,加快推动区块链技术和产业创新发展。自上而下的推进技术发展,能把较多的理论需求转化为具体切实的需求。
其实当可信价值网络和社会组织以及社会运转效率联系到一起时,我们可以重新审视一下区块链的作用了。在之前的话题中,对于防篡改这一特性,我们考虑的更多的是,如何降低区块链系统被攻击的概率从而保护个人资产免受侵害,而有了防篡改特性之后,个人资产因篡改受到侵害的可能性降低了,同时我们也发现这种方式去管理个人资产效率并不高。但是如果我们从整体考虑呢,考虑比特币系统是金融领域基本功能信息化的一个试验系统。在这个过程中,更为抽象地去考虑节点代表的社会性质,如果节点不是以个人为单位而是以组织或者企业为单位呢?可信价值网络现在不在个体与个体之间建立了,因为从效率的角度来看,个体之间建立这种网络并没有提升效率,只是提升了安全性。当账本从个人账本转为企业账本,或者国家之间的贸易账本,这种可信价值网络将带来何种效率的提升呢?通常来讲,企业之间的资金结算甚至更大规模的结算,其效率都将在可信网络的加持下带来大幅提升,具体到细节则需要金融领域专业人员来进行说明与解释。之前的讨论中,我们一直在强调可信第三方缺失的前提条件可能是社会动荡,国家信用崩塌等情况,一般来说可信第三方在某种属性上是要高于其背书活动的参与者的,但是如果直接考虑国家行为,那么这个可信第三方是不是可以认为其不存在呢。
区块链系统存在的意义从最开始我们理解的缺失第三方可信机构的前提下保障个人账本的安全性扩展到了组织沟通协作之间的效率提升。而当防篡改特性的讨论的场景从个人记录安全上升组织效率管理,联盟链的雏形也快出现了。在这个场景下,数据的防篡改特性带来的可信网络是管理效率提升的前提和保障,在可信网络中与原本实体生活中一一映射的数据具有可信性,免去了实物证明提供这一较为繁琐的环节。联盟链中的参与节点通常以实体组织的形式存在,网络中节点身份往往不再代表个人,功能也不再显性地为个人服务,而是为组织协作与管理提供底层支持。这也是从公链接触到区块链概念的人群质疑联盟链作用的地方,个人无法从这种形式中显性获利,但社会效率的提高能使得社会中的个体隐性获益。
讨论至此,我们已经从最初公链上以社会人个体为单位的节点扩展到了以组织为单位的节点,防篡改的特性从保障个人资产数据的作用扩展到了保护组织数据使其具有可信性,给组织之间的协议或者组织内部的各类信息化管理提供基础。联盟链可能并没有提供比公链更多的功能,而是从最初的公链系统中提取出防篡改这个关键要素,节点层面从社会个体上升到社会组织。因此联盟链的场景通常出现在合作的组织之间,组织的规模可以从企业到地方政府到不同的政治经济体。如果说公链中的防篡改是为了个体之间做成一件事情(例如做出账本功能),那么联盟链的防篡改可以让组织之间做好一件事情(省去了繁杂的有效证明提供过程,例如结算过程中的合同指标),不仅如此,当合作关系中出现不愉快事件产生纠纷时,无法篡改的数据也可以作为责任划分的证明。
联盟链解决组织间合作效率问题是可以被理解的,那么私链又能做怎样的贡献呢?私链可以用来解决组织内部的管理和协作问题,从处理组织间的关系到处理单个组织内部关系。如果说联盟链用来对外保证合作,那么私链可以用来对内防家贼保证管理,防篡改特性以及内部数据在企业内公开透明的方式,对解决企业内部贪污等问题有一定帮助。从效率提升角度来看,联盟链或私链中的所有节点组成了一个利益共同体,通过加入可信价值网络的方式提高了整体的效率。
不同于比特币系统这样的早期区块链系统,联盟链和私链的应用是针对社会中现有管理方法和模式的补充和优化,它们的系统设计是建立在社会实际需求之上而不是建立在脱离当前社会模型的假设之上的。早期区块链系统给后续系统带来的启发是不可否认的,但是试想,如果有一天我们真的需要依赖建立在如此极端假设条件之上的系统,说明我们已不处在一个稳定正常的社会体系之中了,这是十分不幸的事情,真到了这种境地,所谓的金融系统基础功能的替代品对大多数平民的生活而言可能已失去了意义。
最后我们简单对比一下早期公链与典型联盟链因服务场景的转换带来的部分设计差异。
1)网络规模:
网络规模可以理解成节点数量,接入公链网络是非许可的,但并不代表这种设计对于一切场景都是好的,只是在最初的试验中作为了一种尝试。公链系统的服务场景下节点数量较多,传统分布式系统的共识协议在需要视图切换时开销很大无法应用于大网络之中,比特币系统中的中本聪共识通过引入POW的机制来激励矿工做出诚实的动作,在矿工动作诚实的前提下,对应于传统分布式系统中视图切换的开销就变小了。但是在联盟链服务的小规模网络中,传统分布式协议是可以被使用的。至于是否需要拜占庭容错这一性质,需要根据信任模型来做取舍。
2)节点身份与共识流程
在早期公链系统中,所有的节点都拥有多个身份,比如验证交易和打包区块,在网络中传播交易与区块等。每个节点在竞争到记账权以后可以自由选择打包何种交易,以何种顺序排列这些交易,由此也产生了各类获益方法。但是在联盟链系统当中,提出交易请求由客户完成,验证交易合法性由背书节点完成,将交易打包成区块由排序节点完成,节点的身份与需要完成的工作开始解耦,犹如社会分工一样专人专事,在这种框架下,共识过程与区块打包写入可以并行,相比于早期公链的先竞争记账权产生共识区块再传播的方法,这样的设计一定程度上提高了系统的工作效率。但是我们要看到,在这种框架下,其实隐性的信任模型是比较强的,各类节点之间需要较强的信任假设。
3)激励机制
联盟链和私链在某些场景下可以不需要在链上附加出块激励机制,链外的可获得利益会促使组成联盟链网络的各个组织节点会自发地去维护账本的完整性与一致性。激励机制其实是一直存在的,但是此时的区块链系统设计初衷是作为现实社会中各类社会活动的效率提升工具,因此链外的激励机制也能起到很好的作用,系统设计中的经济激励模型可以由已有的、现实社会中的激励来替代。
4)设计趋势
脱离早期公链系统这一前提,当下公链的设计也是逐步与早期联盟链设计思想贴近,或者说开始摒弃早期公链中设计的冗余条件,使用更贴近当前社会状况的假设来作为系统设计的前提。POW机制对矿工诚实性的激烈来自于算力带来的经济抵押,重点在于经济抵押变相带来的信用抵押,那么POS同样可以完成相似的工作。公链系统中layer2的链下计算,或者链下存储其实和联盟链中的背书验证以及其他节点存储是类似的,不同的是,公链系统的假设模型中,还是希望用密码学的方式去提供信任机制,因此需要各类证明方法来提供信任机制,而在联盟链中,这种不同分工节点之间的信任可能是被默认的。无状态区块链的引入就是这种解耦到达极致的情况,链上只存储证明完成结算,其他的工作均由链下完成。
这两篇文章从早期比特币系统的系统设计出发,通过对系统模型的前提假设的讨论,得到系统设计中冗余的部分,并从中抽取了最关键的防篡改特性。由防篡改特性应用场景的扩散,引入了业界经常提到的可信价值网络的概念,简单说明了元宇宙和区块链可能的关系。从可信价值网络与社会效率的关系理解联盟链与私链的作用以及其可能的服务场景,对比了服务场景切换后区块链系统设计上的一些取舍,引出了当下一些主流概念(例如各类layer2,无状态区块链等),意在通过非技术描述来串联当下出现的各类概念,并说明其来由,展望其发展方向。后续文章计划从区块链功能解耦开始,在讲解不同系统设计优劣的同时引入跨链分片等概念。
No activity yet