包含与区块链相关的对等网络的系统、辅助该对等网络的构建的方法、以及在对等节点执行的智能合约技术方案

技术编号:37971425 阅读:12 留言:0更新日期:2023-06-30 09:46
在由多个对等节点构成的对等网络的各对等节点中,具备定义了不依赖于实体的通用的处理的智能合约即通用智能合约,针对与该通用智能合约相关联的一个或多个实体的每一个,存储包含该实体的实体定义的架构定义信息。通用智能合约接受实体名的指定,根据架构定义信息确定指定的该实体名的实体,并对所确定的实体进行处理。行处理。行处理。

【技术实现步骤摘要】
【国外来华专利技术】包含与区块链相关的对等网络的系统、辅助该对等网络的构建的方法、以及在对等节点执行的智能合约


[0001]本专利技术大致涉及区块链。

技术介绍

[0002]已知被称为“区块链”的技术。在本申请时,作为区块链的定义,由日本区块链协会提供了下述定义。本专利技术所涉及的区块链的定义可以是下述的定义(1),也可以是下述的广义的定义(2)。另外,区块链也可以解释为分布式台账技术的一例,或者分布式台账技术的一例也可以解释为区块链。
[0003](1)区块链被定义为由包含拜占庭错误的未指定数量的节点使用的协议或协议的实现,并且随着时间的推移将一致性回复的概率收敛到零。
[0004](2)从更广泛的意义上来说,区块链是一种具有数据结构的技术,其可以容易地检测使用数字签名和散列指针的操纵,并且其中数据由于分布在网络上的多个节点上而具有高可用性和完整性。关于开源的区块链,已知有超级账本(Hyperledger Fabric)(商标)。作为使用超级账本进行系统开发时的标准的SDK(Software Development Kit),已知Hyperledger Fabric SDK for node.js(以下称为“Fabric Node SDK”)。
[0005]现有技术文献
[0006]非专利文献
[0007]非专利文献1:Hyperledger Fabric SDK for node.js
[0008]https://hyperledger.github.io/fabric
r/>sdk

node/release

1.4/module

fabric

network.html

技术实现思路

[0009]专利技术所要解决的课题
[0010]在超级账本(Apache License 2.0)中,利用Fabric Node SDK提供的API(Application Programming Interface:应用程序接口),开发以作为对等网络的区块链网络为基础的服务(例如应用)。在服务的执行中,为了在区块链网络中登记以及参照数据,需要被称为链码的特别的程序。因此,在服务的开发中,需要开发和部署链码。
[0011]为每个实体开发链码。具体而言,在链码的编码中记述与该链码对应的实体的定义和用于该实体的操作的处理的定义,在该链码的实例化中,作为自变量,输入由该链码操作的实体的值。
[0012]在链码的开发中,需要与区块链相关的知识以及与用于链码开发的API相关的知识作为前提,另外,每个实体需要链码的编码。因此,开发难度比较高,服务的开发生产率低。
[0013]此外,由于在每个实体中存在链码,因此服务维护的负担大。
[0014]以上那样的课题是以区块链网络为基础的服务的实用化的障碍之一。另外,链码
是智能合约的一例,但以上那样的课题也可能存在于超级账本以外的区块链中的智能合约。
[0015]用于解决课题的手段
[0016]在由多个对等节点构成的对等网络的各对等节点中,具备定义了不依赖于实体的通用处理的智能合约即通用智能合约,针对与该通用智能合约相关联的一个或多个实体的每一个,存储包含该实体的实体定义的架构定义信息。通用智能合约接受实体名的指定,根据架构定义信息确定指定的该实体名的实体,并对确定的实体进行处理。
[0017]专利技术效果
[0018]以区块链网络为基础的服务的开发生产率提高,维护负担降低。
附图说明
[0019]图1表示本专利技术的一实施方式的系统整体的结构。
[0020]图2表示一比较例的对等节点(peer)。
[0021]图3表示本专利技术的一实施方式的对等节点。
[0022]图4表示架构(schema)定义信息的一例。
[0023]图5表示架构定义UI的一例。
[0024]图6表示输入到通用链码(Chain Code)的架构定义信息和遵从该架构定义信息的存储和控制的一例。
[0025]图7表示输入到通用链码的架构定义信息和遵从该架构定义信息的存储的另一例。
[0026]图8表示实例化处理的流程的一例。
[0027]图9表示登记处理的流程的一例。
[0028]图10表示登记处理以外的事务(transaction)处理的流程的一例。
[0029]图11表示通用链码的升级的契机。
[0030]图12表示实体的结构和存储的概要。
具体实施方式
[0031]在以下的说明中,“接口装置”可以是一个以上的接口设备。该一个以上的接口设备可以是下述中的至少一个。
[0032]·
一个以上的I/O(Input/Output)接口设备。I/O(Input/Output:输入/输出)接口设备是针对I/O设备和远程的显示用计算机中的至少一个的接口设备。针对显示用计算机的I/O接口设备可以是通信接口设备。至少一个I/O设备可以是用户接口设备,例如键盘以及指示设备那样的输入设备、显示设备那样的输出设备中的任一个。
[0033]·
一个以上的通信接口设备。一个以上的通信接口设备可以是一个以上的同种的通信接口设备(例如一个以上的NIC(Network Interface Card:网络接口卡)),也可以是两个以上的不同种类的通信接口设备(例如NIC和HBA(Host Bus Adapter:主机总线适配器))。
[0034]另外,在以下的说明中,“存储器”是作为一个以上的存储设备的一例的一个以上的存储设备,典型地可以是主存储设备。存储器中的至少一个存储设备既可以是易失性存
储设备,也可以是非易失性存储设备。
[0035]另外,在以下的说明中,“永久存储装置”可以是作为一个以上的存储设备的一例的一个以上的永久存储设备。永久存储设备典型地可以是非易失性的存储设备(例如辅助存储设备),具体而言,例如可以是HDD(Hard Disk Drive,硬盘驱动器)、SSD(Solid State Drive,固态硬盘)、NVNE(Non

Volatile Memory Express,非易失性存储器标准)驱动器、或者SCM(Storage Class Memory,储存级存储器)。
[0036]另外,在以下的说明中,“存储装置”可以是存储器和永久存储装置中的至少存储器。
[0037]此外,在以下的说明中,“处理器”可以是一个以上的处理器设备。至少一个处理器设备典型地可以是CPU(Central Processing Unit:中央处理单元)那样的微处理器设备,但也可以是GPU(Graphics Processing Unit:图形处理单元)那样的其他种类的处理器设备。至少一个处理器设备可以是单核,也可以是多核。至少一个处理器设备可以是处理器核。至少一个处理器设备通过进行处理的一部分或全部的硬本文档来自技高网...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种系统,包括与允许型区块链相关且由多个被允许的对等节点构成的对等网络,其特征在于,在各对等节点中,具备通用智能合约,该通用智能合约作为通过在该对等节点执行而进行针对实体的处理的智能合约,定义了不依赖于实体的通用的处理,针对与该通用智能合约关联的一个或多个实体的每一个,存储包含该实体的实体定义的记述的架构定义信息,该通用智能合约受理实体名的指定,从所述架构定义信息中确定所指定的该实体名的实体,对所确定的实体进行处理。2.根据权利要求1所述的系统,其特征在于,根据与所述允许型区块链相关的智能合约开发环境,智能合约受理在智能合约的实例化中被指定为自变量的信息,实例化用的函数与所述通用智能合约相关联,调用了实例化用的函数的通用智能合约受理所述架构定义信息作为自变量,将所受理的该架构定义信息存储到具有该通用智能合约的对等节点中。3.根据权利要求2所述的系统,其特征在于,所述实体定义包含实体的实体名和该实体所具有的一个以上的字段的各自的字段名,对所述通用智能合约关联有登记用的函数,调用了登记用的函数的通用智能合约受理针对至少一个实体包含包括字段名的值的数据集和实体名的输入数据,根据存储在该对等节点中的架构定义信息确定包含与在该输入数据中指定的实体名一致的实体名的实体定义,在遵从所确定的该实体定义的实体的字段中登记在该输入数据中指定的与该字段对应的值。4.根据权利要求3所述的系统,其特征在于,调用了所述登记用的函数的通用智能合约判定与在所述输入数据中指定的实体名对应的数据集是否符合使用该实体名确定的实体定义,在该判定的结果为真的情况下,在遵从所确定的该实体定义的实体的字段中登记与该字段对应的值。5.根据权利要求3所述的系统,其特征在于,所述实体定义能够包含被指定为部分公开用的字段的字段名,所确定的所述实体定义包含被指定为部分公开用的字段的字段名,在所述输入数据包含在所述部分公开用的字段中登记的值的情况下,所述通用智能合约将被指定为部分公开用的字段的字段名的字段存储到该对等节点中的部分公开用的数据存储装置中,在该字段中登记与该字段名对应的值。6.根据权利要求3所述的系统,其特征在于,所述实体定义能够包含被指定为加密用的字段的字段名,在所确定的所述实体定义包含被指定为加密用的字段的字段名的情况下,关于该字段名,所述数据集包含加密密钥,所述通用智能合约使用该加密密钥对该字段名的值进行加密,将该加密后的值登记到该字段名的字段中。
7.根据权利要求3所述的系统,其特征在于,在所述输入数据中包含与实体名相关联的ID,在所述通用智能合约提交了以下事务的情况下,将包含与该实体名对应的ID的响应返回给调用源,所述事务是响应于调用了所述登记用的函数而进行的事务,且包含在与该实体名对应的实体的字段中登记值。8.根据权利要求2所述的系统,其特征在于,所述实体定义能够包含针对与该实体定义对应的实体的不可执行的处理的类别的指定,在所述架构定义信息中的与所指定的实体名对应的实体定义中,指定了不可执行的处理的类别,并且针对所指定的所述实体名的实体的执行对象处理的类别符合被指定为该不可执行的处理的情况下,所述通用智能合约执行所述执行对象处理。...

【专利技术属性】
技术研发人员:鸣海宽之
申请(专利权)人:株式会社日立制作所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1