(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-09
(45)【発行日】2024-04-17
(54)【発明の名称】関連する子ブロックチェーンを用いたブロックチェーンの実用性向上のためのシステムおよび方法
(51)【国際特許分類】
G06F 21/64 20130101AFI20240410BHJP
G06F 16/182 20190101ALI20240410BHJP
G06F 16/27 20190101ALI20240410BHJP
【FI】
G06F21/64
G06F16/182
G06F16/27
(21)【出願番号】P 2022151293
(22)【出願日】2022-09-22
(62)【分割の表示】P 2019555806の分割
【原出願日】2018-07-04
【審査請求日】2022-09-22
(73)【特許権者】
【識別番号】517449213
【氏名又は名称】ストールマン ジェフ
(74)【代理人】
【識別番号】100105131
【氏名又は名称】井上 満
(72)【発明者】
【氏名】ストールマン ジェフ
【審査官】岸野 徹
(56)【参考文献】
【文献】米国特許出願公開第2018/0027229(US,A1)
【文献】国際公開第2017/192837(WO,A1)
【文献】国際公開第2018/015177(WO,A1)
【文献】特表2019-521450(JP,A)
【文献】特開2018-049428(JP,A)
【文献】山崎重一郎,FinTech中核技術「ブロックチェーン」完全解説,FinTech革命,日本,日経BP社,2016年01月27日,pp.142-153
【文献】ブロックチェーンビジネス研究会,複数のブロックチェーン間で取引する方法,60分でわかる!ブロックチェーン最前線 初版,第1版,株式会社技術評論社 片岡 巌,2018年06月08日,pp.58-61, 66-67
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/64
G06F 16/182
G06F 16/27
(57)【特許請求の範囲】
【請求項1】
少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューターに実装された方法において、前記方法は、以下のaからjの方法段階を含む方法。
a.複数のエージェント計算装置のうちの少なくとも1つにより計算機メモリに規則を格納する方法段階。
b.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って第1のブロックチェーンを監視する方法段階。
c.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って第2のブロックチェーンを選択または生成する方法段階。
d.前記複数のエージェント計算装置のうちの少なくとも1つにより前記第1のブロックチェーン内にすべてのトランザクションの現在状態を格納する方法段階。
e.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って前記格納されたトランザクションの少なくとも1つの組を選択する方法段階。
f.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って前記選択された前記第1のブロックチェーン内のトランザクションの少なくとも1つの組のそれぞれの最終状態を計算する方法段階。
g.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って前記計算された最終状態を格納する方法段階。
h.前記第1のブロックチェーン内のトランザクションの少なくとも1つの組に関連するすべてのトランザクションを処理する方法段階であって、前記処理する方法段階は方法段階A(iからiv),B(iからiv),C(iからvi)及びD(iからv)のうち少なくとも1つを含む。
A(i)前記規則に基づいて前記格納された最終状態から少なくとも1つの最終状態を移動する方法段階。
A(ii)前記複数のエージェント計算装置のうちの少なくとも1つによりすべての移動されなかった最終状態である「残留最終状態」を格納する方法段階。
A(iii)前記複数のエージェント計算装置のうちの少なくとも1つにより前記残留最終状態に関係のあるトランザクションの少なくとも1つの組を生成する方法段階。
A(iv)前記第2のブロックチェーンにより前記残留最終状態に関係のある前記トランザクションの少なくとも1つの組を前記第2のブロックチェーンに付加する方法段階。
B(i)前記複数のエージェント計算装置のうちの少なくとも1つによりトランザクションの格納された組の前記最終状態および前記規則に基づいてトランザクションの前記格納された組からトランザクションの少なくとも1つの組を識別する方法段階。
B(ii)前記複数のエージェント計算装置のうちの少なくとも1つによりトランザクションの前記格納された組の前記最終状態および前記規則に基づいてトランザクションの前記格納された組から前記識別されたトランザクションの少なくとも1つの組を移動する方法段階。
B(iii)前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従ってすべての移動されなかったトランザクションである「残留トランザクション」に関係のあるトランザクションの少なくとも1つの組を生成する方法段階。
B(iv)前記第2のブロックチェーンにより前記規則に従って前記第2のブロックチェーンに前記残留トランザクションに関係のある前記トランザクションの少なくとも1つの組を付加する方法段階。
C(i)前記複数のエージェント計算装置のうちの少なくとも1つによりトランザクションの前記格納された組の前記最終状態および前記規則に基づいてトランザクションの前記格納された組からトランザクションの少なくとも1つの組を識別する方法段階。
C(ii)前記複数のエージェント計算装置のうちの少なくとも1つによりトランザクションの前記格納された組の前記最終状態および前記規則に基づいてトランザクションの前記格納された組から前記識別されたトランザクションの少なくとも1つの組を移動する方法段階(ここで、移動したトランザクションを「移動トランザクション」と呼ぶ。)。
C(iii)前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って、前記移動されたトランザクションの移動を無効にするトランザクションを含む少なくとも1つの反トランザクションを生成する方法段階であって、前記反トランザクションは
a.前記規則に従って少なくとも1つの前記移動トランザクションの各フィールドにおけるデータ値を評価する方法段階と、
b.前記規則に従って前記移動トランザクション内部の情報を補償するために少なくとも1つの反トランザクションを生成する方法段階
によって生成される、該方法段階。
C(iv)前記複数のエージェント計算装置のうちの少なくとも1つにより前記移動トランザクションに関係のあるトランザクションの少なくとも1つの組を生成する方法段階。
C(v)前記第2のブロックチェーンにより結合トランザクションに関係のある前記トランザクションの少なくとも1つの組を前記第2のブロックチェーンに付加する方法段階。
C(vi)前記複数のエージェント計算装置のうちの少なくとも1つにより前記少なくとも1つの反トランザクションを前記第1のブロックチェーンに付加する方法段階。
D(i)前記複数のエージェント計算装置のうちの少なくとも1つによりトランザクションの前記格納された組の前記最終状態および前記規則に基づいてトランザクションの前記格納された組からトランザクションの少なくとも1つの組を識別する方法段階。
D(ii)前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に基づいて前記識別されたトランザクションの組内の少なくとも1つの選択されたフィールド内の値を代替値で置換する方法段階(ここで、この方法段階で作られたトランザクションを「修正トランザクション」と呼ぶ。)。
D(iii)前記複数のエージェント計算装置のうちの少なくとも1つにより前記修正トランザクションをすべての修正トランザクションでないトランザクションと結合する方法段階(ここで、この方法段階で作られたトランザクションを「合併トランザクション」と呼ぶ。)。
D(iv).前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って前記合併トランザクションに基づいてトランザクションの少なくとも1つの組を生成する方法段階。
D(v)前記第2のブロックチェーンにより前記規則に従って前記合併トランザクションを前記第2のブロックチェーンに付加する方法段階。
i.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って、前記最終状態の計算の後に、前記第2のブロックチェーンへ再移動されるべきトランザクションとして後トランザクションを受信する方法段階。
j.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って前記後トランザクションを前記第2のブロックチェーンへ再移動させる方法段階。
【請求項2】
少なくとも1つのアカウントを識別する前記規則は、
i.識別されたアカウントの最終状態が0である、
ii.アカウント処理が要求された識別されたアカウントの所有者
のうちの少なくとも1つである、請求項1に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューターに実装された方法。
【請求項3】
方法段階Dで識別されるように、フィールドを選択する前記規則は、
i.アカウント所有者の識別子、
ii.資産の種類、
iii.資産の量、
iv.トランザクションの種類、
v.前記トランザクションが少なくとも1つのエンティティに遡ることを可能にする識別子、
のうちの少なくとも1つである、請求項1に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューターに実装された方法。
【請求項4】
前記複数のエージェント計算装置のうち少なくとも2つは単体である、請求項1に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューターに実装された方法。
【請求項5】
前記第1のブロックチェーン内の全てのトランザクションは、選択される、請求項1に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューターに実装された方法。
【請求項6】
前記第1のブロックチェーンを保管する方法段階をさらに含む、請求項1に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューターに実装された方法。
【請求項7】
前記第2のブロックチェーンは、前記第1のブロックチェーンが用いるブロックチェーンのポリシー、手順、フォーマットまたはスキーマとは異なるブロックチェーンのポリシー、手順、フォーマットまたはスキーマを用いる、請求項1に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューターに実装された方法。
【請求項8】
前記第1のブロックチェーン内の計算された最終状態またはトランザクションを選択する前記規則は、資産の種類、トランザクション日の範囲、アカウント所有者、トランザクションの種類、量、権限および産業の種類のうちの少なくとも1つを含む、請求項1に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューターに実装された方法。
【請求項9】
a.第1のブロックチェーンを格納し、機能する、第1の複数のコンピューター装置と、
b.第2のブロックチェーンを格納し、機能する、第2の複数のコンピューター装置と、
c.少なくとも1つ
のエージェント計算装置と、
を備える、少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューター装置
であって、前記少なくとも1つのエージェント計算装置が、
i.複数のエージェント計算装置のうちの少なくとも1つにより計算機メモリに規則を格納する方法段階
と、
ii.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って第1のブロックチェーンを監視する方法段階
と、
iii.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って第2のブロックチェーンを選択または生成する方法段階と、
iv.前記複数のエージェント計算装置のうちの少なくとも1つにより前記第1のブロックチェーン内にすべてのトランザクションの現在状態を格納する方法段階
と、
v.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って前記格納されたトランザクションの少なくとも1つの組を選択する方法段階
と、
vi.複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って前記選択された前記第1のブロックチェーン内のトランザクションの少なくとも1つの組のそれぞれの最終状態を計算する方法段階
と、
vii.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って前記計算された最終状態を格納する方法段階
と、
viii.前記第1のブロックチェーン内のトランザクションの少なくとも1つの組に関連するすべてのトランザクションを処理する方法段階であって、前記処理する方法段階は
以下の方法段階A(iからiv),B(iからiv),C(iからvi),D(iからv)のうち少なくとも1つを含む
、該方法段階と、
A(i)前記規則に基づいて前記格納された最終状態から少なくとも1つの最終状態を移動する方法段階
と、
A(ii)前記複数のエージェント計算装置のうちの少なくとも1つによりすべての移動されなかった最終状態である「残留最終状態」を格納する方法段階
、
A(iii)前記複数のエージェント計算装置のうちの少なくとも1つにより前記残留最終状態に関係のあるトランザクションの少なくとも1つの組を生成する方法段階
、及び、
A(iv)前記第2のブロックチェーンにより前記残留最終状態に関係のある前記トランザクションの少なくとも1つの組を前記第2のブロックチェーンに付加する方法段階と、
B(i)前記複数のエージェント計算装置のうちの少なくとも1つによりトランザクションの格納された組の前記最終状態および前記規則に基づいてトランザクションの前記格納された組からトランザクションの少なくとも1つの組を識別する方法段階
、
B(ii)前記複数のエージェント計算装置のうちの少なくとも1つによりトランザクションの前記格納された組の前記最終状態および前記規則に基づいてトランザクションの前記格納された組から前記識別されたトランザクションの少なくとも1つの組を移動する方法段階
、
B(iii)前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従ってすべての移動されなかったトランザクションである「残留トランザクション」に関係のあるトランザクションの少なくとも1つの組を生成する方法段階
、及び、
B(iv)前記第2のブロックチェーンにより前記規則に従って前記第2のブロックチェーンに前記残留トランザクションに関係のある前記トランザクションの少なくとも1つの組を付加する方法段階
と、
C(i)前記複数のエージェント計算装置のうちの少なくとも1つによりトランザクションの前記格納された組の前記最終状態および前記規則に基づいてトランザクションの前記格納された組からトランザクションの少なくとも1つの組を識別する方法段階。
C(ii)前記複数のエージェント計算装置のうちの少なくとも1つによりトランザクションの前記格納された組の前記最終状態および前記規則に基づいてトランザクションの前記格納された組から前記識別されたトランザクションの少なくとも1つの組を移動する方法段階(ここで、移動したトランザクションを「移動トランザクション」と呼ぶ。)。
C(iii)前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って、前記移動されたトランザクションの移動を無効にするトランザクションを含む少なくとも1つの反トランザクションを生成する方法段階であって、前記反トランザクションは
a.前記規則に従って少なくとも1つの前記移動トランザクションの各フィールドにおけるデータ値を評価する方法段階と、
b.前記規則に従って前記移動トランザクション内部の情報を補償するために少なくとも1つの反トランザクションを生成する方法段階
によって生成される、該方法段階。
C(iv)前記複数のエージェント計算装置のうちの少なくとも1つにより結合トランザクションに関係のあるトランザクションの少なくとも1つの組を生成する方法段階。
C(v)前記第2のブロックチェーンにより前記残留トランザクションに関係のある前記トランザクションの少なくとも1つの組を前記第2のブロックチェーンに付加する方法段階。
C(vi)前記複数のエージェント計算装置のうちの少なくとも1つにより前記少なくとも1つの反トランザクションを前記第1のブロックチェーンに付加する方法段階
と、
D(i)前記複数のエージェント計算装置のうちの少なくとも1つによりトランザクションの前記格納された組の前記最終状態および前記規則に基づいてトランザクションの前記格納された組からトランザクションの少なくとも1つの組を識別する方法段階。
D(ii)前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に基づいて前記識別されたトランザクションの組内の少なくとも1つの選択されたフィールド内の値を代替値で置換する方法段階(ここで、この方法段階で作られたトランザクションを「修正トランザクション」と呼ぶ。)。
D(iii)前記複数のエージェント計算装置のうちの少なくとも1つにより前記修正トランザクションをすべての修正トランザクションでないトランザクションと結合する方法段階(ここで、この方法段階で作られたトランザクションを「合併トランザクション」と呼ぶ。)。
D(iv)前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って前記合併トランザクションに基づいてトランザクションの少なくとも1つの組を生成する方法段階。
D(v)前記第2のブロックチェーンにより前記規則に従って前記合併トランザクションを前記第2のブロックチェーンに付加する方法段階。
ix.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って、前記最終状態の計算の後に、前記第2のブロックチェーンへ再移動させられるべきトランザクションとして後トランザクションを受信する方法段階
と、
x.前記複数のエージェント計算装置のうちの少なくとも1つにより前記規則に従って前記後トランザクションを前記第2のブロックチェーンへ再移動させる方法段階
のための変換プロトコルの実行に適する、少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューター装置。
【請求項10】
少なくとも1つのアカウントを識別する前記規則は、
i.識別されたアカウントの最終状態が0である、
ii.アカウント処理が要求された識別されたアカウントの所有者
のうちの少なくとも1つである、請求項9に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューター装置。
【請求項11】
方法段階Dで識別されるように、フィールドを選択する前記規則は、
i.アカウント所有者の識別子、
ii.資産の種類、
iii.資産の量、
iv.トランザクションの種類、
v.前記トランザクションが少なくとも1つのエンティティに遡ることを可能にする識別子、
のうちの少なくとも1つである、請求項9に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューター装置。
【請求項12】
前記第1のブロックチェーン内の全てのトランザクションは選択トランザクションである、請求項9に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューター装置。
【請求項13】
前記第1のブロックチェーンを保管する方法段階をさらに含む、請求項9に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューター装置。
【請求項14】
前記第1のブロックチェーン内の1つまたは複数のブロックを参照する少なくとも1つの機械可読リンクを生成する方法段階と、
前記少なくとも1つの第1のブロックチェーンの少なくとも1つの以前のブロックと関連付けられた機械可読リンクを含む、前記少なくとも1つの第2のブロックチェーンに適合した少なくとも1つのトランザクションの新しいブロックを第1の組のトランザクションとして追加する方法段階と、
前記少なくとも1つの機械可読リンクを、前記第2のブロックチェーンに付加された前記第1の組のトランザクションの少なくとも1つに追加する方法段階と、
をさらに含む、請求項9に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューター装置。
【請求項15】
前記第2のブロックチェーンは、新たなブロックチェーンである、請求項9に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューター装置。
【請求項16】
前記第2のブロックチェーンは、前記第1のブロックチェーンが用いるブロックチェーンのポリシー又は手順とは異なるブロックチェーンのポリシー又は手順を用いる、請求項9に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューター装置。
【請求項17】
前記第2のブロックチェーンは、前記第1のブロックチェーンが用いる動作プロトコルとは異なる動作プロトコルを用いる、請求項9に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューター装置。
【請求項18】
前記第1の複数の
コンピューター装置および前記第2の複数の
コンピューター装置は単体である、請求項9に記載の少なくとも1つの情報技術ブロックチェーンの実用性を向上させるコンピューター装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般的に情報技術の分野に関し、特にブロックチェーン技術に関する。より具体的には、本発明は、ブロックチェーンの機能および構造、ならびに、前身または「親」ブロックチェーンの「最終の」状態を用いて開始する1つまたは複数の新たな「子」ブロックチェーンを系統的に作成し、現在機能中のブロックチェーンを縮小することにより、ブロックチェーンの実用性を向上させる方法およびシステムに関する。これらの新たな子ブロックチェーンは、その親ブロックチェーンと異なる範囲、方針および/または手順を用いて機能してもよい。その後、これらの「親」ブロックチェーンを保管することにより、ブロックチェーン元帳全体の全履歴の保全性を保つことができる。
【背景技術】
【0002】
ブロックチェーン・ソリューションの目的の1つは、システムに記録された各トランザクションの完全な履歴を包含した、稼働中のトランザクション元帳を維持することである。ブロックチェーンの当初の設計の特徴であり、多くが現在実行されている通り、ブロックチェーンは、一度だけ書き込み可能な記録であり、改変されず付加される目的のみに設計されている。したがって、ブロックチェーンにブロックが追加されるにつれて、ブロックチェーンの大きさ、あるいはブロックチェーンを記憶するために必要なメモリは大きくなり続ける。最終的に、一部のブロックチェーンが大きくなり過ぎ、その大きさおよび必要メモリが、利便性を阻害する可能性がある。
【0003】
さらに、ブロックチェーンの元帳が経時的に大きくなるにつれ、その大きさにより、基礎となる情報技術システムに負荷がかかる。第一に、大きなブロックチェーンは、クエリの実行に時間を要する可能性がある。第二に、「採掘者」を利用して、ブロックチェーンに追加される新規ブロックの保全性を検証するシステムでは、サイズが大きく、拡大を続けるブロックチェーンをシステムに記憶するだけでも、採掘者のシステムの性能に、追加費用あるいは複雑化といった負担をかける可能性がある。さらに、新規の採掘者にとっては、一致計算で用いるブロックチェーンの記録全体を立ち上げる行為も、扱いにくく厄介な作業となる可能性がある。
【0004】
ブロックチェーン技術は新しいため、大部分のブロックチェーンはまだ比較的小さい。しかしこれらは、使用に伴い追加のトランザクションおよびブロックを記録するにつれて成長し続ける。暗号通貨のような永続的な市場では、このようなブロックチェーンの継続的成長により、最終的に、その機能が許容できない程度まで低下したり、データベースを局所的に保存する採掘者などの保存費用が手に負えない範囲まで上昇したりする可能性がある。これまで、この費用と複雑化についての差し迫った問題を解決する取り組みは行われていない。したがって、この問題を革新的に解決し、このような新しいシステムを提供する機運が熟したと言える。
【0005】
ところで、ブロックチェーン技術の発展に伴い、ブロックチェーンの実行および機能方
法を変えることが有益となる可能性がある。例えば、検証技術(例えば採掘)を変更して、ブロックチェーンの機能中の様々な段階において処理能力を向上させることが有益となりうる。これは、費用を削減するため、あるいは共通の手順を1つまたは複数の他のブロックチェーンとの間で活用するために行うことができる。もう1つ有益となりうる点として、新規のブロックチェーンは、元のまたは親ブロックチェーンと異なる方針を実行することができる。この異なる方針は、新しい範囲、ブロック構造、またはブロックサイズに関係するものであってもよい。これを既存のブロックチェーンで行うのは難しいが、本開示の方法を用いて新規の子ブロックチェーンを生成することにより容易に行うことができる。
【0006】
同様に、別々に機能する2つのブロックチェーンを相互機能できるようにすることが有益となる可能性がある。例えば、物流業界では、様々な産業で開発された複数のサプライチェーン保全ブロックチェーンを、単一のブロックチェーン・システムに統合できれば、全ての当事者において著しい費用低減が見込まれる可能性がある。異なる産業それぞれのブロックチェーンの最終状態(例えば、これまでのチェーントランザクション記録に含まれた全ての鍵の最新値の直近の状態)を結合させることで、1組の方針に基づき機能され、1つのユーザインターフェースを持つ、1つの新たな共通ブロックチェーンを生成することにより、物流会社は、1つのシステムを支援するだけで、多様な顧客を支援できると思われる。
【0007】
あるいは、2種類以上のトランザクションを異なるブロックチェーンに分離することが有益となる可能性がある。例えば、もし一方の一連のトランザクションが暗号通貨を追跡しており、もう片方の一連のトランザクションが芸術作品の来歴を追跡している場合、この2つを分離することにより、各ブロックチェーンの成長速度を緩めることができる。そして、この2種類のトランザクション間には実質的な関連性がないため、これらを分離することによって価値が損なわれることはない。
【0008】
本件発明は、このような問題および課題を標的としている。本件発明のシステムおよび方法は、直近のブロックチェーンを見返し、元帳で追跡された資産の「最終の」状態を生成する。次に、このシステムは、この最終状態に基づき、新規の子または関連ブロックチェーンを生成する。さらに、このシステムは、新規のブロックチェーンと親ブロックチェーンの間に適切な紐づけを生成し、結合したブロックチェーンの元帳全体の完全な履歴保全性を確保する。
【0009】
この問題に対処するために設計されたシステムの例がいくつかある。米国特許出願第15/150,032号のバックらによる「連動された側鎖を介したブロックチェーン間の元帳資産の移転(Transferring Ledger Assets Between Blockchains Via Pegged Sidechains)」(「‘032出願」または「バックら」)に1つの方法およびシステムが開示されている。’032出願は、1つの資産を親鎖から側鎖へ移転させる工程を記載している。開示のシステムおよび方法は、詳しくは、親鎖資産に関連付けられたトランザクションの簡易検証に関する。特に、‘032出願に記載のシステムおよび方法は、1つの親鎖を検証することにより、対応する側鎖資産の生成を可能にすることに限定されていると見受けられる。’032出願は、1つまたは複数の完全に新しい子ブロックチェーンを生成することにより、関係する親ブロックチェーンの保管を可能にすることを開示も示唆もしていない。
【0010】
米国特許出願第14/809,062号のスパノーらによる「設定可能なプロトコル規則を用いて複数に分岐したブロックチェーンを生成するシステムおよび方法(System and Method for Creating a Multi-Branched Blockchain with Configurable Protocol
Rules)」(「‘062出願」または「スパノーら」)には、関係するシステムの他の例が記載されている。スパノーらは、側鎖と呼ばれるブロックチェーンを生成することにより、他の鎖から分岐した各分岐鎖に組み込まれ適用された、一連のカスタマイズされたプロトコルを用いて、複数の有効な分枝あるいは分岐が同時に成長することを可能にする発明を開示している。スパノーらは、親または前身のブロックチェーンを保管目的で分離する手段、もしくは、当該分離した親ブロックチェーンを1つまたは複数の新規または後続の子ブロックチェーンに紐づけする手段を、開示も示唆もしていないと思われる。
【0011】
上記の通り、これらのシステムは、ブロックチェーンの大きさと複雑性の問題に対処しようとして作成されてきたが、いずれも全ての関係課題に十分に対処していないと見受けられる。本明細書に開示する最新のシステムおよび方法の種々の実施形態は、上記の課題および問題を完全に解決するものである。
【発明の概要】
【0012】
本発明は、親または子ブロックチェーンのいずれの暗号保全性も犠牲にすることなく、子ブロックチェーンを生成するシステムおよび方法を提供することにより、稼働中のブロックチェーンを縮小し、大型のブロックチェーンの稼働期間を延長および実用性を向上させる手段を提供し、それによって従来技術の欠点を解決し、上述の必要性を満たすものである。
【0013】
本発明の好ましい実施形態は、少なくとも1つの移行先情報技術ブロックチェーンを用いて、少なくとも1つの元情報技術ブロックチェーンの実用性を向上させる方法において、前記方法は、機械可読記憶媒体に記憶された機械可読指示を実行し、変換プロトコルを維持および実行する、少なくとも1つの一連の特殊構成の計算装置で機能する方法であって、(i)「親ブロックチェーン」である少なくとも1つの元情報技術ブロックチェーンから複数のトランザクションを「選択トランザクション」として選択する方法段階と、(ii)前記選択トランザクションを変換および移行させる先である、少なくとも1つの移行先情報技術ブロックチェーンを「子ブロックチェーン」として識別および生成する方法段階と、(iii)前記選択トランザクションに関係する各アカウントのアカウント収支最終状態を計算する方法段階と、(iv)前記各選択トランザクションの前記アカウント収支最終状態を、前記少なくとも1つの子ブロックチェーンに適合した新たな一連のトランザクションである「移行トランザクション」に変換させる方法段階と、(v)前記少なくとも1つの親ブロックチェーンの少なくとも1つの前ブロックに関連した機械可読リンクを含む、前記移行トランザクションの少なくとも1つの新たなブロックを「移行ブロック」として生成する方法段階と、(vi)前記移行ブロックを検証する方法段階と、(vii)前記検証済み移行ブロックを、前記少なくとも1つの子ブロックチェーンに付加する方法段階と、(viii)前記少なくとも1つの親ブロックチェーンに付加するための少なくとも1つの反ブロックを生成する方法段階であって、前記少なくとも1つの反ブロックは、前記少なくとも1つの子ブロックチェーンへ移行した前記アカウント収支最終状態の移動を説明する新たなトランザクションから成り、前記少なくとも1つの親ブロックチェーンの前記少なくとも1つの前ブロックに関連した機械可読リンクを含む、方法段階と、(ix)前記少なくとも1つの親ブロックチェーンに付加するための少なくとも1つの反ブロックを検証する方法段階と、(x)前記少なくとも1つの各検証済み反ブロックを、少なくとも1つの親ブロックチェーンに付加する方法段階と、(xi)前記選択取引の移行の後に、特定の新たなトランザクションを、前記少なくとも1つの親ブロックチェーンから、前記少なくとも1つの子ブロックチェーンに組み込まれるブロックへ再移動させる方法段階と、を含む方法である。
【0014】
本発明のさらなる好ましい実施形態は、少なくとも1つの移行先情報技術ブロックチェーンを用いて、少なくとも1つの元情報技術ブロックチェーンの実用性を向上させるシス
テムであって、(a)第1の機械可読記憶媒体に記憶された第1組の機械可読指示を実行し、少なくとも1つの第1の「元」情報技術ブロックチェーンを機能および記憶する、特殊構成の計算装置の第1のサブセットであって、前記第1組の機械可読指示は、(i)トランザクションを元ブロックチェーンブロックへ統合する段階と、(ii)各々の前記元ブロックチェーンブロックを検証する段階と、(iii)各々の前記検証済み元ブロックチェーンブロックを前記元情報技術ブロックチェーンへ付加する段階と、を含む、第1のサブセットと、(b)第2の機械可読記憶媒体に記憶された、少なくとも第2組の機械可読指示を実行し、少なくとも1つの第2の「移行先」情報技術ブロックチェーンを機能および記憶する、特殊構成の計算装置の第2のサブセットであって、前記第2組の機械可読指示は、(i)トランザクションを移行先ブロックチェーンブロックへ統合する段階と、(ii)各々の前記移行先ブロックチェーンブロックを検証する段階と、(iii)各々の前記検証済み移行ブロックチェーンブロックを前記移行先情報技術ブロックチェーンへ付加する段階と、を含む、第2のサブセットと、(c)第3の機械可読記憶媒体に記憶された、少なくとも第3組の機械可読指示を実行し、変換プロトコルを維持および実行する、特殊構成の計算装置の第3のサブセットであって、(i)「親ブロックチェーン」である少なくとも1つの元情報技術ブロックチェーンから複数のトランザクションを「選択トランザクション」として選択する方法段階と、(ii) 前記選択トランザクションを変換および移行させる先である、少なくとも1つの移行先情報技術ブロックチェーンを「子ブロックチェーン」として識別および生成する方法段階と、(iii)前記選択トランザクションに関係する各アカウントのアカウント収支最終状態を計算する方法段階と、(iv)前記各選択トランザクションの前記アカウント収支最終状態を、前記少なくとも1つの子ブロックチェーンに適合した新たな一連のトランザクションである「移行トランザクション」に変換する方法段階と、(v)前記少なくとも1つの親ブロックチェーンの少なくとも1つの前ブロックに関連した機械可読リンクを含む、前記移行トランザクションの少なくとも1つの新たなブロックを「移行ブロック」として生成する方法段階と、(vi)前記移行ブロックを検証する方法段階と、(vii)前記検証済み移行ブロックを、前記少なくとも1つの子ブロックチェーンに付加する方法段階と、(viii)前記少なくとも1つの親ブロックチェーンに付加するための少なくとも1つの反ブロックを生成する方法段階であって、前記少なくとも1つの反ブロックは、前記少なくとも1つの子ブロックチェーンへ移行した前記アカウント収支最終状態の移動を説明する新たなトランザクションから成り、前記少なくとも1つの親ブロックチェーンの前記少なくとも1つの前ブロックに関連した機械可読リンクを含む、方法段階と、(ix)前記少なくとも1つの親ブロックチェーンに付加するための少なくとも1つの反ブロックを検証する方法段階と、(x)前記少なくとも1つの各検証済み反ブロックを、少なくとも1つの親ブロックチェーンに付加する方法段階と、(xi)前記選択トランザクションの移行の後に、特定の新たなトランザクションを、前記少なくとも1つの親ブロックチェーンから、前記少なくとも1つの子ブロックチェーンに組み込まれるブロックへ再移動させる方法段階と、を含む、第3のサブセットと、を備えるシステムである。
【図面の簡単な説明】
【0015】
本発明を図示することを目的として、添付した図面に、現在好ましい特定の様態および実施形態を示す。ただし、本発明は、添付した図面に示される正確な方法、工程段階、またはシステム要素に限定されるものではなく、さらに開示されるとともに添付の請求項の範囲により請求されると理解すべきである。
【0016】
【
図1】
図1は、標準的な情報技術ブロックチェーンの構造を説明するブロック図である。
【
図1A】
図1Aは、複合的な情報技術ブロックチェーンの構成を説明する、別のブロック図である。
【
図2】
図2は、本開示の発明によるシステムにおける、主要なシステム要素の例示的な実施形態のシステム概略図である。
【
図3】
図3は、新たなブロックチェーンインスタンスの作成を示す、本開示の発明によるシステムにおける、例示的な実施形態を説明するシステム図である。
【
図4】
図4は、本開示の発明によるシステムにおける、特定の主要機能の例示的な実施形態を示すフローチャートである。
【
図5】
図5は、親ブロックチェーンからブロックを「取り出し」、当該ブロックを新たな子ブロックチェーンに付加する工程を示す、本発明による方法における、特定の段階の例示的な実施形態を示すフローチャートである。
【
図6】
図6は、親ブロックチェーンからの選択ブロックを用いて新たなブロックチェーンを生成し、さらに「反ブロック」を付加することにより、選択ブロックの新たなブロックチェーンへの移転の均衡を保つ工程を示す、本発明の方法の段階の例示的な実施形態を示すフローチャートである。
【
図7】
図7は、1つの親ブロックチェーンからの1つの子ブロックチェーンの生成を示すシステム図である。
【
図8】
図8は、2つ以上の親ブロックチェーンからの1つの子ブロックチェーンの生成を示すシステム図である。
【
図9】
図9は、2つ以上の親ブロックチェーンからの1つの子ブロックチェーンの生成を示すシステム図であり、2つの親ブロックチェーンの「最終状態記録後」の時系列の組み入れを示す。
【
図10】
図10は、2つ以上の親ブロックチェーンからの1つの子ブロックチェーンの生成を示すシステム図であり、複数の親ブロックチェーンシードブロックの直列結合を示す。
【
図11】
図11は、2つ以上の親ブロックチェーンからの2つ以上の子ブロックチェーンの生成を示すシステム図である。
【
図12】
図12は、1つの親ブロックチェーンからの選択ブロックを用いた、1つの子ブロックチェーンの生成、および親ブロックチェーンの継続的な実用性を示すシステム図である。
【
図13】
図13は、1つの親ブロックチェーンからの選択ブロックを用いた、2つ以上の子ブロックチェーンの生成、および親ブロックチェーンの継続的な実用性を示すシステム図である。
【
図14】
図14は、2つ以上の親ブロックチェーンからの選択ブロックを用いた、1つの子ブロックチェーンの生成を示すシステム図であり、「反ブロック」を付加することにより、親ブロックチェーン選択ブロックの子ブロックチェーンへの移転の均衡を保つことを示す。
【
図15】
図15は、2つ以上の親ブロックチェーンからの選択ブロックを用いた、2つ以上の子ブロックチェーンの生成を示すシステム図であり、「反ブロック」を付加することにより、親ブロックチェーン選択ブロックの子ブロックチェーンへの移転の均衡を保つことを示す。
【発明を実施するための形態】
【0017】
以下の複数の好ましい実施形態および例示的な応用を用いて、親ブロックチェーンのトランザクション履歴の保全性を維持しながら、「親」ブロックチェーン保存データの子孫あるいは「子」を作成し、さらに親ブロックチェーンの保管を行う革新的なシステムおよび方法を開示ならびに説明する。ブロックチェーンは、あらゆるトランザクション一式を記録するために使用できる。概略的背景として、一般的にブロックチェーンは、コンピュータ化された元帳あるいはトランザクション記録と定義される。ブロックチェーンまたは元帳は、新規のトランザクションまたはトランザクション一式(例えば管理または所有の変更)に相当する「完成した」ブロックとして「成長」し、ブロックチェーンに追加される。新規トランザクションはブロックにまとめられ、新たなブロックはそれぞれの新ブロックに対する検証工程を経た後にのみ、ブロックチェーンに追加または付加される。
【0018】
定義上および明確化の目的において、「トランザクション」という用語は、例えばデータ、電子ファイル、無形資産(ドメインネーム、各種知的財産、商標または著作権など)または暗号通貨さえも含めた仮想資産を含む、あらゆる種類の製品、材料、装置部品、包装および/または物理的もしくは電子的書類またはファイルの、あらゆる種類の移転を広義に包含することを意図している。また、資産の移転以外に、「トランザクション」は、動作または非動作を記録し得るあらゆる種類のログエントリも含むことをさらに意図している。さらに、本明細書において「ブロックチェーン」という用語は、改ざんに耐性がある否認不可トランザクション記録または元帳の生成を可能にする全ての技術に言及するために使用される。
【0019】
図1は、代表的なブロックチェーン・システムおよび構成を示す。ブロックチェーンの「フルノード」10はサーバ11(これも「フルノード」と呼ばれる)を含み、サーバ11は検証ブロック13、14を処理し、プロトコル処理の完了後、検証ブロック13、14の処理の時系列順にブロック13、14を直近のブロックチェーン元帳12に付加する。このような検証ブロック13、14の処理および付加は、複数のブロックチェーンノード15で同時に発生してもよい。
【0020】
図1Aは、複数の装置および複数のブロックチェーン元帳を有するブロックチェーン・システムのさらなる例を示す。図示の通り、システム30は、少なくとも2つの装置10、20が接続する機械可読記憶媒体1000を備え、各装置10、20は、検証ブロック13、14、23、24を処理する処理装置11、21(「フルノード」の例)を備える。プロトコル処理が完了すると、検証ブロックは直近のブロックチェーン12、22に追加される。
【0021】
図2は、本開示の革新的システムの例示的な主要実施形態を示す。具体的に、本システムは、親ブロックチェーン元帳100全体を読み取る処理装置31を含む。処理装置31はその後、直近の親ブロックチェーン元帳100の「最終状態」21を生成する。最終状態21は、ブロックチェーン元帳100が追跡した全資産の直近の状況を集約している。ある実施形態では、最終状態21は、親ブロックチェーン100のシステム上の各ユーザの最終トランザクションにポインタを組み込むことにより、保管記録への紐付けを容易にしてもよい。次に、生成された最終状態21は、シードまたは起点ブロック33となり、少なくとも1つの新たなブロックチェーン200を開始または始動させるために用いられ、後続の全てのトランザクションが200へ移動される。ブロックの大きさに制約があるため、
図2で示すように、特定のブロックチェーンでは、最終状態を完全にインスタンス化するために複数のシードブロックを必要とする可能性がある。さらに
図2で示すように、元の親ブロックチェーン100全体を、別の保管用ブロックチェーン元帳50に保管してもよい。一般的に、親ブロックチェーン100は、ブロックチェーン元帳およびトランザクション履歴全体の完全な履歴を維持するために保存および保管すべきである。上記の通り、新規のまたは子ブロックチェーン200が生成され、親ブロックチェーン50が保管されると、(複数の)子ブロックチェーン200に後続のトランザクションが付加される。
【0022】
図3は、本開示のシステムの好ましい実施形態のさらに詳細な適用例である。具体的に、「直近の」ブロックチェーンの状態100が、これから集約および保管される一連のブロック61とともに示されている。さらに、直近のブロックチェーンの状態100は、一連の「これから」付加されるブロック62を示している。これらの新規ブロック62は、親ブロックチェーン100に追加される代わりに、新規シードブロック70に付加され、新規子ブロックチェーン200が生成または開始されるようになる。シードブロック70は、直近のブロックチェーンの状態100内に含まれる全ての情報を統合する。ある適用
例では、直近の状態の保管記録60から特定の終わり部分のブロックを取り出し、代わりに新規のブロックチェーンインスタンス200に追加することを必要としてもよい。上記の通り、新規のまたは子ブロックチェーン200が生成されると、後続のまたは新規のブロック81を新たなブロックチェーンインスタンス200に直接付加してもよい。
【0023】
ある実施形態では、ブロックの再検証を必要としてもよい。これは、現在保管されているインスタンス100から取り出し、新規のインスタンス200に付加するブロックに当てはまる。他の実施形態では、ブロックチェーンのユーザが承認するプロトコルに従ってこの工程を自動化することにより、データの保全性を損なわずに新規ブロックを生成したり新規のブロックチェーンインスタンスを開始したりするのに要する時間を最短にすることができる。ほぼ全ての適用例およびシナリオにおいて、保管されたブロックチェーンを引き続き接続可能とすることにより、以前のあらゆるトランザクションを検証することができる。
【0024】
本開示の処理は、いわゆる「フォーキング」処理とは区別すべきである。ブロックチェーンのフォーキングは、ブロックチェーンが新規のトランザクションを、基礎となる鎖に接続された二つ以上の分枝に分割する時に起こる。したがってフォーキングでは、初期のブロックが、分岐されたまたは後続の鎖全ての基礎として残る。その結果、ブロックチェーン全体は縮小せず、実際、一般的に複雑化し、大きくなる。ブロックチェーンの分岐の利点の一つは、このように分離することで、新規ブロックが異なる分岐間で分割されることにより、各分岐の成長を遅らせられることである。もう一つの潜在的な利点は、新規のブロックチェーンの分岐は、元のまたは親ブロックチェーンとは別の方針を実行することができることである。このような別の方針は、新規ブロックのスキーマもしくは別のブロック検証プロトコルまたは制度に関連してもよい。
【0025】
本発明の好ましい実施形態では、フォーキングの1つまたは複数の利点がすでに実施されていてもよい。特に、2つ以上の新規または子ブロックチェーン200を生成する際、後続のブロック81を、適切な新規ブロックチェーン200に直接付加してもよい。後続のブロック81を移動または付加すべき場所は、別のブロック検証プロトコルまたは別のブロックスキーマの機能により決定する。このような別のブロックプロトコルまたはスキーマは、親ブロックチェーンで使用されるプロトコルまたはスキーマとは異なるものでよく、一般的に各々異なる。
【0026】
図4は、主要な方法段階の工程フロー例を示す。さらに詳しくは、この工程は、直近のブロックチェーン100の分析910による「最終状態」の生成から始まる。次に、直近のブロックチェーンの機能が中止920され、最終状態が直近の(親)ブロックチェーン100と一致したままであることを保証する。その後、直近のブロックチェーン100を保管設定に設定928する。好ましい実施形態において、当該保管設定は、これから保管する親ブロックチェーンへ新規ブロックが付加されるのを防ぐ。その後、最終状態が生成930され、少なくとも1つのシードブロック70を構成する。それからブロックチェーンの機能が再開940され、新規のまたは後続のブロック62,81が新規の(子)ブロックチェーン200に付加される。
【0027】
親ブロックチェーン100からのブロック取り出しと、子ブロックチェーン200への再付加を説明する本開示の方法の他の実施形態において、
図5はこのような工程フローのさらなる詳細を提示する。具体的には、
図4で説明した工程と同様、この工程は、直近のブロックチェーン100の分析910による「最終状態」の生成から始まる。次に、直近のブロックチェーンの機能が中止920され、最終状態が直近のブロックチェーン100と一致したままであることを保証する。ここで、親ブロックチェーン100を分析925し、新規の子ブロックチェーン200に移動および移転させる必要のあるトランザクショ
ンが、もしあれば、どのブロックに含まれているかを判断する。
【0028】
その後、新規のブロックチェーンが新規ブロックの受け入れを開始する前に、これらの「移動すべき」トランザクションをシードブロックに追加することにより、
図3に説明した通り、ブロックチェーンのブロックが確実に適切な順序で配列される。上記の通り、直近のブロックチェーン100は保管設定に設定928され、親ブロックチェーン100へ新規ブロックが付加されるのを防ぐ。次に、最終状態が生成930され、少なくとも1つのシードブロック70を構成する。段階932では、最初のブロックに、保管済みの関連トランザクションへの必要な参照(例えば、最終ブロックのアドレスリンクおよび/または保管された親ブロックチェーン内の各当事者による最終トランザクション)が含まれているか、システムが確認する。次に、段階935に示す通り、「取り出された」ブロックを新規シードブロック70に付加する。ここで、ブロックチェーンの機能をもう一度再開940して、新規のまたは後続のブロックを新規の(子)ブロックチェーン200に付加できる。
【0029】
図5に記載された工程が所望される理由の一例として、ブロックチェーンの処理容量が特に大きい場合が挙げられる。このような筋書において、保管作業が行われる間、ブロックチェーン処理を停止または妨害する必要性を軽減するために、最終状態が生成された後にブロックを親ブロックチェーンに追加することができ、シードブロックのインスタンスが生成された後に、当該「追加された」ブロックを新規の子ブロックチェーンに移転することができる。この移転の際には、通常、親鎖内の前身ブロックの先行ハッシュ値に対する新規の子ブロックチェーン内の最新の最終状態の新ハッシュ値に基づく、「追加後」ブロックの再検証が必要となる。
【0030】
他の適用例において、現在より前の時点の「最終状態」の生成が必要となることがある。このような適用例では、新規のまたは子ブロックチェーンに、1つまたは複数の履歴ブロックを組み込まなければならない。履歴ブロックとは、現時点以前に存在していたブロックのことである。このような構成では、新規ブロックチェーンが全ての新規トランザクションを引き継ぐ前に、新規ブロックチェーンに1つまたは複数の履歴ブロックを含めることができる。
【0031】
親ブロックチェーン100と新規ブロックチェーン200との適切な接続を確実に行うため、新規ブロックチェーン200の状態と保管済み履歴ブロックチェーンとの紐づけを新規ブロックチェーン200に組み込んでもよい。例えば、ブロックチェーントランザクションには通常、少なくとも二者の当事者が関わり、情報または資産を一方当事者から他方当事者へ移転する。複数の当事者が関わる従来型のトランザクションでは、各当事者あるいは当該トランザクションに関係のある情報の要素を、関連するブロックチェーンのブロックに記録してもよい。最終状態が生成され、シードブロックが形成される時、当該シードブロックには、各当事者とともに、ブロックチェーンで追跡した彼らの資産の最終収支への参照が含まれてもよく、さらに、保管済み親ブロックチェーンの最終ブロック、および保管済み親ブロックチェーンに含まれうる最終トランザクション、もしくはその両方への参照が含まれてもよい。このような紐づけにより、結合したブロックチェーン全体の履歴保全性が保たれる。
【0032】
本開示のシステムおよび方法のさらなる適用例は、直近または親ブロックチェーンを2つ以上の子ブロックチェーンに分割する手段を提供する。このように分割されたブロックチェーンにより、トランザクションを別の子ブロックチェーンへ分離することができ、通常、新規の子ブロックチェーンが各々管理しやすくなる。この手法により、あるブロックチェーンを1つのブロックチェーン環境(例えば、公的ブロックチェーン)から他(例えば、私的ブロックチェーン)へ移行させることも可能になる。低価格、高速処理性、高信
頼性またはその他利点を備えた新規のブロックチェーン環境を生成できるため、このことは特に価値がある。
【0033】
本開示のシステムおよび方法のさらなる実施形態において、
図6は、識別ブロックで見つかった特定のトランザクションを新規のブロックチェーンへ選択的に移行する工程フローを示す。具体的に、直近のブロックチェーン100全体の最終状態を生成する代わりに、直近のブロックチェーン100の直近のブロック内の選択トランザクションのみを用いて、1つまたは複数の新規の子ブロックチェーン200の少なくとも1つの新規シードブロックを生成する。
図6の工程フローは、
図4に関して説明される基本的な工程に従っているが、親ブロックチェーンを分析する段階911をさらに含み、指定の選択基準を満たし、新規の子ブロックチェーン200へ移行すべきトランザクションを含むブロックを親ブロックチェーンの中で識別する。さらに、段階931では、段階911で予め選択されたトランザクションのみを用いて、新規のブロックチェーン200のシードブロックを生成する。その後、この新規のシードブロック70は、新規のブロックチェーン200を開始するために用いられる。トランザクションが新規の子ブロックチェーン200へ移行されると、「反ブロック」を生成し親ブロックチェーン100に付加941することにより、新規の子ブロックチェーン200へ移行された選択トランザクションの移動との均衡を保つ。最後に、段階942の記載の通り、双方のブロックチェーンは機能を継続し、選択基準に適合した全ての後続のトランザクションは新規の子ブロックチェーン200へ再移動される。
【0034】
図7から
図15は、上記工程のさらなる例を含む、本発明の方法のさらなる例示的実施形態を示す。具体的に、
図7は、1つの親ブロックチェーン100からの1つの子ブロックチェーン200の生成を図示する。子ブロックチェーン200の生成が必要と判断されると、直近の親ブロックチェーン100の最終状態が記録500され、
図7に示す通り、親ブロックチェーンブロック120aから120fの関連情報を組み込んだ、新規の「シード」または最終状態ブロック220が生成される。親ブロックチェーン100にブロックを追加できるのは最終状態記録500の後であるため、これらの新規追加ブロック130aから130cは、ブロック230aから230cとして新規の「シード」ブロック220に追加される。その後、新規ブロック710aから710cをブロックチェーン100へ追加すべきところを、代わりに子ブロックチェーン200へ直接追加する。この段階で親ブロックチェーン100を保管して、履歴記録の検証に必要な場合にのみ接続するようにできる。
【0035】
図8は、2つ以上の親ブロックチェーン100a、100bを1つの子ブロックチェーンへ合体させる場合の工程を説明する。
図7および上記と同様、親ブロックチェーン100a、100bの最終状態を記録した後、新規の結合「シード」ブロック221を、1つの子ブロックチェーン200の起点として生成する。最終状態「シード」ブロック221は、親ブロックチェーン100aのブロック120aから120f、および親ブロックチェーン100bのブロック140aから140eの関連情報を組み込む。
【0036】
再び、ブロック130aから130c、および150aから150cをそれぞれ親ブロックチェーン100aおよび100bへ追加できるのは最終状態の記録後であるため、これらの新規ブロック130aから130c、および150aから150cは、
図8に示すブロック230aから230c、および250aから250cとして新規の結合「シード」ブロック221に追加される。その後、親分散化台帳100aまたは100bのいずれかに追加されるはずだった全ての後続の新規ブロックは、ブロック710aから710cとして、
図8に示す子ブロックチェーン200に追加される。
【0037】
ブロック130aから130c、および150aから150cをシードブロック221へ
連続して追加する様子を
図8に示す一方、このような新規ブロックを子ブロックチェーン200へ追加する、より一般的な順序を
図9に示す。この順序によれば、ブロック230a、230b、230c、および250a、250b、250cは異なる時点で生成されており、したがって、それらの親ブロックチェーンによって一纏めにされるのではなく、時間的順序を追って子ブロックチェーン200へ追加されるはずである。つまり、図示の通り、追加の順序は、ブロック230a、230b、250a、230c、250b、新たに形成された2つの他ブロック、250c、そして新たに形成された他ブロックとなりうる。
【0038】
図10は、2つ以上の親ブロックチェーンからの子ブロックチェーンの同様の生成を示すが、1つの結合したシードブロックを生成する代わりに、各親ブロックチェーンの最終状態を記録して個別の「シード」ブロックを生成し、次にそれらを連続して接続し、子ブロックチェーンを開始する。同様に、
図11は、2つ以上の親ブロックチェーンからの2つ以上の子ブロックチェーンの生成を示す。
図11に示す通り、親ブロックチェーンに追加された、最終状態記録後のブロックは、上記の通り、各親ブロックチェーンが用いたものと異なるプロトコルまたはスキーマの機能に基づき、いずれかの子ブロックチェーンに付加してもよい。
【0039】
他の実施形態において、親ブロックチェーン全体を保管し、親ブロックチェーンへの新規ブロックの追加を中止する代わりに、規則または選択プロトコルを考案および実行し、親ブロックチェーンの特定のトランザクションのみを選択して子ブロックチェーンの新規シードブロックを形成してもよく、また、同じ規則を用いて、新規の子ブロックチェーンに追加すべきトランザクションを含む特定のブロックを選択してもよい。
図12に、このような構成および機能を示す。
【0040】
図示の通り、ブロック125aから125dの選択トランザクションは、最終状態記録500の記録の時点で新規のシードブロック225に統合される。その後、ブロック130a、130bおよび130cの選択トランザクションは、それぞれブロック230a、230bおよび230cとして子ブロックチェーンに追加される。図示の通り、選択プロトコルに基づくブロックからのトランザクションで構成される、当該新規追加ブロックがシードブロック225に追加された後、新規ブロック710bおよび710dが追加される。
【0041】
親ブロックチェーン100を継続させるため、ブロック125aから125dおよび130aから130c内の移動したトランザクションに関係する情報または資産を無効にして、親ブロックチェーン100の均衡を確保する必要がある。
図12に示す通り、このような無効化は、「反ブロック」126aから126dを組み込むことで実現する。これらの「反ブロック」を生成することにより、ブロック125aから125dそれぞれからの新規ブロックチェーン200への選択トランザクションの移動を反映した、必要な新規トランザクションが組み込まれる。同様に、ブロック131aから131cを親ブロックチェーン100に付加することで、各ブロック130aから130cから新規ブロックチェーンへ移行した当該トランザクションの情報または資産の移動を説明する。
【0042】
同じ方法で、
図13は、1つの親ブロックチェーン100を2つ以上の子ブロックチェーン200a、200bに選択的に統合させる場合の同様の機能を説明する。この選択は、ブロックのレベルではなく、トランザクションのレベルで行われることに留意すべきである。したがって、
図13に詳細な説明がない場合でも、1つのブロック内の選択トランザクションを細かく分けて、異なる子ブロックチェーン200aおよび200bに含めることができる。
【0043】
1つまたは複数の親ブロックチェーン内において、ブロックに含まれた特定のトランザクションのみを識別および選択するための規則または選択プロトコルを実行する同じ方法を用いて、新規の子ブロックチェーン200を生成してもよい。
図14は、ブロックのこのような結合および関係を移転および紐づけする方法を説明する。具体的に、
図14は、本質的に
図9に記載の上記の方法の変容であるが、最終状態記録時に以前の全てのブロック情報(例えば、ブロック120aから120f)を取得する代わりに、履歴親ブロックチェーンブロックから、関連規則または選択プロトコルにより決定された選択トランザクションのみを用いて、新規の子シードブロックを生成する。さらに、
図15は、2つ以上の親ブロックチェーン100a、100bを選択的に収集して2つ以上の子ブロックチェーン200a、200bを形成する方法の実施形態の実行を示す。
【0044】
本発明のシステム、工程および方法の好ましい実施形態を、特に、親ブロックチェーンに「紐づけ」し続けることのできる、1つまたは複数の第二世代または子ブロックチェーンの生成についての特定の図および例示的実施形態を参照しながら説明および開示したが、この例示的説明は、本発明の方法またはシステムの適用範囲を限定するものと解釈されない。例として、また本明細書に示唆する通り、本開示のシステムおよび方法の実施形態は、特定の資産またはトランザクションに向けた複数の子ブロックチェーンについて記載するよう修正できる。さらに、子ブロックチェーンの生成についてのいくつかの図では、1つのまたは2つの親ブロックチェーンを用いて、1つのまたは2つの子ブロックチェーンを形成することを示している。しかし、上述の通り、本開示の方法は、3つ以上の親ブロックチェーンを用いて、1つ、2つあるいは3つ以上の子ブロックチェーンを生成することについても等しく効果的である。それに加えて、本開示の方法およびシステムの種々の実施形態を用いて、ブロックチェーン全体の内容、特定のブロックチェーンからの選択トランザクション、またはブロックチェーン全体と他のブロックチェーンからの選択トランザクションの結合を、既存の「子」ブロックチェーンへ移行させることができる。特に、本開示の方法およびシステムの使用は、子ブロックチェーンをスクラッチから開始することを制限するものではない。さらに、上述の、本開示のシステムおよび方法が適用されるブロックチェーンの使用により、有形の資産、無形の資産、活動またはその他記録が必要な項目のあらゆる組み合わせに関連するトランザクションを包含することができる。
【0045】
その他の修正、置換、および/またはその他応用が可能であり、当該修正、置換、および応用は本発明の範囲と精神とから逸脱しないことは、当業者には認識される。同様に、添付の請求の範囲は、当該修正、置換、および/または応用をすべて網羅することを目的とすると理解される。
下記は、本願の出願当初に記載の発明である。
<請求項1>
少なくとも1つの移行先情報技術ブロックチェーンを用いて、少なくとも1つの元情報技術ブロックチェーンの実用性を向上させる方法において、前記方法は、機械可読記憶媒体に記憶された機械可読指示を実行し、変換プロトコルを維持および実行する、少なくとも1つの一連の特殊構成の計算装置で機能する方法であって、以下のiからxiの方法段階を含む方法。
i.「親ブロックチェーン」である少なくとも1つの元情報技術ブロックチェーンから複数のトランザクションを「選択トランザクション」として選択する方法段階。
ii.前記選択トランザクションを変換および移行させる先である、少なくとも1つの移行先情報技術ブロックチェーンを「子ブロックチェーン」として識別および生成する方法段階。
iii.前記選択トランザクションに関係する各アカウントのアカウント収支最終状態を計算する方法段階。
iv.前記各選択トランザクションの前記アカウント収支最終状態を、前記少なくとも1つの子ブロックチェーンに適合した新たな一連のトランザクションである「移行トランザクション」に変換する方法段階。
v.前記少なくとも1つの親ブロックチェーンの少なくとも1つの前ブロックに関連した機械可読リンクを含む、前記移行トランザクションの少なくとも1つの新たなブロックを「移行ブロック」として生成する方法段階。
vi.前記移行ブロックを検証する方法段階。
vii.前記検証済み移行ブロックを、前記少なくとも1つの子ブロックチェーンに付加する方法段階。
viii.前記少なくとも1つの親ブロックチェーンに付加するための少なくとも1つの反ブロックを生成する方法段階であって、前記少なくとも1つの反ブロックは、前記少なくとも1つの子ブロックチェーンへ移行した前記アカウント収支最終状態の移動を説明する新たなトランザクションから成り、前記少なくとも1つの親ブロックチェーンの前記少なくとも1つの前ブロックに関連した機械可読リンクを含む、方法段階。
ix.前記少なくとも1つの親ブロックチェーンに付加するための少なくとも1つの反ブロックを検証する方法段階。
x.前記少なくとも1つの各検証済み反ブロックを、少なくとも1つの親ブロックチェーンに付加する方法段階。
xi.前記選択トランザクションの移行の後に、特定の新たなトランザクションを、前記少なくとも1つの親ブロックチェーンから、前記少なくとも1つの子ブロックチェーンに組み込まれるブロックへ再移動させる方法段階。
<請求項2>
前記少なくとも1つの親ブロックチェーン内の全てのトランザクションは、選択トランザクションである、ことを特徴とする請求項1に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させる方法。
<請求項3>
少なくとも1組の選択トランザクションの「最終状態」を生成する段階をさらに含み、
前記少なくとも1組の選択トランザクションは、前記最終状態に相当する新たなトランザクションを含むブロックの移行後も、履歴記録として前記少なくとも1つの親ブロックチェーンに引き続き依存する、ことを特徴とする請求項1に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させる方法。
<請求項4>
前記少なくとも1つの親ブロックチェーンを保管する段階をさらに含む、ことを特徴とする請求項1に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させる方法。
<請求項5>
前記少なくとも1つの親ブロックチェーン内の1つまたは複数のブロックを参照する少なくとも1つの機械可読リンクを生成する段階と、
前記少なくとも1つの機械可読リンクを、前記少なくとも1つの子ブロックチェーンに付加された前記少なくとも1つの新たなトランザクションブロックに追加する段階と、
をさらに含む、ことを特徴とする請求項1に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させる方法。
<請求項6>
前記少なくとも1つの子ブロックチェーンは、新たなブロックチェーンである、ことを特徴とする請求項1に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させる方法。
<請求項7>
前記少なくとも1つの子ブロックチェーンは、前記少なくとも1つの親ブロックチェーンが用いるブロックチェーン構造とは異なるブロックチェーン構造を用いる、ことを特徴とする請求項1に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させる方法。
<請求項8>
前記少なくとも1つの子ブロックチェーンは、前記少なくとも1つの親ブロックチェーンが用いるブロックチェーン検証とは異なるブロックチェーン検証を用いる、ことを特徴とする請求項1に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させる方法。
<請求項9>
少なくとも1つの移行先情報技術ブロックチェーンを用いて、少なくとも1つの元情報技術ブロックチェーンの実用性を向上させるシステムであって、
a.第1の機械可読記憶媒体に記憶された第1組の機械可読指示を実行し、少なくとも1つの第1の「元」情報技術ブロックチェーンを機能および記憶する、特殊構成の計算装置の第1のサブセットであって、前記第1組の機械可読指示は、
(i)トランザクションを元ブロックチェーンブロックへ統合する段階と、
(ii)各々の前記元ブロックチェーンブロックを検証する段階と、
(iii)各々の前記検証済み元ブロックチェーンブロックを前記元情報技術ブロックチェーンへ付加する段階と、を含む、第1のサブセットと、
b.第2の機械可読記憶媒体に記憶された、少なくとも第2組の機械可読指示を実行し、少なくとも1つの第2の「移行先」情報技術ブロックチェーンを機能および記憶する、特殊構成の計算装置の第2のサブセットであって、前記第2組の機械可読指示は、
(i)トランザクションを移行先ブロックチェーンブロックへ統合する段階と、
(ii)各々の前記移行先ブロックチェーンブロックを検証する段階と、
(iii)各々の前記検証済み移行ブロックチェーンブロックを前記移行先情報技術ブロックチェーンへ付加する段階と、を含む、第2のサブセットと、
c.第3の機械可読記憶媒体に記憶された、少なくとも第3組の機械可読指示を実行し、変換プロトコルを維持および実行する、特殊構成の計算装置の第3のサブセットであって、
i.「親ブロックチェーン」である少なくとも1つの元情報技術ブロックチェーンから複数のトランザクションを選択トランザクションとして選択する方法段階と、
ii.前記選択トランザクションを変換および移行させる先である、少なくとも1つの移行先情報技術ブロックチェーンを「子ブロックチェーン」として識別および生成する方法段階と、
iii.前記選択トランザクションに関係する各アカウントのアカウント収支最終状態を計算する方法段階と、
iv.前記各選択トランザクションの前記アカウント収支最終状態を、前記少なくとも1つの子ブロックチェーンに適合した新たな一連のトランザクションである「移行トランザクション」に変換する方法段階と、
v.前記少なくとも1つの親ブロックチェーンの少なくとも1つの前ブロックに関連した機械可読リンクを含む、前記移行トランザクションの少なくとも1つの新たなブロックを「移行ブロック」として生成する方法段階と、
vi.前記移行ブロックを検証する方法段階と、
vii.前記検証済み移行ブロックを、前記少なくとも1つの子ブロックチェーンに付加する方法段階と、
viii.前記少なくとも1つの親ブロックチェーンに付加するための少なくとも1つの反ブロックを生成する方法段階であって、前記少なくとも1つの反ブロックは、前記少なくとも1つの子ブロックチェーンへ移行した前記アカウント収支最終状態の移動を説明する新たなトランザクションから成り、前記少なくとも1つの親ブロックチェーンの前記少なくとも1つの前ブロックに関連した機械可読リンクを含む、方法段階と、
ix.前記少なくとも1つの親ブロックチェーンに付加するための少なくとも1つの反ブロックを検証する方法段階と、
x.前記少なくとも1つの各検証済み反ブロックを、少なくとも1つの親ブロックチェーンに付加する方法段階と、
xi.前記選択トランザクションの移行の後に、特定の新たなトランザクションを、前記少なくとも1つの親ブロックチェーンから、前記少なくとも1つの子ブロックチェーンに組み込まれるブロックへ再移動させる方法段階と、を含む、第3のサブセットと、
を備える、システム。
<請求項10>
前記少なくとも1つの親ブロックチェーン内の全てのトランザクションは選択トランザクションである、ことを特徴とする請求項9に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させるシステム。
<請求項11>
少なくとも1組の選択トランザクションの「最終状態」を生成する段階をさらに含み、
前記少なくとも1組の選択トランザクションは、前記最終状態に相当する新たなトランザクションを含むブロックの移行後も、履歴記録として前記少なくとも1つの親ブロックチェーンに引き続き依存する、ことを特徴とする請求項9に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させるシステム。
<請求項12>
前記少なくとも1つの親ブロックチェーンを保管する方法段階をさらに含む、ことを特徴とする請求項9に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させるシステム。
<請求項13>
前記少なくとも1つの親ブロックチェーン内の1つまたは複数のブロックを参照する少なくとも1つの機械可読リンクを生成する方法段階と、
前記少なくとも1つの機械可読リンクを、前記少なくとも1つの子ブロックチェーンに付加された前記少なくとも1つの新たなトランザクションブロックに追加する方法段階と、
をさらに含む、ことを特徴とする請求項9に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させるシステム。
<請求項14>
前記少なくとも1つの子ブロックチェーンは、新たなブロックチェーンであり、
前記少なくとも1つの新たなトランザクションブロックは、前記新たなブロックチェーンを開始するためのシードブロックである、ことを特徴とする請求項9に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させるシステム。
<請求項15>
前記少なくとも1つの子ブロックチェーンは、前記少なくとも1つの親ブロックチェーンが用いるブロックチェーン構造とは異なるブロックチェーン構造を用いる、ことを特徴とする請求項9に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上さ
せるシステム。
<請求項16>
前記少なくとも1つの子ブロックチェーンは、前記少なくとも1つの親ブロックチェーンが用いるブロックチェーン検証手順とは異なるブロックチェーン検証手順を用いる、ことを特徴とする請求項9に記載の少なくとも1つの元情報技術ブロックチェーンの実用性を向上させるシステム。