JP2020515961A - ブロックチェーン部分台帳 - Google Patents

ブロックチェーン部分台帳 Download PDF

Info

Publication number
JP2020515961A
JP2020515961A JP2019552899A JP2019552899A JP2020515961A JP 2020515961 A JP2020515961 A JP 2020515961A JP 2019552899 A JP2019552899 A JP 2019552899A JP 2019552899 A JP2019552899 A JP 2019552899A JP 2020515961 A JP2020515961 A JP 2020515961A
Authority
JP
Japan
Prior art keywords
ledger
blockchain
contents
transaction
ledgers
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
JP2019552899A
Other languages
English (en)
Other versions
JP6896879B2 (ja
JP2020515961A5 (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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2020515961A publication Critical patent/JP2020515961A/ja
Publication of JP2020515961A5 publication Critical patent/JP2020515961A5/ja
Application granted granted Critical
Publication of JP6896879B2 publication Critical patent/JP6896879B2/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/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • 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/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • 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
    • 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/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本明細書において開示される例は、2つの参加者間のデータトランザクションの記録を受信することと、データトランザクションの記録に関連付けられた台帳エントリを作成することと、ブロックチェーンに関連付けられた複数の部分台帳のサブセットに台帳エントリを付加することと、ブロックチェーンに関連付けられた複数の部分台帳の各々に関連付けられた目次を更新することとに関する。【選択図】図1

Description

ブロックチェーンは、絶え間なく増大する順序付けられた台帳エントリ(ledger entry)のリストを維持する分散データベースである。各エントリは、タイムスタンプと、以前のブロックへのリンクとを含む。参加者(participants)間でトランザクションが生じると、これらの参加者と、トランザクションの詳細、例えば、データ変換、権限の移転、ログ記録等とを識別する台帳エントリが作成される。
添付図面において、同様の参照符号は、同様のコンポーネント又はブロックを指す。以下の詳細な説明は、図面を参照する。
一例示の分散台帳ブロックチェーンのブロック図である。 一例示の部分台帳システムの図である。 ブロックチェーンの分散部分台帳の作成を提供する方法の一例のフローチャートである。 部分台帳を提供する一例示のコンピューティングデバイスのブロック図である。
いくつかの状況では、トランザクション詳細は、ブロックチェーンストレージに記録することができる。ブロックチェーンは、多くの場合、複数の参加者によって制御される複数のロケーションによって分散及び記憶される。この分散が理由で、ブロックチェーンは、データの改変に対して本質的に耐性がある。台帳エントリ内のデータは、一度記録されると、遡及的に変更することができない。ブロックチェーンデータベースは、ピアツーピアネットワーク及び分散タイムスタンプサーバの使用を通じて、自律的に管理される。それゆえ、ブロックチェーンは、二当事者間のトランザクションを、効率的に、及び、検証可能かつ永久的な方法において記録することができる分散台帳である。
ブロックチェーン技術の実施は、ブロックチェーンコミュニティ内の各参加者が適切な権限及びトランザクションの履歴を検証(validate)することができるように、タイムスタンプ付与される共通台帳の作成を必要とする。ブロックチェーンサイズが各新たな権限者/ノード又は各新たなトランザクションとともに増大するにつれて、共通台帳の多重コピーを維持することには、より多量のデジタルストレージ空間を必要とする可能性がある。それゆえ、ブロックチェーン技術のための分散台帳要件は、データストレージ及び処理帯域幅に対し大きな負担を課す。目次(ToC:table of contents)が台帳それ自体よりも小さいため、トランザクション参加者及び/又は権限者間でToC及び部分台帳ストレージを分散させることによって、台帳ストレージの効率性を大幅に高めることができるとともに、この効率性により、データストレージボトルネックを緩和することができる。また、この手法は、ブロックチェーン技術の実施要件である、連続的な分散台帳バリデーションの能力を維持する。
連続するトランザクションにわたってブロックチェーンのサイズが増大するにつれて、ストレージ要件は、トランザクションのブロックチェーン台帳全体の多数のコピーを維持するという要件が理由で、指数関数的に増大する。完全な複製コピーが、各ロケーションにおいて及び/又は各トランザクション参加者によって記憶されることが意図される。それゆえ、ブロックチェーンに関連付けられたトランザクションへの各新たな参加者は、全ての参加者のストレージ要件に加えられる。
各参加者に、自身のトランザクションに関連付けられた台帳エントリのみを記憶させることによって、これらのストレージ要件は、大幅に低減される。各ストレージロケーションは、ブロックチェーン全体の完全なコピーを維持するのではなく、目次(ToC)を用いて、他のブロックチェーン参加者と、当該他のブロックチェーン参加者のトランザクション台帳エントリについてのストレージロケーションとを追跡することができる。ToCは、各部分台帳ロケーションにおいて記憶された個々のコピーを有することができ、及び/又は、正式コピー(authoritative copy)を1つ以上のロケーションに記憶することができる一方で、他の部分台帳ロケーションは、これらの正式コピーへのリンク及び/又はポインタを維持する。部分分散台帳は静的状態を維持し、どこを及びいずれのノードにおいてToCが規定するかのみが変化するので、ToCは、タイムスタンプ付与が必要な唯一のコンポーネントとすることができる。現行のブロックチェーン分散台帳は、全てのトランザクションの「誰(Who)」及び「何(What)」を覚えておく(remember)。分散部分台帳は、全てのトランザクションの「誰」を覚えておくが、「何」はその参加者に関連するので、「何」のみを記憶する。
図1は、一例示の分散台帳ブロックチェーン100のブロック図である。ブロックチェーン100は、複数の参加者110(A)〜110(E)に関連付けることができる。参加者110(A)〜110(E)は、例えば、ユーザ、ノード、コンピューティングデバイス、プロセス、ストレージデバイス、アプリケーション等を含むことができる。参加者110(A)〜110(E)の各々は、複数の台帳エントリ120(A)〜120(D)のうちの少なくとも1つと、目次(ToC)130とを記憶することができる。各参加者110(A)〜110(E)は、各々、当該参加者に関連した台帳エントリと、完全なブロックチェーンのためのToC130とを記憶する。例えば、ノード110(A)はユーザデバイスを表すことができ、ノード110(B)はプリンタを表すことができる。ノード110(A)からノード110(B)へのプリントジョブを、ノード110(A)及び110(B)において、台帳エントリ120(A)としてブロックチェーン100に記憶することができる。目次130を更新して、ノード110(A)〜110(E)の全てにわたってこの新たな台帳エントリを反映させることができる。後続のトランザクションは、プリンタであるノード110(B)が、台帳エントリ120(A)におけるトランザクションを含むジョブのログ記録を、ノード110(D)によって表される分析プロセスにサブミットすることを含むことができる。また、このより早期のトランザクションに関連したデータの使用を、ブロックチェーン100に含めるとともに、ノード110(B)及び110(D)において記憶された台帳エントリ120(B)に記録することができる。
同様に、ノード110(C)は第2のユーザを表すことができ、ノード110(E)は第2のプリンタを表すことができ、第2のプリントジョブがノード110(C)及び110(E)において記憶された台帳エントリ120(C)としてブロックチェーン100に記録されている。第2のプリンタノード110(E)は、同様のジョブのログ記録を、ノード110(D)によって表される分析プロセスにサブミットすることができ、このログ記録の詳細は、ノード110(D)及び110(E)において台帳エントリ120(D)に記録することができる。ここでもまた、ToC130は、台帳エントリ120(C)及び120(D)に記録されたトランザクションについて、ノード110(A)〜110(E)の全てにわたって更新される。ノード110(A)〜110(E)のうちの任意のものが、ToC130に記憶されたロケーション及び保有者詳細に従って、他のノードから台帳エントリを要求することによって、ブロックチェーン100全体を再構築することができる。ToC130は、ブロックチェーン100全体のために、チェックサム等のエラーチェック及びバリデーション情報を更に含むことができる。
図2は、一例示の部分台帳システム200のブロック図である。システム200は、メモリ215を備えるコンピューティングデバイス210を備えることができる。コンピューティングデバイス210は、例えば、汎用コンピュータ及び/又は専用コンピュータ、サーバ、メインフレーム、デスクトップ、ラップトップ、タブレット、スマートフォン、ゲームコンソール、プリンタ、及び/又は、本明細書において記載される実施態様を提供することに整合した計算能力を提供することが可能である他の任意のシステムを含むことができる。コンピューティングデバイス210は、メモリ215に、トランザクションエンジン220と、台帳エンジン225とを記憶することができる。
システム200のエンジン220、225の各々は、ハードウェア及びプログラミングの任意の組み合わせを含むことで、それぞれのエンジンの機能を実施することができる。本明細書において記載される例では、ハードウェア及びプログラミングのそのような組み合わせは、複数の異なる方法において実施することができる。例えば、エンジンのプログラミングは、非一時的機械可読ストレージ媒体上に記憶されたプロセッサ実行可能命令とすることができ、エンジンのハードウェアは、これらの命令を実行する処理リソースを含むことができる。そのような例では、機械可読ストレージ媒体は、処理リソースによって実行されると、エンジン220、225を実施する命令を記憶することができる。そのような例では、システム200は、命令と、命令を実行する処理リソースとを記憶する機械可読ストレージ媒体を含むことができ、又は、機械可読ストレージ媒体は、システム200及び処理リソースとは別個ではあるが、これらにとってアクセス可能であるものとすることができる。
トランザクションエンジン220は、2つの参加者間のデータトランザクションの記録を受信し、このデータトランザクションの記録に関連付けられた台帳エントリを作成することができる。例えば、ノード110(A)及びノード110(B)は、或るトランザクションに参加することができ、その結果、トランザクション記録230がブロックチェーン100の台帳エントリ120(A)に記憶される。トランザクションエンジン220は、台帳エントリを作成するための妥当な(valid)ブロックチェーンリンクを作成するために、トランザクション記録を、以前の台帳エントリのハッシュとともにパッケージングすること等によって、ブロックチェーン100内に適切に含めるためにトランザクション記録230を処理することができる。
台帳エンジン225は、ブロックチェーンに関連付けられた複数の部分台帳のサブセットに台帳エントリを付加し、このブロックチェーンに関連付けられた複数の部分台帳の各々に関連付けられた目次を更新することができる。例えば、ノード110(A)及び110(B)は、自身のトランザクションについて新たに作成された台帳エントリ120(A)を記憶することができる一方、ブロックチェーン100に関連付けられた他のノードはこれを記憶する場合も記憶しない場合もある。いくつかの実施態様では、トランザクション参加者は、ブロックチェーン100の全てのノードを記憶することを選好する場合がある一方、他の参加者は、自身のトランザクションに関連した台帳エントリのみを記憶する。それゆえ、各ノードは、台帳全体か、又は、ブロックチェーンに関連付けられた台帳エントリのうちの全てよりも少ない台帳エントリを含む部分台帳かのいずれかを維持することができる。
いくつかの実施態様では、複数の部分台帳の各々は、目次のコピーを含むことができる。台帳エンジン225による、ブロックチェーンに関連付けられた複数の部分台帳の各々に関連付けられた目次に対する更新は、複数の部分台帳の各々に、目次の更新されたコピーを配信することを含むことができ、及び/又は、目次を更新するために、複数の部分台帳の各々に、新たな台帳エントリに関連付けられた情報を配信することを含むことができる。いくつかの実施態様では、複数の部分台帳の各々は、目次の正式コピーへのリンクを含む。例えば、ブロックチェーンに関連付けられた第1の参加者ノード(例えば、ノード110(A))は、目次130の正式コピーを維持することができる。いくつかの実施態様では、部分台帳を含む各ノードは、目次のリンク及び/又はコピーを維持することができ、そのコピーが目次の正式コピーに一致することを定期的に検証することができる。例えば、ノードは、正式コピーの提供を要求することができ、及び/又は、チェックサム及び/又はデジタル署名等の検証データを要求することができる。
目次は、複数の部分台帳の各々のロケーション(例えば、デバイス210のメモリ215等のストレージロケーション)のディレクトリ、及び/又は、ブロックチェーンにおける複数の台帳エントリの順序を含むことができる。いくつかの実施態様では、目次は、ブロックチェーンにおける複数の台帳エントリの正しい順序に関連付けられたチェックサムを含むことができる。
図2には1つのコンピューティングデバイス210が示されているものの、システム200の或る特定の実施態様は、2つ以上のコンピューティングデバイス210を含むことができる。コンピューティングデバイスのうちの少なくとも1つは、例えば、少なくとも1つのサーババンク、コンピュータバンク、データセンタ、及び/又は他の配置構成において利用及び構成することができる。例えば、複数のコンピューティングデバイスは共同して、クラウドコンピューティングリソース、グリッドコンピューティングリソース、及び/又は他の任意の分散コンピューティング配置構成を含むことができる。そのような複数のコンピューティングデバイスは、単一の設置箇所に配置することができ、及び/又は、多くの異なる地理的ロケーション間で分散させることができる。
図3は、ブロックチェーンの分散部分台帳の作成を提供する一例示の方法300のフローチャートである。方法300の実行は、コンピューティングデバイス210を参照して以下に記載されるものの、方法300の実行のために他の適したコンポーネントを用いることができる。
方法300は、ステージ305において開始し、コンピューティングデバイス210が複数の部分台帳についての目次(ToC)を作成することができるステージ315に移行することができる。例えば、複数のノード110(A)〜110(E)を、ブロックチェーン100の一部分を記憶する役割を担うものとして識別することができる。コンピューティングデバイス210は、ブロックチェーン100によって記録された各トランザクションについての各台帳エントリを検査し、ノード110(A)〜110(E)のうちのいずれのものが各トランザクションにおいて関与していたのかを判断することができる。図1の例では、台帳エントリ120(A)は参加者ノード110(A)及び110(B)に割り当てることができ、台帳エントリ120(B)は参加者ノード110(B)及び110(D)に割り当てることができ、以下同様である。特定のネットワークにアタッチされたストレージデバイス及び/又はデバイス上メモリ等の、ブロックチェーン100における各参加者についてのストレージロケーションを確立することができる。その後、台帳エントリロケーション及び正しいトランザクション順序を用いて、ToCファイル、データベースエントリ、又は他の記録タイプを確立することができる。
その後、方法300は、コンピューティングデバイス210が複数の部分台帳の各々を関連ストレージデバイスに割り当てることができるステージ320に進行することができる。ブロックチェーン100の台帳は、ノード110(A)〜110(E)によって表される複数のトランザクション参加者間の複数のトランザクションに関する情報を含むことができる。複数のトランザクション参加者の各々は、自身の関連付けられたトランザクションに関連付けられた部分台帳に、関連ストレージデバイスを提供することができる。複数の部分台帳の各々を関連ストレージデバイスに割り当てることは、複数のトランザクションの各々における参加者を識別することを含むことができる。例えば、台帳エントリ120(A)は、トランザクションにおける参加者としてのノード110(A)及び110(C)のストレージロケーションに割り当てることができ、このトランザクションの詳細が台帳エントリ120(A)に記憶されるとともにそれらのストレージロケーションに記憶される。
その後、方法300は、コンピューティングデバイス210が、複数の部分台帳の各々の関連ストレージデバイスに目次を提供することができるステージ325に進行することができる。いくつかの実施態様では、複数の部分台帳の各々は、目次のコピーを含むことができる。目次の提供は、複数の部分台帳の各々に、目次の更新されたコピーを配信することを含むことができ、及び/又は、目次を更新するために、複数の部分台帳の各々に、新たな台帳エントリに関連付けられた情報を配信することを含むことができる。いくつかの実施態様では、複数の部分台帳の各々は、目次の正式コピーへのリンクを含む。例えば、ブロックチェーンに関連付けられた第1の参加者ノード(例えば、ノード110(A))は、目次130の正式コピーを維持することができる。いくつかの実施態様では、部分台帳を含む各ノードは、目次のリンク及び/又はコピーを維持することができ、そのコピーが目次の正式コピーに一致することを定期的に検証することができる。例えば、ノードは、正式コピーの提供を要求することができ、及び/又は、チェックサム及び/又はデジタル署名等の検証データを要求することができる。
目次は、複数の部分台帳の各々のロケーション(例えば、デバイス210のメモリ215等のストレージロケーション)のディレクトリ、及び/又は、ブロックチェーンにおける複数の台帳エントリの順序を含むことができる。いくつかの実施態様では、目次は、ブロックチェーンにおける複数の台帳エントリの正しい順序に関連付けられたチェックサムを含むことができる。
その後、方法300は、コンピューティングデバイス210が、ブロックチェーン台帳に関連付けられたトランザクションに応答して、第1の部分台帳及び第2の部分台帳を更新することができるステージ330に進行することができる。例えば、ノード110(A)及びノード110(B)は、或るトランザクションに参加することができ、その結果、トランザクション記録230がブロックチェーン100の台帳エントリ120(A)に記憶される。トランザクションエンジン220は、台帳エントリを作成するための妥当なブロックチェーンリンクを作成するために、トランザクション記録を、以前の台帳エントリのハッシュとともにパッケージングすること等によって、ブロックチェーン100内に適切に含めるためにトランザクション記録230を処理することができる。
その後、方法300は、コンピューティングデバイス210が、トランザクションに従って、複数の部分台帳の各々の関連付けられたストレージデバイスに記憶された目次を更新することができるステージ335に進行することができる。台帳エンジン225による、ブロックチェーンに関連付けられた複数の部分台帳の各々に関連付けられた目次に対する更新は、複数の部分台帳の各々に、目次の更新されたコピーを配信することを含むことができ、及び/又は、目次を更新するために、複数の部分台帳の各々に、新たな台帳エントリに関連付けられた情報を配信することを含むことができる。いくつかの実施態様では、複数の部分台帳の各々は、目次の正式コピーへのリンクを含む。
その後、方法300は、ステージ350において終了することができる。
図4は、ブロックチェーンの部分台帳を提供する一例示のコンピューティングデバイス400のブロック図である。コンピューティングデバイス400は、プロセッサ410と、非一時的機械可読ストレージ媒体を含むメモリ415とを備えることができる。メモリ415は、データトランザクション記録受信命令432、台帳エントリ作成命令434、台帳エントリ付加命令436、及び目次更新命令438等の複数のプロセッサ実行可能命令を含むことができる。いくつかの実施態様では、命令432、434、436、438は、単一のコンピューティングデバイス400に関連付けることができ、及び/又は、例えば直接接続、バス、又はネットワークを介して、異なるコンピューティングデバイス間で通信可能に結合することができる。
プロセッサ410は、中央処理装置(CPU)、半導体ベースマイクロプロセッサ、プログラマブルコンポーネント、例えば、コンプレックスプログラマブルロジックデバイス(CPLD)、及び/又は、フィールドプログラマブルゲートアレイ(FPGA)、又は機械可読記憶媒体420に記憶された命令の索出及び実行に適した他の任意のハードウェアデバイスを含むことができる。特に、プロセッサ110は、命令432、434、436、438を、フェッチ、復号、及び実行することができる。
実行可能命令432、434、436、438は、機械可読記憶媒体415の任意の部分及び/又はコンポーネントに記憶されるとともに、プロセッサ410によって実行可能であるロジックを含むことができる。機械可読記憶媒体415は、揮発性及び/又は不揮発性の双方のメモリ及びデータ記憶コンポーネントを含むことができる。揮発性コンポーネントは、電力の消失時にデータ値を保持しないコンポーネントである。不揮発性コンポーネントは、電力の消失時にデータを保持するコンポーネントである。
機械可読記憶媒体415は、例えば、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、ハードディスクドライブ、ソリッドステートドライブ、USBフラッシュドライブ、メモリカードリーダを介してアクセスされるメモリカード、関連付けられたフロッピーディスクドライブを介してアクセスされるフロッピーディスク、光学ディスクドライブを介してアクセスされる光学ディスク、適切なテープドライブを介してアクセスされる磁気テープ、及び/又は他のメモリコンポーネント、及び/又は任意の2つ以上のこれらのメモリコンポーネントの組み合わせを含むことができる。加えて、RAMは、例えば、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、及び/又は磁気ランダムアクセスメモリ(MRAM)及び他のそのようなデバイスを含むことができる。ROMは、例えば、プログラマブルリードオンリメモリ(PROM)、消去可能プログラマブルリードオンリメモリ(EPROM)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、及び/又は他の同様のメモリデバイスを含むことができる。
データトランザクション記録受信命令432は、2つの参加者間のデータトランザクションの記録を受信することができる。例えば、ノード110(A)及びノード110(B)は、或るトランザクションに参加することができ、その結果、トランザクション記録230がブロックチェーン100の台帳エントリ120(A)に記憶される。トランザクションエンジン220は、台帳エントリを作成するための妥当なブロックチェーンリンクを作成するために、トランザクション記録を、以前の台帳エントリのハッシュとともにパッケージングすること等によって、ブロックチェーン100内に適切に含めるためにトランザクション記録230を処理することができる。
台帳エントリ作成命令434は、データトランザクションの記録に関連付けられた台帳エントリを作成することができる。例えば、台帳エントリ作成命令434は、台帳エントリ120(A)等の台帳エントリを作成するための妥当なブロックチェーンリンクを作成するために、トランザクション記録を、以前の台帳エントリのハッシュとともにパッケージングすること等によって、ブロックチェーン100内に適切に含めるためにトランザクション記録230を処理することができる。
台帳エントリ付加命令436は、ブロックチェーンに関連付けられた複数の部分台帳のサブセットに台帳エントリを付加することができる。例えば、台帳エントリは、特定の参加者のノードにおける、ブロックチェーンに関連付けられた複数の部分台帳のサブセットに追加することができる。例えば、ノード110(A)及び110(B)は、自身のトランザクションについて新たに作成された台帳エントリ120(A)を記憶することができる一方、ブロックチェーン100に関連付けられた他のノードはこれを記憶する場合も記憶しない場合もある。いくつかの実施態様では、トランザクション参加者は、ブロックチェーン100の全てのノードを記憶することを選好する場合がある一方、他の参加者は、自身のトランザクションに関連した台帳エントリのみを記憶する。それゆえ、各ノードは、台帳全体か、又は、ブロックチェーンに関連付けられた台帳エントリのうちの全てよりも少ない台帳エントリを含む部分台帳かのいずれかを維持することができる。
目次更新命令438は、ブロックチェーンに関連付けられた複数の部分台帳の各々に関連付けられた目次を更新することができる。例えば、いくつかの実施態様では、複数の部分台帳の各々は、目次のコピーを含むことができる。台帳エンジン225による、ブロックチェーンに関連付けられた複数の部分台帳の各々に関連付けられた目次に対する更新は、複数の部分台帳の各々に、目次の更新されたコピーを配信することを含むことができ、及び/又は、目次を更新するために、複数の部分台帳の各々に、新たな台帳エントリに関連付けられた情報を配信することを含むことができる。いくつかの実施態様では、複数の部分台帳の各々は、目次の正式コピーへのリンクを含む。例えば、ブロックチェーンに関連付けられた第1の参加者ノード(例えば、ノード110(A))は、目次130の正式コピーを維持することができる。いくつかの実施態様では、部分台帳を含む各ノードは、目次のリンク及び/又はコピーを維持することができ、そのコピーが目次の正式コピーに一致することを定期的に検証することができる。例えば、ノードは、正式コピーの提供を要求することができ、及び/又は、チェックサム及び/又はデジタル署名等の検証データを要求することができる。
目次は、複数の部分台帳の各々のロケーション(例えば、デバイス210のメモリ215等のストレージロケーション)のディレクトリ、及び/又は、ブロックチェーンにおける複数の台帳エントリの順序を含むことができる。いくつかの実施態様では、目次は、ブロックチェーンにおける複数の台帳エントリの正しい順序に関連付けられたチェックサムを含むことができる。
開示された例は、ドキュメント要素の再位置決めのためのシステム、デバイス、コンピュータ可読記憶媒体、及び方法を含むことができる。説明のために、或る特定の例が、図面に示すコンポーネントを参照して記載されている。一方で、図示されたコンポーネントの機能は、重複している場合があり、より少数の又はより多数の要素及びコンポーネントにおいて存在する場合がある。さらに、図示された要素の機能の全て又は部分は、いくつかの地理的に分散したロケーション間に共存又は分散することができる。その上、開示された例は、種々の環境において実施することができ、図示された例には限定されない。
その上、明細書及び添付の特許請求の範囲において用いられる場合、文脈がそうではないことを示さない限り、単数形「一(a, an)」及び「その(the)」は、複数形も含むことを意図される。加えて、種々の要素を説明するのに第1、第2等の用語が本明細書において用いられる場合があるものの、これらの要素は、これらの用語によって限定されるべきものではない。そうではなく、これらの用語は、或る要素を別の要素から区別するためにのみ用いられる。
さらに、図面に関連して説明される一連の動作は、例であり、限定するものとは意図されない。開示される例の範囲から逸脱することなく、追加の動作若しくはより少数の動作又は動作の組み合わせを用いることができ、又はこれらの動作は変わる場合がある。したがって、本開示は、単に実施態様の可能な例に言及したものであり、説明される例に対して、多数の変形及び変更を行うことができる。全てのそのような変更及び変形は、本開示の範囲内に含まれるとともに、添付の特許請求の範囲によって保護されることを意図される。

Claims (15)

  1. トランザクションエンジンであって、
    2つの参加者間のデータトランザクションの記録を受信し、
    前記データトランザクションの前記記録に関連付けられた台帳エントリを作成する、
    トランザクションエンジンと、
    台帳エンジンであって、
    ブロックチェーンに関連付けられた複数の部分台帳のサブセットに前記台帳エントリを付加し、
    前記ブロックチェーンに関連付けられた前記複数の部分台帳の各々に関連付けられた目次を更新する、
    台帳エンジンと、
    を備える、システム。
  2. 各部分台帳は、複数の台帳エントリを含む、請求項1に記載のシステム。
  3. 前記複数の部分台帳の各々は、前記ブロックチェーンに関連付けられた前記台帳エントリのうちの全てよりも少ない該台帳エントリを含む、請求項2に記載のシステム。
  4. 前記台帳エンジンは、前記データトランザクションにおいて参加者によって記憶された前記複数の部分台帳の前記サブセットに前記台帳エントリを付加する、請求項1に記載のシステム。
  5. 前記目次は、前記複数の部分台帳の各々のロケーションのディレクトリを含む、請求項1に記載のシステム。
  6. 前記目次は、前記ブロックチェーンにおける前記複数の台帳エントリの順序を含む、請求項5に記載のシステム。
  7. 前記目次は、前記ブロックチェーンにおける前記複数の台帳エントリの正しい順序に関連付けられたチェックサムを含む、請求項6に記載のシステム。
  8. 前記複数の部分台帳の各々は、前記目次のコピーを含む、請求項1に記載のシステム。
  9. 前記ブロックチェーンに関連付けられた前記複数の部分台帳の各々に関連付けられた前記目次に対する前記更新は、前記複数の部分台帳の各々に、前記目次の更新されたコピーを配信することを含む、請求項7に記載のシステム。
  10. 前記複数の部分台帳の各々は、前記目次の正式コピーへのポインタを含む、請求項1に記載のシステム。
  11. 前記複数の部分台帳についての目次を作成することと、
    前記複数の部分台帳の各々を関連ストレージデバイスに割り当てることと、
    前記複数の部分台帳の各々の前記関連ストレージデバイスに前記目次を提供することと、
    前記ブロックチェーン台帳に関連付けられたトランザクションに応答して、第1の部分台帳及び第2の部分台帳を更新することと、
    前記トランザクションに従って、前記複数の部分台帳の各々の前記関連付けられたストレージデバイスに記憶された前記目次を更新することと、
    を含む、方法。
  12. 前記ブロックチェーン台帳は、複数のトランザクション参加者間の複数のトランザクションに関する情報を含む、請求項11に記載の方法。
  13. 前記複数の部分台帳の各々を関連ストレージデバイスに割り当てることは、前記複数のトランザクションの各々における前記参加者を識別することを含む、請求項12に記載の方法。
  14. 前記複数のトランザクション参加者の各々は、自身の関連付けられたトランザクションに関連付けられた前記部分台帳に、前記関連ストレージデバイスを提供する、請求項13に記載の方法。
  15. プロセッサによって実行可能な、
    2つの参加者間のデータトランザクションの記録を受信することの命令と、
    前記データトランザクションの前記記録に関連付けられた台帳エントリを作成することの命令と、
    ブロックチェーンに関連付けられた複数の部分台帳のサブセットに前記台帳エントリを付加することの命令と、
    前記ブロックチェーンに関連付けられた前記複数の部分台帳の各々に関連付けられた目次を更新することの命令と、
    を記憶する、非一時的機械可読媒体。
JP2019552899A 2017-04-11 2017-04-11 システム、方法、可読媒体 Active JP6896879B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2017/027010 WO2018190809A1 (en) 2017-04-11 2017-04-11 Blockchain partial ledgers

Publications (3)

Publication Number Publication Date
JP2020515961A true JP2020515961A (ja) 2020-05-28
JP2020515961A5 JP2020515961A5 (ja) 2021-02-12
JP6896879B2 JP6896879B2 (ja) 2021-06-30

Family

ID=63793493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019552899A Active JP6896879B2 (ja) 2017-04-11 2017-04-11 システム、方法、可読媒体

Country Status (7)

Country Link
US (1) US11088825B2 (ja)
EP (1) EP3610440A4 (ja)
JP (1) JP6896879B2 (ja)
KR (1) KR102301257B1 (ja)
CN (1) CN110574061A (ja)
BR (1) BR112019021204A8 (ja)
WO (1) WO2018190809A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023127530A1 (ja) * 2021-12-28 2023-07-06 京セラ株式会社 システム、ノード、及びプログラム

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10862848B2 (en) * 2017-07-28 2020-12-08 Feelette Oy Digital communication system and method indicating pressing time
JP7361711B2 (ja) * 2018-10-22 2023-10-16 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 制御方法、コンテンツ管理システム、及び、プログラム
US11120024B2 (en) * 2018-11-01 2021-09-14 Sap Se Dual-stack architecture that integrates relational database with blockchain
KR20200086962A (ko) 2019-01-10 2020-07-20 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 화상 형성 장치에서 블록체인을 기반한 작업 관리 및 수행
EP3687145A1 (en) * 2019-01-25 2020-07-29 Feelette Oy A digital communication system and method indicating pressing time
CN109981750B (zh) * 2019-03-06 2021-09-17 北京百度网讯科技有限公司 业务流程系统、业务数据处理方法和装置
US11159308B2 (en) * 2019-03-20 2021-10-26 PolySign, Inc. Preventing an erroneous transmission of a copy of a record of data to a distributed ledger system
US11843703B2 (en) 2019-07-17 2023-12-12 Hewlett-Packard Development Company, L.P. Blockchain-based distributed ledgers for image forming apparatuses
US11544014B2 (en) 2021-01-28 2023-01-03 Kyocera Document Solutions Inc. Printing system and device for processing transactions in a distributed ledger
WO2022260500A1 (ko) * 2021-06-11 2022-12-15 삼성전자 주식회사 블록체인 네트워크에서 부분 원장을 가진 전자 장치 및 그의 동작 방법
WO2022260501A1 (ko) * 2021-06-11 2022-12-15 삼성전자 주식회사 블록체인 네트워크에서 부분 원장을 가진 전자 장치 및 그의 동작 방법
WO2023096181A1 (ko) * 2021-11-24 2023-06-01 삼성전자 주식회사 블록체인 네트워크에서 부분 원장을 가진 전자 장치 및 그의 동작 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160292672A1 (en) * 2015-03-31 2016-10-06 Nasdaq, Inc. Systems and methods of blockchain transaction recordation

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10017710A1 (de) * 2000-04-10 2001-10-18 Johannes Schellmann Verfahren zum Erfassen und Verarbeiten von Daten von Geschäftsvorfällen
US7519608B2 (en) * 2004-03-22 2009-04-14 Sliccware Secure virtual data warehousing system and method
US7469241B2 (en) * 2004-11-30 2008-12-23 Oracle International Corporation Efficient data aggregation operations using hash tables
DE102008021933B4 (de) * 2008-05-02 2011-04-07 Secutanta Gmbh Verfahren zur Bestimmung einer Kette von Schlüsseln, Verfahren zur Übertragung einer Teilkette der Schlüssel, Computersystem und Chipkarte I
US9514007B2 (en) * 2013-03-15 2016-12-06 Amazon Technologies, Inc. Database system with database engine and separate distributed storage service
US20140279384A1 (en) 2013-03-15 2014-09-18 Sap Ag Monitoring financial risks using a quantity ledger
US9268806B1 (en) * 2013-07-26 2016-02-23 Google Inc. Efficient reference counting in content addressable storage
US9830593B2 (en) * 2014-04-26 2017-11-28 Ss8 Networks, Inc. Cryptographic currency user directory data and enhanced peer-verification ledger synthesis through multi-modal cryptographic key-address mapping
US9967334B2 (en) * 2015-03-02 2018-05-08 Dell Products Lp Computing device configuration and management using a secure decentralized transaction ledger
US11023968B2 (en) 2015-03-05 2021-06-01 Goldman Sachs & Co. LLC Systems and methods for updating a distributed ledger based on partial validations of transactions
US20160321435A1 (en) * 2015-05-01 2016-11-03 Monegraph, Inc. Managing digital content via block chain registers
US10812274B2 (en) 2015-05-07 2020-10-20 Blockstream Corporation Transferring ledger assets between blockchains via pegged sidechains
US9934264B2 (en) * 2015-06-02 2018-04-03 Netapp, Inc. Technique for reducing metadata stored in a memory of a node
GB201511964D0 (en) 2015-07-08 2015-08-19 Barclays Bank Plc Secure digital data operations
GB201511963D0 (en) 2015-07-08 2015-08-19 Barclays Bank Plc Secure digital data operations
US10402792B2 (en) * 2015-08-13 2019-09-03 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
US10230756B2 (en) * 2015-11-25 2019-03-12 International Business Machines Corporation Resisting replay attacks efficiently in a permissioned and privacy-preserving blockchain network
US10713654B2 (en) * 2016-01-21 2020-07-14 International Business Machines Corporation Enterprise blockchains and transactional systems
US20170236120A1 (en) * 2016-02-11 2017-08-17 Oracle International Corporation Accountability and Trust in Distributed Ledger Systems
US20170236123A1 (en) * 2016-02-16 2017-08-17 Blockstack Inc. Decentralized processing of global naming systems
KR101701131B1 (ko) 2016-04-28 2017-02-13 주식회사 라피 이종간 블록체인 연결을 이용한 데이터 기록/검증 방법 및 시스템
KR101784219B1 (ko) 2016-06-15 2017-10-12 주식회사 코인플러그 블록체인을 기반으로 하는 금융기관 제증명서류 위변조 검증시스템 및 방법
US10282558B2 (en) * 2016-09-02 2019-05-07 The Toronto-Dominion Bank System and method for maintaining a segregated database in a multiple distributed ledger system
US10339014B2 (en) * 2016-09-28 2019-07-02 Mcafee, Llc Query optimized distributed ledger system
US10387684B2 (en) * 2016-12-09 2019-08-20 International Business Machines Corporation Interlocked blockchains to increase blockchain security

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160292672A1 (en) * 2015-03-31 2016-10-06 Nasdaq, Inc. Systems and methods of blockchain transaction recordation
CN107615317A (zh) * 2015-03-31 2018-01-19 纳斯达克公司 区块链交易记录的系统和方法
JP2018515833A (ja) * 2015-03-31 2018-06-14 ナスダック, インコーポレイテッドNasdaq, Inc. ブロックチェーン取引記録のシステムおよび方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023127530A1 (ja) * 2021-12-28 2023-07-06 京セラ株式会社 システム、ノード、及びプログラム

Also Published As

Publication number Publication date
KR102301257B1 (ko) 2021-09-10
US11088825B2 (en) 2021-08-10
BR112019021204A8 (pt) 2023-04-18
EP3610440A1 (en) 2020-02-19
CN110574061A (zh) 2019-12-13
KR20190122843A (ko) 2019-10-30
US20210091924A1 (en) 2021-03-25
JP6896879B2 (ja) 2021-06-30
WO2018190809A1 (en) 2018-10-18
BR112019021204A2 (pt) 2020-04-28
EP3610440A4 (en) 2020-12-02

Similar Documents

Publication Publication Date Title
JP2020515961A (ja) ブロックチェーン部分台帳
US11095451B2 (en) Optimal data storage configuration in a blockchain
US11074775B2 (en) Blockchain-based anonymized cryptologic voting
KR102332031B1 (ko) 블록체인-기반 디지털 인증서를 구현하기 위한 시스템 및 방법
CN102170440B (zh) 适用于存储云间数据安全迁移的方法
JP7025566B2 (ja) 許可型ブロックチェーンネットワークのための、誤り訂正コードに基づくブロックチェーンデータ記憶
JP2021527274A (ja) ブロックチェーンの分散アクセス、記憶、及び転送
CN108200208B (zh) 基于云计算的物流区块链共识算法
JP7005639B2 (ja) 共有秘密ベースのブロックチェーン記憶
JP7047133B2 (ja) 符号化ブロックチェーンデータのインデックス化および復元
US20130290361A1 (en) Multi-geography cloud storage
JP7434480B2 (ja) 暗号学的に保護された分散データ管理のためのデータベース中心のコンピュータ・ネットワーク・システムおよびコンピュータ実装方法
JP2022504348A (ja) ブロックチェーン・リソースを格納するブロックチェーン通知ボード
KR20200105999A (ko) 디지털 마크를 생성하기 위한 시스템 및 방법
US10671709B2 (en) Data isolation in distributed hash chains
US11138188B2 (en) Performance optimization
KR101428649B1 (ko) 맵 리듀스 기반의 대용량 개인정보 암호화 시스템 및 그의 동작 방법
CN113542405A (zh) 基于区块链的网络通信系统、方法、设备及存储介质
CN109241057A (zh) 一种用于分布式系统的数字id生成方法
CN108280355A (zh) 一种数据脱敏方法及装置
CN114579585A (zh) 区块链选择性世界状态数据库
US20230214404A1 (en) Computer-implemented method for storing data using a distributed transaction database, computer program product, and network
CN117034370B (zh) 基于区块链网络的数据处理方法及相关设备
CN107395745A (zh) 一种分布式存储系统数据分散存储实现方法
CN110209666B (zh) 一种数据存储方法及终端设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190925

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201006

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20201224

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20210401

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210601

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210609

R150 Certificate of patent or registration of utility model

Ref document number: 6896879

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150