CN115065690A - 一种基于不同异构指令集的去中心化***及方法 - Google Patents
一种基于不同异构指令集的去中心化***及方法 Download PDFInfo
- Publication number
- CN115065690A CN115065690A CN202210661376.1A CN202210661376A CN115065690A CN 115065690 A CN115065690 A CN 115065690A CN 202210661376 A CN202210661376 A CN 202210661376A CN 115065690 A CN115065690 A CN 115065690A
- Authority
- CN
- China
- Prior art keywords
- service
- data
- block chain
- node
- instruction set
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000005516 engineering process Methods 0.000 claims abstract description 29
- 238000013461 design Methods 0.000 claims abstract description 24
- 230000003993 interaction Effects 0.000 claims abstract description 18
- 238000012545 processing Methods 0.000 claims abstract description 16
- 239000004744 fabric Substances 0.000 claims description 36
- 230000006870 function Effects 0.000 claims description 23
- 238000012163 sequencing technique Methods 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 14
- 238000011161 development Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 6
- 230000007246 mechanism Effects 0.000 claims description 4
- 238000013475 authorization Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 3
- 101100136092 Drosophila melanogaster peng gene Proteins 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005728 strengthening Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于不同异构指令集的去中心化***及方法,属于信息技术应用创新的技术领域,包括基础设施访问层,用于不同异构指令集的服务器部署并利用去中心化存储特性存放区块链业务数据;业务逻辑处理层,用于区块链业务网络设计和业务流程管理设计,且业务逻辑处理层通过客户端与基础设施访问层建立访问连接;界面交互层,用于各功能模块业务逻辑的浏览器端页面设计,所应用的区块链技术解决了“中心化”存储带来的单点故障以及故障难以追责等信任和安全问题,同时,该***支持异构指令集的技术,保障了过去对单一技术路线的依赖,解决了过去在区块链应用上被别人“卡脖子”的问题。
Description
技术领域
本发明属于信息技术应用创新的技术领域,具体而言,涉及一种基于不同异构指令集的去中心化***及方法。
背景技术
当前,信息技术应用创新(简称:信创,以下同)已经成为了一项国家战略,也是当今形势下国家经济发展的新动能。发展信创是为了解决本质安全的问题,本质安全也就是说,现在先把它变成我们自己可掌控、可研究、可发展、可生产的。
随着信创产业的发展,作为新基建的重要方向,从2020年开始,国产化替代得到了国家战略层次的持续推进,其中,国产CPU和操作***是实现自主可控的核心,是解决“卡脖子”的关键环节。国产CPU的主要参与者为龙芯、兆芯、飞腾、海光、申威和华为鲲鹏等品牌,已经逐步形成了基于LoongArch(龙芯)、alpha(申威)、ARM(飞腾、鲲鹏)、x86(海光、兆芯)等四大主流指令集的技术路线,成为经济数字化转型、提升产业链发展的关键,从技术体系引进、强化产业基础、加强保障能力等方面着手,促进信创产业在本地落地生根,带动传统IT信息产业转型,构建区域级产业聚集集群。
基于此,目前党政或各行业数据中心(IDC)的建设,不管是公有云还是私有云,都会充分考虑政策、应用环境、人员等风险,并制定相应的风险对策和管理措施,针对基础环境存在不同国产芯片架构的情况,制定可持续使用的设计方案。所涵盖的基础设施包括四大指令集的国产芯片服务器、国产存储设备、国产网络设备和国产安全设备组成。基于这样的硬件实施,配置相应的底层支撑,包括操作***、虚拟化软件等,形成计算资源池(虚拟机池、裸金属物理机池)、存储资源池(FC-SAN存储资源池、分布式存储资源池)、网络资源池(VPN、弹性IP、虚拟交换机)等,构建起基础设施即服务层(IAAS)。
但是,目前IAAS层面的所有无中心化的技术都是只能支持单一指令集技术路线,存在一定的路径依赖,当某个技术路线的服务器、存储或网络交换机、路由器发生停止供货、停止运维、停止升级等“卡脖子”事件时,会导致业务***停滞、降级甚至中断。虽然目前有一些的虚拟化技术解决了计算服务的部分问题,但是一旦CPU芯片层面上出现“断供”的情况,还是会影响业务的正常运行,而且配置极其复杂,存在很大的运维成本。
发明内容
鉴于此,为了解决现有技术存在的上述问题,本发明的目的在于提供一种基于不同异构指令集的去中心化***及方法以达到基于混合指令集的区块链去中心化技术解决了“中心化”存储带来的单点故障以及故障难以追责等信任和安全问题的目的。
本发明所采用的技术方案为:一种基于不同异构指令集的去中心化***,该***包括:
基础设施访问层,用于不同异构指令集的服务器部署并利用去中心化存储特性存放区块链业务数据;
业务逻辑处理层,用于区块链业务网络设计和业务流程管理设计,且业务逻辑处理层通过客户端与基础设施访问层建立访问连接;
界面交互层,用于各功能模块业务逻辑的浏览器端页面设计;
其中,所述区块链业务网络设计对基础设施访问层的业务网络进行设计并提供业务网络服务接口,通过业务网络存储或访问区块链业务数据;所述业务流程管理设计对业务网络服务接口进行服务编排组合并在界面交互层实现智能合约流程管理。
进一步地,所述界面交互层包括身份管理功能模块、账本管理功能模块、交易管理功能模块和智能合约功能模块。
进一步地,所述基础设施访问层包括遵循Fabric协议的分布式区块链账本。
进一步地,所述基础设施访问层基于LoongArch服务器、alpha服务器、ARM服务器和x86服务器搭建。
在本发明中还提供了一种基于不同异构指令集的去中心化方法,该去中心化方法包括:
S1:由位于不同异构指令集服务器上的区块链节点搭建去中心化的Fabric区块链网络;
S2:使用Hyperledger Composer组件工具构建符合区块链应用***功能需求的业务网络并部署在Fabric区块链网络当中;
S3:使用Web应用开发技术以及业务流程管理技术对业务网络服务接口进行服务编排组合,以完成界面交互层的区块链应用***功能搭建;
S4:对界面交互层的区块链应用***中各功能模块进行浏览器端页面设计,以建立基于分布式区块链账本的联盟链平台。
进一步地,所述Fabric区块链网络基于LoongArch、alpha、ARM和x86异构指令集的虚拟机资源池搭建。
进一步地,所述Fabric区块链网络的搭建方法包括:
S101:通过虚拟化软件在LoongArch、alpha、ARM以及x86异构指令集的各台物理服务器上分别构建多台虚拟机;
S102:在每台虚拟机上安装操作***,下载并安装符合Fabric协议版本需求的超级账本软件;
S103:使用Docker容器技术分别在同一物理服务器所构建的多台虚拟机上分别部署Peer节点、CA节点、状态数据库节点和排序服务节点;
其中,所述CA节点负责对加入链内的所有节点进行授权认证;所述状态数据库节点用于存储被建模为JSON数据的链码值;排序服务节点提供ACL访问控制,并通过交易排序保证各Peer节点上的数据一致性。
进一步地,所述服务器的账本数据结构包括:
区块链数据,所述区块链数据包括多个区块,各个区块连接形成链式数据结构,且各所述区块中均存储有一条或一组有序且不可篡改的记录;
状态数据,所述状态数据保存于状态数据库节点中,通过状态数据保存所有交易完成之后的最新结果,且全部以Key/Value键值对的形式存在;
索引数据,所述索引数据中保存了两类数据,一类是对于每一个Key的历史记录的追踪信息,另一类是对于区块的相关信息;
其中,每一个区块链数据仅对应一个多指令集通道,在该多指令集通道内完成该区块链数据中各个区块间的交易。
进一步地,所述多指令集通道在Fabric协议中,为两个或多个区块之间通信的私有“子网”,用于进行需要数据保密的交易,由区块、每个区块的锚点、共享账本、链码应用程序和排序服务节点共同定义。
进一步地,所述多指令集通道支持多指令集的异构通讯机制并遵循Fabric协议将peer节点和排序服务节点连接形成虚拟通讯链路。
进一步地,所述Fabric区块链网络的去中心化交易流程为:
A1:客户端利用任意SDK构造交易提案;
A2:把交易提案发送给一个或多个不同指令集虚拟机上的背书节点;
A3:背书节点收到交易提案后,验证签名并确定提交者是否有权执行操作;
A4:客户端收到各个背书节点的应答后,打包组成一批交易并签名并发送给排序服务节点;
A5:排序服务节点对接收到的交易进行排序,然后按照区块生成策略,将一批交易打包,生成新的区块并发送给记账节点;
A6:记账节点收到新的区块后,会对该区块中的每笔交易进行校验,然后还要验证交易的背书是否符合相应的背书策略,所有的验证都通过之后,将区块追加到本地的区块链数据,并修改状态数据库。
本发明的有益效果为:
1.采用本发明所提供的基于不同异构指令集的去中心化***,采用基于LoongArch、alpha、ARM、x86等异构指令集的Fabric***架构设计,完成了整个基于Fabric区块链的底层无中心化处理机制,该***的区块链技术本身解决了“中心化”存储带来的单点故障以及故障难以追责等信任和安全问题,同时,该***支持异构指令集的技术,保障了过去对单一技术路线的依赖,解决了过去在区块链应用上被别人“卡脖子”的问题,可广泛运用在IDENTITY(身份管理)、Ledger(账本管理)、Transactions(交易管理)、SmartContract(智能合约)等区块链应用中。
2.采用本发明所提供的基于不同异构指令集的去中心化方法,基于不同异构指令集的去中心化技术,是通过把硬件和软件资源分配到每个不同指令集的服务器或工作站中,将大量闲置的计算能力利用起来,避免了因为不同指令集的中央处理器(CPU)性能差异性较大而造成的资源浪费;该技术可广泛应用于基于LoongArch、alpha、ARM、x86等异构指令集组成的计算资源池的数据中心,为金融、物理、版权、物联网等中上层应用提供技术底座;该技术不仅减少了单一指令集带来的路径依赖压力,还提高了计算资源池的利用率。另外,使用异构指令集便于扩展,可以实现对各种复杂技术路线的支持,满足了多样化的计算需求,同时也实现了计算资源整体调度的公平性。
附图说明
图1是本发明所提供的基于不同异构指令集的去中心化***的Fabric***架构图;
图2是本发明所提供的基于不同异构指令集的去中心化方法中去中心化技术的账本数据结构示意图;
图3是本发明所提供的基于不同异构指令集的去中心化方法中去中心化技术的交易流程图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的模块或具有相同或类似功能的模块。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。相反,本申请的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
实施例1
在本实施例中提供一种基于不同异构指令集的去中心化***,如图1所示,其基于LoongArch、alpha、ARM、x86等异构指令集的去中心化技术,按照整体架构分为基础设施访问层、业务逻辑处理层和界面交互层。通过***架构和各功能模块的设计,完成了整个基于四大主流国产指令集(LoongArch、alpha、ARM、x86)的去中心化技术,并解决了在信创大背景下,多指令集异构***存在的各种问题。
基础设施访问层基于LoongArch服务器、alpha服务器、ARM服务器和x86服务器搭建,且基础设施访问层用于不同异构指令集的服务器部署并利用去中心化存储特性存放区块链业务数据。基础设施访问层的各个服务器遵循Fabric协议的分布式区块链账本,实现联盟节点不同异构指令集的服务器部署。
业务逻辑处理层通过客户端与基础设施访问层建立连接,业务逻辑处理层用于区块链业务网络设计和业务流程管理设计。所述区块链业务网络设计基于基础设施访问层的Fabric网络协议使用Hyperledger Composer组件工具对基础设施访问层的业务网络进行设计并提供业务网络服务接口,业务网络服务接口可理解为与基础设施访问层之间的访问接口,以通过业务网络存储或访问在基础设施访问层的区块链业务数据;所述业务流程管理设计使用微服务技术对业务网络服务接口进行服务编排组合并在界面交互层实现智能合约流程管理。
界面交互层用于各功能模块业务逻辑的浏览器端页面设计,进而,用户通过在浏览器端的页面操作可实现基础设施访问层的区块链业务逻辑。具体的,界面交互层包括身份管理功能模块、账本管理功能模块、交易管理功能模块和智能合约功能模块,其中,智能合约功能模块用以实现智能合约流程管理。
实施例2
在实施例1所提供的基于不同异构指令集的去中心化***之基础上,在本实施例中还提供了一种基于不同异构指令集的去中心化方法,具体的讲,该方法是基于Fabric协议的区块链业务数据处理方法,其包括:
S1:由位于不同异构指令集服务器上的区块链节点搭建去中心化的Fabric区块链网络,Fabric区块链网络用于存储、访问***平台数据信息;Fabric区块链网络为基于LoongArch、alpha、ARM和x86异构指令集的虚拟机资源池搭建。
其中,Fabric区块链网络的搭建方法包括:
S101:通过虚拟化软件在LoongArch、alpha、ARM以及x86异构指令集的各台物理服务器上分别构建多台虚拟机,具体的,在每台物理服务器上构建出6台符合内存需求的虚拟机;
S102:在每台虚拟机上安装64位国产麒麟操作***,下载并安装符合Fabric协议版本需求的超级账本软件,例如:Hyperledger Composer组件工具;
S103:使用Docker容器技术在同一物理服务器所构建的6台虚拟机中选3台,这3台虚拟机分别部署3个Peer节点,分别是主节点(Leader Peer)、背书节点(Endorser Peer)和记账节点(Committer Peer);另外3台虚拟机分别部署CA节点、状态数据库节点和排序服务节点,所述CA节点负责对加入链内的所有节点进行授权认证;所述状态数据库节点(CouchDB)用于存储被建模为JSON数据的chaincode链码值,例如:资产;排序服务节点提供ACL访问控制,并通过交易排序保证各Peer节点上的数据一致性。
S2:使用Hyperledger Composer组件工具构建符合区块链应用***功能需求的业务网络并部署在Fabric区块链网络当中;
S3:使用Web应用开发技术以及业务流程管理技术对业务网络服务接口进行服务编排组合,以完成界面交互层的区块链应用***功能搭建;
S4:对界面交互层的区块链应用***中各功能模块进行浏览器端页面设计,以建立基于分布式区块链账本的联盟链平台。
为实现去中心化的Fabric区块链网络,各所述服务器采用去中心化技术的账本数据结构,如图2所示,其包括:区块链数据(Blockchain Data)、状态数据和索引数据,所述区块链数据又称为账本数据,其包括多个区块,各个区块连接形成链式数据结构,即:由一个一个的区块(Block)连接而成的链式数据结构,且各所述区块中均存储有一条或一组有序且不可篡改的记录。其中,每一个区块链数据仅对应一个多指令集通道,在该多指令集通道内完成该区块链数据中各个区块间的交易。每个多指令集通道(channel)都有且仅有一个账本数据,在该多指令集通道(channel)中的每个加盟区块的对等点都搭建同一份账本数据。
每一个区块包含三部分数据,分别为:区块头、交易数据和元数据。每一个区块头中又包含一个指向前一个区块头的Hash值,由此各个区块共同组成了一个完整的链(Chain)。对于这个完整的链式数据结构,已经产生的数据是无法修改的,只能查询,当有新的区块生成时,就附加在链的末尾,从而这个链逐渐增长,最终形成一个完整的交易记录。所有针对数据状态变更的请求都会生成有序且不可篡改的记录保存于区块链数据中,数据状态变更是由所有参与方认可的智能合约调用事务的结果。每个事务都将产生一组Key/Value键值对,这些键值对作为创建、更新或删除等操作而同步到所有账本数据。
状态数据(State Database)也称为世界状态(World State),所述状态数据保存于状态数据库节点(CouchDB)中,其是可以修改的,通过状态数据保存所有交易完成之后的最新结果,且全部以Key/Value键值对的形式存在。当有新的交易产生的时候,peer节点会根据最新的交易信息修改状态数据库节点,以反映出交易的结果;当需要详细的交易记录的时候,则在区块链数据里面查询。
索引数据(Index Database)是为了查询区块链数据的时候,可以快速定位,以加快查询速度。所述索引数据中保存了两类数据,一类是块索引,通过块索引在区块链数据中查询区块的相关信息,例如:区块hash值、区块号、交易号等等。另一类是追踪索引,追踪索引视为块索引的扩展,其在状态数据中可对每一个Key的历史记录查询追踪信息。
区块链数据所对应的多指令集通道(Multi Channel),其既支持了LoongArch、alpha、ARM、x86等不同异构指令集服务器的应用,又不违背Fabric区块链协议。在Fabric协议中,多指令集通道为两个或多个区块之间通信的私有“子网”,用于进行需要数据保密的交易,由区块、每个区块的锚点、共享账本、链码应用程序和排序服务节点共同定义。同一Fabric区块链网络上的每个交易都在一个多指令集通道上执行,每个通信方必须经过身份验证并授权在该多指令集通道上进行交易。若要创建新的多指令集通道,客户端SDK会调用配置***链码(configuration system chaincode,CSCC)和引用属性,如锚点和成员(组织),并按照轮询、随机、权重、最少活跃数或一致性哈希等负载均衡策略选取一台服务器(LoongArch、alpha、ARM或x86虚拟机)。
在多指令集通道中根据Fabric协议选举主节点(Leader Peer),代表成员与Ordering Service进行通信。共识服务将交易排序并以一个区块(Block)的形式发送给一个主节点(LeaderPeer),然后主节点(LeaderPeer)将其分发给其成员peer节点。虽然任何一个锚点可以属于多个多指令集通道,并且因此搭建多个账本数据,但没有账本数据可以从一个多指令集通道传递到另一个多指令集通道。被隔离的数据包括交易信息、账本状态和通道成员资料,这些数据仅限于在通道上具有可验证成员资格的peer节点间传播。通过信道隔离peer节点和账本数据,允许需要私有和机密事务的网络成员与同一个区块链网络上的业务竞争对手和其他受限制的成员共存。
多指令集通道支持多指令集的异构通讯机制并遵循Fabric协议将peer节点和排序服务节点连接形成虚拟通讯链路。具体的,在每一个多指令集通道中的数据都可以在不同指令集上被处理,并与其他多指令集通道隔离,并且数据会单独保存,由此形成了一个一个的子账本。从本质上来说,每一个多指令集通道都有一个独立的账本数据,即:账本数据可以被创建并绑定到对应一个多指令集通道。其中,账本数据按不同的通道多指令集进行分隔,由configuration chaincode,identity membership service和gossip数据传播协议来定义和实现,实现了不同指令集互通(每一个多指令集通道中的数据都可以在不同指令集上被处理),同时,保证了计算和存储资源的平衡。
如图3所示,上述的Fabric区块链网络进行去中心化交易流程为:
A1:客户端利用任意SDK构造交易提案,客户端可理解为基础设施访问层与业务逻辑处理层之间的访问接口。例如:该交易提案是一个调用智能合约功能函数的请求,用来确认哪些数据可以读取或写入账本数据。交易提案中包含本次交易要调用的合约标识、合约方法和参数信息以及客户端签名等,SDK将交易提案打包为可识别的格式,并使用用户的加密凭证为该交易提案生成唯一的签名。
A2:把交易提案发送给一个或多个不同指令集虚拟机上的背书节点;
A3:背书节点(Endorserpeer)收到交易提案后,验证签名并确定提交者是否有权执行操作。背书节点将交易提案的参数作为输入,在当前状态数据库节点(CouchDB)上执行交易,生成包含执行返回值、读操作集合和写操作集合的交易结果(此时不会更新账本数据),这些值的集合、背书节点的签名和背书结果(YES/NO)作为提案的结果返回给客户端SDK,SDK解析这些信息判断是否应用于后续的交易;
A4:客户端的应用程序使用SDK验证背书节点签名,并比较各节点返回的提案结果,判断提案结果是否一致以及是否参照指定的背书策略执行,若为是,则在客户端收到各个背书节点的应答后,打包组成一批交易并签名并发送给排序服务节点;
A5:排序服务节点对接收到的交易进行排序(根据不同CPU指令集虚拟机的“热度”投递消息,例如:先投递至LoongArch背书节点),然后按照区块生成策略,将一批交易打包,生成新的区块并发送给记账节点;
A6:记账节点收到新的区块后,会对该区块中的每笔交易进行校验,然后还要验证交易的背书是否符合相应的背书策略,所有的验证都通过之后,将区块追加到本地的区块链数据,并修改状态数据库。
需要说明的是,流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种基于不同异构指令集的去中心化***,其特征在于,该***包括:
基础设施访问层,用于不同异构指令集的服务器部署并利用去中心化存储特性存放区块链业务数据;
业务逻辑处理层,用于区块链业务网络设计和业务流程管理设计,且业务逻辑处理层通过客户端与基础设施访问层建立访问连接;
界面交互层,用于各功能模块业务逻辑的浏览器端页面设计;
其中,所述区块链业务网络设计对基础设施访问层的业务网络进行设计并提供业务网络服务接口,通过业务网络存储或访问区块链业务数据;所述业务流程管理设计对业务网络服务接口进行服务编排组合并在界面交互层实现智能合约流程管理。
2.根据权利要求1所述的基于不同异构指令集的去中心化***,其特征在于,所述界面交互层包括身份管理功能模块、账本管理功能模块、交易管理功能模块和智能合约功能模块。
3.根据权利要求1所述的基于不同异构指令集的去中心化***,其特征在于,所述基础设施访问层包括遵循Fabric协议的分布式区块链账本。
4.根据权利要求1所述的基于不同异构指令集的去中心化***,其特征在于,所述基础设施访问层基于LoongArch服务器、alpha服务器、ARM服务器和x86服务器搭建。
5.一种基于不同异构指令集的去中心化方法,其特征在于,该去中心化方法应用于如权利要求1-4任意一项所述的基于不同异构指令集的去中心化***,该方法包括:
S1:由位于不同异构指令集服务器上的区块链节点搭建去中心化的Fabric区块链网络;
S2:使用Hyperledger Composer组件工具构建符合区块链应用***功能需求的业务网络并部署在Fabric区块链网络当中;
S3:使用Web应用开发技术以及业务流程管理技术对业务网络服务接口进行服务编排组合,以完成界面交互层的区块链应用***功能搭建;
S4:对界面交互层的区块链应用***中各功能模块进行浏览器端页面设计,以建立基于分布式区块链账本的联盟链平台。
6.根据权利要求5所述的基于不同异构指令集的去中心化方法,其特征在于,所述Fabric区块链网络的搭建方法包括:
S101:通过虚拟化软件在LoongArch、alpha、ARM以及x86异构指令集的各台物理服务器上分别构建多台虚拟机;
S102:在每台虚拟机上安装操作***,下载并安装符合Fabric协议版本需求的超级账本软件;
S103:使用Docker容器技术分别在同一物理服务器所构建的多台虚拟机上分别部署Peer节点、CA节点、状态数据库节点和排序服务节点;
其中,所述CA节点负责对加入链内的所有节点进行授权认证;所述状态数据库节点用于存储被建模为JSON数据的链码值;排序服务节点提供ACL访问控制,并通过交易排序保证各Peer节点上的数据一致性。
7.根据权利要求6所述的基于不同异构指令集的去中心化方法,其特征在于,所述服务器的账本数据结构包括:
区块链数据,所述区块链数据包括多个区块,各个区块连接形成链式数据结构,且各所述区块中均存储有一条或一组有序且不可篡改的记录;
状态数据,所述状态数据保存于状态数据库节点中,通过状态数据保存所有交易完成之后的最新结果,且全部以Key/Value键值对的形式存在;
索引数据,所述索引数据中保存了两类数据,一类是对于每一个Key的历史记录的追踪信息,另一类是对于区块的相关信息;
其中,每一个区块链数据仅对应一个多指令集通道,在该多指令集通道内完成该区块链数据中各个区块间的交易。
8.根据权利要求7所述的基于不同异构指令集的去中心化方法,其特征在于,所述多指令集通道在Fabric协议中,为两个或多个区块之间通信的私有“子网”,用于进行需要数据保密的交易,由区块、每个区块的锚点、共享账本、链码应用程序和排序服务节点共同定义。
9.根据权利要求8所述的基于不同异构指令集的去中心化方法,其特征在于,所述多指令集通道支持多指令集的异构通讯机制并遵循Fabric协议将peer节点和排序服务节点连接形成虚拟通讯链路。
10.根据权利要求6所述的基于不同异构指令集的去中心化方法,其特征在于,所述Fabric区块链网络的去中心化交易流程为:
A1:客户端利用任意SDK构造交易提案;
A2:把交易提案发送给一个或多个不同指令集虚拟机上的背书节点;
A3:背书节点收到交易提案后,验证签名并确定提交者是否有权执行操作;
A4:客户端收到各个背书节点的应答后,打包组成一批交易并签名并发送给排序服务节点;
A5:排序服务节点对接收到的交易进行排序,然后按照区块生成策略,将一批交易打包,生成新的区块并发送给记账节点;
A6:记账节点收到新的区块后,会对该区块中的每笔交易进行校验,然后还要验证交易的背书是否符合相应的背书策略,所有的验证都通过之后,将区块追加到本地的区块链数据,并修改状态数据库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210661376.1A CN115065690A (zh) | 2022-06-13 | 2022-06-13 | 一种基于不同异构指令集的去中心化***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210661376.1A CN115065690A (zh) | 2022-06-13 | 2022-06-13 | 一种基于不同异构指令集的去中心化***及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115065690A true CN115065690A (zh) | 2022-09-16 |
Family
ID=83200048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210661376.1A Pending CN115065690A (zh) | 2022-06-13 | 2022-06-13 | 一种基于不同异构指令集的去中心化***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115065690A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115002119A (zh) * | 2022-08-01 | 2022-09-02 | 云上人和物联科技有限公司 | 一种基于不同异构指令集的去中心化***及方法 |
CN115150395A (zh) * | 2022-06-08 | 2022-10-04 | 南京大学 | 一种基于批量调度的Hyperledger Fabric防护加速器 |
CN116346369A (zh) * | 2023-05-31 | 2023-06-27 | 湖南天河国云科技有限公司 | 一种区块链构建方法、区块链构建***及区块链*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108717466A (zh) * | 2018-06-05 | 2018-10-30 | 中国平安人寿保险股份有限公司 | 征信数据存储方法、装置、计算机设备及存储介质 |
CN110288307A (zh) * | 2019-05-13 | 2019-09-27 | 西安电子科技大学 | 基于Fabric区块链的智能合约协同开发***及数据处理方法 |
CN111476548A (zh) * | 2020-04-16 | 2020-07-31 | 山东师范大学 | 一种基于区块链的职称评审方法及*** |
CN112883116A (zh) * | 2021-02-24 | 2021-06-01 | 深圳市爱云信息科技有限公司 | 基于区块链的供应链金融AI DaaS算法仓库平台 |
WO2021128733A1 (zh) * | 2019-12-28 | 2021-07-01 | 南京理工大学 | Hyperledger Fabric区块链隐私数据存储与访问***及其方法 |
-
2022
- 2022-06-13 CN CN202210661376.1A patent/CN115065690A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108717466A (zh) * | 2018-06-05 | 2018-10-30 | 中国平安人寿保险股份有限公司 | 征信数据存储方法、装置、计算机设备及存储介质 |
CN110288307A (zh) * | 2019-05-13 | 2019-09-27 | 西安电子科技大学 | 基于Fabric区块链的智能合约协同开发***及数据处理方法 |
WO2021128733A1 (zh) * | 2019-12-28 | 2021-07-01 | 南京理工大学 | Hyperledger Fabric区块链隐私数据存储与访问***及其方法 |
CN111476548A (zh) * | 2020-04-16 | 2020-07-31 | 山东师范大学 | 一种基于区块链的职称评审方法及*** |
CN112883116A (zh) * | 2021-02-24 | 2021-06-01 | 深圳市爱云信息科技有限公司 | 基于区块链的供应链金融AI DaaS算法仓库平台 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115150395A (zh) * | 2022-06-08 | 2022-10-04 | 南京大学 | 一种基于批量调度的Hyperledger Fabric防护加速器 |
CN115150395B (zh) * | 2022-06-08 | 2023-08-22 | 南京大学 | 一种基于批量调度的Hyperledger Fabric防护加速器 |
CN115002119A (zh) * | 2022-08-01 | 2022-09-02 | 云上人和物联科技有限公司 | 一种基于不同异构指令集的去中心化***及方法 |
CN116346369A (zh) * | 2023-05-31 | 2023-06-27 | 湖南天河国云科技有限公司 | 一种区块链构建方法、区块链构建***及区块链*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108777625B (zh) | 签名的验证方法、装置和***、存储介质、电子装置 | |
CN115065690A (zh) | 一种基于不同异构指令集的去中心化***及方法 | |
Yu et al. | Virtualization for distributed ledger technology (vDLT) | |
CN110226168B (zh) | 用于提供区块链云服务的接口的***和方法 | |
CN108540536B (zh) | 基于区块链的网络海量业务处理方法、设备及存储介质 | |
Fu et al. | SHARP: An architecture for secure resource peering | |
CN108810137A (zh) | 一种联盟区块链*** | |
JP5160134B2 (ja) | 配送保証されるコンテンツベースのパブリッシュ/サブスクライブ・システムの動的アクセス制御 | |
CN111400112B (zh) | 分布式集群的存储***的写入方法、装置及可读存储介质 | |
US8195742B2 (en) | Distributed client services based on execution of service attributes and data attributes by multiple nodes in resource groups | |
CN109347909B (zh) | Proxzone服务平台的工作方法 | |
CN110915166A (zh) | 区块链 | |
US20190199693A1 (en) | Safe-Transfer Exchange Protocol Based on Trigger-Ready Envelopes Among Distributed Nodes. | |
CN114978638B (zh) | 一种基于共享节点的区块链跨链监管方法 | |
CA2568970C (en) | Managing information in a multi-hub system for collaborative planning and supply chain management | |
CN103685535A (zh) | 一种大规模分布异构数据处理的云数据库***接口设计 | |
CN115695139A (zh) | 一种基于分布式鲁棒增强微服务***架构的方法 | |
WO2020042929A1 (zh) | 一种区块链*** | |
CN112565368B (zh) | 基于区块链的海上装备自组网***、方法和介质 | |
CN115002119A (zh) | 一种基于不同异构指令集的去中心化***及方法 | |
CN105847428A (zh) | 一种移动云平台 | |
CN117938867A (zh) | 一种多区块链数据处理方法、装置、设备、介质及产品 | |
CN113595737B (zh) | 基于区块链的敏捷指控*** | |
US20070157212A1 (en) | Context key routing for parallel processing in an application serving environment | |
CN114584940B (zh) | 切片服务处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |