一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

服务器、数据处理方法、计算机系统以及计算机与流程

2022-04-02 15:25:51 来源:中国专利 TAG:

服务器、数据处理方法、计算机系统以及计算机
1.本技术主张令和1年(2019年)12月16日申请的日本技术即日本特愿2019-226049的优先权,参照其内容,取入到本技术中。
技术领域
2.本发明涉及在多个机构中共享各种数据的区块链(block chain)。


背景技术:

3.区块链具有数据的篡改困难、能够进行无中介的直接交易的特性,近年来除了虚拟货币的利用以外,作为企业活动的基础的应用备受关注。
4.除了广泛地公开数据的公共区块链以外,还存在仅在相同的社区内的成员之间共享数据的私有区块链。区块链例如可预见在供应链中的商品的订货信息的共享等在商务管理中使用的情形、在企业或用户间的结算信息的共享等在金融相关的交易管理中使用的情形等。
5.这样,在根据用途构建各种各样的区块链的过程中,也可以考虑关闭各区块链而使企业活动周转的情况,但通过连接区块链和现有的系统,或者连接这些各种区块链,有可能实现更宽的企业活动的效率化。
6.在连接区块链时,需要注意数据的共享范围。例如,在使管理商务信息的区块链与现有的系统、或管理金融交易信息的其他区块链协作的情况下,也可以在商务用的区块链中共享商务信息,但关于在进行商务时以何种方法进行了结算(用独自的硬币结算、利用虚拟货币进行结算等)等结算的详细信息,可以认为想要仅在结算的执行、对象成员等关系当事者间共享。
7.作为与使用了区块链的系统中的协作相关的公知技术,已知有专利文献1。根据专利文献1,使内容管理的区块链与支付的区块链协作来进行结算。
8.利用者将内含支付事务的内容请求事务发送给一个内容管理区块链,并且该内容的权利者从记录于内容管理的区块链的数据中取出上述内含的支付事务并发送给另一个支付用区块链,并进行结算。
9.现有技术文献
10.专利文献
11.专利文献1:日本特开2017-204070号公报


技术实现要素:

12.发明所要解决的课题
13.在上述公知技术中,不仅是商品,与支付相关的事务也被发送到最初的一方的内容管理用区块链并记录,因此在内容管理用区块链中存在多个内容权利者的情况下,存在自身的内容支付信息也向与自身没有直接关系的其他内容权利者泄漏的问题。
14.鉴于以上课题,本发明的目的在于提供一种在使区块链协作时,在协作源的区块
链的成员之间共享信息的同时,与该区块链无关的其他区块链或系统的协作相关的信息仅在关系当事者间共享的方法。
15.用于解决课题的手段
16.本发明是一种服务器,具有处理器、存储器以及与第一计算机连接的接口,所述服务器具有:协作部,其接受处理请求,判定所述处理请求中,是否包含表示针对所述第一计算机所属的第一区块链的处理以及针对与所述第一计算机协作的第二计算机所属的第二区块链的处理的协作请求,在包含所述协作请求的情况下,判定是否需要进行所述协作请求的隐匿化;以及隐匿部,其根据所述判定的结果,对需要隐匿化的协作请求实施隐匿化,所述协作部根据所述判定的结果,将包含由所述隐匿部实施了隐匿化后的协作请求的处理执行请求发送到所述第一计算机。
17.发明效果
18.根据本发明的一个实施方式,在使区块链协作时,在属于协作源的第一区块链的第一计算机间共享数据,关于由第二区块链管理的信息等与协作源的第一区块链无关或不想公开的信息,通过隐匿化能够仅在关系当事者间共享。
19.在本说明书中公开的主题的至少一个实施的详细情况在所附的附图和以下的记述中进行记述。所公开的主题的其他特征、方式、效果通过以下的公开、附图、请求专利权的技术方案而更加明确。
附图说明
20.图1表示本发明的实施例,是表示计算机系统的硬件及软件结构的一例的框图。
21.图2表示本发明的实施例,是表示执行区块链所涉及的处理的程序的管理信息的一例的说明图。
22.图3表示本发明的实施例,是表示协作目标信息的一例的说明图。
23.图4a表示本发明的实施例,是表示在区块链的台帐中记录的商务信息的一例的说明图。
24.图4b表示本发明的实施例,是表示在区块链的台帐中记录的支付信息的一例的说明图。
25.图4c表示本发明的实施例,是表示追加到区块链的台帐的事务信息的一例的说明图。
26.图5a表示本发明的实施例,是表示隐匿管理信息的一例的说明图。
27.图5b表示本发明的实施例,是表示构成隐匿管理信息的各函数的隐匿级别信息的一例的说明图。
28.图5c表示本发明的实施例,是表示应用于在由各函数调用的程序的隐匿对象信息的一例的说明图。
29.图6a表示本发明的实施例的变形例,是表示隐匿控制信息的应用目标信息的一例的说明图。
30.图6b表示本发明的实施例的变形例,是表示隐匿控制的定义的一例的说明图。
31.图7表示本发明的实施例,是表示有无协作的判定及协作用的隐匿处理的一例的流程图。
32.图8表示本发明的实施例,是表示有无协作的判定及协作请求的处理的一例的流程图。
33.图9表示本发明的实施例,是表示有无隐匿的判定及协作处理的一例的流程图。
34.图10表示本发明的实施例的变形例,是表示针对有无隐匿的判定及协作的处理的一例的流程图。
具体实施方式
35.以下,基于附图对本发明的实施方式进行说明。另外,以下说明的实施方式是一个例子,本发明并不限定于此。
36.使用图1至图9对实施例进行说明。
37.图1是表示本发明的实施例的计算机系统的硬件及软件结构的框图。
38.计算机系统包括参加协作源的区块链bc#1的1个以上的计算机101a~101c、参加协作目标的区块链bc#2的1个以上的计算机121a~121c、1个以上的客户终端141、接受来自客户终端141的处理的1个以上的服务器161、1个以上的区块链认证机构的服务器(图中bc认证机构)151。
39.此外,在以下的说明中,在不分别确定计算机101a~101c的情况下,使用省略了后缀的附图标记“101”。对于其他构成要素的附图标记也同样如此。另外,计算机101b、101c是与计算机101a同样的结构,计算机121b、121c是与计算机121a同样的结构。
40.另外,在本实施例中示出了在区块链bc#1中通过计算机101共享与物品的购买相关的台帐111,在区块链bc#2中通过计算机121共享与金钱的支付相关的台帐131的例子,但并不限定于由台帐111、131管理的信息。
41.此外,bc认证机构的服务器151是针对各自独立存在的多个区块链bc#1、bc#2来管理用于能够识别各个区块链的id、证书等信息的服务器151。例如,属于区块链bc#2的协作目标的计算机121在识别协作源的区块链bc#1的计算机101时询问服务器151,或者利用服务器发布的证书等来认证是合法成员。
42.计算机101、121、服务器151、161、客户终端141分别经由i/f104、124、164、144与网络10连接。
43.计算机101包括cpu103、存储器102、i/f104和存储装置11。cpu103经由i/f104进行来自服务器161等外部设备的操作请求的接收以及该操作的执行、对上述外部设备的数据处理结果的发送等。
44.存储器102存储协作部105、事务管理部106、共识形成部107、程序管理信息108和协作目标信息109,并且与cpu103、i/f104连接。存储装置11存储区块链bc#1的台帐111。
45.协作部105、事务管理部106和共识形成部107作为程序被加载到存储器102中,并且由cpu103执行。cpu103根据各功能部的程序执行处理,由此作为提供预定功能的功能部进行工作。
46.例如,cpu103按照事务管理程序执行处理,由此作为事务管理部106发挥功能。对于其他程序也同样如此。并且,cpu103也作为提供各程序所执行的多个处理的各功能的功能部进行工作。计算机及计算机系统是包含这些功能部的装置及系统。此外,其他的计算机121、服务器161的cpu163也同样如此。
47.计算机121包括cpu123、存储器122、i/f124以及存储装置13。cpu123经由i/f124进行来自服务器161等外部设备的操作请求的接收以及该操作的执行、对上述外部设备的数据处理结果的发送等。
48.存储器122存储协作部125、事务管理部126、共识形成部127、数据隐匿部128、隐匿复原部129、隐匿控制信息130,并与cpu123、i/f124连接。存储装置13存储区块链bc#2的台帐131。
49.事务管理部126、共识形成部127、数据隐匿部128和隐匿复原部129作为程序被加载到存储器122中,并且由cpu123执行。
50.服务器161包括cpu163、存储器162和i/f164。cpu163经由i/f164进行对计算机101等的操作请求、来自计算机101等的操作结果的接收等。存储器162存储协作部165、数据隐匿部166、隐匿复原部167、隐匿管理信息168,并与cpu163、i/f164连接。
51.协作部165、数据隐匿部166、隐匿复原部167作为程序被加载到存储器162中,由cpu163执行。
52.客户终端141包括cpu143、存储器142和i/f144。cpu143经由i/f144进行对服务器161等的操作请求、来自服务器161等的操作结果的接收等。存储器142存储协作部145,并且与cpu143、i/f144连接。协作部145作为程序被加载到存储器142中,并且由cpu143执行。
53.接着,对本实施例的计算机系统的软件结构的详细内容(存储器102、存储器122、存储器162、存储器142中存储的信息)进行说明。
54.首先,对存储在存储器102中的程序以外的信息(程序管理信息108、协作目标信息109)进行说明,之后,对存储在存储器102中的程序信息(105~107的信息)进行说明。
55.程序管理信息108是计算机101针对从服务器161等请求的处理,用于判定区块链bc#1内的台帐111的更新、与本区块链bc#1内的其他计算机101的交换等要执行的程序是否在本区块链bc#1内关闭、或是否是对其他区块链bc#2的处理的请求等也与其他区块链bc#2相关的处理而使用的信息。
56.本实施例的计算机系统中的处理中,首先,客户终端141对服务器161发送处理请求。在处理请求中包含针对区块链bc#1的处理请求,根据处理的内容,包含对区块链bc#2的协作请求。
57.在区块链bc#1中,例如管理与商品的购买等相关的物流信息。另外,在区块链bc#2中,管理与支付相关的金融信息。在客户终端141中,除了购买商品之外,在进行价格结算的情况下,对处理请求加入协作请求并发布。
58.本实施例的客户终端141在仅购买商品的情况下发出不包含协作请求的处理请求,在除了购买商品之外还进行价格结算的情况下,发出包含协作请求的处理请求。
59.服务器161在从客户终端141接收到处理请求时,如后述那样判定是否包含协作请求,在包含协作请求的情况下,如后述那样判定是否将协作请求隐匿化。在判定为需要隐匿化的情况下,服务器161将该协作请求隐匿化。
60.然后,服务器161将包括根据需要隐匿化的协作请求的处理请求作为处理执行请求,发送给属于区块链bc#1的计算机101。
61.计算机101判定从服务器161接收到的处理执行请求中是否包含协作请求,在包含协作请求的情况下,向属于区块链bc#2的计算机121发送协作请求。
62.在计算机101中,对处理请求进行处理,如果处理请求中包含协作请求,则向区块链bc#2的计算机121发送协作请求并执行处理。在计算机121中,如后述那样处理协作请求,根据需要将协作请求的处理结果隐匿化后发送给计算机101。
63.计算机101在接收到区块链bc#2中的协作请求的处理结果时,将处理请求的处理结果和协作请求的处理结果发送给服务器161。
64.在服务器161中,在针对协作请求的处理结果被隐匿化的情况下,对该处理结果进行复原(解码),并将复原的协作请求的处理结果和针对处理请求的处理结果发送给客户终端141,完成一系列的处理。
65.图2是表示本发明的实施例的程序管理信息108的一例的说明图。本信息将项目201~207这7个数据项目包含在一个条目中。
66.项目201表示识别计算机101所管理的程序的id信息。项目202表示程序的名称。项目203表示该程序是否有与外部的区块链bc#2等外部系统的协作。
67.项目204表示是协作目标的系统提供固定的处理、或者是通过来自客户终端141等的参数等而能够选择执行的处理。如果项目204是“参数”,则能够根据执行时的参数来选择处理,除此以外的情况下表示固定的处理。
68.项目205参照后述的协作目标信息110等表示协作目标的设备的详细信息。例如,在图2的例子中,信息“1001”表示后述的图3的协作目标信息109的id为“1001”的协作目标,“o3”意味着从服务器161指定的参数o3表示协作目标。
69.项目206表示从服务器161指定的参数中的哪个参数与本区块链bc#1相关。项目207表示从服务器161指定的参数中的、与本区块链bc#1没有直接关系的与协作目标相关的参数。
70.例如,在图2中,在项目201的id值为“5”的情况下,从服务器161包括内部的参数、外部的参数而接受参数“a、b、c、d、o1、o2、o3”。计算机101仅将其中的内部参数“a、b、c、d”作为与本区块链bc#1相关的参数,用于本区块链bc#1的数据的参照和更新。另外,计算机101将外部参数“o1,o2,o3”发送给协作目标的区块链bc#2。
71.图3是表示本发明的实施例的协作目标信息109的一例的说明图。本信息将项目301~303这3个数据项目包含在一个条目中。项目301表示识别各协作目标的id信息,项目302表示协作目标的名称,项目303表示协作目标的ip地址等协作目标的详细信息。
72.接下来,对存储在存储器102中的程序信息进行说明。
73.首先,协作部105与属于自身的区块链bc#1的计算机101、属于其他区块链bc#2的计算机121、客户终端141等进行数据的交换。
74.事务管理部106针对从服务器161等接收到的处理请求,管理向台帐111的写入、参照等该事务的信息,并执行该事务。
75.图4a表示台帐111的信息的一例。图4a是商品买卖的事务的记录信息的一例,不限于此,也能够记录商品买卖以上的信息。
76.台帐11将项目401~407这7个数据项目包含在一个条目中。项目401表示识别记录在台帐111中的数据的订购id信息。项目402表示在台帐111中记录的事务中的购买者的信息。项目403表示上述事务中的销售者的信息。项目404表示上述事务中购买的商品名的信息。
77.项目405表示商品的数量。项目406表示执行了上述事务的日期时间。项407表示用于识别上述事务的事务id(txid)。
78.另外,作为台账111的信息,也可以记录如图4c所示那样的、与实际进行台帐111的更新、参照的事务相关的事务信息1111。图4c的事务信息1111能够将与图4a的事务id(项目407)一致的事务id(项目421)的条目追加到台帐111中。取得这些事务数据的散列值,与过去的事务数据的散列值连锁地进行记录,由此能够提高数据的抗篡改性。
79.事务信息1111例如在一个条目中包含项目421~424这4个数据项目。项目421表示用于识别事务的事务id,是图4a所示的项目407的事务id。
80.项目422表示事务的执行主体。项目423表示事务的执行内容,存储程序名、参数等。项目424表示事务的执行日期时间。
81.共识形成部107例如在接受了向台帐111的更新请求时,在进行更新前事先验证该更新请求,考虑本区块链bc#1内的其他计算机101的事先验证结果,判定是否进行台帐111的更新,并根据判定结果执行更新。
82.接着,对存储在计算机121的存储器122中的程序以外的信息(隐匿控制信息130)进行说明。
83.隐匿控制信息130是用于在从属于其他的区块链bc#1的计算机101接受了协作请求时,判定协作请求的隐匿级别的信息。在本实施例中,该隐匿控制信息130将由服务器161生成的与隐匿控制相关的隐匿管理信息168(后述的图5a)的内容事先与计算机121共享使用。
84.如图5a所示,与隐匿控制相关的隐匿管理信息168在一个条目中包含项目501和502这2个数据项目。项目501表示用于识别隐匿控制内容的控制id。项目502表示从计算机101接收的隐匿请求的内容、对应答内容实施的隐匿方法或应该实施的隐匿方法等隐匿控制内容。
85.另一方面,在本实施例的变形例中,除了上述的隐匿管理信息168以外,也可以在其他计算机121侧定义隐匿控制信息130来使用。由此,例如,即使在来自计算机101侧的协作请求中没有应答内容的隐匿化请求的情况下,对于判定为应该对计算机121所属的区块链bc#2侧将应答隐匿化的情况,也能够将应答隐匿化而返回。
86.由此,也能够应对协作源侧的隐匿设定的错误等,能够进行更严格的数据的访问控制。
87.在本实施例的变形例中,区块链bc#2的计算机121所保持的隐匿控制信息130除了上述的隐匿管理信息168的内容以外,还由图6b所示的隐匿控制的定义1301和与图6a所示的隐匿控制的应用目标相关的应用目标信息1302构成。
88.图6b所示的隐匿控制的定义1301在一个条目中包含项目611和项目612这2个数据项目。项目611表示用于识别隐匿控制内容的控制id。项目612表示应该对针对计算机101等的应答内容实施的隐匿的控制内容。
89.此外,在从计算机101接收到的协作请求中包含针对由计算机121应答的内容的隐匿请求的情况下,基本上使由协作目标的计算机121设定的应答的隐匿控制优先。但是,为了进一步考虑安全性,假设在从计算机101接收到的隐匿请求比由协作目标的计算机121设定的应答的隐匿请求要求更高的隐匿性的情况下等,也可以使计算机101侧请求的应答的
隐匿请求优先。
90.图6a所示的与隐匿控制的应用目标相关的应用目标信息1302在一个条目中包含项目601和项目602这2个数据项目。项目601表示用于识别应用对象的区块链的作为识别符的bcid。bcid例如由bc认证机构151对各区块链进行定义。属于相同的区块链的计算机属于bcid的值相同的区块链。
91.项目602表示与图6b的项目611的控制id(隐匿级别)对应的值,指定所应用的隐匿控制内容。例如在项目601的值为“bc1”的情况下,对属于bcid为“bc1”的区块链bc#1的计算机101,进行与控制id611对应的控制信息(602)为“1”的隐匿控制、即对针对计算机101的应答不施加任何处理而进行应答的处理。
92.另一方面,在项目601的值为“bc3”的情况下,表示对于属于bcid为“bc3”的区块链的计算机,进行控制id611的值(隐匿级别)为“3”的隐匿控制,即,作为对计算机101的应答,进行将应答内容分散或加密后返回的处理。此外,对于分散(秘密分散)或加密,只要应用周知或公知的技术即可,因此在本实施例中不再详述。
93.接下来,对存储在区块链bc#2的计算机121的存储器122中的程序信息进行说明。
94.协作部125与属于自身的区块链bc#2的计算机、属于其他区块链bc#1的计算机101、客户终端141或服务器161等进行数据的交换。
95.事务管理部126针对从属于区块链bc#1的计算机101等接收到的协作请求,进行向台帐131的写入、参照、以及所请求的事务的待机等事务的执行和管理。
96.图4b表示台帐131的信息的一例。图4b是记录了与商品的支付相关的事务的台帐131的一例。但是,不限于此,也能够记录支付以外的信息。与台账111的情况同样地,取得事务数据的散列值,与过去的事务数据的散列值连锁地进行记录,由此能够提高数据的抗篡改性。
97.台帐131在一个条目中包含项目411~418这8个数据项目。项目411表示识别记录在台帐131中的数据的结算id信息。项目412表示所记录的事务中的支付者的信息。
98.项目413表示上述事务中的支付目标。项目414表示在上述事务中支付了的金额。项目415表示发生了支付的日期时间。项目416表示针对所记录的事务,识别是来自属于哪个区块链的计算机的请求的id信息。例如,结算id的值为“1”的情况表示bc id的值为“bc1”,这表示由bc id的值为“bc1”的协作源区块链产生的商品购买的事务引起而启动的、协作目标区块链中的支付请求的事务,结算id的值为“3”的情况表示bc id的值为“local”,这不是因协作而产生的支付的事务,而是从服务器161等向该支付的区块链直接接受支付的事务执行请求而执行的事务。
99.项目417表示用于能够识别该结算与协作源的区块链bc#1的哪个订购关联的订购id。项目417的订购id与由协作源的区块链bc#1管理的台帐111的订购id401对应。
100.项目418是识别由协作目标的区块链bc#1记录的事务的id信息。此外,针对图4a、图4b的台帐,假定各种实现方式。例如图4a的台帐假定了购买者、销售者所记载的各组织保持相同内容的台帐111,全部组织能够全部阅览台帐的内容的情况。图4b的台帐假定了按支付者所记载的每个组织保持不同内容的台帐131,仅在与直接的交易关系者之间共享台帐的内容的情况。例如,图4b的内容是支付者为“企业a”的组织所保持的台帐,作为台帐的内容,仅在与制造公司b之间共享结算id为“1”和“4”的事务的内容。即,在制造公司b侧的台账
中也记录有该事务的内容,制造公司b能够参照该事务的内容。同样地,仅在与企业z之间共享结算id为“2”的事务的内容,其他组织无法参照。作为协作目标区块链的台帐131的实现方式,假定仅在图4b所示的直接的交易关系者之间共享台帐的内容的方式,但也可以是在图4a所示的全部组织中共享台帐的内容的方式。关于这一点,作为变形例2在后面叙述。
101.共识形成部127例如在接受了向台帐131的更新请求时,在进行更新之前对该请求进行事先验证,考虑本区块链bc#2内的其他计算机121的事先验证结果,来判定是否进行台帐131的更新,并根据判定结果执行。
102.此外,关于共识的形成,也可以预先设定要执行共识的计算机121a~121c。另外,关于共识的步骤等,只要应用周知或公知的方法即可,因此在本实施例中不再详述。
103.数据隐匿部128在从计算机101等接受了协作请求时,根据协作请求的隐匿级别、在计算机121侧设定的应答的隐匿级别等,进行应答内容的分散、加密等预定的隐匿处理。
104.隐匿复原部129针对从计算机101等接收到的协作请求,根据隐匿级别进行请求内容的复原等。
105.接下来,对存储在服务器161的存储器162中的信息进行说明。协作部165与属于协作源的区块链bc#1的计算机101、协作目标的区块链bc#2的计算机121、客户终端141等外部的计算机协作,将事务的执行请求等发送给计算机101等。另外,协作部165进行来自外部的计算机的应答结果的接收等。
106.数据隐匿部166在接受了来自客户终端141等的协作请求时,根据协作请求的隐匿级别,进行内容的分散、加密等预定的隐匿处理。
107.隐匿复原部167针对从计算机101等接收到的协作请求的处理结果,根据隐匿级别、处理结果的内容进行数据的复原等。
108.如在上述的隐匿控制信息130中说明的那样,隐匿管理信息168由与隐匿控制相关的信息(图5a)、表示各调用函数中的隐匿级别的隐匿级别信息1681(图5b)、以及表示基于调用函数启动的第二处理请求中的隐匿对象的隐匿对象信息1682(图5c)构成。
109.如上所述,与上述隐匿控制相关的隐匿管理信息168是定义了与向计算机101发送的协作相关的请求、对应答内容实施的隐匿的级别(控制id)和内容的信息,能够与计算机121等事先共享使用。
110.图5b的隐匿级别信息1681如上所述是表示各调用函数中的隐匿级别的信息,伴随协作请求的调用函数的隐匿级别(514)由本信息定义。隐匿级别信息1681在一个条目中包含项目511~514这4个数据项目。
111.项目511是对定义了隐匿级别的各调用函数进行识别的id信息。项目512表示与id信息对应的调用函数,表示服务器161向计算机101发送处理请求时使用的函数。项目513表示调用该调用函数时由协作源的区块链bc#1的计算机101执行的程序的信息。
112.项目514表示在调用该调用函数时应用于区块链bc#1中启动的协作处理的隐匿的级别。项目514表示隐匿管理信息168的项目501的控制id,通过参照隐匿管理信息168来控制有无隐匿等。
113.如上所述,图5c是表示协作请求中的隐匿对象的隐匿对象信息1682。隐匿对象信息1682在一个条目中包含项目521~524这4个数据项目。
114.项目521是对作为协作请求的基础的各程序进行识别的id信息。项目522表示成为
协作请求的基础的程序,相当于图5b的项目513的调用目标程序。项目523表示通过协作目标启动的程序,在计算机101中启动了项目522的程序时,表示由区块链bc#2的计算机121协作而启动的程序(协作程序)。
115.项目524表示根据上述协作请求而启动的程序(523)中的隐匿化对象。例如,项目521的值为“1”的程序表示在根据协作请求而启动的程序(523)中作为参数而使用“o1,o2,o3”,但计算机121仅使用其中的“o2,o3”进行加密或秘密分散等来进行隐匿化。
116.接下来,对存储在客户终端141的存储器142中的信息进行说明。协作部145与服务器161等外部的计算机协作,发送订单、订购、支付的请求等作为向计算机101等的事务请求的来源的处理请求。另外,进行来自外部的计算机的应答结果的接收等。
117.以上为本实施例中的计算机系统的硬件及软件结构。
118.接着,基于上述的硬件及软件结构,对本实施例中的协作处理的一例进行说明。本实施例的协作处理中,首先,客户终端141向服务器161委托包括物品的购买和支付处理的处理请求。处理请求中包含图5b所示的调用函数(项目512)。
119.服务器161执行调用函数(项目512),由计算机101启动与该调用函数对应的调用目标程序(项目513、项目522)。然后,在计算机101中,向区块链bc#2的计算机121委托与图5c所示的程序(项目522)对应的协作程序(项目523)的执行。
120.在区块链bc#1的计算机101中,执行与调用目标程序(项目513)对应的物品购买的事务。然后,在处理请求中包含协作请求的情况下,由计算机121执行与计算机101所执行的程序(项目522)对应的协作程序(项目523),执行与支付相关的事务。
121.服务器161根据所执行的协作程序对支付处理的事务的请求或应答应用隐匿化处理,避免区块链bc#1的计算机101取得不必要的信息。
122.区块链bc#1执行从服务器161委托的物品的购买处理(处理请求),更新台帐111。另外,区块链bc#2通过计算机121所执行的协作程序(项目523)进行台帐131的更新。
123.如果存在支付处理的事务被隐匿化的部分,则区块链bc#2的计算机121进行解码并执行预定的处理来更新台帐131。然后,如果包含将支付处理的事务的应答隐匿化的请求,则将支付处理(协作请求)的应答隐匿化并向区块链bc#1的计算机101返回。
124.如果从区块链bc#2接收到支付处理的事务的应答,则区块链bc#1的计算机101向服务器161返回购买处理的事务的应答和支付处理的事务的应答。
125.如果在支付处理的事务中存在被隐匿化的部分,则服务器161进行解码,将物品购买的事务和支付事务的结果发送给客户终端141,完成一系列的协作处理。
126.《协作目标中的隐匿与否的判定和隐匿处理》
127.图7是表示本发明的实施例的服务器161执行的向协作目标的区块链bc#2的处理请求的隐匿与否判定和隐匿处理的一例的流程图。
128.在服务器161从客户终端141接受了处理请求的情况下、服务器161成为预定的定时的情况下执行本处理。以下示出了处理的详细情况。
129.服务器161的协作部165从客户终端141接受商品的购买、支付等处理请求(701)。基于上述处理请求,协作部165确定向计算机101发送处理请求时所使用的调用函数(项目512)(702)。
130.例如,协作部165向客户终端141输出设定处理请求的设定画面,客户终端141的用
户根据在设定画面上选择的处理来决定向计算机101进行处理执行请求的调用函数。
131.在步骤703中,协作部165判定上述确定出的调用函数是否启动与区块链的协作关联的处理。在调用函数中,与区块链的协作相关的函数被管理为图5b所示的隐匿级别信息1681,在使用的调用函数存在于项目512的情况下,协作部165判定为启动与协作关联的处理。此外,不仅是与协作相关的程序,也可以通过计算机101一并启动与协作无关的程序。
132.在步骤703的判定中,协作部165在判定为从客户终端141接受的处理请求和与区块链的协作相关的程序没有关联的情况下,仅在处理请求中包含针对区块链bc#1的处理,进入步骤705。
133.在步骤705中,协作部165不与其他区块链协作,仅判定为在本地的区块链bc#1内关闭的处理请求,不对处理请求进行处理而直接对计算机101(图中节点)进行计算机101的台帐111的更新等处理请求。
134.另一方面,在步骤703的判定中,在判定为存在与区块链的协作相关的程序的情况下,协作部165进入步骤704,判定是否需要进行协作内容的数据的隐匿化。
135.具体而言,协作部165参照隐匿级别信息1681,确定与通过调用函数启动的调用目标程序的项目513对应的项目514的隐匿级别。然后,协作部165参照隐匿管理信息168,从与隐匿级别对应的控制id501的条目中确定项目502的内容,由此判定是否需要进行协作请求的隐匿化(704)。
136.在步骤706中,协作部165在判定为需要将从区块链bc#1向区块链bc#2协作的内容隐匿化的情况下,根据隐匿管理信息168的项目502的隐匿化的内容来对协作请求进行隐匿化,向计算机101发送隐匿化后的处理执行请求。
137.此外,在项目501的控制id501为“4”或“6”的情况下,也可以对该协作请求附加表示需要将针对协作请求的应答的内容隐匿化的信息(隐匿请求),关于其他情况,将表示不需要对应答的内容进行隐匿化的信息附加到该协作请求中。
138.例如,如果图5b的项目514的隐匿级别为“2”,则对协作请求进行隐匿化,在协作目标的区块链bc#2的计算机121中请求不对应答内容进行处理。
139.此外,作为隐匿化方法,例如可以考虑使用协作目标的计算机121的公开密钥进行加密的方法,以及使用秘密分散法等将协作内容分割成称为多个份额(share)的数据,如果不集中一定数量以上的份额则无法复原原来的数据的方法。
140.此外,根据计算机101所属的区块链bc#1的种类,存在必须对与区块链bc#1内的共识形成相关的所有的计算机101进行相同的处理请求的情况。
141.在这样的情况下,如果向协作源的区块链bc#1的多个计算机101发送相同的处理执行请求,则多个相同的协作请求也被发送到协作目标的区块链bc#2的计算机121。另外,在作为处理执行请求内的协作内容而包含与结算相关的信息等的情况下,不仅向区块链bc#2内的当事者之间发布该信息,还向参加区块链bc#1的全部的计算机101发布该信息。
142.因此,在通过这样的区块链bc#1、bc#2协作的情况下,向与共识形成相关的所有的计算机(节点)发送处理执行请求,但对于该处理执行请求中的与协作(协作请求)内容相关的部分,发送实施了加密或秘密分散等隐匿化的部分。
143.例如,在隐匿级别信息1681的项目512中,在调用了“execute buy_pay”的函数的情况下,如果作为该参数而指定“a,b,c,d,o1,o2,o3”,则从隐匿级别信息1681的项目513
(调用目标程序)、隐匿对象信息1682的项目522、项目523中,调用“invoke pay_otherbc(o1,o2,o3)”作为对应的协作程序。
144.参数中与协作相关的是“o1,o2,o3”,数据隐匿部166基于项目524的隐匿对象的指定,通过加密、秘密分散等仅对参数“o2,o3”实施隐匿化。然后,数据隐匿部166在最初的“execute buy_pay”的处理执行请求时发送隐匿化的参数。
145.在向属于协作源的区块链bc#1的多个计算机101发送处理执行请求的情况下,在作为隐匿化方法进行秘密分散的情况下,发送处理请求中与协作相关的部分被秘密分散而得的根据各计算机101而不同的数据。
146.从这些计算机101向属于协作目标的区块链bc#2的计算机121发送多个协作请求。在接收到上述的协作请求的计算机121侧,将这些多个分散而得的协作请求捆绑并复原,由此视为一个协作请求,其结果是,处理仅进行一次而不是多次。
147.此外,在接收协作请求的计算机121侧,为了能够区分从相同的源数据秘密分散的情况,例如,也可以在协作请求内包含相同的分散id等识别数据来进行识别。
148.另一方面,在作为隐匿化方法进行秘密分散以外的加密的情况下,将处理执行请求中与协作相关的部分以相同的方式加密后的请求发送给各计算机121。
149.计算机101在上述加密后的协作请求中包含上述的分散id和隐匿级别的信息,并发送给协作目标的区块链bc#2的计算机121。由此,也可以使协作目标的区块链bc#2的计算机121判定为对相同的处理请求进行了加密,仅解码一个处理请求来进行处理即可。
150.或者,作为最初的处理执行请求,服务器161也可以仅向属于协作源的区块链bc#1的计算机101中的一个发送包含加密后的协作处理内容的处理执行请求,向其他的计算机101发送不包含上述加密后的协作处理内容的处理执行请求。
151.由此,向协作源的区块链bc#1的计算机101发送全部与自身的区块链#bc1相关的处理请求,但仅向其中的一个计算机101发送与协作相关的处理请求,向协作目标的区块链bc#2的计算机121也仅发送一个协作请求。此外,在向接收与上述协作相关的处理请求的一个计算机101公开了协作内容的情况下,也可以不实施加密而发送处理请求,也可以作为与上述协作相关的处理请求的发送对象,除了一个计算机101以外,还向任意数量的计算机101发送处理请求。
152.此外,在协作源的区块链bc#1的参照、更新中使用的参数不仅是上述参数中的“a、b、c、d”。因此,属于协作源的区块链bc#1的各计算机101即使在假设在最初的处理请求中接收到因计算机101而不同的参数的情况下,作为向自身的区块链bc#1的事务请求,也仅取入与自身的区块链bc#1相关的参数(仅“a、b、c、d”)来进行事务处理。
153.由此,各计算机101进行相同的事务处理,能够进行共识形成处理。哪个参数与自身的计算机101的区块链bc#1相关的判定,能够通过在程序管理信息108的项目206中设定的内部参数来进行。
154.此外,在隐匿级别为“2”的情况下,作为来自协作目标的计算机121的应答,向各协作源的计算机101返回未进行处理的相同内容。另一方面,在隐匿级别为“3”的情况下,在协作源的区块链bc#1的计算机101中的特定的节点、例如协作请求是结算的情况下,仅对结算的执行者和对象者的节点返回结果等。通过在结算的处理请求内包含节点的信息,能够在协作目标的计算机121侧判定哪个节点是结算的执行者、对象者。
155.从计算机121接收到针对协作请求的处理结果的上述的特定节点无法将该应答结果记录在自身的区块链bc#1的台帐111中。因此,例如也可以通过链下合约(off chain)记录在区块链bc#1以外的本地数据库等中。
156.另外,在隐匿级别为“4”的情况下,除了进行要协作的请求的隐匿化以外,还将由协作目标的计算机121实施了应答内容的隐匿化的信息返回给协作源的计算机101。
157.这是指,针对应答内容,意图不对协作源的区块链bc#1的任何计算机101进行公开,除了最初向服务器161发送了原来的请求的客户终端141以外不想看应答结果的情况。
158.隐匿化的应答内容被服务器161解码后提示给客户终端141。在作为隐匿化方法而使用了秘密分散的情况下,服务器161收集从协作源的区块链bc#1的各计算机101接收到的被分散的应答结果,来进行数据的复原。
159.另外,在作为隐匿化方法而使用了秘密分散以外的加密的情况下,例如用服务器161的公开密钥对数据进行加密,通过与该公开密钥对应的秘密密钥进行数据的解码。
160.以上是步骤706的协作的处理请求的说明。在上述步骤705、步骤706的处理之后,服务器161从协作源的区块链bc#1的计算机101接收处理结果(707)。
161.服务器161根据最初发送的处理请求的隐匿级别来加工处理结果,并通知给客户终端141(708)。例如在隐匿级别为“4”的情况下,服务器161的隐匿复原部167对隐匿的数据进行解码并通知给客户终端141。
162.此外,服务器161在来自区块链bc#2的应答内容未被隐匿化的情况下,不进行上述那样的加工而直接通知给客户终端141。以上是本实施例中的是否需要协作目标的隐匿化的判定以及隐匿处理的说明。
163.《协作源区块链的计算机的处理》
164.接着,对本实施例中的由协作源的区块链bc#1的计算机101进行的协作处理进行说明。
165.图8是表示本发明的实施例的计算机101执行的与计算机121协作的处理的一例的流程图。
166.计算机101的协作部105从服务器161接收处理执行请求(801)。协作部105判定在处理执行请求中是否包含与区块链bc#2协作的协作请求,在不包含的情况下,判定为自身的区块链bc#1中关闭的处理,如通常那样进行台帐111的参照、更新等所请求的处理(803)。
167.另一方面,在包含与区块链bc#2协作的协作请求的情况下,仅提取处理执行请求中与自身的区块链bc#1相关的处理请求,进行自身的区块链bc#1的台帐111的参照、更新等所请求的处理(804)。
168.此外,处理请求中与自身的区块链bc#1相关的部分的判定例如通过参照程序管理信息108的项目206的内部参数和项目207的外部参数来实施。例如,当计算机101从服务器161接收到“a、b、c、d、o1、o2、o3”作为处理请求的参数时,协作部105在处理执行请求中项目201的值为“5”的程序被启动的情况下,仅将参数“a、b、c、d”作为与自身的区块链bc#1相关的部分而取入,事务管理部106进行针对区块链bc#1的事务处理。
169.接着,协作部105使协作目标的计算机121处理协作请求(805)。例如,在上述的例子中,协作部105使用处理执行请求的参数中的“o1、o2、o3”对计算机121进行协作请求。例如,如果协作请求是结算请求,则可以指定是谁向谁的结算、是哪种方法的结算、金额信息
等。
170.计算机101从协作目标的计算机121接收协作请求的处理结果(806)。计算机101根据接收到的协作的处理结果内容,通过链下合约存储并保存处理结果(807)。例如,在根据来自服务器161的请求而调用了项目513的调用目标程序“buy_pay_localstore”等函数的情况下,协作部105将应答结果存储在本地的数据库(省略图示)中。
171.此外,在未调用上述那样的函数的情况下,计算机101也可以不特别存储协作请求的应答结果。在步骤803、步骤807的处理之后,计算机101将针对处理请求的处理结果和针对协作请求的处理结果发送到服务器161(808)。以上是本实施例中的属于协作源的区块链bc#1的计算机101的协作请求处理的说明。
172.《接收到协作请求的协作目标的计算机的处理》
173.接着,对本实施例中的由接受到协作请求的协作目标的计算机121进行的处理进行说明。
174.图9是表示由本发明的实施例的计算机121执行的针对协作请求的处理的一例的流程图。
175.计算机121的协作部125从计算机101接收协作请求(901)。协作部125判定协作请求是否已被隐匿化(902)。关于协作请求是否已隐匿化的判定,例如也可以在从计算机101向计算机121发送第二处理请求时,附加有无加密、秘密分散等隐匿的识别信息,并在计算机121中基于识别信息进行判定。
176.或者,服务器161也可以对协作请求附加隐匿级别信息1681的项目514的隐匿级别,计算机121基于隐匿级别的值,判定协作请求是否已隐匿化。
177.在协作请求未被隐匿化的情况下,计算机121基于所请求的信息,如通常那样进行自身的区块链bc#2的台帐131的参照、更新处理(903)。
178.在协作请求已被隐匿化的情况下,计算机121的隐匿复原部167根据所通知的隐匿级别来复原(解码)协作请求的数据(904)。
179.例如,在被秘密分散的情况下,隐匿复原部167收集协作请求内的分散id信息相同的数据(表示原始数据是相同的分散数据),并基于该数据复原协作请求的内容来进行处理。另一方面,在实施了公开密钥加密等加密的情况下,隐匿复原部167使用自身的秘钥进行数据的解码。
180.此外,在实施秘密分散以外的加密的情况下,如上所述,仅对单一的计算机发送加密后的协作请求,但例如也可以在协作请求的消息内加入表示是相同的处理请求的识别id信息,从多个计算机发送加密后的协作请求,在计算机121侧对公开密钥进行解码,对于相同的识别id仅执行一次即可。
181.计算机121也可以在协作请求的解码失败的情况下,将处理失败的结果发送给协作源的计算机101(909)。在协作请求的解码成功的情况下,计算机121通过事务管理部126执行解码后的处理(906)。
182.例如,在接受了与结算相关的协作请求的情况下,计算机121进行将确定支付源和支付目标的结算信息向台帐131的记载、来自台帐131的信息取得等。计算机121在对区块链bc#1的计算机101应答上述处理结果时,基于由协作请求定义的隐匿级别的信息,判定是否需要进行应答的隐匿(907)。
183.在不需要隐匿应答的情况下,计算机121将针对协作请求的处理结果直接发送到计算机101(909)。在需要将应答内容隐匿化的情况下,计算机121的数据隐匿部128根据上述隐匿级别将应答内容隐匿化(908)。
184.例如,如果隐匿级别为“3”,则数据隐匿部128仅对特定节点返回应答结果。例如在接受了上述那样的结算请求(协作请求)的情况下,特定节点的筛选基于结算请求中包含的结算的执行主体、对象的信息来确定当事者,仅对与所确定的对象对应的协作源的区块链bc#1的计算机101返回详细的应答信息。
185.另外,在隐匿级别为“6”的情况下,数据隐匿部128使用秘密分散、公开密钥加密等将应答内容隐匿化并发送到计算机101。
186.如以上那样,计算机121执行由协作请求指定的协作程序(项目523),对计算机101发送处理结果(909)。以上是本实施例中的接收到协作请求的协作目标的计算机的处理的说明。
187.《接受了协作请求的协作目标的计算机的处理的变形例》
188.接着,说明本发明的实施例的变形例。在上述的实施例中,假设从计算机101发送的协作请求中不包含应答的隐匿要求的情况下,计算机121不隐匿应答内容而发送。
189.在本变形例中,通过在协作目标的计算机121侧也另行预先定义与应答相关的隐匿级别,即使假设在根据上述那样的协作源而在协作请求中不包含应答的隐匿要求的情况下,也能够对应答内容隐匿化并返回。
190.由此,例如,目的在于防止本来应该由协作源请求应答的隐匿的部位错误地由于设定遗漏等而导致应该隐匿的应答内容泄漏。在本变形例中,如上所述作为在计算机121侧另行定义的应答的隐匿级别,保持图6a的应用目标信息1302以及图6b的隐匿控制的定义1301。
191.此外,在本变形例中,图9所示的计算机121的处理与上述实施例不同,对该部分(步骤903以后和步骤907以后)进行说明。
192.图10是表示由本发明的实施例的变形例的计算机121执行的、针对从计算机101接收到的协作请求的处理的流程图。
193.步骤901、902与上述实施例1的图9相同,计算机121的协作部125在协作请求未被隐匿化的情况下,进入步骤903,执行所请求的处理。
194.计算机121的协作部125在对计算机101应答针对协作请求的处理结果时,基于另行定义的隐匿级别的应用目标信息1302判定是否需要进行应答内容的隐匿化(910)。
195.在不需要隐匿化的情况下,协作部125进入步骤909,将处理结果直接返还到计算机101。另一方面,在判定为需要隐匿化的情况下,计算机121的协作部125基于应用目标信息1302和隐匿控制的定义1301将应答内容隐匿化(911)。
196.例如,在图6a的应用目标信息1302的情况下,在作为应答协作请求的计算机121所属的区块链bc#2的识别信息的bcid为“bc2”的情况下,由于隐匿级别为“2”,所以根据图6b的隐匿控制的定义1301将应答内容隐匿化并返回。
197.此外,在上述中,作为隐匿级别的设定的粒度,设为返回源的bc单位,但例如也可以以通过协作请求实施的程序为单位来设定隐匿级别。计算机121将进行了以上处理的应答结果发送到计算机101。
198.另外,计算机121的协作部125在协作请求已被隐匿化,但在步骤907中在协作请求中不包含应答的隐匿化请求的情况下,与上述的步骤910、步骤911同样地,判定是否需要进行应答内容的隐匿,进行或不进行应答的隐匿而将处理结果发送到计算机101。以上是本发明的实施例的变形例的说明。
199.《接受了协作请求的协作目标的计算机的处理的变形例2》
200.接着,说明本发明的实施例的第二变形例。在上述的实施例中,作为协作目标的区块链的台帐131,假定台帐的各内容仅在直接的交易关系者之间共享的情况,但在本变形例中,说明台帐的各内容除了参加协作目标的区块链的直接的交易关系者以外也被共享的情况下的处理方法。
201.在图4b的台帐131的内容除了直接的交易关系者以外也被共享的情况下,例如,如果材料公司c也参加协作目标的区块链,则材料公司c能够阅览协作源的区块链的台帐111和协作目标的区块链的台帐131双方。材料公司c通过用台帐111和台帐131使订货id对接,就能够获得没有直接的交易关系的组织的详细的购买信息。例如,通过使订购id的值“1001”对接,能够掌握对设备a进行了多少支付这样的信息。因此,在本变形例中,将与台帐111和台帐131的对应关系的推测相关的信息加密并记载在台帐中。
202.具体而言,在步骤906中,在要求与支付相关的台帐更新等处理的情况下,台帐131的日期时间(项目415)、bc id(项目416)、订购id(项目417)等信息使用在交易关系者之间事先共享的加密密钥或支付目标组织的公开密钥进行加密后记载于台帐131。通过本处理,台帐131的内容除了协作目标区块链的直接的交易关系者以外也被共享,但其解读能够仅限定于直接的交易关系者。
203.根据以上的本发明的实施方式,例如在包含客户终端141、计算机101、121以及服务器161而构成的计算机系统中,服务器161包含对属于区块链bc#2的计算机121的协作请求是否需要隐匿进行控制的隐匿管理信息168。
204.属于上述区块链bc#1的计算机101针对在上述区块链bc#1中执行的程序,保持用于识别在自身区块链bc#1内的处理中关闭的处理请求和与协作相关的协作请求的程序管理信息108、表示协作目标的计算机121的信息的协作目标信息109。
205.另外,接受来自属于上述区块链bc#1的计算机101的请求的属于其他区块链bc#2的计算机121,保持用于判定是否隐匿了从属于上述区块链bc#1的计算机101接收的协作请求、是否需要隐匿应答内容的隐匿控制信息130。
206.服务器161基于来自客户终端141的商品购买、结算等操作请求的指示,判定向属于上述区块链bc#1的计算机101发送的请求内容(处理执行请求)以及应该应用的隐匿级别,根据隐匿级别对请求中包含的协作请求实施秘密分散、公开密钥加密等加密,向属于上述区块链bc#1的各计算机101发送处理执行请求。
207.接收到上述处理执行请求的属于上述区块链bc#1的各计算机101,识别上述处理执行请求中与自身的区块链bc#1相关的处理请求、和与协作相关的协作请求,仅取入上述处理执行请求内的与自身的区块链bc#1相关的处理请求,进行自身的区块链bc#1的台帐111的参照、更新等处理。
208.然后,计算机101使用与协作相关的协作请求,向属于上述其他区块链bc#2的计算机121发送协作请求。接收到上述第二处理请求的属于上述其他区块链bc#2的计算机121判
定有无上述协作请求的隐匿,如果是隐匿完毕,则例如收集分散后的请求信息,通过复原或加密后的协作请求的解码来复原协作请求,执行所请求的处理。
209.另外,属于上述其他区块链bc#2的计算机121在对属于上述区块链bc#1的计算机101应答上述处理结果时,基于由协作请求设定的隐匿级别、自身定义的隐匿控制信息130,判定是否需要隐匿应答内容。然后,在计算机121中,根据隐匿级别进行基于秘密分散、公开密钥加密的加密的实施以及处理结果发送目标的筛选,对属于上述区块链bc#1的计算机101应答处理结果。
210.属于上述区块链bc#1的计算机101根据隐匿级别进行向本地数据库的处理结果的存储,对上述服务器161请求的处理的结果进行应答。
211.上述服务器161根据最初发送的处理执行请求的隐匿级别,收集从属于上述区块链bc#1的多个计算机101接收到的处理结果,进行处理结果的复原,并将复原后的处理结果提示给上述客户终端141。
212.由此,根据本发明的一个实施例,在使区块链bc#1和区块链bc#2协作时,在协作源的区块链bc#1中共享数据,关于协作的信息、协作时由其他区块链bc#2管理的信息等与协作源的区块链bc#1无关或不想公开的信息,仅能够在关系当事者间共享。
213.以上,对本发明的实施例进行了说明,但本发明不限定于这样的实施方式,当然能够在不脱离本发明的主旨的范围内以各种方式实施。
214.《总结》
215.如上所述,上述实施例的计算机系统能够设为以下那样的结构。
216.(1)一种服务器(161),具有处理器(cpu163)、存储器(162)以及与第一计算机(101)连接的接口(164),其特征在于,所述服务器(161)具有:协作部(165),其接受处理请求,判定在所述处理请求中是否包含表示针对所述第一计算机(101)所属的第一区块链(bc#1)的处理、以及针对与所述第一计算机(101)协作的第二计算机(121)所属的第二区块链(bc#2)的处理的协作请求,在包含所述协作请求的情况下,判定是否需要进行所述第二处理请求的隐匿化;以及隐匿部(数据隐匿部166),其根据所述判定的结果,对需要隐匿化的协作请求实施隐匿化,所述协作部(165)根据所述判定的结果,将包含由所述隐匿部实施了隐匿化后的协作请求的处理执行请求发送到所述第一计算机(101)。
217.根据上述结构,在属于协作源的区块链bc#1(第一区块链)的计算机101(第一计算机)间共享数据,对于由区块链bc#2(第二区块链)管理的信息(协作请求、应答)等与协作源的区块链bc#1的参加者没有关系或不想公开的信息,通过协作请求的隐匿化能够仅在关系当事者间共享。
218.(2)根据上述(1)所述的服务器,其特征在于,所述服务器还具有预先设定了所述隐匿化的内容的隐匿管理信息(168),所述隐匿部(166)基于所述隐匿管理信息(168),决定将所述协作请求隐匿化的内容。
219.根据上述结构,服务器161的数据隐匿部166通过参照根据调用函数等预先设定了隐匿级别的隐匿管理信息168,能够决定协作请求中隐匿化的对象(524)。
220.(3)根据上述(2)所述的服务器(161),其特征在于,所述协作部(165)在判定为所述协作请求需要隐匿化的情况下,将表示对于针对所述协作请求的应答是否需要隐匿化的信息附加到所述协作请求并发送。
221.根据上述结构,服务器161的协作部165通过参照预先设定了隐匿化的内容的隐匿管理信息(168),能够附加表示对于针对协作请求的应答是否需要隐匿化的信息。通过将协作请求的应答隐匿化,能够对属于区块链bc#1的计算机101隐藏针对协作请求的应答。
222.(4)一种数据处理方法,通过计算机系统进行协作处理,该计算机系统具有属于第一区块链(bc#1)的第一计算机(101)、属于第二区块链(bc#2)的第二计算机(121)、以及经由网络(10)与所述第一计算机(101)及第二计算机(121)连接的服务器(161),其特征在于,所述数据处理方法包括:第一步骤,所述服务器(161)接受处理请求;第二步骤,所述服务器(161)判定接受的所述处理请求中,是否包含表示针对所述第一计算机(101)所属的第一区块链(bc#1)的处理以及针对与所述第一计算机(101)协作的第二计算机(121)的第二区块链(bc#2)的处理的协作请求;第三步骤,在所述处理请求中包含所述协作请求的情况下,所述服务器(161)判定是否需要所述协作请求的隐匿化;第四步骤,所述服务器(161)基于所述判定的结果,在需要隐匿化的情况下对所述协作请求实施隐匿化;以及第五步骤,所述服务器(161)根据所述判定的结果,将包含由所述隐匿部实施了隐匿化后的协作请求的处理执行请求发送到所述第一计算机(101)。
223.根据上述结构,在属于协作源的区块链bc#1(第一区块链)的计算机101(第一计算机)间共享数据,对于由区块链bc#2(第二区块链)管理的信息(协作请求、应答)等与协作源的区块链bc#1的参加者没有关系或不想公开的信息,通过隐匿化能够仅在关系当事者间共享。
224.(5)根据上述(4)所述的数据处理方法,其特征在于,所述服务器(161)还具有预先设定了所述隐匿化的内容的隐匿管理信息(168),在所述第四步骤中,基于所述隐匿管理信息(168),决定将所述协作请求隐匿化的内容。
225.根据上述结构,服务器161通过参照根据调用函数等预先设定了隐匿级别的隐匿管理信息168,能够决定协作请求中隐匿化的对象(524)。
226.(6)根据上述(5)所述的数据处理方法,其特征在于,在所述第五步骤中,在判定为所述协作请求需要隐匿化的情况下,参照所述隐匿管理信息,将表示是否需要对于所述协作请求的应答进行隐匿化的信息附加到所述协作请求并发送。
227.根据上述结构,服务器161的协作部165参照预先设定了隐匿化的内容的隐匿管理信息168,能够附加表示对于针对协作请求的应答是否需要隐匿化的信息。通过将协作请求的应答隐匿化,能够对属于区块链bc#1的计算机101隐藏针对协作请求的应答。
228.(7)一种计算机系统,其具有:属于第一区块链(bc#1)的第一计算机(101);属于第二区块链(bc#2)的第二计算机(121);以及经由网络与所述第一计算机(101)及第二计算机(121)连接的服务器(161),所述计算机系统进行协作处理,其特征在于,所述服务器(161)具有:协作部(165),其接受处理请求,判定所述处理请求中是否包含表示针对所述第一计算机(101)所属的第一区块链(bc#1)的处理、以及针对与所述第一计算机(101)协作的第二计算机(121)所属的第二区块链(bc#2)的处理的协作请求,在包含所述协作请求的情况下,判定是否需要进行所述协作请求的隐匿化;以及隐匿部(166),其基于所述判定的结果,对需要隐匿化的协作请求实施隐匿化,所述协作部(165)根据所述判定的结果,将包含由所述隐匿部(166)实施了隐匿化后的协作请求的处理请求作为处理执行请求发送到所述第一计算机(101)。
229.根据上述结构,在属于协作源的区块链bc#1(第一区块链)的计算机101(第一计算机)间共享数据,对于由区块链bc#2(第二区块链)管理的信息(协作请求、应答)等与协作源的区块链bc#1的参加者没有关系或不想公开的信息,通过隐匿化能够仅在关系当事者间共享。
230.(8)根据上述(7)所述的计算机系统,其特征在于,所述服务器(161)还具有预先设定了所述隐匿化的内容的隐匿管理信息(168),所述协作部(165)基于所述隐匿管理信息(1638),决定将所述协作请求隐匿化的内容。
231.根据上述结构,服务器161的数据隐匿部166通过参照根据调用函数等预先设定了隐匿级别的隐匿管理信息168,能够决定协作请求中隐匿化的对象(524)。
232.(9)根据上述(7)所述的计算机系统,其特征在于,所述协作部(165)在判定为需要对所述协作请求进行隐匿化的情况下,参照所述隐匿管理信息168,将表示是否需要对于所述协作请求的应答进行隐匿化的信息附加到所述协作请求并发送。
233.根据上述结构,服务器161的协作部165通过参照预先设定了隐匿化的内容的隐匿管理信息(168),能够附加表示对于针对协作请求的应答是否需要隐匿化的信息。通过将协作请求的应答隐匿化,能够对属于区块链bc#1的计算机101隐匿针对协作请求的应答。
234.(10)根据上述(7)所述的计算机系统,其特征在于,所述第一计算机(101)接收从所述服务器(161)接收到的处理执行请求,对所述处理执行请求中包含的所述处理请求进行处理,在所述处理执行请求中包含所述协作请求的情况下,向所述第二计算机(121)发送所述协作请求,所述第二计算机(121)接受所述协作请求,在该协作请求被隐匿化的情况下,在将所述协作请求复原之后对该协作请求进行处理,向所述第一计算机(101)应答所述协作请求的处理结果,所述第一计算机(101)在接收到针对所述协作请求的应答时,对所述服务器(161)应答所述处理请求的处理结果和针对协作请求的处理结果。
235.根据上述结构,属于区块链bc#2(第二区块链)的计算机121通过对针对协作请求的应答实施隐匿化,能够对属于区块链bc#1的计算机101隐藏针对协作请求的应答。
236.(11)一种计算机(121),具有处理器(cpu123)、存储器(122)以及与第一计算机(101)连接的接口(124),其特征在于,所述计算机具有:协作部(125),其接受协作请求,判定该协作请求是否被隐匿化;复原部(隐匿复原部129),其在所述协作请求被隐匿化的情况下,复原所述协作请求;以及管理部(事务管理部126),其处理复原后的所述协作请求,所述协作部(125)应答所述处理的结果。
237.计算机121(第二计算机)能够在复原(解码)被隐匿化的协作请求之后,通过事务管理部126进行处理,对计算机101隐藏协作请求,对协作请求的处理结果进行应答。
238.(12)根据上述(11)所述的计算机(121),其特征在于,所述计算机还具有:隐匿级别管理信息(隐匿控制信息130),其预先设定了是否需要隐匿应答内容;以及隐匿化部(数据隐匿部128),其根据所述隐匿级别管理信息(130),将所述管理部(126)的处理结果隐匿化,所述协作部(125)对隐匿化后的所述处理结果进行应答。
239.根据上述结构,属于区块链bc#2(第二区块链)的计算机121通过对针对协作请求的应答实施隐匿化,能够对属于区块链bc#1的计算机101隐藏针对协作请求的应答。
240.(13)根据上述(12)所述的计算机,其特征在于,所述隐匿化部(128)基于所述隐匿级别管理信息(130),决定将所述处理结果隐匿化的内容。
241.根据上述结构,属于区块链bc#2(第二区块链)的计算机121通过参照隐匿控制信息130,能够控制是否对针对协作请求的应答实施隐匿化。
242.此外,本发明并不限定于上述的实施例,包括各种变形例。例如,上述的实施例是为了容易理解地说明本发明而详细记载的,并不限定于必须具备所说明的全部结构。另外,能够将某实施例的结构的一部分置换为其他实施例的结构,另外,也能够在某实施例的结构中添加其他实施例的结构。另外,对于各实施例的结构的一部分,其他结构的追加、删除、或置换均可以单独或组合使用。
243.另外,上述的各结构、功能、处理部、以及处理单元等也可以通过例如利用集成电路来设计它们的一部分或者全部等而通过硬件来实现。另外,上述的各结构、以及功能等也可以通过处理器解释并执行实现各个功能的程序而通过软件来实现。实现各功能的程序、表、文件等信息能够放置在存储器、硬盘、ssd(solid state drive:固态驱动器)等记录装置、或者ic卡、sd卡、dvd等记录介质中。
244.另外,控制线、信息线表示在说明上所需要的,在产品上不一定表示全部的控制线、信息线。实际上也可以认为几乎全部的结构相互连接。
245.《补充》
246.作为请求专利保护的范围所记载的以外的本发明的观点的代表性的内容,可以举出如下内容。
247.《14》
248.一种第一计算机,具有处理器、存储器、以及与服务器及第二计算机连接的接口,其特征在于,
249.所述第一计算机具有:
250.协作部,其从所述服务器接受处理执行请求,判定该处理执行请求中是否包含协作请求,在包含所述协作请求的情况下,向所述第二计算机发送所述协作请求;以及
251.管理部,其对所述处理执行请求中包含的处理请求进行处理,
252.当从所述第二计算机接收到所述协作请求的处理结果时,所述协作部对所述服务器应答所述处理请求的处理结果和协作请求的处理结果。
253.《15》
254.一种数据处理方法,使第一计算机进行协作处理,所述第一计算机具有处理器、存储器、以及与服务器及第二计算机连接的接口,其特征在于,
255.所述数据处理方法包括:
256.第一步骤,所述第一计算机从所述服务器接受处理执行请求,判定该处理执行请求中是否包含协作请求,在包含所述协作请求的情况下,向所述第二计算机发送所述协作请求;
257.第二步骤,所述第一计算机对所述处理执行请求中包含的处理请求进行处理;以及
258.第三步骤,当所述第一计算机从所述第二计算机接收到所述协作请求的处理结果时,向所述服务器应答所述处理请求的处理结果和协作请求的处理结果。
259.《16》
260.一种数据处理方法,使具有处理器、存储器、以及与第一计算机连接的接口的第二
计算机进行协作处理,其特征在于,
261.所述第二计算机具有:
262.协作部,其接受协作请求,判定该协作请求是否被隐匿化;
263.复原部,其在所述协作请求被隐匿化的情况下,复原所述协作请求;以及
264.管理部,其处理复原后的所述协作请求,
265.所述协作部对所述处理结果进行应答。
266.《17》根据上述《16》所述的数据处理方法,其特征在于,
267.所述第二计算机还具有:
268.隐匿级别管理信息,其预先设定了是否需要隐匿应答内容;以及
269.隐匿化部,其根据所述隐匿级别管理信息,将所述管理部的处理结果隐匿化,
270.所述协作部对隐匿化后的所述处理结果进行应答。
271.《18》根据上述《17》所述的数据处理方法,其特征在于,
272.所述隐匿化部基于所述隐匿级别管理信息,决定将所述处理结果隐匿化的内容。
273.《19》
274.一种数据处理方法,使具有处理器、存储器和与第一计算机连接的接口的服务器进行协作处理,其特征在于,
275.所述数据处理方法包括:
276.第一步骤,所述服务器接受处理请求,判定所述处理请求中是否包含表示针对所述第一计算机所属的第一区块链的处理、以及针对与所述第一计算机协作的第二计算机所属的第二区块链的处理的协作请求,在包含所述协作请求的情况下,判定是否需要将所述协作请求隐匿化;
277.第二步骤,所述服务器基于所述判定的结果,对需要隐匿化的协作请求实施隐匿化;以及
278.第三步骤,所述服务器根据所述判定的结果,将包含由所述隐匿部实施了隐匿化后的协作请求的处理执行请求发送到所述第一计算机。
279.《20》根据上述《19》所述的数据处理方法,其特征在于,
280.所述服务器还具有预先设定了所述隐匿化的内容的隐匿管理信息,
281.在所述第二步骤中,基于所述隐匿管理信息,决定将所述协作请求隐匿化的内容。
282.《21》根据上述《19》所述的数据处理方法,其特征在于,
283.在所述第二步骤中,在判定为需要对所述协作请求进行隐匿化的情况下,将表示对于针对所述协作请求的应答是否需要隐匿化的信息附加到所述协作请求并发送。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献