JP2020511808A - 共有秘密ベースのブロックチェーン記憶 - Google Patents

共有秘密ベースのブロックチェーン記憶 Download PDF

Info

Publication number
JP2020511808A
JP2020511808A JP2019540392A JP2019540392A JP2020511808A JP 2020511808 A JP2020511808 A JP 2020511808A JP 2019540392 A JP2019540392 A JP 2019540392A JP 2019540392 A JP2019540392 A JP 2019540392A JP 2020511808 A JP2020511808 A JP 2020511808A
Authority
JP
Japan
Prior art keywords
blockchain
data
data item
stored
data partition
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.)
Granted
Application number
JP2019540392A
Other languages
English (en)
Other versions
JP7005639B2 (ja
Inventor
ペンフェイ・イン
ジェン・リュウ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2020511808A publication Critical patent/JP2020511808A/ja
Application granted granted Critical
Publication of JP7005639B2 publication Critical patent/JP7005639B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/278Data partitioning, e.g. horizontal or vertical partitioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0637Permissions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/22Payment schemes or models
    • G06Q20/223Payment schemes or models based on the use of peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1065Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT] 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3236Cryptographic 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/3239Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q2220/00Business processing using cryptography

Abstract

本出願の実現形態は、データ項目をブロックチェーンネットワークにおいて記憶するための要求を受信することと、応答して、データ項目を複数のデータパーティションに分割すること、各々のデータパーティションをブロックチェーンネットワーク内の異なるノードに割り当てることであって、各々のノードは、割り当てられたデータパーティションを、プライベートで維持される分散型ハッシュテーブル内に記憶する、割り当てること、および、各々のデータパーティションと関連付けられる情報を、ブロックチェーンネットワークにより維持されるブロックチェーンにおいて記憶することであって、情報は、各々のデータパーティションの記憶位置を含む、記憶することとを含む。

Description

さらにはコンセンサスネットワークおよび/またはブロックチェーンネットワークと呼称され得る、分散型台帳システム(DLS)は、参加するエンティティが、セキュアに、および不変に、データを記憶することを可能にする。DLSは、何らの個別の使用事例(例えば、暗号通貨)にも言及することなく、ブロックチェーンネットワークと普通は呼称される。ブロックチェーンネットワークの例タイプは、パブリックブロックチェーンネットワーク、プライベートブロックチェーンネットワーク、およびコンソーシアムブロックチェーンネットワークを含み得る。パブリックブロックチェーンネットワークは、DLSを使用し、コンセンサスプロセスに参加するすべてのエンティティに対してオープンである。プライベートブロックチェーンネットワークは、読み出しおよび書き込み許可を中央で制御する、個別のエンティティに対して提供される。コンソーシアムブロックチェーンネットワークは、コンセンサスプロセスを制御するエンティティの選択群に対して提供され、アクセス制御層を含む。
一部の状況において、ブロックチェーンの、各々のエンティティは、それ自体のデータを、例えばプライベートハッシュテーブル内で記憶および制御する。そのようなデータ記憶体系は、データセキュリティおよびプライバシーを増大するが、その体系は、データ共有およびエンティティ協調を困難にする。
本出願の実現形態は、ブロックチェーン上の分散型データ記憶のためのコンピュータによって実施される方法を含む。より詳しくは、本出願の実現形態は、分散型ハッシュテーブルおよびマルチパーティ計算を使用して、ブロックチェーン上のデータセキュリティおよびデータ共有を改善することに向けられる。
一部の実現形態において、アクションは、データ項目をブロックチェーンネットワークにおいて記憶するための要求を受信することと、応答して、データ項目を複数のデータパーティションに分割すること、各々のデータパーティションをブロックチェーンネットワーク内の異なるノードに割り当てることであって、各々のノードは、割り当てられたデータパーティションを、プライベートで維持される分散型ハッシュテーブル内に記憶する、割り当てること、および、各々のデータパーティションと関連付けられる情報を、ブロックチェーンネットワークにより維持されるブロックチェーンにおいて記憶することであって、情報は、各々のデータパーティションの記憶位置を含む、記憶することと、記憶されたデータ項目を取得するための要求を受信することと、応答して、各々の記憶されたデータパーティションを、割り当てられるノードから、ブロックチェーンにおいて記憶された各々のデータパーティションの位置を含む情報に基づいて取得すること、記憶されたデータ項目を、記憶されたデータパーティションから再構築すること、および、記憶されたデータ項目を取得するための要求への応答を送信することであって、応答は、再構築されたデータ項目を含む、送信することとを含む。他の実現形態は、コンピュータ記憶デバイス上で符号化される方法のアクションを遂行するように構成される、対応するシステム、装置、およびコンピュータプログラムを含む。
これらおよび他の実現形態は、各々任意選択で、後に続く特徴的機能のうちの1つまたは複数を含み得る。
一部の事例において、各々のデータパーティションと関連付けられる情報をブロックチェーンにおいて記憶することは、各々のデータパーティションへのパスをブロックチェーン上に記憶することを含む。
一部の実現形態において、データ項目を、記憶されたデータパーティションから復元するために、命令が、ブロックチェーンにおいて記憶され得る。
一部の事例において、記憶されたデータ項目を再構築することは、取得されたデータパーティションを連結して、データ項目のコピーを生成することを含む。
一部の事例において、記憶されたデータ項目を取得するための要求の記録が、ブロックチェーンにおいて記憶される。
一部の実現形態において、各々の記憶されたデータパーティションを取得すること、記憶されたデータ項目を、記憶されたデータパーティションから再構築すること、および、取得するための要求への応答を送信することは、ブロックチェーンにおいて記憶され、ブロックチェーンネットワーク上で実行する、スマートコントラクトにより遂行される。
一部の事例において、各々の分散型ハッシュテーブルは、データパーティションへのファイルパス、データパーティションの値、および、関連付けられるノードの識別情報を記憶する。
一部の実現形態は、非一時的コンピュータ可読記憶媒体であって、1つまたは複数のプロセッサに結合され、1つまたは複数のプロセッサにより実行されるときに、1つまたは複数のプロセッサが、上記で説明されたアクションによる動作を遂行することを引き起こす、その記憶媒体上に記憶された命令を有する、非一時的コンピュータ可読記憶媒体を含み得る。
一部の実現形態は、コンピューティングデバイスと、コンピュータ可読記憶デバイスであって、コンピューティングデバイスに結合され、コンピューティングデバイスにより実行されるときに、コンピューティングデバイスが、上記で説明されたアクションによる動作を遂行することを引き起こす、その記憶デバイス上に記憶された命令を有する、コンピュータ可読記憶デバイスとを備えるシステムを含み得る。
本出願は、さらには、1つまたは複数の非一時的コンピュータ可読記憶媒体であって、1つまたは複数のプロセッサに結合され、1つまたは複数のプロセッサにより実行されるときに、1つまたは複数のプロセッサが、本明細書において提供される方法の実現形態による動作を遂行することを引き起こす、それらの記憶媒体上に記憶された命令を有する、1つまたは複数の非一時的コンピュータ可読記憶媒体を提供する。
本出願は、本明細書において提供される方法を実現するためのシステムをさらに提供する。システムは、1つまたは複数のプロセッサと、1つまたは複数のプロセッサに結合されるコンピュータ可読記憶媒体であって、1つまたは複数のプロセッサにより実行されるときに、1つまたは複数のプロセッサが、本明細書において提供される方法の実現形態による動作を遂行することを引き起こす、その記憶媒体上に記憶された命令を有する、コンピュータ可読記憶媒体とを含む。
本出願による方法は、本明細書において説明される態様および特徴的機能の任意の組み合わせを含み得るということが察知される。すなわち、本出願による方法は、本明細書において具体的に説明される態様および特徴的機能の組み合わせに制限されるのではなく、さらには、提供される態様および特徴的機能の任意の組み合わせを含む。
本出願の1つまたは複数の実現形態の詳細が、付随する図面、および、下記の説明において論述される。本出願の他の特徴的機能および利点は、説明および図面から、ならびに、特許請求の範囲から明らかになろう。
本出願の実現形態を実行するために使用され得る例環境を図示する図である。 本出願の実現形態による例概念アーキテクチャを図示する図である。 ブロックチェーン上の分散型データ記憶体系を実現する例システムを図示する図である。 本出願の実現形態によって実行され得る例プロセスを図示する図である。
様々な図面においての同類の参照符号は、同類の要素を指示する。
本出願の実現形態は、ブロックチェーン上の分散型データ記憶のためのコンピュータによって実施される方法を含む。より詳しくは、本出願の実現形態は、分散型ハッシュテーブルおよびマルチパーティ計算を使用して、ブロックチェーン上のデータセキュリティおよびデータ共有を改善することに向けられる。一部の実現形態において、アクションは、データ項目をブロックチェーンネットワークにおいて記憶するための要求を受信することと、応答して、データ項目を複数のデータパーティションに分割すること、各々のデータパーティションをブロックチェーンネットワーク内の異なるノードに割り当てることであって、各々のノードは、割り当てられたデータパーティションを、プライベートで維持される分散型ハッシュテーブル内に記憶する、割り当てること、および、各々のデータパーティションと関連付けられる情報を、ブロックチェーンネットワークにより維持されるブロックチェーンにおいて記憶することであって、情報は、各々のデータパーティションの記憶位置を含む、記憶することと、記憶されたデータ項目を取得するための要求を受信することと、応答して、各々の記憶されたデータパーティションを、割り当てられるノードから、ブロックチェーンにおいて記憶された各々のデータパーティションの位置を含む情報に基づいて取得すること、記憶されたデータ項目を、記憶されたデータパーティションから再構築すること、および、記憶されたデータ項目を取得するための要求への応答を送信することであって、応答は、再構築されたデータ項目を含む、送信することとを含む。
本出願の実現形態に対するさらなる背景状況を提供すると、および、上記で紹介されたように、さらにはコンセンサスネットワーク(例えば、ピアツーピアノードから編成される)およびブロックチェーンネットワークと呼称され得る、分散型台帳システム(DLS)は、参加するエンティティが、セキュアに、および不変に、トランザクションを履行し、データを記憶することを可能にする。用語ブロックチェーンは、一般的にはビットコイン暗号通貨ネットワークと関連付けられるが、ブロックチェーンは、本明細書において、何らの個別の使用事例にも言及なしに、DLSを一般的に指すように使用される。上記で紹介されたように、ブロックチェーンネットワークは、パブリックブロックチェーンネットワーク、プライベートブロックチェーンネットワーク、またはコンソーシアムブロックチェーンネットワークとして提供され得る。
パブリックブロックチェーンネットワークにおいて、コンセンサスプロセスは、コンセンサスネットワークのノードにより制御される。例えば、数百の、数千の、数百万でさえあるエンティティが、パブリックブロックチェーンネットワークと協調することができ、それらのエンティティの各々は、パブリックブロックチェーンネットワーク内の少なくとも1つのノードを動作させる。よって、パブリックブロックチェーンネットワークは、参加するエンティティに関してパブリックネットワークと考えられ得る。一部の例において、エンティティ(ノード)の大多数は、ブロックが、有効であり、ブロックチェーンネットワークのブロックチェーン(分散型台帳)に追加されるために、あらゆるブロックに署名しなければならない。例パブリックブロックチェーンネットワークは、ピアツーピア決済ネットワークであるビットコインネットワークを含む。ビットコインネットワークは、ブロックチェーンと呼称される分散型台帳を活用する。上記で特記されたように、用語ブロックチェーンは、しかしながら、ビットコインネットワークへの個別の言及なしに、分散型台帳を一般的に指すように使用される。
一般的に、パブリックブロックチェーンネットワークは、パブリックトランザクションをサポートする。パブリックトランザクションは、パブリックブロックチェーンネットワークの中のノードのすべてと共有され、グローバルブロックチェーンにおいて記憶される。グローバルブロックチェーンは、すべてのノードにわたって複製されるブロックチェーンである。すなわち、すべてのノードは、グローバルブロックチェーンに関して完全状態コンセンサスにある。コンセンサス(例えば、ブロックチェーンへのブロックの追加に対する合意)を達成するために、コンセンサスプロトコルが、パブリックブロックチェーンネットワークの中で実現される。例コンセンサスプロトコルは、制限なしに、ビットコインネットワークにおいて実現されるプルーフオブワーク(POW)を含む。
一般的に、プライベートブロックチェーンネットワークは、読み出しおよび書き込み許可を中央で制御する、個別のエンティティに対して提供される。エンティティは、どのノードがブロックチェーンネットワークに参加することができるかを制御する。その結果、プライベートブロックチェーンネットワークは、誰がネットワークに参加することを可能とされるかに関して、および、その誰かの参加のレベル(例えば、所定のトランザクションにおいてのみ)に関して制約をかける許可ネットワークと一般的に呼称される。様々なタイプのアクセス制御機構が使用され得る(例えば、新しいエンティティを加えることに関する既存の参加者投票、規制の権限をもつものが、受け入れを制御することができる)。
一般的に、コンソーシアムブロックチェーンネットワークは、参加するエンティティの間でプライベートである。コンソーシアムブロックチェーンネットワークにおいて、コンセンサスプロセスは、ノードの、権限を与えられたセットにより制御され、1つまたは複数のノードは、それぞれのエンティティ(例えば、金融機関、保険会社)により動作させられる。例えば、十(10)のエンティティ(例えば、金融機関、保険会社)のコンソーシアムが、コンソーシアムブロックチェーンネットワークを動作させることができ、それらのエンティティの各々は、コンソーシアムブロックチェーンネットワーク内の少なくとも1つのノードを動作させる。よって、コンソーシアムブロックチェーンネットワークは、参加するエンティティに関してプライベートネットワークと考えられ得る。一部の例において、各々のエンティティ(ノード)は、ブロックが、有効であり、ブロックチェーンに追加されるために、あらゆるブロックに署名しなければならない。一部の例において、エンティティ(ノード)の少なくともサブセット(例えば、少なくとも7つのエンティティ)は、ブロックが、有効であり、ブロックチェーンに追加されるために、あらゆるブロックに署名しなければならない。
本出願の実現形態は、本明細書において、参加するエンティティの間でパブリックであるパブリックブロックチェーンネットワークを参照して、さらに詳細に説明される。しかしながら、本出願の実現形態は、任意の適切なタイプのブロックチェーンネットワークにおいて現実化され得るということが思索される。
本出願の実現形態は、本明細書において、上記の背景状況に鑑みて、さらに詳細に説明される。より詳しくは、および、上記で紹介されたように、本出願の実現形態は、分散型ハッシュテーブルおよびマルチパーティ計算を使用して、ブロックチェーン上のデータセキュリティおよびデータ共有を改善することに向けられる。
一部の実現形態において、データ項目が、異なる部分に分割され、各々の部分が、ブロックチェーンネットワークに参加するエンティティのハッシュテーブル内に記憶される。各々のエンティティ、または、外側のサービスは、ブロックチェーン上に展開されるプログラム、例えばスマートコントラクトを使用して、データをビューし、データに関する動作を遂行することができる。結果として、データ全体へのアクセス権を有するエンティティはただの1つもないが、各々のエンティティは、それでも、データの所定の測定値を得ることができる。
図1は、本出願の実現形態を実行するために使用され得る例環境100を図示する。一部の例において、例環境100は、エンティティがブロックチェーンネットワーク102に参加することを可能にする。ブロックチェーンネットワーク102は、パブリックブロックチェーンネットワーク、プライベートブロックチェーンネットワーク、またはコンソーシアムブロックチェーンネットワークであり得る。例環境100は、コンピューティングデバイス106、108、およびネットワーク110を含む。一部の例において、ネットワーク110は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、または、それらの組み合わせを含み、ウェブサイト、ユーザデバイス(例えば、コンピューティングデバイス)、およびバックエンドシステムを接続する。一部の例において、ネットワーク110は、ワイヤードおよび/またはワイヤレス通信リンクを介してアクセスされ得る。
図示される例において、コンピューティングシステム106および108は、各々、ブロックチェーンネットワーク102内のノードとしての参加を可能にする、任意の適切なコンピューティングシステムを含み得る。例コンピューティングデバイスは、制限なしに、サーバ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピューティングデバイス、およびスマートフォンを含む。一部の例において、コンピューティングシステム106および108は、各々、ブロックチェーンネットワーク102と相互作用するための、1つまたは複数のコンピュータ実現サービスをホストする。例えば、コンピューティングシステム106は、第1のエンティティ(例えば、ユーザA)のコンピュータ実現サービス、例えるなら、第1のエンティティが、1つまたは複数の他のエンティティ(例えば、他のユーザ)との、その第1のエンティティのトランザクションを管理するために使用するトランザクション管理システムをホストすることができる。コンピューティングシステム108は、第2のエンティティ(例えば、ユーザB)のコンピュータ実現サービス、例えるなら、第2のエンティティが、1つまたは複数の他のエンティティ(例えば、他のユーザ)との、その第2のエンティティのトランザクションを管理するために使用するトランザクション管理システムをホストすることができる。図1の例において、ブロックチェーンネットワーク102は、ノードのピアツーピアネットワークとして表され、コンピューティングシステム106および108は、それぞれ、ブロックチェーンネットワーク102に参加する、第1のエンティティおよび第2のエンティティのノードを提供する。
図2は、本出願の実現形態による例概念アーキテクチャ200を図示する。例概念アーキテクチャ200は、エンティティ層202、ホストされるサービス層204、およびブロックチェーンネットワーク層206を含む。図示される例において、エンティティ層202は、3つのエンティティ、Entity_1(E1)、Entity_2(E2)、およびEntity_3(E3)を含み、各々のエンティティは、それぞれのトランザクション管理システム208を有する。
図示される例において、ホストされるサービス層204は、各々のトランザクション管理システム208に対するインターフェイス210を含む。一部の例において、それぞれのトランザクション管理システム208は、それぞれのインターフェイス210と、ネットワーク(例えば、図1のネットワーク110)を介して、プロトコル(例えば、ハイパーテキスト転送プロトコルセキュア(HTTPS))を使用して通信する。一部の例において、各々のインターフェイス210は、それぞれのトランザクション管理システム208と、ブロックチェーンネットワーク層206との間の通信接続を提供する。より詳しくは、インターフェイス210は、ブロックチェーンネットワーク層206のブロックチェーンネットワーク212と通信する。一部の例において、インターフェイス210とブロックチェーンネットワーク層206との間の通信は、リモートプロシージャコール(RPC)を使用して履行される。一部の例において、インターフェイス210は、それぞれのトランザクション管理システム208に対して、ブロックチェーンネットワークノードを「ホストする」。例えば、インターフェイス210は、ブロックチェーンネットワーク212へのアクセスのためのアプリケーションプログラミングインターフェイス(API)を提供する。
本明細書において説明されるように、ブロックチェーンネットワーク212は、不変に情報をブロックチェーン216内に記録する複数のノード214を含むピアツーピアネットワークとして提供される。単一のブロックチェーン216が概略的に図示されるが、ブロックチェーン216の複数個のコピーが提供され、ブロックチェーンネットワーク212にわたって維持される。例えば、各々のノード214が、ブロックチェーンのコピーを記憶する。一部の実現形態において、ブロックチェーン216は、ブロックチェーンネットワークに参加する2つ以上のエンティティの間で遂行されるトランザクションと関連付けられる情報を記憶する。
図3は、ブロックチェーンネットワークにおいての分散型データ記憶体系を実現する例システム300を図示する。システム300は、データをアプリケーション308に提供するための、ブロックチェーンネットワーク、例えば、図2のブロックチェーンネットワーク212を含む。ブロックチェーンネットワーク内の各々のエンティティ、例えばノード214a〜214cは、ブロックチェーン216上で公開されないプライベートデータを記憶するための分散型ハッシュテーブル(DHT)を維持する。例えば、ノード214bは、DHT304bと関連付けられ、ノード214cは、異なるDHT304cと関連付けられる。
一部の実現形態において、データA 302をブロックチェーンネットワーク212において記憶することを望むユーザは、最初に、データA 302を2つ以上の断片、例えば、A1 302a、A2 302b、およびA3 302cにパーティション化する。パーティション化されたデータの各々は、異なるノードに送信され、ノードのDHT内で維持される。例えば、A1 302aは、ノード214aと関連付けられるDHT304a内に記憶され、A2 302bは、ノード214bと関連付けられるDHT304b内に記憶され、A3 302cは、ノード214cと関連付けられるDHT304c内に記憶される。それゆえに、ユーザのデータは、非中央集権型の様式で記憶され、セキュアなままであり、なぜならば、個々の記憶ノードのうちのどれもユーザのデータへのフルアクセス権を有さないからである。ユーザのデータは、下記で、および、図4に関して説明されるように、信頼されるサービスがそれぞれの記憶ノードからの個々のデータパーティションを要求および受信するときに復元されるのみである。
各々のノードは、記憶されたパーティション化されたデータへのパスをブロックチェーン上で公開することができる。例えば、データAが、パーティション化され、ブロックチェーンネットワーク212において記憶された後、ブロックチェーン216において記憶されたブロックチェーントランザクションが、パーティション化されたデータの、各々の部分の位置を記録することができ、位置は、データを記憶するノード、および、ノードと関連付けられるDHT内の内部ファイルパスを含む。一部の実現形態において、ファイルパスは、ユニフォームリソースロケータ(URL)、または、ネットワーク上のデータ位置を識別するための他の文字列である。このブロックチェーントランザクションは、次いで、ブロックチェーン216の最新のブロック内に、そのブロックチェーントランザクションをブロックチェーンネットワーク212内のすべてのノードにビュー可能にするように含められる。データAの記憶することをサマリ化する(summarize)例ブロックチェーントランザクションが、下記のtable 1(表1)において示される。
データA 302を使用するために、サービス310が、アプリケーション308に、パーティション化されたデータをブロックチェーンネットワーク212から集めるように要求する。例えば、アプリケーション308は、ブロックチェーン216において記憶され、ブロックチェーンネットワーク212上で実行する、スマートコントラクトプログラムであり得る。アプリケーション308は、最初に、ブロックチェーン216を探索して、どこにパーティション化されたデータの各々が記憶されたかを突き止めることができ、次いで、データA 302のコピーを取得および生成する。1つの例において、アプリケーション308は、パーティション化されたデータA1 302a、A2 302b、およびA3 302cを連結して、データA 302のコピーを生成することができる。別の例において、アプリケーション308は、パーティション化されたデータに関するサマリ動作を遂行して、データA 302を復元することができる。一部の事例において、サービス310は、データA 302の生成されたコピーをアプリケーション308から受信するが、サービス310は、何らの個々のデータパーティションへもアクセス権を有さない。結果として、このアクセス体系は、個々のノードに関するデータセキュリティおよびデータプライバシーを保護する。1つの例において、各々のノードは、個別の銀行においてのユーザの金融トランザクションを記憶する銀行を表すことができる。サービスは、ユーザに対する住宅担保貸付を、ユーザの過去の金融トランザクションに基づいて決定することを試行する。サービスは、ユーザの集約された金融トランザクション、例えばデータA 302へのアクセス権を有するが、サービスは、任意の個別の銀行においてのユーザの金融トランザクション、例えば、パーティション化されたデータA1 302a、A2 302b、およびA3 302cを調べない。
一部の事例において、データAの記憶することをサマリ化するブロックチェーントランザクションは、データの、各々のパーティションのハッシュを含み得る。アプリケーション308、または、パーティション化されたデータを処理する別のアプリケーションは、これらのハッシュを使用して、各々のパーティションが、それが最初に記憶されて以来変化させられなかったということを検証することができる。データAの記憶することをサマリ化するブロックチェーントランザクションは、さらには、すべてのパーティションを結び付けることにより形成される、データのフルセットのハッシュを含み得るものであり、そのハッシュは、データが、それが元々パーティション化および記憶されて以来変化させられなかったということを検証するために使用され得る。
一部の事例において、アプリケーション308は、ブロックチェーン216に関する動作を記録することができる。例えば、アプリケーション308は、データを要求したサービス310の識別情報、データ取得動作の成功もしくは失敗、動作の時間、または、動作に関わる他の情報を記録することができる。この情報は、個別のデータ項目が取得される毎に記録するためのアクセスログとして役立つことがある。
一部の実現形態において、アプリケーション308がデータを取得することを終え、トランザクションがブロックチェーンネットワーク212により検証されると、記憶するノードの各々は、ブロックチェーンネットワーク212によりサポートされる、指定された額のデジタル通貨の報酬を与えられ得る。この報酬は、ブロックチェーンネットワーク212内のノードが分散型データ記憶体系に参加するための奨励金として役立つことがある。取得されたデータは、次いで、さらなる動作のためにサービス310に返される。
一部の事例において、データに対する要求は、認証を前提とすることがある。例えば、サービス310は、そのサービス310の識別情報、または他の証明書を、データに対するそのサービス310の要求とともに提供することを要されることがある。システムは、ブロックチェーンネットワークにおいて記憶された各々のデータ項目に対する許可を含み得るものであり、サービス310がデータ項目をビューすることの権限を与えられているということを、証明書に基づいて、パーティション化された断片からデータ項目を再構築するより前に検証することがある。一部の実現形態において、(上記でTable 1(表1)において示される)データAの記憶することをサマリ化するブロックチェーントランザクションは、各々のデータパーティションに対する、または、全部のデータ項目に対する許可情報を含み得る。
一部の事例において、データAの記憶することをサマリ化するブロックチェーントランザクションは、サービス310が、記憶されたデータ項目にアクセスする権限をそのサービス310が与えられているということを証明するために正しく解読しなければならない、データ項目に対する暗号化されたハッシュ値を含み得る。例えば、データ項目を記憶したユーザが、そのデータ項目にアクセスするための許可を伴うただ1つのものであることを望む事例において、ハッシュは、ユーザのパブリックキーによって暗号化され、かくして、ユーザのプライベートキーを使用して解読されるのみであり得る。一部の実現形態において、データ項目それ自体は、パーティション化されブロックチェーンネットワークにおいて記憶されるより前に暗号化され、以て、パーティションが再組立てされ、返されると、正しいキーを伴うエンティティのみが内容を解読することを可能とすることがある。
図4は、本出願の実現形態によって実行され得る例プロセス400を図示する。一部の実現形態において、プロセス400は、1つまたは複数のコンピューティングデバイスを使用して実行される、1つまたは複数のコンピュータ実行可能プログラムを使用して遂行され得る。便宜上、プロセス400を、システム、例えば、図3のシステム300により遂行されているように説明することになる。
システムは、最初に、データ項目をブロックチェーンネットワークにおいて記憶するための要求を受信する(402)。例えば、ユーザは、ブロックチェーンネットワーク内の記憶のために銀行トランザクションデータを発信することができる。本明細書において説明される技法を使用してデータを記憶することは、ブロックチェーンネットワークのセキュリティを改善し得るものであり、なぜならば、データは、非中央集権型の様式で記憶され、データ全体を記憶するブロックチェーンネットワーク内のノードはただの1つもないからである。
要求に応答して、システムは、データ項目を受信し、そのデータ項目を複数のデータパーティションに分割する(404)。例えば、システムは、プログラムを使用して、データを等しいサイズのチャンクにパーティション化する、または、基づくデータを、ユーザにより指定されるいくつかのチャンクにパーティション化することができる。一部の事例において、システムは、どのようにデータがパーティション化されたかを記録し、パーティション化方法を、個々のデータパーティションとともに、または、ブロックチェーンの中のエントリ内に記憶することができる。
システムは、次に、各々のデータパーティションをブロックチェーンネットワーク内の異なるノードに割り当て、各々のデータパーティションと関連付けられる情報をブロックチェーンにおいて記憶する(406)。異なるノードは、割り当てられたデータを共有せず、割り当てられたデータを、プライベートで維持される分散型ハッシュテーブル(DHT)内に記憶する。例えば、分散型ハッシュテーブルは、データパーティションへのファイルパス、ノードの識別情報、および、データパーティションの値、または、値のハッシュを記憶することができる。システムは、次いで、各々のデータパーティションと関連付けられる情報をブロックチェーンにおいて記憶する(408)。例えば、システムは、ブロックチェーン上で、各々のデータパーティションへのファイルパスを公開する。結果として、データパーティションの位置は、ブロックチェーンと相互作用する任意のプログラムに対してパブリックとなる。システムは、記憶するノードをランダムな様式で選択して、すべてのデータパーティションへのアクセス権を有し得るノードがただの1つもないということを確実にすることができる。一部の実現形態において、システムは、データの所定の数のパーティションより多くのものを記憶するノードがないように、記憶するノードを選択することができる。結果として、データ項目は、非中央集権型の方式で記憶され、セキュアなままであり、なぜならば、記憶ノードのうちのどれもすべてのデータパーティションへのフルアクセス権を有さないからである。データ項目は、信頼されるサービスがデータパーティションを要求および受信するときに復元されるのみである。
システムは、次いで、記憶されたデータ項目を取得するための要求を受信する(410)。例えば、サードパーティサービスが、ユーザのバンキングトランザクションを調べて、ユーザの信用度を決定するために要求することができる。サービスは、システムによりサポートされるアプリケーションプログラミングインターフェイス(API)を使用して、システムに要求を発信することができる。例えば、要求は、JSONファイルフォーマットの形であり得る。この時点において、データは、パーティション化され、ブロックチェーンネットワークにわたって散在させられる。
パーティション化され、ブロックチェーンネットワーク内の異なるノード上に記憶された、要求されたデータを返すために、システムは、アプリケーション、および、公表されたファイルパスを使用して、各々の記憶されたデータパーティションを、ブロックチェーンネットワーク内の割り当てられるノードから取得する(412)。例えば、アプリケーションは、各々のノードの分散型ハッシュテーブルへのアクセスを認められているスマートコントラクトであり得る。アプリケーションは、指定された命令を遂行して、データをデータパーティションから再構築することができる。一部の事例において、命令は、データが最初にパーティション化されたときにブロックチェーン上に書き込まれる。システムは、次いで、記憶されたデータ項目を、記憶されたデータパーティションから再構築する。例えば、システムは、データパーティションを連結することができ、または、データ値のハッシュを返すことによってなどで、データ値に関する加算を遂行することができる(414)。別の例において、システムは、各々のデータパーティションがデータ項目からのデータの不連続のビットを含むとき、データパーティションをインターレースして、記憶されたデータ項目を再構築することができる。一部の事例において、システムは、さらには、サービスによるデータ要求をブロックチェーン内に記録する。この情報は、記憶するノードを、データパーティションのサイズ、および、記憶域の長さに基づいて補整するために使用され得る。
最後のステップとして、システムは、記憶されたデータ項目を取得するための要求への応答を送信することであって、応答は、再構築されたデータ項目を含む、送信することを行う(416)。例えば、システムは、応答をアプリケーション308に送信することができる。一部の実現形態において、システムは、データパーティション、および、再構築されたデータ項目を、応答を送信する前に監査する。例えば、システムは、データ項目、または、個々のデータパーティションを、ハッシュ値をチェックすることにより監査することができる。
説明される特徴的機能は、デジタル電子回路網の形で、または、コンピュータハードウェア、ファームウェア、ソフトウェアの形で、または、それらの組み合わせの形で実現され得る。装置は、プログラマブルプロセッサによる実行のために、情報担体の形で(例えば、機械可読記憶デバイスの形で)有形に実施される、コンピュータプログラム製品の形で実現され得るものであり、方法ステップは、命令のプログラムを実行して、入力データを基に動作し、出力を生成することにより、説明される実現形態の機能を遂行する、プログラマブルプロセッサにより遂行され得る。説明される特徴的機能は、有利には、データ記憶システム、少なくとも1つの入力デバイス、および、少なくとも1つの出力デバイスから、データおよび命令を受信するために、ならびに、それらのデータ記憶システム、少なくとも1つの入力デバイス、および、少なくとも1つの出力デバイスに、データおよび命令を送信するために結合される少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能である、1つまたは複数のコンピュータプログラムの形で実現され得る。コンピュータプログラムは、直接的または間接的に、所定の活動を遂行する、または、所定の結果をもたらすためにコンピュータにおいて使用され得る、命令のセットである。コンピュータプログラムは、コンパイラ型またはインタプリタ型言語を含む、任意の形式のプログラミング言語の形で書き記され得るものであり、そのコンピュータプログラムは、コンピューティング環境においての使用に適した、スタンドアローンプログラムとして、または、モジュール、コンポーネント、サブルーチン、もしくは別のユニットとしてということを含めて、任意の形式で展開され得る。
命令のプログラムの実行のための適したプロセッサは、例として、汎用および専用の両方のマイクロプロセッサ、ならびに、任意の種類のコンピュータの、唯一のプロセッサ、または、複数個のプロセッサのうちの1つを含む。一般的には、プロセッサは、命令およびデータを、読み出し専用メモリ、またはランダムアクセスメモリ、または両方から受信することになる。コンピュータの要素は、命令を実行するためのプロセッサ、ならびに、命令およびデータを記憶するための1つまたは複数のメモリを含み得る。一般的には、コンピュータは、さらには、データファイルを記憶するための1つもしくは複数の大容量記憶デバイスを含み得る、または、それらの大容量記憶デバイスと通信するように動作可能に結合され得るものであり、そのようなデバイスは、内部ハードディスクおよびリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびに、光学ディスクを含む。コンピュータプログラム命令およびデータを有形に実施するのに適した記憶デバイスは、例として、EPROM、EEPROM、およびフラッシュメモリデバイスなどの半導体メモリデバイス、内部ハードディスクおよびリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびに、CD-ROMおよびDVD-ROMディスクを含む、すべての形式の不揮発性メモリを含む。プロセッサおよびメモリは、特定用途向け集積回路(ASIC)により補完される、または、ASIC内に組み込まれることがある。
ユーザとの相互作用に対する備えを行うために、特徴的機能がコンピュータ上で実現され得るものであり、そのコンピュータは、情報をユーザに表示するための陰極線管(CRT)または液晶ディスプレイ(LCD)モニタなどのディスプレイデバイスと、キーボード、および、マウスまたはトラックボールなどのポインティングデバイスとを有し、それらのキーボードおよびポインティングデバイスにより、ユーザは入力をコンピュータに提供することができる。
特徴的機能は、データサーバなどのバックエンド構成要素を含む、または、アプリケーションサーバもしくはインターネットサーバなどのミドルウェア構成要素を含む、または、グラフィカルユーザインターフェイスもしくはインターネットブラウザを有するクライアントコンピュータなどのフロントエンド構成要素を含む、または、それらの任意の組み合わせである、コンピュータシステムの形で実現され得る。システムの構成要素は、通信ネットワークなどの、任意の形式または媒体のデジタルデータ通信により接続され得る。通信ネットワークの例は、例えば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、ならびに、インターネットを形成するコンピュータおよびネットワークを含む。
コンピュータシステムは、クライアントと、サーバとを含み得る。クライアントおよびサーバは、一般的には、互いから遠隔にあり、典型的には、説明されたものなどのネットワークを通して相互作用する。クライアントおよびサーバの関係性は、それぞれのコンピュータ上で走り、互いとのクライアント-サーバ関係性を有する、コンピュータプログラムによって生起する。
加えて、図において図示される論理フローは、望ましい結果を達成するために、示される個別の順序、または、逐次的な順序を要さない。加えて、他のステップが提供されることがあり、または、ステップが、説明されたフローから除かれることがあり、他の構成要素が、説明されたシステムに追加される、もしくは、説明されたシステムから除去されることがある。よって、他の実現形態が、後に続く特許請求の範囲の範囲内にある。
本出願のいくつかの実現形態を説明した。それでも、様々な修正が、本出願の趣旨および範囲から逸脱することなく行われ得るということが理解されるであろう。よって、他の実現形態が、後に続く特許請求の範囲の範囲内にある。
100 例環境
102 ブロックチェーンネットワーク
106 コンピューティングデバイス、コンピューティングシステム
108 コンピューティングデバイス、コンピューティングシステム
110 ネットワーク
200 例概念アーキテクチャ
202 エンティティ層
204 ホストされるサービス層
206 ブロックチェーンネットワーク層
208 トランザクション管理システム
210 インターフェイス
212 ブロックチェーンネットワーク
214 ノード
214a ノード
214b ノード
214c ノード
216 ブロックチェーン
300 例システム、システム
302 データA
302a A1
302b A2
302c A3
304a DHT
304b DHT
304c DHT
308 アプリケーション
310 サービス
400 例プロセス、プロセス

Claims (20)

  1. ブロックチェーンネットワーク内の分散型データ記憶のためのコンピュータによって実施される方法であって、
    データ項目を前記ブロックチェーンネットワークにおいて記憶するための要求を受信するステップと、
    前記要求の受信に応答して、
    前記データ項目を複数のデータパーティションに分割するステップと、
    各々のデータパーティションを前記ブロックチェーンネットワーク内の異なるノードに割り当てるステップであって、各々のノードは、前記割り当てられたデータパーティションを、プライベートで維持される分散型ハッシュテーブル内に記憶する、ステップと、
    各々のデータパーティションと関連付けられる情報を、前記ブロックチェーンネットワークにより維持されるブロックチェーンにおいて記憶するステップであって、前記情報は、各々のデータパーティションの記憶位置を含む、ステップと
    を含む、コンピュータによって実施される方法。
  2. 前記記憶されたデータ項目を取得するための要求を受信するステップと、
    前記記憶されたデータ項目を取得するための前記要求の受信に応答して、
    各々の記憶されたデータパーティションを、前記割り当てられたノードから、前記ブロックチェーンにおいて記憶された各々のデータパーティションの前記記憶位置を含む前記情報に基づいて取得するステップと、
    前記記憶されたデータ項目を、前記記憶されたデータパーティションから再構築するステップと、
    前記記憶されたデータ項目を取得するための前記要求への応答を送信するステップであって、前記応答は、前記再構築されたデータ項目を含む、ステップと
    をさらに含む、請求項1に記載の方法。
  3. 前記データ項目を、前記記憶されたデータパーティションから復元するために、命令を、前記ブロックチェーンにおいて記憶するステップをさらに含む、請求項1に記載の方法。
  4. 前記記憶されたデータ項目を再構築するステップは、前記取得されたデータパーティションを連結して、前記データ項目のコピーを生成するステップを含む、請求項2に記載の方法。
  5. 前記記憶されたデータ項目を取得するための前記要求の記録を、前記ブロックチェーンにおいて記憶するステップをさらに含む、請求項2に記載の方法。
  6. 各々の記憶されたデータパーティションを取得するステップ、前記記憶されたデータ項目を、前記記憶されたデータパーティションから再構築するステップ、および、取得するための前記要求への前記応答を送信するステップは、前記ブロックチェーンにおいて記憶され、前記ブロックチェーンネットワーク上で実行する、スマートコントラクトにより遂行される、請求項2に記載の方法。
  7. 各々の分散型ハッシュテーブルは、前記データパーティションへのファイルパス、前記データパーティションの値、および、前記関連付けられるノードの識別情報を記憶する、請求項1に記載の方法。
  8. 各々のデータパーティションと関連付けられる情報を前記ブロックチェーンにおいて記憶するステップは、各々のデータパーティションへのパスを前記ブロックチェーン上に記憶するステップを含む、請求項1に記載の方法。
  9. 1つまたは複数のコンピュータに結合され、
    データ項目をブロックチェーンネットワークにおいて記憶するための要求を受信することと、
    前記要求の受信に応答して、
    前記データ項目を複数のデータパーティションに分割すること、
    各々のデータパーティションを前記ブロックチェーンネットワーク内の異なるノードに割り当てることであって、各々のノードは、前記割り当てられたデータパーティションを、プライベートで維持される分散型ハッシュテーブル内に記憶する、割り当てること、および、
    各々のデータパーティションと関連付けられる情報を、前記ブロックチェーンネットワークにより維持されるブロックチェーンにおいて記憶することであって、前記情報は、各々のデータパーティションの記憶位置を含む、記憶することと
    を行うための、前記1つまたは複数のコンピュータにより実行可能な命令によって構成される、非一時的コンピュータ可読記憶媒体。
  10. 前記記憶されたデータ項目を取得するための要求を受信することと、
    前記記憶されたデータ項目を取得するための前記要求の受信に応答して、
    各々の記憶されたデータパーティションを、前記割り当てられるノードから、前記ブロックチェーンにおいて記憶された各々のデータパーティションの前記記憶位置を含む前記情報に基づいて取得すること、
    前記記憶されたデータ項目を、前記記憶されたデータパーティションから再構築すること、および、
    前記記憶されたデータ項目を取得するための前記要求への応答を送信することであって、前記応答は、前記再構築されたデータ項目を含む、送信することと
    のための、前記1つまたは複数のコンピュータにより実行可能な命令によってさらに構成される、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  11. 前記データ項目を、前記記憶されたデータパーティションから復元するために、命令を、前記ブロックチェーンにおいて記憶することのための、前記1つまたは複数のコンピュータにより実行可能な命令によって構成される、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  12. 前記記憶されたデータ項目を再構築することは、前記取得されたデータパーティションを連結して、前記データ項目のコピーを生成することを含む、請求項10に記載の非一時的コンピュータ可読記憶媒体。
  13. 前記記憶されたデータ項目を取得するための前記要求の記録を、前記ブロックチェーンにおいて記憶することのための、前記1つまたは複数のコンピュータにより実行可能な命令によって構成される、請求項10に記載の非一時的コンピュータ可読記憶媒体。
  14. 各々の記憶されたデータパーティションを取得すること、前記記憶されたデータ項目を、前記記憶されたデータパーティションから再構築すること、および、取得するための前記要求への前記応答を送信することは、前記ブロックチェーンにおいて記憶され、前記ブロックチェーンネットワーク上で実行する、スマートコントラクトにより遂行される、請求項10に記載の非一時的コンピュータ可読記憶媒体。
  15. 各々の分散型ハッシュテーブルは、前記データパーティションへのファイルパス、前記データパーティションの値、および、前記関連付けられるノードの識別情報を記憶する、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  16. 各々のデータパーティションと関連付けられる情報を前記ブロックチェーンにおいて記憶することは、各々のデータパーティションへのパスを前記ブロックチェーン上に記憶することを含む、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  17. 1つまたは複数のコンピュータ、ならびに、
    前記1つまたは複数のコンピュータに結合され、
    データ項目をブロックチェーンネットワークにおいて記憶するための要求を受信することと、
    前記要求の受信に応答して、
    前記データ項目を複数のデータパーティションに分割すること、
    各々のデータパーティションを前記ブロックチェーンネットワーク内の異なるノードに割り当てることであって、各々のノードは、前記割り当てられたデータパーティションを、プライベートで維持される分散型ハッシュテーブル内に記憶する、割り当てること、および、
    各々のデータパーティションと関連付けられる情報を、前記ブロックチェーンネットワークにより維持されるブロックチェーンにおいて記憶することであって、前記情報は、各々のデータパーティションの記憶位置を含む、記憶することと
    を行うための、前記1つまたは複数のコンピュータにより実行可能な命令によって構成される、1つまたは複数のコンピュータ可読メモリ
    を備える、システム。
  18. 前記記憶されたデータ項目を取得するための要求を受信することと、
    前記記憶されたデータ項目を取得するための前記要求の受信に応答して、
    各々の記憶されたデータパーティションを、前記割り当てられるノードから、前記ブロックチェーンにおいて記憶された各々のデータパーティションの前記記憶位置を含む前記情報に基づいて取得すること、
    前記記憶されたデータ項目を、前記記憶されたデータパーティションから再構築すること、および、
    前記記憶されたデータ項目を取得するための前記要求への応答を送信することであって、前記応答は、前記再構築されたデータ項目を含む、送信することと
    のための、前記1つまたは複数のコンピュータにより実行可能な命令によってさらに構成される、請求項17に記載のシステム。
  19. 前記データ項目を、前記記憶されたデータパーティションから復元するために、命令を、前記ブロックチェーンにおいて記憶することのための、前記1つまたは複数のコンピュータにより実行可能な命令によって構成される、請求項17に記載のシステム。
  20. 前記記憶されたデータ項目を再構築することは、前記取得されたデータパーティションを連結して、前記データ項目のコピーを生成することを含む、請求項18に記載のシステム。
