一种基于平行区块链的产品全生命周期管理系统

文档序号:32998674发布日期:2023-01-18 00:40阅读:46来源:国知局
1.本发明涉及一种基于平行区块链的产品全生命周期管理系统,属于计算机软件与区块链应用
技术领域
:。
背景技术
::2.在智能工业领域中,产品生命周期管理(productlifecyclemanagement,plm)系统,广泛应用于产品从设计、生产到使用、转移、维修等整个生命周期全过程的自动化管理。该过程集成了人员、数据、流程和业务系统,并为产品所属的公司及其他相关供应链企业提供了产品整个生命周期相关的重要信息。通过对产品进行全生命周期管理,可以缩短其上市时间、提高质量和可靠性、优化流程、降低成本、准确生成报价、减少浪费,同时实现供应链协作的最大化。3.区块链是一种分布式账本技术,由不断增长的记录列表组成,这些记录作为区块,使用密码学技术安全地连接在一起。由于每个区块中包含时间戳、交易数据和前一个块的散列,因此记录在区块链中的数据是不可修改的。数据一旦被记录并分发到组成区块链网络的各个节点后,任何块中的数据都不能在不改变所有后续块的情况下被更改。由于具有去中心化、不可篡改、可溯源等特性,可以在若干节点中建立信任关系,区块链已经开始逐渐脱离代币并走向金融、保险、医疗等领域,也可以在供应链安全和产品全生命周期管理领域发挥重要作用。4.然而,现有的基于区块链的产品全生命周期管理系统存在以下问题:1.性能问题:现有的单链区块链网络中,由于让大量的节点达成共识需要一定的时间,因此在性能上难以满足高并发的需求;2.安全问题:如果区块链网络中存在若干恶意节点,可以使用拜占庭攻击来破坏系统的一致性或篡改数据;3.监管问题:如果允许跨部门访问链上信息,则不满足产品全生命周期管理中的隐私与安全需求,但缺乏监管机制不便于公司管理部门对其他部门的链上信息进行审计。技术实现要素:5.本发明的目的是针对现有技术存在的缺陷和不足,创造性地提出一种基于平行区块链的产品全生命周期管理系统,使若干条平行链连接到中继链并由中继链进行保护,应用于产品全生命周期管理系统。6.本发明的创新点在于:利用平行链技术带来的可扩展性解决产品全生命周期管理系统的性能问题,使用节点间的拜占庭容错共识协议解决安全问题,借助平行链间的隔离性、跨共识消息协议与监管者数字证书解决监管问题。7.为实现上述目的,本发明提出的基于平行区块链的产品全生命周期管理系统,包括平行链部分和中继链部分。如图1、图2所示。8.平行链包括部门、文档、智能合约实体,以及外节点、客户端节点、证书颁发机构和收集器。9.平行链(parc):平行链是每个部门的节点互相连接形成的区块链,包括多个收集器(col)。监管部门与其他部门的多条区块链构成一组平行链。与将所有节点连接成为单一区块链相比,分割为多条平行链,使需要达成共识的节点数变少,从而缩短了达成共识的时间,提升了系统性能。平行链间的隔离性避免了数据的非授权访问。10.其中,部门(dept):是与产品进行交互并产生数据的实体。在产品全生命周期管理中,通常涉及多个不同的部门,例如设计、生产、转移、维修等。这些部门在发挥自身职能的过程中会产生相应的数据,例如设计图纸、生产流程、转移记录、维修日志等,而数据最终将会被上传到区块链中。此外,还可以包括监管部门,可以检索到各个部门上传的数据。11.文档(doc):是存储部门产生数据的数字文件实体。部门产生的设计图纸、生产流程、转移记录、维修日志等文件,需要被保存到例如pdf、docx、png、txt等格式的数字文件中,并以这些数字文件作为载体上传到区块链网络。12.外节点(ond):将部门上传的文档作为交易打包成区块,上传到区块链网络中,并与其他节点达成共识。外节点可以使用简单高效的rocksdb键值存储层来保持区块链的状态,借助libp2p网络栈形成p2p网络互相通信,使用远程过程调用api接受http和websocket请求,借助webassembly运行时执行wasm格式的智能合约。每个部门部署4个外节点,并应用实用拜占庭容错(practicalbyzantinefaulttolerance,pbft)协议达成节点间的共识,以防御可能的拜占庭攻击。13.客户端节点(cnd):用于将部门需要上传到区块链中的文档作为交易,使用自身的私钥签名,并发送给本部门中的外节点。考虑到部门内部的人员多、数据上传需求大,可以为部门中的每个外节点连接多个客户端节点,使不同人员操作不同的客户端节点。客户端节点为操作人员提供可交互的前端页面,用于文档的上传。14.证书颁发机构(ca):用于向客户端颁发数字证书。为了实现文档上传记录的可溯源,证书颁发机构需要向各个客户端颁发能够标识其身份的用户数字证书,用于交易签名与身份识别。为了实现安全与监管,证书颁发机构需要向监管部门颁发特殊的监管者数字证书,标识其特殊身份。15.中继链(rlyc):随着平行链区块的产生,中继链将跟踪并存储每个平行链的最新区块头;当一个中继链区块最终确定时,已经完成验证过程的平行链区块也将最终确定。16.中继链包括多个验证器。具有wasm运行时的验证器(val),能够验证被提交到中继链的区块。借助跨共识消息协议(cross-consensusmessageprotocol,xcmp),中继链能够协助实现平行链间的通信。17.在平行链中,外节点之间互相连接,构成平行链。每个外节点都部署有智能合约,并且与客户端节点相连接。证书颁发机构与平行链相连接。收集器之间互相连接,并与平行链相连接。18.在中继链中,验证器之间互相连接,并与平行链、收集器相连接。19.当基于平行区块链的产品全生命周期管理系统运行时,每个部门启动4个外节点与若干客户端节点,它们之间通过互相通信形成平行链。随着创世区块(区块链产生的第一个区块)产生,平行链将自身区块的最新区块头提交给中继链,并由中继链进行验证。证书颁发机构启动后,向网络中的所有客户端节点签发标识其身份的数字证书,并向监管部门颁发特殊的监管者数字证书。各个客户端节点使用自己的数字证书连接到相应的外节点,如图3(a)所示。20.系统中的各个部门与产品进行交互,将产生的数据存储至文档。由用户操作客户端节点的前端页面,客户端节点使用自身的私钥对文档上传所产生的交易进行签名,将已签名的文档上传交易提交给对应的外节点,由外节点使用拜占庭容错协议达成平行链内部所有节点间的共识。然后,平行链将新产生区块的区块头提交给中继链,并由中继链进行验证,如图3(b)所示;用户操作客户端节点的前端页面,使用设定条件(如id、名称、上传时间、文档类型等)对已上传的文档进行查询。客户端节点使用自身的私钥对文档查询所产生的交易进行签名,随后将已签名的文档查询交易提交给对应的外节点,由外节点上部署的智能合约检查合法性并执行查询,随后返回查询结果。同时,使用拜占庭容错协议达成平行链内部所有节点间的共识。平行链将新产生区块的区块头提交给中继链,并由中继链进行验证。查询流程如图3(c)所示。21.监管人员操作客户端节点的前端页面,使用设定条件对已上传的文档进行查询。客户端节点使用自身的监管者私钥对文档查询所产生的交易进行签名,随后将已签名的文档查询请求通过跨共识消息协议提交给对应的外节点,由外节点上部署的智能合约检查监管者的签名是否合法并执行查询,随后通过跨共识消息协议返回查询结果。同时,使用拜占庭容错协议达成平行链内部所有节点间的共识。平行链将新产生区块的区块头提交给中继链,并由中继链进行验证。监管流程如图3(c)所示。22.有益效果本发明,对比已有技术,具有以下优势:1.更高的性能:区块链中的节点仅需在本部门的平行链内达成共识,与单一区块链中使所有节点达成共识相比,耗时更短,交易效率更高,可满足高并发等场景的需求;2.更高的安全性:节点达成共识使用的实用拜占庭容错协议可在一定程度上防御区块链网络中恶意节点的拜占庭攻击,维持系统的一致性,避免数据被篡改;3.可监管:监管部门可使用证书颁发机构签发的特殊证书与跨共识消息协议实现跨平行链间的数据查询,便于对链上信息进行监管,同时平行链间的隔离性维持了产品全生命周期管理中的隐私与安全需求。附图说明23.图1为本系统中平行区块链的结构组成示意图;图2为平行区块链的连接示意图;图3中(a)为plm系统初始化流程图,(b)为在plm系统中上传文档的流程图,(c)为在plm系统中进行查询与监管的流程图。具体实施方式24.下面结合附图和实施例对本发明的技术方案做进一步说明。25.一种基于平行区块链的产品全生命周期管理系统,包括平行链部分和中继链部分。平行链包括部门、文档、智能合约实体,以及外节点、客户端节点、证书颁发机构和收集器。中继链包括多个验证器。26.首先,构建p2p网络。p2p网络构建使用libp2p网络栈。为了让节点加入p2p网络,需要一种发现机制使节点获得当前网络中的节点身份和地址列表。构建p2p网络的发现机制有三个组成部分:引导节点、mdns、kademlia随机游走。其中,引导节点是随着网络配置一起传递的硬编码的节点身份和地址;mdns是本地网络中的udp广播,侦听广播的节点可能会以其身份对广播进行响应;节点连接后,将在已配置的kademliadht上执行随机kademlia的find_node请求,获取网络中的节点信息。获得节点的身份和地址列表后,即可使用加密和多路复用的方式与网络中的节点建立连接。27.然后,连接平行链与中继链。首先搭建中继链,编写存储有验证器密钥、引导节点地址、平行链标识符信息的json格式中继链链规范文件fspec,表示为:其中,表示验证器密钥,表示引导节点地址,表示平行链在中继链中保留的唯一标识符;为使每条平行链在中继链中保留自己的唯一标识符,需要先连接到中继链节点并签署提交一个包含的标识符注册交易;随后启动平行链收集器节点,导出有关平行链运行时和创世状态的信息;为在中继链上注册平行链,要再次连接到中继链节点并签署提交一个包含的平行链注册交易:其中,表示平行链wasm运行时;此后,中继链将持续跟踪每个平行链的最新区块头。28.当进行共识形成时,每轮共识分为4个阶段:客户端向主节点发送请求;主节点向所有辅助节点广播请求;主节点和辅助节点执行请求的服务,然后向客户端发送回复。当客户端收到来自网络中不同节点的m+1个具有相同结果的回复时说明请求成功,其中m是允许的最大故障节点数。主节点在每轮共识期间都会更改,如果经过预定义的时间而主节点没有向辅助节点广播请求,则由更改协议重新投票选出。29.当进行执行查询时,客户端产生查询交易,并用私钥对交易签名,随后将已签名的查询交易提交给对应的节点,由节点上部署的智能合约检查合法性并执行查询,随后将查询结果r返回给客户端;其中,表示查询交易,表示客户端签名。30.当进行监管查询合法性检查时,客户端产生查询请求,并用监管者私钥对请求签名,随后将已签名的查询请求通过跨共识消息协议提交给对应的节点,由节点上部署的智能合约检查监管者的签名是否合法并执行查询,随后将查询结果r通过跨共识消息协议返回给客户端。31.当进行跨共识消息时,首先,平行链中的发送者a和平行链中的接收者b需要建立消息传递通道;在通道开启阶段,a向中继链发送包含的、消息大小和数量、延迟d的初始化消息:该消息会在中继链维护的通道状态表(channelstatetable,cst)中更新平行链的通道状态为待开放;然后,中继链向平行链发送平行链的,以及消息的大小、数量;如果平行链的当前通道数量小于限额,且同意开启通道,则向中继链发送接受消息acceptopenchannel,消息中包含通道的元数据;中继链收到发送的接受消息后,检查该消息与在中继链的cst表中创建的条目是否一致,如果符合,则将的状态更新为开放,同时创建一个的条目,状态为开放;当通道打开时,包含一个已发送但尚未被接收者确认的有序消息的有界队列;发送者将消息附加到队列后来发送消息,接收者从队列前删除消息来确认消息;发送者和接收者的平行链会监控中继链的状态,来了解当前队列中的内容;消息传递结束之后,将消息发送到中继链,该通道的状态变为待关闭,中继链向平行链发送关闭通道的消息;此时最多有d个时隙对通道中的消息进行处理,接着发送acceptclosechannel消息来关闭通道,此时通道的状态为关闭-接收消息;队列中的所有消息都被丢弃后,通道关闭;最后,中继链删除cst表中和的条目。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1