CN110612529A - 信息处理装置和信息处理方法 - Google Patents
信息处理装置和信息处理方法 Download PDFInfo
- Publication number
- CN110612529A CN110612529A CN201880030748.2A CN201880030748A CN110612529A CN 110612529 A CN110612529 A CN 110612529A CN 201880030748 A CN201880030748 A CN 201880030748A CN 110612529 A CN110612529 A CN 110612529A
- Authority
- CN
- China
- Prior art keywords
- data
- information
- processing apparatus
- target data
- challenge
- 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.)
- Withdrawn
Links
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
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1076—Resource dissemination mechanisms or network resource keeping policies for optimal resource availability in the overlay network
-
- 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/3236—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 using cryptographic hash functions
- H04L9/3239—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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1065—Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT]
-
- 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
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
-
- 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/3236—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 using cryptographic hash functions
-
- 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
-
- 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/3271—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 using challenge-response
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
为了在有效利用资源的同时,能够更适当地验证数据。提供了具有验证单元的信息处理装置,该验证单元通过使用从预定数据获取的第一数据和从P2P数据库获取的第二数据来验证预定数据。
Description
技术领域
本公开内容涉及信息处理装置和用于处理信息的方法。
背景技术
通常,在用户(为方便起见,下文中称为“寄存人”)将一些重要数据寄存给另一个人(为方便起见,下文中称为“保管人”)的情况下,用户将数据寄存给可靠的人。在寄存人将数据寄存给不可靠的人的情况下,寄存人需要验证保管人适当地保存数据(例如,保管人没有篡改数据,没有擦除数据,等等)。
此外,近年来,已经积极地开发了用于存储数据的服务、技术等(例如,存储服务)作为相关技术。例如,下面阐述的专利文献1公开了生成用于证明例如存储服务器中寄存的数据未被篡改的保证数据并且将保证数据与寄存的数据相关联的技术。
引用列表
专利文献
专利文献1:日本专利申请特开第2003-280972号
发明内容
本发明要解决的问题
然而,根据专利文献1中公开的技术,存在可能无法适当地验证寄存的数据的情况。例如,由于内部人员(存储服务器的管理员等)可以擦除或篡改保证数据本身,因此在内部人员已经擦除或篡改了寄存的数据的情况下,有必要再次读出整个寄存的数据,以完成对由寄存人寄存的数据的完整存在确认和验证。
同时,在使用作为对等数据库的示例的区块链的系统(比特币等)中,消耗了许多资源用于匿名交易处理。例如,在比特币中,参与所谓的“挖矿”的多个节点将继续计算散列值的处理,直到挖矿成功,由此不能说每个节点的资源均被有效地利用了。
鉴于上述问题构思了本公开内容,并且本公开内容的目的是提供一种新颖且改进的信息处理装置和用于处理信息的方法,其能够在有效利用资源的同时更适当地验证数据。
问题的解决方案
根据本公开内容,提供了一种信息处理装置,该信息处理装置包括:验证单元,其使用从预定数据获得的第一数据和从P2P数据库获得的第二数据来验证预定数据。
此外,根据本公开内容,提供了一种信息处理方法,该方法包括:使用从预定数据获得的第一数据和从P2P数据库获得的第二数据来验证预定数据。
此外,根据本公开内容,提供了一种信息处理装置,该信息处理装置包括:验证请求单元,其请求P2P网络验证预定数据;以及确认单元,其基于从P2P网络获得的信息来确认预定数据的验证状态。
此外,根据本公开内容,提供了一种用于处理信息的方法,该方法包括:请求P2P网络验证预定数据;以及基于从P2P网络获得的信息来确认预定数据的验证状态。
本发明的效果
如上所述,根据本公开内容,可以在有效地利用资源的同时更适当地验证数据。
注意,上述效果不一定是限制性的,并且除了上述效果之外或者代替上述效果,可以发挥本说明书中描述的任何效果或者可以从本说明书理解的其他效果。
附图说明
图1是示出一般区块链数据的概述的说明图。
图2是示出根据本实施方式的数据管理系统的配置的图。
图3是示出根据本实施方式的区块链数据的概述的说明图。
图4是示出根据本实施方式的“文件验证历史”中包括的示例性信息的表。
图5是示出根据本实施方式的“虚拟货币交易历史”中包括的示例性信息的表。
图6是示出根据本实施方式的寄存源节点和寄存目的地节点的功能配置的表。
图7是示出根据本实施方式的与由寄存目的地节点执行的挑战有关的操作的流程图。
图8是示出根据本实施方式的寄存源节点或寄存目的地节点的示例性硬件配置的框图。
具体实施方式
在下文中,将参照附图来详细描述本公开内容的优选实施方式。注意,在本说明书和附图中,具有基本相同的功能配置的组成元件将由相同的附图标记表示,并且将省略其重复描述。
注意,将按以下顺序给出描述。
1.背景
2.本实施方式的数据管理系统的概述
3.每个设备的功能配置
4.寄存目的地节点的操作
5.变型
6.每个设备的硬件配置
7.结论
<1.背景>
首先,将描述本公开内容的背景。
如上面提及的,通常,在寄存人将一些重要数据寄存给另一个人的情况下,寄存人将数据寄存给可靠的人。在寄存人将数据寄存给不可靠的人的情况下,寄存人需要验证保管人适当地保存数据(例如,保管人没有篡改数据,没有擦除数据等)。
此处,需要相当大的成本来验证保管人适当地保存数据。例如,可以设想的是,通过开发用于检测篡改的应用或加密方法来验证保管人适当地保存数据。然而,独立地开发应用或加密方法并不容易,并且需要相当大的成本。
此外,根据专利文献1中公开的技术,例如,内部人员(存储服务器的管理员等)可能篡改保证数据本身,由此在内部人员已经篡改寄存的数据和保证数据的情况下,寄存人不能检测到篡改。
鉴于上述情况,公开本公开内容的人已经开发了与本公开内容有关的技术。在下文中,将描述根据本公开内容的实施方式的数据管理系统的概述。
<2.本实施方式的数据管理系统的概述>
根据本公开内容的数据管理系统是寄存人可以在任何时间段内寄存期望数据的系统。不特别限制可以使用本系统的寄存人。例如,诸如公司的各种组织和个人可以使用本系统。此外,也不特别限制要寄存在本系统中的数据。例如,与各种业务有关的数据(包含公司的商业秘密的数据等)、个人数据(照片、视频、音乐、电影、电视节目、游戏等)等可以被寄存在本系统中。此外,可以通过任何加密方法来加密要寄存在本系统中的数据。
此外,根据本实施方式的数据管理系统使用经由对等网络提供的分布式对等数据库。注意,对等网络可以被称为对等分布式文件系统。在下文中,对等网络可以被称为“P2P网络”,并且对等数据库可以被称为“P2P数据库”。在本说明书中,将描述使用经由P2P网络提供的区块链数据的示例性情况作为P2P数据库的示例。
(2-1.一般区块链系统的概述)
在描述根据本实施方式的数据管理系统之前,首先,将参照图1描述一般区块链系统的概述。图1是示出一般区块链数据的概述的说明图。如图1所示,区块链数据是多个块以链的形式连接的数据。然后,在每个块中,一个或更多个类型的信息可以被存储为交易。使用区块链系统的服务的示例包括比特币。在比特币中,与虚拟货币的交换相关联的信息可以被存储为交易。
如图1所示,区块链数据包括称为例如“紧邻在前的块的散列值”和“随机数(nonce)”的特定值。
“紧邻在前的块的散列值”是用于连接块和紧邻在前的块的信息,该信息是紧邻在前的块中包括的整个数据(或者紧邻在前的块中包括的数据的一部分)的散列值等。此外,“紧邻在前的块的散列值”还用于检测例如区块链的每个块中包括的数据是否已被篡改。更具体地,在区块链的任何块中包括的交易数据已被篡改的情况下,该块中包括的整个数据(或块中包括的数据的一部分)的散列值改变,使得在该块之后的块中包括的“紧邻在前的块的散列值”中发生不一致,由此可以检测数据是否已被篡改。
此外,“随机数”是在从连接到P2P网络的节点中确定添加了新块的节点的处理中使用的信息。更具体地,例如,在将新块添加到区块链的情况下,连接到P2P网络的节点输出块中包括的整个数据(或块中包括的数据的一部分)的散列值,同时不同地改变要被添加的块中的“随机数”。然后,首先成功生成满足预定条件的散列值的节点(换言之,首先成功找到生成满足预定条件的散列值的随机数的节点)可以在区块链中添加新块。
该处理例如在比特币中被称为挖矿,其中,首先成功找到使用其计算的散列值小于预定值的随机数的节点可以在区块链中添加新块。在上述处理中,可以通过适当地改变“预定条件”来调整该处理所需的时间。
以这种方式,可以在区块链中添加新块的节点不是预先确定的,并且不限于特定节点,由此利用区块链的服务可以防止通过特定节点的欺诈并且可以确保服务的公平性。注意,“随机数”的示例包括字符串、数字串和包括字符串和数字串的组合的数据。
此外,使用节点(或用户)拥有的秘密密钥对区块链的每个块中包括的交易附加电子签名。通过将电子签名附加到交易,可以检测到所谓的“欺骗”、数据篡改等。
注意,可以适当地加密区块链的每个块中包括的交易数据。更具体地,比特币的每个块中的交易未被加密,并且使用秘密密钥附加电子签名,并且每个交易是公开的。同时,存在一种使比特币的区块链保持诸如彩色币的数字资产的技术。在这种情况下,可以以使得仅掌握对应的加密密钥的特定设备(能够对加密数据解密的设备)能够理解区块链上的数据的内容的方式进行设计。
此外,例如,区块链系统还可以通过使用比特币的侧链技术包括与用于交换现有虚拟货币数据(例如,比特币的区块链数据)的区块链数据中的虚拟货币不同的其他数据。
(2-2.本实施方式的数据管理系统的配置)
前面已经描述了一般区块链系统的概述。接下来,将参照图2描述根据本实施方式的数据管理系统的配置。图2是示出根据本实施方式的数据管理系统的配置的图。
如图2所示,根据本实施方式的数据管理系统包括寄存要被寄存的数据(为方便起见,下文中称为“目标数据10”)的节点(为方便起见,下文中称为“寄存源节点100”)和保管目标数据10的节点(为方便起见,下文中称为“寄存目的地节点200”)。然后,寄存源节点100和寄存目的地节点200连接到P2P网络300。尽管图2仅示出了一个寄存源节点100和三个寄存目的地节点200,但是图2仅是示例,并且寄存源节点100的数量和寄存目的地节点200的数量是可选的。此外,尽管在图2中分别示出了寄存源节点100和寄存目的地节点200,但是寄存源节点100和寄存目的地节点200可以由相同的信息处理装置实现。换言之,用作寄存源节点100的信息处理装置也可以用作寄存目的地节点200。
(寄存源节点100)
寄存源节点100是将目标数据10寄存到寄存目的地节点200并请求验证目标数据10的信息处理装置。此处,验证表示确认目标数据10被适当地存储的处理。更具体地,验证表示确认目标数据10未被擦除或者目标数据10未被篡改等的处理。稍后将描述根据本实施方式的验证的细节。
寄存源节点100向多个寄存目的地节点200公开与目标数据10的存储目的地的征集(solicitation)相关联的信息,从而征集目标数据10的存储目的地。此处,征集目标数据10的存储目的地的方法是可选的。例如,寄存源节点100可以将与目标数据10的存储目的地的征集相关联的信息上载到因特网上的预定网站,从而将信息公开给多个寄存目的地节点200。
然后,寄存源节点100将目标数据10提供给已同意存储目标数据10的寄存目的地节点200。此处,提供目标数据10的方法是可选的。例如,寄存源节点100可以经由P2P网络300将目标数据10提供给寄存目的地节点200,或者可以经由因特网将目标数据10提供给寄存目的地节点200。
此外,寄存源节点100向寄存目的地节点200通知与目标数据10的存储或验证相关联的各种信息。此处,与目标数据10的存储或验证相关联的各种信息可以是任何类型的信息。例如,寄存源节点100向寄存目的地节点200通知与目标数据10的大小、存储或验证的时段、条件、方法和报酬(consideration)、报酬的支付方法、用作报酬来源的预算等相关联的信息。此外,通知这些类型的信息的方法是可选的。例如,寄存源节点100可以在因特网上的预定网站上公开这些类型的信息。
此外,在将目标数据10寄存在多个寄存目的地节点200中之后,寄存源节点100确认目标数据10的存储状态或验证状态(为方便起见,在下文中,“存储状态或验证状态”可以被称为“验证状态”)。此处,确认目标数据10的验证状态的方法是可选的。例如,寄存源节点100可以从P2P网络300获得区块链数据以基于区块链数据来确认目标数据10的验证状态,或者可以从P2P网络300获得指示目标数据的验证状态的预定信息以基于该信息来确认目标数据10的验证状态。
稍后将描述寄存源节点100的处理的细节。
(寄存目的地节点200)
寄存目的地节点200是从寄存源节点100接收目标数据10并且验证目标数据10的信息处理装置。
例如,寄存目的地节点200向寄存源节点100通知指示寄存目的地节点200同意存储目标数据10的信息。此处,通知指示寄存目的地节点200同意存储目标数据10的信息的方法是可选的。例如,寄存目的地节点200可以经由因特网上的预定网站向寄存源节点100通知指示寄存目的地节点200同意存储目标数据10的信息,在该因特网上的预定网站中,寄存源节点100公开了与目标数据10的存储目的地的征集相关联的信息。
然后,寄存目的地节点200从寄存源节点100获得目标数据10。此处,获得目标数据10的方法是可选的。例如,寄存目的地节点200可以经由P2P网络300从寄存源节点100获得目标数据10,或者可以经由因特网从寄存源节点100获得目标数据10。
此外,寄存目的地节点200从P2P网络300获得区块链数据,并且使用区块链数据验证目标数据10。稍后将描述验证的细节。
(2-3.本实施方式的数据管理系统的功能概述)
前面已经描述了根据本实施方式的数据管理系统的配置。接下来,将描述根据本实施方式的数据管理系统的功能概述。
如上所述,在更新一般区块链数据时使用称为“随机数”的信息。同时,在根据本实施方式的数据管理系统中,寄存目的地节点200使用从目标数据10获得的数据(为方便起见,在下文中,该数据可以被称为“第一数据”)代替“随机数”(相当于使用第一数据作为“随机数”)。更具体地,某个寄存源节点100将目标数据10寄存到参与P2P网络的多个寄存目的地节点200,并且已经接收到目标数据10的寄存目的地节点200使用例如目标数据10中包括的位串代替“随机数”来计算要被添加的块中包括的整个数据(或要被添加的块中包括的数据的一部分)的散列值。
然后,寄存目的地节点200继续改变第一数据并且计算散列值,直到计算的散列值满足预定条件(为方便起见,在下文中,该处理可以被称为“挑战”)。然后,首先成功计算满足预定条件的散列值(换言之,首先挑战成功)的寄存目的地节点200可以在区块链中添加新块。注意,计算散列值的处理仅是示例,并且寄存目的地节点200可以执行除散列值的计算之外的可选数据处理。
P2P网络的每个配置(每个设备、每个设备的程序、每个设备的通信装置等)被设计成使得上述处理自主地继续,从而根据本实施方式的数据管理系统可以防止目标数据10被篡改。更具体地,在目标数据10已经被篡改等的情况下,区块链中包括的任何块的整个数据(或块中包括的数据的一部分)的散列值不满足预定条件,由此可以检测到目标数据10的篡改等。以这种方式,根据本实施方式的数据管理系统可以通过使用从目标数据10获得的第一数据代替“随机数”来更适当地实现对目标数据10的验证。
更具体地,在目标数据10被委托给预定存储服务的情况下,存在目标数据10被攻击存储服务的恶意外部人员或执行预定操作的存储服务的恶意管理员篡改或擦除的可能性。特别地,在相关行业具有重大影响的公司、政府等已经篡改或擦除目标数据10的情况下,可能破坏事实或证据。同时,根据本实施方式的数据管理系统可以将目标数据10寄存到多个匿名保管人,从而可以降低目标数据10由于恶意外部人员的攻击而被篡改或擦除的可能性。
此外,与例如目标数据10被插入区块链数据或目标数据10被添加到区块链数据的方法相比,根据本实施方式的数据管理系统将目标数据10处理为与区块链数据分开的数据,从而可以减小区块链数据的大小。
此外,根据本实施方式的数据管理系统可以有效地利用每个寄存目的地节点200的资源。更具体地,例如,参与比特币挖矿的多个节点改变“随机数”直到挖矿成功,并且继续计算块中包括的整个数据(或块中包括的数据的一部分)的散列值的处理。换言之,不能说通过直到挖矿成功执行计算散列值的处理有效地利用了节点的资源。同时,根据本实施方式的数据管理系统可以在挑战中通过使用计算散列值的处理来验证目标数据10,由此可以说有效地利用了寄存目的地节点200的资源。此外,本公开内容还可以应用于其他区块链服务。
此外,根据本实施方式的寄存人将预算设置为用于目标数据10的存储或验证的报酬来源。此处,设置预算的方法或兑换奖励的方法是可选的。例如,目标数据10的寄存人通过预定方法来指定预算,并且预算被储备在P2P网络300上,由此可以允许已经挑战成功的寄存目的地节点200从储备库(pool)中获得奖励。此外,寄存源节点100可以在可选的定时处确认已经挑战成功的寄存目的地节点200,并且可以通过经由P2P网络300单独进行汇款来向这些寄存目的地节点200支付奖励。此外,当寄存人收集目标数据10时,可以基于每个寄存目的地节点200的贡献(例如,每个寄存目的地节点200已经添加块的次数)根据预算来分配奖励。根据那些方法,目标数据10的保管人可以以一定概率接收目标数据10的存储或验证的公平报酬。
此外,根据本实施方式的数据管理系统可以确认目标数据10的验证状态,并且可以向寄存人呈现与确认的结果相关联的信息。此处,确认目标数据10的验证状态的方法或者呈现与确认的结果相关联的信息的方法是可选的。例如,寄存源节点100可以在可选的定时处从P2P网络300获得区块链数据,并且可以基于区块链数据来确认块的添加状态(例如,最近添加块的日期和时间),以确认目标数据10的验证状态。此外,例如,与存储和验证目标数据10的寄存目的地节点200的数量、块的添加状态以及预算的余额等相关联的信息可以在因特网上的预定网站上被总结,并且寄存源节点100可以访问网站以确认目标数据10的验证状态。
此外,目标数据10的寄存人可以在任何时间基于目标数据10的验证状态来改变预算。例如,在存储和验证目标数据10的寄存目的地节点200的数量已经减少的情况下,寄存人可以增加预算来增加存储和验证目标数据10的寄存目的地节点200的数量。此外,在预定时间段或更长时间内未添加块的情况下,寄存人可以增加预算以使每个寄存目的地节点200执行验证(挑战)。
(2-4.本实施方式的区块链数据的概述)
接下来,将参照图3描述根据本实施方式的区块链数据的概述。图3是示出根据本实施方式的区块链数据的概述的说明图。如图3所示,根据本实施方式的区块链数据的每个块包括“紧邻在前的块的散列值”、“文件验证历史”和“虚拟货币交易历史”。在下文中,将详细描述每个数据。
(2-4-1.文件验证历史)
首先,将描述“文件验证历史”。根据本实施方式的“文件验证历史”包括与从目标数据10获得的第一数据相关联的信息。此处,将参照图4描述根据本实施方式的“文件验证历史”中包括的信息。图4是示出根据本实施方式的“文件验证历史”中包括的示例性信息的表。
如图4所示,根据本实施方式的“文件验证历史”包括“FileID”、“FilePartNum”和“FileData”。注意,图4中所示的信息仅是示例,并且可以适当地改变根据本实施方式的“文件验证历史”中包括的信息。
“FileID”是用于标识目标数据10的信息。例如,“FileID”可以是整个目标数据10的散列值(图4示出{7fee20....0a}作为示例)。在寄存目的地节点200保管多个目标数据10的情况下,寄存目的地节点200可以基于在“FileID”中设置的信息来识别该信息与哪个目标数据10相关联。注意,这仅是示例,并且可以适当地改变在“FileID”中设置的目标数据10的标识信息。
“FilePartNum”是指示寄存目的地节点200执行挑战时的目标数据10中的挑战的目标范围的信息。更具体地,参与挑战的寄存目的地节点200将由“FilePartNum”指定的目标数据10的范围的一部分而不是整个目标数据10中包括的位串设置为“FileData”中的第一数据,并且执行挑战。
因此,根据本实施方式的数据管理系统可以通过改变“FilePartNum”的设置来调整挑战的难度,并且可以调整挑战成功所需的时间。例如,根据本实施方式的数据管理系统可以基于挑战成功所需的时间的过去记录,在期望挑战成功所需的时间较长的情况下设置由“FilePartNum”指定的挑战的较宽的目标范围,或者在期望挑战成功所需的时间较短的情况下设置由“FilePartNum”指定的挑战的较窄的目标范围。
此外,根据本实施方式的数据管理系统可以根据“FilePartNum”(换言之,取决于挑战的难度)来调整挑战成功时的奖励的金额。例如,在由“FilePartNum”指定的挑战的目标范围被设置得较宽的情况下,根据本实施方式的数据管理系统可以将要在挑战成功时支付的奖励的金额设置得较高。此外,在由“FilePartNum”指定的挑战的目标范围被设置得较窄的情况下,根据本实施方式的数据管理系统可以将要在挑战成功时支付的奖励的金额设置得较低。
此外,根据本实施方式的数据管理系统还可以根据预算的余额来改变“FilePartNum”的设置。例如,在预算余额变得低于预定值的情况下,根据本实施方式的数据管理系统可以将由“FilePartNum”指定的挑战的目标范围设置得较窄,使得挑战的难度降低,从而将奖励的金额设置得较低。
注意,基于“FilePartNum”指定挑战的目标范围的方法是可选的。例如,“FilePartNum”可以是与通过将目标数据10划分为多个范围而获得的划分范围相关联的信息(例如,“FilePartNum”可以是指示通过将目标数据10划分为23段而获得的第三范围的信息(为方便起见图4示出了{3/23})。
此外,尽管前面已经描述了在“FilePartNum”中指定了目标数据10的范围的一部分,但是这仅是示例,并且可以适当地改变要在“FilePartNum”中设置的信息。例如,可以在“FilePartNum”中设置与目标数据10有关的一些类型的信息(与目标数据10的大小、存储位置、数据类型、创建日期和时间、创建者、更新日期和时间、更新者等相关联的信息)。
此外,用于指定“FilePartNum”的设备是可选的。例如,“FilePartNum”可以由在先前块添加时挑战成功的寄存目的地节点200使用预定方法来指定,或者可以由每个寄存目的地节点200本身使用预定方法来指定。在本说明书中,作为示例,假设“FilePartNum”由在先前块添加时挑战成功的寄存目的地节点200指定。例如,已经挑战成功的寄存目的地节点200还在广播与要添加的块相关联的信息时向其他寄存目的地节点200提供与要用于下一次挑战的“FilePartNum”相关联的信息,并且每个寄存目的地节点200基于与“FilePartNum”相关联的信息来执行下一次挑战。
此外,设置“FilePartNum”的方法是可选的。例如,已经挑战成功的寄存目的地节点200可以将预定信息(例如,关于已经挑战成功时的“FilePartNum”或“FileData”的信息)输入到预先分发的预定程序,从而设置用于下一次挑战的“FilePartNum”。此外,在目标数据10被划分为多个范围并且在“FilePartNum”中设置与划分范围相关联的信息的情况下,已经挑战成功的寄存目的地节点200可以将先前未设置为目标范围的范围设置成“FilePartNum”。
在“FileData”中设置有与第一数据相关联的信息。例如,在第一数据是具有某一位长度的位串的情况下,从由“FilePartNum”指定的挑战的目标范围的起始开始的字节数(为方便起见,下文中称为“Offset”)以及从“Offset”开始的数据长度(为方便起见,下文中称为“Len”)(例如,指示Offset是第2,115字节而Len是37字节的数据(为方便起见,图4示出了{2115/37}))可以在“FileData”中被设置为指示位串的起始的数据。
以这种方式,在“FileData”中设置的内容不是实际数据而是Offset和Len,由此“FileData”可以具有恒定的大小。
注意,由寄存目的地节点200的秘密密钥生成的电子签名可以附加到“文件验证历史”。因此,可以验证是否发生了所谓的“欺骗”或者“文件验证历史”是否已被篡改。
(2-4-2.虚拟货币交易历史)
“虚拟货币交易历史”包括与目标数据10的存储或验证的奖励相关联的信息。例如,“虚拟货币交易历史”包括与要支付给已经挑战成功的寄存目的地节点200的奖励相关联的信息。
此处,如上所述,兑换挑战成功的奖励的方法是可选的。在本说明书中,作为示例,将描述以下示例性情况:目标数据10的寄存人通过预定方法指定预算并且预算被储备在P2P网络300上,使得已经挑战成功的寄存目的地节点200从储备库获得奖励。
此处,生成“虚拟货币交易历史”的方法是可选的。例如,可以将预定程序预先分发给每个寄存目的地节点200,并且已经挑战成功的寄存目的地节点200可以使用该程序生成“虚拟货币交易历史”。寄存目的地节点200可以通过将所生成的“虚拟货币交易历史”包括在块中来从储备库获得奖励。以这种方式,“虚拟货币交易历史”的生成仅由预定程序执行,由此根据本实施方式的数据管理系统可以防止巨大的奖励金额被恶意保管人获得。
此处,将参照图5描述根据本实施方式的“虚拟货币交易历史”中包括的信息的示例。图5是示出根据本实施方式的“虚拟货币交易历史”中包括的示例性信息的表。
如图5所示,根据本实施方式的“虚拟货币交易历史”包括“输入”字段和“输出”字段,并且“输入”字段包括“交易历史编号”、“电子签名”以及“储备库的公共密钥”。此外,“输出”字段包括“奖励的金额”和“寄存目的地节点的公共密钥的散列值”。注意,图5中所示的信息仅是示例,并且可以适当地改变根据本实施方式的“虚拟货币交易历史”中包括的信息。
“交易历史编号”是能够标识与奖励的转移有关的交易的可选信息。例如,“交易历史编号”可以是挑战成功时的时间戳、每次与奖励的转移有关的交易发生时递增预定值(例如,递增“1”)的序号等。根据本实施方式的数据管理系统可以通过提供“虚拟货币交易历史”中的“交易历史编号”和稍后描述的“电子签名”来防止重复获取奖励。
“电子签名”是由储备库的秘密密钥生成的电子签名数据。因此,利用通过“虚拟货币交易历史”中包括的“储备库的公共秘钥”验证的电子签名数据,可以验证“虚拟货币交易历史”是否已被篡改或是否已发生所谓的“欺骗”。
“奖励的金额”是与由已经挑战成功的寄存目的地节点200获得的奖励的金额相关联的信息。例如,在“奖励的金额”中设置预定量的虚拟货币作为成功挑战的奖励。奖励的金额可以是固定金额,可以在任何时间根据寄存人而改变,或者可以根据挑战的难度而改变。
“寄存目的地节点的公共密钥的散列值”是已经挑战成功的寄存目的地节点200的公共密钥的散列值。利用“虚拟货币交易历史”中包括的“寄存目的地节点的公共密钥的散列值”,可以识别已经挑战成功并且已经获得奖励的寄存目的地节点200。在“虚拟货币交易历史”中包括“寄存目的地节点的公共密钥的散列值”仅是示例,并且可以适当地改变。例如,可以包括“保管人的公共密钥的散列值”等来代替“寄存目的地节点的公共密钥的散列值”。
(2-4-3.紧邻在前的块的散列值)
如上所述,“紧邻在前的块的散列值”是用于连接块和紧邻在前的块的信息,其是紧邻在前的块中包括的整个数据(或紧邻在前的块中包括的数据的一部分)的散列值(注意,“紧邻在前的块的散列值”在本实施方式中用作“第二数据”)。
<3.每个设备的功能配置>
(3-1.寄存源节点100)
前面已经描述了根据本实施方式的数据管理系统的概述。接下来,将参照图6描述根据本实施方式的每个设备的功能配置。图6是示出根据本实施方式的寄存源节点100和寄存目的地节点200的功能配置的表。
首先,将描述根据本实施方式的寄存源节点100的功能配置。如图6所示,根据本实施方式的寄存源节点100包括输入单元110、控制单元120、通信单元130、输出单元140和存储装置150。此外,控制单元120包括处理单元121。
(输入单元110)
输入单元110具有用于接收来自寄存人的输入的功能配置。更具体地,输入单元110包括用于输入的各种设备(键盘、鼠标、小键盘、触摸面板、麦克风、操作按钮、方向键、诸如微动拨盘的旋转选择器等),并且寄存人使用这些设备执行各种输入操作。例如,寄存人使用输入单元110中包括的各种设备输入目标数据10和与目标数据10的存储或验证相关联的各种信息(与目标数据10的大小、存储或验证的时段、条件、方法和报酬、报酬的支付方法、用作报酬来源的预算等相关联的信息)。注意,这些类型的信息仅是示例,并且要从输入单元110输入的信息是可选的。输入单元110基于由寄存人进行的输入操作来生成输入信息,并且将输入信息提供给稍后将描述的控制单元120。
(控制单元120)
控制单元120集中地控制寄存源节点100。更具体地,控制单元120基于从输入单元110提供的输入信息、从稍后将描述的通信单元130提供的接收信息等,来集中地控制从目标数据10的存储或验证的开始到结束的各种处理。注意,由控制单元120控制的处理不限于此。例如,控制单元120可以控制通常在服务器、个人计算机(PC)、平板PC等中执行的处理。此外,如上所述,控制单元120包括处理单元121。
(处理单元121)
处理单元121执行与目标数据10的存储或验证有关的处理。例如,处理单元121基于从输入单元110提供的输入信息等来执行将与目标数据10的存储目的地的征集相关联的信息公开给多个寄存目的地节点200的处理。此处,该处理的具体内容是可选的。例如,处理单元121可以生成与目标数据10的存储目的地的征集相关联的信息并且将该信息上载到因特网上的预定网站,从而将该信息公开给多个寄存目的地节点200。
此外,处理单元121执行将目标数据10提供给多个寄存目的地节点200的处理。此处,处理的具体内容是可选的。例如,处理单元121可以执行经由P2P网络300将目标数据10提供给寄存目的地节点200的处理,或者可以执行经由因特网将目标数据10提供给寄存目的地节点200的处理。
此外,处理单元121用作向每个寄存目的地节点200请求验证(或验证的开始)的验证请求单元。更具体地,处理单元121控制将用于请求验证(或验证的开始)的通知发送到P2P网络300的处理。因此,每个寄存目的地节点200经由P2P网络300接收通知,并且识别出请求了对目标数据10的验证(或验证的开始)。
此外,处理单元121执行向寄存目的地节点200通知与目标数据10的存储或验证相关联的各种信息(与目标数据10的大小、存储或验证的时段、条件、方法和报酬、报酬的支付方法、用作报酬来源的预算等相关联的信息)的处理。此处,该处理的具体内容是可选的。例如,处理单元121可以经由P2P网络300向寄存目的地节点200通知那些类型的信息,或者可以通过在因特网上的预定网站上公开信息来向寄存目的地节点200通知那些类型的信息。
此外,处理单元121还用作用于确认目标数据10的存储状态或验证状态的确认单元。此处,该处理的具体内容是可选的。更具体地,处理单元121从P2P网络300获得关于目标数据10的区块链数据,并且确认块向区块链的添加状态(最近添加块的日期和时间、添加块的次数、添加了块的寄存目的地节点200等)、奖励的兑换状态(已经转移的奖励的金额、预算的余额等)等。此外,上述那些仅是示例,并且由处理单元121确认的信息是可选的。例如,处理单元121可以确认存储和验证目标数据10的寄存目的地节点200的数量。然后,处理单元121将已经确认的各种信息提供给稍后将被描述的输出单元140,从而实现这些类型信息的输出。
当执行上述各种处理时,控制单元120(包括处理单元121)生成用于控制各个功能配置的控制信号并且将控制信号提供给各个功能配置,并且从各个功能配置提供各种信息(来自输入单元110的输入信息、来自通信单元130的接收信息等)。
(通信单元130)
通信单元130与外部设备通信。更具体地,通信单元130连接到P2P网络300或其他网络,并且经由那些网络与多个寄存目的地节点200或其他外部设备通信。例如,在发送的情况下,通信单元130基于来自控制单元120的控制信号发送与目标数据10的存储目的地的征集相关联的信息、目标数据10、与目标数据10的存储或验证相关联的各种信息(与目标数据10的大小、存储或验证的时段、条件、方法和报酬、报酬的支付方法、用作报酬来源的预算等相关联的信息)等。此外,在接收的情况下,通信单元130接收指示其同意存储目标数据10、区块链数据等的信息并且将那些信息作为接收信息提供给控制单元120。注意,上述信息仅是示例,并且通信单元130可以发送和接收其他类型的信息。
(输出单元140)
输出单元140输出各种信息。更具体地,输出单元140包括要用于输出的各种设备(显示器(液晶显示器、有机电致发光(EL)显示器等)、投影仪、打印机、绘图仪、扬声器等),并且基于从控制单元120提供的控制信号来执行各种输出。例如,输出单元140可以在显示器上显示与从目标数据10的存储或验证的开始到结束的各种处理相关联的信息,从而向寄存人提供各种信息。
(存储装置150)
存储装置150存储各种信息。例如,存储装置150存储与目标数据10的存储目的地的征集相关联的信息、目标数据10、与目标数据10的存储与验证相关联的各种信息(与目标数据10的大小、存储或验证的时段、条件、方法、和报酬、报酬的支付方法,用作报酬来源的预算等相关联的信息)、指示其同意存储目标数据10的信息、区块链数据等。注意,那些类型的信息仅是示例,并且可以适当地改变在存储装置150中存储的信息。例如,存储装置150可以存储由寄存源节点100的每个功能配置使用的程序、参数等。
(3-2.寄存目的地节点200)
接下来,将描述根据本实施方式的寄存目的地节点200的功能配置。如图6所示,根据本实施方式的寄存目的地节点200包括输入单元210、控制单元220、通信单元230、输出单元240和存储装置250。此外,控制单元220包括处理单元221。
(输入单元210)
输入单元210具有用于接收来自保管人的输入的功能配置。更具体地,以与上述寄存源节点100的输入单元110类似的方式,输入单元210包括用于输入的各种设备(键盘、鼠标、小键盘、触摸面板、麦克风、操作按钮、方向键、诸如微动拨盘的旋转选择器等),并且保管人使用这些设备执行各种输入操作。例如,保管人使用输入单元210中包括的各种设备来输入指示其同意存储目标数据10的信息等。输入单元210基于由保管人进行的输入操作来生成输入信息,并且将输入信息提供给稍后将描述的控制单元220。
(控制单元220)
控制单元220集中地控制寄存目的地节点200。更具体地,控制单元220基于从输入单元210提供的输入信息、从稍后描述的通信单元230提供的接收信息等来集中地控制从目标数据10的存储或验证的开始到结束的各种处理。以与上述寄存源节点100的控制单元120类似的方式,由控制单元220控制的处理是可选的,并且不限于与目标数据10的存储或验证有关的处理。例如,控制单元220可以控制通常在服务器、个人计算机(PC)、平板PC等中执行的处理。此外,如上所述,控制单元220包括处理单元221。
(处理单元221)
处理单元221用作执行与目标数据10的验证有关的处理的验证单元。例如,处理单元221基于从输入单元210提供的输入信息来执行向寄存源节点100通知指示其同意存储目标数据10的信息的处理。此处,该处理的具体内容是可选的。例如,处理单元221可以经由因特网上的预定网站向寄存源节点100通知指示其同意存储目标数据10的信息,在该因特网上的预定网站中寄存源节点100公开与目标数据10的存储目的地的征集相关联的信息。
此外,处理单元221执行从寄存源节点100获得目标数据10的处理。此处,处理的具体内容是可选的。例如,处理单元221可以经由P2P网络300从寄存源节点100获得目标数据10,或者可以经由因特网从寄存源节点100获得目标数据10。然后,处理单元221使稍后将描述的存储装置250存储所获得的目标数据10。
此外,处理单元221执行与用于更新区块链数据的挑战有关的处理。更具体地,处理单元221从区块链数据获得挑战的目标范围和作为挑战成功的预定条件的目标值。此处,设置为目标值的挑战成功的条件是可选的。例如,目标值可以指示块中包括的整个数据(或块中包括的数据的一部分)的散列值小于预定值作为挑战成功的条件。
此外,尽管前面已经描述了根据挑战的目标范围的设置来调整挑战的难度,但是也可以基于目标值来调整挑战的难度。例如,根据本实施方式的数据管理系统可以基于挑战成功所需的时间的过去记录将目标值改变成使得在期望挑战成功所需的时间较长的情况下挑战的难度变得较高,并且可以将目标值改变成使得在期望挑战成功所需的时间较短的情况下挑战的难度变得较低。
然后,处理单元221根据挑战的目标范围设置“FileData”(例如,设置作为从挑战的目标范围的起始起的字节数的“Offset”以及作为以“Offset”为起点的数据长度的“Len”),计算此后的块中包括的整个数据(或块中包括的数据的一部分)的散列值,并且将散列值与由目标值指示的挑战成功的条件进行比较。处理单元221继续挑战,直到散列值满足由目标值指示的挑战成功的条件。注意,以上仅是示例,并且如果挑战在预定次数或预定时间内未成功,则处理单元221可以停止挑战。因此,处理单元221可以防止资源被直到挑战成功继续进行的挑战持续消耗。
此外,在挑战成功的情况下,处理单元221在区块链数据中添加新块(换言之,更新区块链数据)。然后,处理单元221执行经由P2P网络300广播与要添加的新块相关联的信息(也称为“与更新相关联的信息”)的处理,从而向除设备本身之外的寄存目的地节点200提供与设备已经挑战成功的事实相关联的信息以及与要添加的新块相关联的信息。已经接收到与更新相关联的信息的寄存目的地节点200的处理单元221基于该信息来确认挑战是否成功,并且在已经确认挑战成功的情况下,在由设备本身管理的区块链数据中添加新块。
此时,处理单元221可以用作用于指定要用于下一次挑战的“FilePartNum”的指定单元。例如,处理单元221可以将预定信息(例如,关于挑战已经成功时的“FilePartNum”或“FileData”的信息)输入到预先分发的预定程序,从而指定用于下一次挑战的“FilePartNum”。
注意,如果多个寄存目的地节点200的处理单元221在基本相同的定时处挑战成功,则可能在区块链中发生分支。更具体地,在多个寄存目的地节点200的处理单元221在基本相同的定时处挑战成功的情况下,各个处理单元221在基本相同的定时处执行广播与具有不同内容的新块相关联的信息的处理。在这种情况下,要添加到由其他寄存目的地节点200管理的区块链数据的块可以根据由哪个处理单元221更早接收到的已被广播的信息而不同(该事件被称为区块链的分支(branch)(或分叉(fork)))。
此处,关注区块链的分支已经发生的事件的方法是可选的。例如,打算添加新块的寄存目的地节点200的处理单元221可以从分支的区块链选择最长的链(为方便起见,下文中该最长的链可以被称为“分支”),并且可以执行各个处理(挑战等),使得将新块添加到分支。然后,在多个分支的长度相差某一值或更多的情况下,可以丢弃较短的分支以消除区块链的分支。
注意,在本实施方式中,处理单元221执行用于更新区块链数据的挑战的定时(或频率等)是可选的。例如,每个寄存目的地节点200的处理单元221可以在特定日期和时间执行挑战,可以基于任何触发(从外部设备接收控制信号等)来执行挑战,或者可以以预定的时间间隔执行挑战。
此外,当执行上述各种处理时,控制单元220(包括处理单元221)生成用于控制各个功能配置的控制信号并且将控制信号提供给各个功能配置,并且从各个功能配置提供各种信息(来自输入单元210的输入信息、来自通信单元230的接收信息等)。
(通信单元230)
通信单元230与外部设备通信。更具体地,通信单元230连接到P2P网络300或其他网络,并且经由那些网络与寄存源节点100、除了其自身设备之外的寄存目的地节点200或其他外部设备进行通信。例如,在接收的情况下,通信单元230接收目标数据10、区块链数据、与要添加的新块相关联的信息等,并且将这些信息作为接收信息提供给控制单元220。此外,在发送的情况下,通信单元230基于来自控制单元220的控制信号来发送指示其同意存储目标数据10的信息或与要添加的新块相关联的信息。注意,以上提及的信息仅是示例,并且通信单元230可以发送和接收其他类型的信息。
(输出单元240)
输出单元240输出各种信息。更具体地,以与寄存源节点100的输出单元140类似的方式,输出单元240包括用于输出的各种设备(显示器(液晶显示器、有机电致发光(EL)显示器等)、投影仪、打印机、绘图仪、扬声器等),并且基于从控制单元220提供的控制信号来执行各种输出。例如,输出单元240可以在显示器上显示与从目标数据10的存储或验证的开始到结束的各种处理相关联的信息,从而向保管人提供各种信息。
(存储装置250)
存储装置250存储各种信息。例如,存储装置250存储正在被存储的目标数据10、与目标数据10的存储或验证相关联的各种信息(与目标数据10的大小、存储或验证的时段、条件、方法和报酬、报酬的支付方法、用作报酬来源的预算等相关联的信息)、区块链数据等。注意,这些类型的信息仅是示例,并且可以适当地改变在存储装置250中存储的信息。例如,存储装置250可以存储由寄存目的地节点200的每个功能配置使用的程序、参数等。
<4.寄存目的地节点200的操作>
前面已经描述了根据本实施方式的每个设备的功能配置。接下来,将参照图7描述根据本实施方式的寄存目的地节点200的操作。图7是示出根据本实施方式的与由寄存目的地节点200执行的挑战有关的操作的流程图。
在步骤S1000中,寄存目的地节点200的处理单元221从区块链数据读取各种信息。更具体地,处理单元221从区块链数据读取作为挑战成功的条件的目标值、作为用于标识目标数据10的信息的“FileID”以及作为挑战的目标范围的“FilePartNum”。注意,由处理单元221读取的信息不限于这些类型的信息。
在步骤S1004中,处理单元221执行挑战。更具体地,处理单元221根据由“FileID”标识的目标数据10中的“FilePartNum”指定的挑战的目标范围设置“FileData”(例如,设置作为从挑战的目标范围的起始起的字节数的“Offset”以及作为以“Offset”为起点的数据长度的“Len”),计算此后的块中包括的整个数据(或块中包括的数据的一部分)的散列值,并且将计算出的散列值与由目标值指示的挑战成功的条件进行比较,从而执行挑战。
在块中包括的整个数据(或块中包括的数据的一部分)的散列值满足挑战成功的条件的情况下(即,在挑战已经成功的情况下)(在步骤S1008中为“是”),在步骤S1012中,处理单元221将新块添加到区块链数据,并且执行经由P2P网络300广播与要添加的新块相关联的信息的处理,以向除了其自身设备之外的寄存目的地节点200提供与设备已经挑战成功的事实相关联的信息以及与要添加的新块相关联的信息,并且该处理终止。在块中包括的整个数据(或块中包括的数据的一部分)的散列值不满足挑战成功的条件的情况下(即,在挑战失败的情况下)(在步骤S1008中为“否”),处理返回到步骤S1004,并且处理单元221改变“FileData”的值以再次执行挑战。
<5.变型>
前面描述了根据本实施方式的寄存目的地节点200的操作。接下来,将描述本公开内容的变型。
在上述实施方式中,已经描述了寄存目的地节点200执行用于更新区块链数据的挑战的定时(或频率等)是可选的。同时,本公开内容的变型是提供寄存目的地节点200不执行挑战的时段或者减少挑战的次数(或频率等)的示例。
例如,在寄存目的地节点200通过多次执行挑战确定目标数据10的可靠性可以被确保到一定水平的情况下,可以提供不执行挑战的时段,或者此后可以减少挑战的次数(或频率等)。
例如,在过去挑战中已经使用目标数据10中的预定量或更多的数据的情况下,寄存目的地节点200可以确定目标数据10的可靠性可以被确保到一定水平,并且可以提供不执行挑战的时段,或者此后可以减少挑战的次数(或频率等)。注意,以上仅是示例,并且可以适当地改变。例如,在已经执行挑战预定次数的情况下,或者在基于目标数据10的大小等来设置挑战的次数并且已经执行挑战设置次数的情况下,每个寄存目的地节点200可以设置不执行挑战的时段,或者可以此后减少挑战的次数(或频率等)。
因此,根据本变型,可以在可靠性被确保到一定水平或更高水平之后防止每个寄存目的地节点200的资源被无限制地继续的挑战消耗,并且可以减少作为挑战成功的报酬支付的奖励的总金额。
注意,寄存源节点100可以请求每个寄存目的地节点200每隔预定时段(例如,每年)执行验证(挑战),从而确认目标数据10已被适当地保管在寄存目的地节点200中。此外,寄存源节点100可以在从寄存目的地节点200收集目标数据10之前请求寄存目的地节点200执行验证(挑战),从而确认目标数据10已被适当地保管在寄存目的地节点200中。注意,寄存源节点100可以向每个寄存目的地节点200通知用于请求下一次挑战的调度日期和时间,从而激励每个寄存目的地节点200继续保管目标数据10。
<6.每个设备的硬件配置>
前面已经描述了本公开内容的变型。接下来,将参照图8描述根据本实施方式的每个设备的硬件配置。
图8是示出根据本实施方式的寄存源节点100或寄存目的地节点200的示例性硬件配置的框图。根据本实施方式的寄存源节点100或寄存目的地节点200可以由图8所示的信息处理装置900实现。
然后,信息处理装置900包括例如MPU 901、ROM 902、RAM 903、记录介质904、输入/输出接口905、操作输入设备906、显示设备907和通信接口908。此外,信息处理装置900通过例如用作数据传输路径的总线909连接各个部件。
MPU 901包括例如一个或更多个处理器(包括诸如MPU的运算电路、各种处理电路等),并且用作控制整个信息处理装置900的控制单元120或控制单元220。注意,控制单元120或控制单元220可以由能够实现控制单元120或控制单元220的处理的专用(或通用)电路(例如,与MPU901分开的处理器等)构成。
ROM 902存储要由MPU 901使用的程序、诸如操作参数的控制数据等。RAM 903临时存储例如要由MPU 901执行的程序。
记录介质904用作存储装置150或存储装置250,并且存储例如与根据本实施方式的信息处理有关的数据,例如,区块链数据和目标数据10以及诸如各种应用的各种数据。此处,记录介质904的示例包括诸如硬盘的磁记录介质和诸如闪速存储器的非易失性存储器。此外,记录介质904可以从信息处理装置900拆卸。
输入/输出接口905连接例如操作输入设备906和显示设备907。操作输入设备906用作输入单元110或输入单元210,并且显示设备907用作输出单元140或输出单元240。此处,输入/输出接口905的示例包括通用串行总线(USB)终端、数字可视化接口(DVI)终端、高清晰度多媒体接口(HDMI)(注册商标)终端和各种处理电路。
此外,操作输入设备906例如设置在信息处理装置900上,并且连接到信息处理装置900内部的输入/输出接口905。操作输入设备906的示例包括键盘、鼠标、小键盘、触摸面板、麦克风、操作按钮、方向键、诸如微动拨盘的旋转选择器及其组合。
此外,显示设备907例如设置在信息处理装置900上,并且连接到信息处理装置900内部的输入/输出接口905。显示设备907的示例包括液晶显示器和有机电致发光(EL)显示器。
注意,不言而喻,输入/输出接口905可以连接到外部设备,例如,信息处理装置900外部的操作输入设备和外部显示设备。此外,显示设备907可以是能够显示和进行用户操作的设备,例如触摸面板。
通信接口908是信息处理装置900中包括的通信装置,并且用作根据本实施方式的用于与P2P网络300中包括的外部设备或通过有线或无线地连接到P2P网络300的外部设备通信的通信单元130或通信单元230。此外,通信接口908可以具有例如经由任何网络(或直接)通过有线或无线地与任何外部设备(例如,服务器)通信的功能。此处,通信接口908的示例包括通信天线和射频(RF)电路(无线通信)、IEEE 802.15.1端口和发送/接收电路(无线通信)、IEEE 802.11端口和发送/接收电路(无线通信)、局域网(LAN)终端和发送/接收电路(有线通信)。
信息处理装置900利用例如图8所示的配置执行与根据本实施方式的信息处理有关的处理。注意,根据本实施方式的信息处理装置900的硬件配置不限于图8所示的配置。
例如,在信息处理装置900经由与其连接的外部设备与P2P网络300、外部通信设备等通信的情况下,信息处理装置900可以不包括通信接口908。此外,通信接口908可以被配置成能够使用多种通信方案与一个或更多个外部设备通信。
此外,信息处理装置900可以不包括例如记录介质904、操作输入设备906、显示设备907等。
此外,例如,图8中所示的配置(或根据变型的配置)的一部分或全部可以由一个或更多个集成电路(IC)实现。
<7.结论>
如上所述,根据本公开内容的数据管理系统可以通过使用从目标数据10获得的第一数据代替“随机数”更新区块链数据,来更适当地验证目标数据10。此外,根据本实施方式的数据管理系统可以通过使用在挑战中计算散列值的处理来验证目标数据10,从而可以有效地利用寄存目的地节点200的资源。
此外,根据本实施方式的寄存人可以向保管人支付用于目标数据10的存储或验证的公平报酬(换言之,保管人可以以一定的概率从寄存人处接收用于目标数据10的存储或验证的公平报酬)。
此外,根据本实施方式的寄存人可以确认目标数据10存储或验证的状态。另外,根据本实施方式的寄存人可以在任何时间基于目标数据10的存储或验证的状态来改变预算。
此外,本公开内容的变型可以提供不执行挑战的时段或减少挑战的次数(或频率等)。因此,根据本公开内容的当前变型,可以在可靠性被确保到一定水平或更高水平之后防止每个寄存目的地节点200的资源被无限制地继续的挑战消耗,并且减少作为挑战成功的报酬支付的奖励的总金额。
如上所述,尽管已经参照附图详细描述了本公开内容的优选实施方式,但是本公开内容的技术范围不限于这样的示例。显然,本公开内容的技术领域的本领域技术人员可以在所附权利要求的范围内找到各种改变和修改,并且应当理解,这样的改变和修改也自然地在本公开内容的技术范围内。
例如,可以适当地在寄存源节点100的外部提供寄存源节点100的配置的一部分。此外,可以适当地在寄存目的地节点200的外部提供寄存目的地节点200的配置的一部分。
此外,寄存源节点100的功能的一部分可以由控制单元120实现。例如,控制单元120可以实现输入单元110、通信单元130或输出单元140的功能的一部分。此外,寄存目的地节点200的功能的一部分可以由控制单元220实现。例如,控制单元220可以实现输入单元210、通信单元230或输出单元240的功能的一部分。
此外,本说明书中描述的效果仅是说明性或示例性的,而非限制性的。即,与上述效果一起或者代替上述效果,根据本公开内容的技术可以发挥根据本说明书的公开内容对本领域技术人员而言明显的其他效果。
注意,以下配置也在本公开内容的技术范围内。
(1)
一种信息处理装置,包括:
验证单元,其使用从预定数据获得的第一数据和从P2P数据库获得的第二数据来验证所述预定数据。
(2)
根据以上(1)所述的信息处理装置,其中,
所述验证单元使用所述第一数据和所述第二数据执行预定数据处理,并且搜索所述数据处理的结果满足预定条件的所述第一数据。
(3)
根据以上(2)所述的信息处理装置,其中,
所述验证单元在针对所述预定数据指定的范围内搜索所述第一数据。
(4)
根据以上(3)所述的信息处理装置,其中,
所述范围是从所述P2P数据库获得的。
(5)
根据以上(3)所述的信息处理装置,还包括:
指定单元,其指定所述范围。
(6)
根据以上(2)至(5)中的任意一项所述的信息处理装置,其中,
在所述数据处理的结果满足所述条件的情况下,所述验证单元使用所述第一数据和所述第二数据来更新所述P2P数据库。
(7)
根据以上(6)所述的信息处理装置,其中,
所述验证单元验证由其他信息处理装置执行的所述数据处理的结果满足所述条件。
(8)
根据以上(1)至(7)中的任意一项所述的信息处理装置,其中,
所述第一数据由所述预定数据中的起点的信息和数据长度的信息表示。
(9)
根据以上(1)至(8)中的任意一项所述的信息处理装置,其中,
所述P2P数据库是区块链。
(10)
根据以上(2)所述的信息处理装置,其中,
所述数据处理是用于计算散列值的处理。
(11)
一种用于处理信息的方法,所述方法包括:
使用从预定数据获得的第一数据和从P2P数据库获得的第二数据来验证所述预定数据。
(12)
一种信息处理装置,包括:
验证请求单元,其请求P2P网络验证预定数据;以及
确认单元,其基于从所述P2P网络获得的信息来确认所述预定数据的验证状态。
(13)
根据以上(12)所述的信息处理装置,其中,
所述验证请求单元还向所述P2P网络提供针对所述预定数据的验证条件。
(14)
一种用于处理信息的方法,所述方法包括:
请求P2P网络验证预定数据;以及
基于从所述P2P网络获得的信息来确认所述预定数据的验证状态。
附图标记列表
100 寄存源节点
200 寄存目的地节点
110,210 输入单元
120,220 控制单元
121,221 处理单元
130,230 通信单元
140,240 输出单元
150,250 存储装置
Claims (14)
1.一种信息处理装置,包括:
验证单元,其使用从预定数据获得的第一数据和从P2P数据库获得的第二数据来验证所述预定数据。
2.根据权利要求1所述的信息处理装置,其中,
所述验证单元使用所述第一数据和所述第二数据执行预定数据处理,并且搜索所述数据处理的结果满足预定条件的所述第一数据。
3.根据权利要求2所述的信息处理装置,其中,
所述验证单元在针对所述预定数据指定的范围内搜索所述第一数据。
4.根据权利要求3所述的信息处理装置,其中,
所述范围是从所述P2P数据库获得的。
5.根据权利要求3所述的信息处理装置,还包括:
指定单元,其指定所述范围。
6.根据权利要求2所述的信息处理装置,其中,
在所述数据处理的结果满足所述条件的情况下,所述验证单元使用所述第一数据和所述第二数据来更新所述P2P数据库。
7.根据权利要求6所述的信息处理装置,其中,
所述验证单元验证由其他信息处理装置执行的所述数据处理的结果满足所述条件。
8.根据权利要求1所述的信息处理装置,其中,
所述第一数据由所述预定数据中的起点的信息和数据长度的信息表示。
9.根据权利要求1所述的信息处理装置,其中,
所述P2P数据库是区块链。
10.根据权利要求2所述的信息处理装置,其中,
所述数据处理是用于计算散列值的处理。
11.一种用于处理信息的方法,所述方法包括:
使用从预定数据获得的第一数据和从P2P数据库获得的第二数据来验证所述预定数据。
12.一种信息处理装置,包括:
验证请求单元,其请求P2P网络验证预定数据;以及
确认单元,其基于从所述P2P网络获得的信息来确认所述预定数据的验证状态。
13.根据权利要求12所述的信息处理装置,其中,
所述验证请求单元还向所述P2P网络提供针对所述预定数据的验证条件。
14.一种用于处理信息的方法,所述方法包括:
请求P2P网络验证预定数据;以及
基于从所述P2P网络获得的信息来确认所述预定数据的验证状态。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017-097677 | 2017-05-16 | ||
JP2017097677 | 2017-05-16 | ||
PCT/JP2018/013745 WO2018211834A1 (ja) | 2017-05-16 | 2018-03-30 | 情報処理装置および情報処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110612529A true CN110612529A (zh) | 2019-12-24 |
Family
ID=64273882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880030748.2A Withdrawn CN110612529A (zh) | 2017-05-16 | 2018-03-30 | 信息处理装置和信息处理方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11445015B2 (zh) |
JP (1) | JP7156274B2 (zh) |
CN (1) | CN110612529A (zh) |
WO (1) | WO2018211834A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MX2020002594A (es) * | 2017-09-14 | 2020-07-13 | Sony Corp | Dispositivo de procesamiento de informacion, metodo de procesamiento de informacion, y programa. |
JP2020107228A (ja) * | 2018-12-28 | 2020-07-09 | 三菱Ufj信託銀行株式会社 | Icoエスクロー信託システム |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5858507B2 (ja) | 1979-09-21 | 1983-12-26 | ヨツギ株式会社 | 支線への葛の巻上り防止具 |
JP4266096B2 (ja) | 2002-03-26 | 2009-05-20 | 株式会社日立製作所 | ファイル保管システムとnasサーバ |
JP4764655B2 (ja) | 2005-04-20 | 2011-09-07 | 株式会社リコー | 電子情報公開証明システム |
JP4902451B2 (ja) | 2007-07-18 | 2012-03-21 | キヤノン株式会社 | 文書出力装置及びその制御方法とプログラム |
JP6571375B2 (ja) | 2015-04-24 | 2019-09-04 | 国立大学法人 筑波大学 | 著作物保護支援装置 |
JP5858507B1 (ja) | 2015-05-18 | 2016-02-10 | 株式会社Orb | 仮想通貨管理プログラム、及び仮想通貨管理方法 |
US20170017954A1 (en) * | 2015-07-14 | 2017-01-19 | Fmr Llc | Point-to-Point Transaction Guidance Apparatuses, Methods and Systems |
KR101780636B1 (ko) * | 2016-05-16 | 2017-09-21 | 주식회사 코인플러그 | 인증 정보의 발급 방법 및 이를 지원하는 블록체인기반 인증 정보 관리 서버 |
US10796000B2 (en) * | 2016-06-11 | 2020-10-06 | Intel Corporation | Blockchain system with nucleobase sequencing as proof of work |
US10715331B2 (en) * | 2016-12-28 | 2020-07-14 | MasterCard International Incorported | Method and system for providing validated, auditable, and immutable inputs to a smart contract |
WO2018158936A1 (ja) * | 2017-03-03 | 2018-09-07 | 日本電気株式会社 | ブロックチェーン管理装置、ブロックチェーン管理方法及びプログラム |
-
2018
- 2018-03-30 WO PCT/JP2018/013745 patent/WO2018211834A1/ja active Application Filing
- 2018-03-30 US US16/603,324 patent/US11445015B2/en active Active
- 2018-03-30 CN CN201880030748.2A patent/CN110612529A/zh not_active Withdrawn
- 2018-03-30 JP JP2019519101A patent/JP7156274B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP7156274B2 (ja) | 2022-10-19 |
US11445015B2 (en) | 2022-09-13 |
US20210297484A1 (en) | 2021-09-23 |
JPWO2018211834A1 (ja) | 2020-03-19 |
WO2018211834A1 (ja) | 2018-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11232478B2 (en) | Methods and system for collecting statistics against distributed private data | |
JP6690066B2 (ja) | パブリックサイドチェーンを使用してコンソーシアムブロックチェーンに記憶されたデータの完全性を検証すること | |
US11165589B2 (en) | Trusted agent blockchain oracle | |
US10608825B2 (en) | Decentralized exchanges in a distributed autonomous platform | |
CN109075964B (zh) | 支持用于区块验证的多个单向函数的区块链 | |
WO2018020944A1 (ja) | 掲示板情報管理システム | |
US10581882B2 (en) | Shared network for information security data exchange | |
WO2020015635A1 (zh) | 分布式投票系统、方法、装置、计算机设备及可读存储介质 | |
US20230283473A1 (en) | Computer-implemented systems and methods relating to a binary blockchain comprising a pair of coupled blockchains | |
US20200250655A1 (en) | Efficient, environmental and consumer friendly consensus method for cryptographic transactions | |
US20240022631A1 (en) | Malleability of transactions for inclusion in a blockchain | |
US20220253821A1 (en) | Streaming portions of data over a side channel | |
CN111160998A (zh) | 基于区块链的点评数据处理方法、装置及点评系统 | |
US20220222661A1 (en) | Multi-input transactions | |
CN110612529A (zh) | 信息处理装置和信息处理方法 | |
CN114531941A (zh) | 多标准区块链协议 | |
US20230043223A1 (en) | Methods for Securely Adding Data to a Blockchain Using Dynamic Time Quanta and Version Authentication | |
US20200296156A1 (en) | Information processing apparatus, information processing method, and program | |
JP2023522258A (ja) | ブロックチェーンを使用してデジタルコインシステムを実装するための方法 | |
US11816649B2 (en) | Method and system for protecting intellectual property rights on digital content using smart propertization | |
KR102503987B1 (ko) | 블록체인에 기초하여 데이터의 분석 서비스를 제공하는 시스템 및 시스템의 동작 방법 | |
CN112715018B (zh) | 信息处理装置、信息处理方法和程序 | |
JP2008117200A (ja) | 引継システム、キャンペーンサーバ、引継方法、及びプログラム | |
Sweet | A Decentralized computation platform | |
Oktian et al. | Secure decentralized firmware update delivery service for Internet of Things |
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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20191224 |