JP2019540392A 2018-12-19 2018-12-19 共有秘密ベースのブロックチェーン記憶 Active JP7005639B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/122145 WO2019072298A2 (en) 2018-12-19 2018-12-19 STORING BLOCK CHAIN ON THE BASIS OF A SHARED SECRET

Publications (2)

Publication Number Publication Date
JP2020511808A true JP2020511808A (ja) 2020-04-16
JP7005639B2 JP7005639B2 (ja) 2022-01-21

Family

ID=66100131

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019540392A Active JP7005639B2 (ja) 2018-12-19 2018-12-19 共有秘密ベースのブロックチェーン記憶

Country Status (9)

Country Link
EP (1) EP3574630B1 (ja)
JP (1) JP7005639B2 (ja)
KR (1) KR102285798B1 (ja)
CN (1) CN110720204B (ja)
ES (1) ES2863573T3 (ja)
PH (1) PH12019501730A1 (ja)
PL (1) PL3574630T3 (ja)
SG (1) SG11201906827XA (ja)
WO (1) WO2019072298A2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110417889B (zh) * 2019-07-30 2022-02-01 中国联合网络通信集团有限公司 一种基于ipfs的数据传输方法及装置
CN112632569A (zh) * 2019-10-09 2021-04-09 华控清交信息科技(北京)有限公司 数据处理方法、系统、装置、电子设备及可读存储介质
CN111914029A (zh) * 2020-08-06 2020-11-10 平安科技(深圳)有限公司 基于区块链的医疗数据调用方法、装置、电子设备及介质
CN112163036A (zh) * 2020-09-11 2021-01-01 泰康保险集团股份有限公司 区块链信息的构建和查询方法及相关装置
CN112328565A (zh) * 2020-11-06 2021-02-05 中国银联股份有限公司 一种基于区块链的资源共享的方法及装置
CN112416875B (zh) * 2020-11-24 2024-04-09 平安消费金融有限公司 日志管理方法、装置、计算机设备及存储介质
CN112733194A (zh) * 2021-01-26 2021-04-30 长威信息科技发展股份有限公司 一种区块链数据可信流通方法及系统
CN112800450B (zh) * 2021-02-05 2022-02-18 北京众享比特科技有限公司 数据存储方法、系统、装置、设备和存储介质
CN113238996A (zh) * 2021-05-18 2021-08-10 中国信息通信研究院 基于dht的区块链数据归档方法、电子设备及存储介质
CN114157670A (zh) * 2021-11-05 2022-03-08 支付宝(杭州)信息技术有限公司 消息传输方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016206555A (ja) * 2015-04-27 2016-12-08 株式会社東芝 秘匿化装置、復号装置、秘匿化方法および復号方法
US20180101684A1 (en) * 2016-10-06 2018-04-12 Mastercard International Incorporated Method and system for identity and credential protection and verification via blockchain
JP6326173B1 (ja) * 2017-10-31 2018-05-16 株式会社インフォマート データ送受信システム及びデータ送受信方法
JP6403177B1 (ja) * 2017-12-01 2018-10-10 株式会社bitFlyer ブロックチェーン・ネットワークにおいてスマートコントラクトを実行可能にするための方法及び当該ネットワークを構成するためのノード
JP6414269B1 (ja) * 2017-04-19 2018-10-31 富士通株式会社 情報処理装置、情報処理方法および情報処理プログラム
WO2018211290A1 (en) * 2017-05-19 2018-11-22 Sita Information Networking Computing Uk Limited System, device and method for providing passenger or user information
JP2018190227A (ja) * 2017-05-09 2018-11-29 野田 真一 ネットワーク分散型重複排除ファイルストレージシステム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3002034A1 (en) * 2015-10-14 2017-04-20 Cambridge Blockchain, LLC Systems and methods for managing digital identities
CN106372533B (zh) * 2016-09-14 2020-04-21 中国银联股份有限公司 基于区块链技术的内容存储方法
JP7018557B2 (ja) * 2016-12-28 2022-02-14 高歩 中村 Bcn(ブロックチェーンネットワーク)を使用したデータ利用方法、システムおよびそのプログラム
US10560270B2 (en) * 2017-05-03 2020-02-11 International Business Machines Corporation Optimal data storage configuration in a blockchain
CN107809484B (zh) 2017-10-30 2020-08-18 中国联合网络通信集团有限公司 区块链交易信息处理方法及区块链节点
CN107748850A (zh) * 2017-10-30 2018-03-02 北京计算机技术及应用研究所 一种利用区块链保存设备维修作业数据的方法和系统
CN108062202A (zh) * 2017-12-15 2018-05-22 中链科技有限公司 一种文件分块存储方法及系统
CN108959563B (zh) * 2018-07-04 2020-05-15 东北大学 一种容量可扩展区块链查询方法及系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016206555A (ja) * 2015-04-27 2016-12-08 株式会社東芝 秘匿化装置、復号装置、秘匿化方法および復号方法
US20180101684A1 (en) * 2016-10-06 2018-04-12 Mastercard International Incorporated Method and system for identity and credential protection and verification via blockchain
JP6414269B1 (ja) * 2017-04-19 2018-10-31 富士通株式会社 情報処理装置、情報処理方法および情報処理プログラム
JP2018190227A (ja) * 2017-05-09 2018-11-29 野田 真一 ネットワーク分散型重複排除ファイルストレージシステム
WO2018211290A1 (en) * 2017-05-19 2018-11-22 Sita Information Networking Computing Uk Limited System, device and method for providing passenger or user information
JP6326173B1 (ja) * 2017-10-31 2018-05-16 株式会社インフォマート データ送受信システム及びデータ送受信方法
JP6403177B1 (ja) * 2017-12-01 2018-10-10 株式会社bitFlyer ブロックチェーン・ネットワークにおいてスマートコントラクトを実行可能にするための方法及び当該ネットワークを構成するためのノード

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
今田 丈雅 ほか: "ブロックチェーンと秘密分散法を用いた情報ライフサイクル制御", CSS2017 コンピュータセキュリティシンポジウム2017 論文集, vol. 第2017巻,第2号, JPN6020045533, 16 October 2017 (2017-10-16), JP, pages 688 - 695, ISSN: 0004396355 *

Also Published As

Publication number Publication date
SG11201906827XA (en) 2019-08-27
JP7005639B2 (ja) 2022-01-21
ES2863573T3 (es) 2021-10-11
KR20200078419A (ko) 2020-07-01
PL3574630T3 (pl) 2021-08-02
EP3574630A4 (en) 2020-01-01
CN110720204A (zh) 2020-01-21
CN110720204B (zh) 2022-06-03
KR102285798B1 (ko) 2021-08-05
EP3574630B1 (en) 2021-02-03
WO2019072298A3 (en) 2019-10-10
WO2019072298A2 (en) 2019-04-18
EP3574630A2 (en) 2019-12-04
PH12019501730A1 (en) 2020-03-09

Similar Documents

Publication Publication Date Title
JP7005639B2 (ja) 共有秘密ベースのブロックチェーン記憶
US20190278765A1 (en) Shared secret-based blockchain storage
JP6647731B2 (ja) ブロックチェーン機密トランザクションの管理
EP3669280B1 (en) Shared blockchain data storage
US11962577B2 (en) Resource transfer setup and verification
US11238447B2 (en) Blockchain transactions with ring signatures
US20190236562A1 (en) Systems, methods, and apparatuses for implementing document interface and collaboration using quipchain in a cloud based computing environment
KR102237014B1 (ko) 블록체인-기반 인증을 위한 시스템 및 방법
KR102151895B1 (ko) 블록체인 네트워크 내에서 스마트 에셋의 원자적 전송을 위한 플랫폼
US20160344737A1 (en) Uniqueness and auditing of a data resource through an immutable record of transactions in a hash history
EP3808028B1 (en) Services platform for managing a verifiable permissioned ledger in a distributed database management system
TW202023224A (zh) 事件驅動的區塊鏈工作流程處理
KR102151896B1 (ko) 블록체인 네트워크 내에서 스마트 에셋의 원자적 전송을 위한 플랫폼
JP6880255B2 (ja) ブロックチェーン機密トランザクションの管理
US11343101B2 (en) Authentication through verification of an evolving identity credential
US11314885B2 (en) Cryptographic data entry blockchain data structure
US11374755B1 (en) Entangled token structure for blockchain networks
US20230308276A1 (en) Creating non-fungible token shards
US20220399988A1 (en) Linking blockchain operations
Tan et al. Blockchain for Decentralized Know Your Customer (KYC) and Customer Due Diligence (CDD) Pipelines in the Metaverse
US20220067028A1 (en) Trustless operations for blockchain networks
US20230412403A1 (en) Secret smart operations in blockchain

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190920

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201014

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201130

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20210301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210316

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211201

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20211201

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20211214

TRDD Decision of grant or rejection written
C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20211220

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211224

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220105

R150 Certificate of patent or registration of utility model

Ref document number: 7005639

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150