(57)【要約】      （修正有）【課題】偽造と不確実性を低減するために、アイデンティティ及び証明データを不変に格納するシステム及び方法を提供する。【解決手段】アイデンティティデータの分散格納のための方法は、処理サーバの受信装置によって複数のエンティティのエンティティデータを受信するステップと、前処理サーバの生成モジュールによって、複数のエンティティの各々につきデータファイルを生成するステップと、処理サーバのハッシュ化モジュールによって複数のエンティティの各々についてのアイデンティティ値を生成するステップと、処理サーバの問い合わせモジュールによって分散ハッシュテーブルに対しクエリを実行して、複数のエンティティの各々につき鍵と値とのペアを格納するステップと、を含む。分散ハッシュテーブルは複数の物理的なデータ記憶装置を含む。【選択図】図５
2020184774.tif 000002
【特許請求の範囲】
【請求項１】
アイデンティティデータの分散格納のための方法であって、
処理サーバの受信装置によって複数のエンティティのエンティティデータを受信するス
テップであって、前記エンティティデータは少なくとも、関連付けられた公開鍵と、１以
上の関連付けられた属性と、地理的管轄とを含み、前記複数のエンティティのうち少なく
とも１つは下位であるとして示される、ステップと、
前記処理サーバの生成モジュールによって、前記複数のエンティティの各々につきデー
タファイルを生成するステップであって、各データファイルは前記１以上の関連付けられ
た属性と関連付けられた公開鍵とを少なくとも含み、下位であるとして示されたエンティ
ティについての前記データファイルは、上位のエンティティに関連付けられたデジタル署
名を含む、ステップと、
前記処理サーバのハッシュ化モジュールによって、１以上のハッシュ化アルゴリズムを
前記それぞれのエンティティにつき生成された前記データファイルへ適用することによっ
て、前記複数のエンティティの各々についてのアイデンティティ値を生成するステップと
、
前記処理サーバの問い合わせモジュールによって分散ハッシュテーブルに対しクエリを
実行して、前記複数のエンティティの各々につき鍵と値とのペアを格納するステップであ
って、前記鍵は前記それぞれのエンティティの前記アイデンティティ値であり、前記値は
前記それぞれのエンティティについての前記１以上の関連付けられた属性の各々を少なく
とも含む、ステップと、
を含み、
前記分散ハッシュテーブルは複数の物理的なデータ記憶装置を含み、各データ記憶装置
は地理的領域に位置し、鍵と値との各ペアは物理的なデータ記憶装置に格納され、前記関
連付けられた地理的領域は、前記それぞれのエンティティについての前記エンティティデ
ータに含まれる前記地理的管轄に対応する、方法。
【請求項２】
請求項１に記載の方法において、下位として示された各エンティティについての前記エ
ンティティデータは、前記上位のエンティティに関連付けられた前記デジタル署名を含む
、方法。
【請求項３】
請求項１に記載の方法において、下位であるとの標示は、前記上位のエンティティに関
連付けられた前記デジタル署名である、方法。
【請求項４】
請求項１に記載の方法において、
前記上位のエンティティは前記複数のエンティティの１つであり、
前記上位のエンティティに関連付けられた前記デジタル署名は、前記上位のエンティテ
ィの前記エンティティデータに含まれる前記関連付けられた公開鍵に対応する秘密鍵を用
いて生成される、方法。
【請求項５】
請求項４に記載の方法において、前記上位のエンティティについての前記エンティティ
データは、前記関連付けられたデジタル署名を含む、方法。
【請求項６】
アイデンティティデータの不変格納のための方法であって、
ブロックチェーンを処理サーバのメモリに格納するステップであって、前記ブロックチ
ェーンは複数のブロックを含み、各ブロックはブロックデータと少なくともタイムスタン
プを含むブロックヘッダとを含む、ステップと、
処理サーバの受信装置によって複数のエンティティのエンティティデータを受信するス
テップであって、前記エンティティデータは少なくとも、関連付けられた公開鍵と、１以
上の関連付けられた属性と、地理的管轄とを含み、前記複数のエンティティのうち少なく
とも１つは下位であるとして示される、ステップと、
前記処理サーバの生成モジュールによって、前記複数のエンティティの各々につきデー
タファイルを生成するステップであって、各データファイルは１以上の関連付けられた属
性と関連付けられた公開鍵とを少なくとも含み、下位であるとして示されたエンティティ
についての前記データファイルは、上位のエンティティに関連付けられたデジタル署名を
含む、ステップと、
前記処理サーバのハッシュ化モジュールによって、１以上のハッシュ化アルゴリズムを
前記それぞれのエンティティにつき生成された前記データファイルへ適用することによっ
て、前記複数のエンティティの各々についてアイデンティティ値を生成するステップと、
前記処理サーバの生成モジュールによって、新たなブロックヘッダとブロックデータと
を含む新たなブロックを生成するステップであって、前記ブロックヘッダは少なくとも、
タイムスタンプと各それぞれのブロックの前記ブロックヘッダに含まれる前記タイムスタ
ンプに基づいた、前記複数のブロックのうち最も最近の前記ブロックヘッダのハッシュ値
とを含み、前記ブロックデータは前記複数のエンティティの各々につき、前記生成された
アイデンティティ値を少なくとも含む、ステップと、
を含む方法。
【請求項７】
請求項６に記載の方法において、
前記処理サーバの問い合わせモジュールによって、前記メモリ上でクエリを実行し、前
記生成された新たなブロックを前記ブロックチェーンに追加するステップを更に含む、方
法。
【請求項８】
請求項６に記載の方法において、
前記処理サーバの送信装置によって、前記生成された新たなブロックを、前記ブロック
チェーンに関連付けられたノードへ電子的に送信するステップを更に含む方法。
【請求項９】
請求項６に記載の方法において、
前記上位のエンティティは前記複数のエンティティの１つであり、
前記上位のエンティティに関連付けられた前記デジタル署名は、前記上位のエンティテ
ィの前記エンティティデータに含まれる前記関連付けられた公開鍵に対応する秘密鍵を用
いて生成される、方法。
【請求項１０】
請求項９に記載の方法において、前記上位のエンティティについての前記エンティティ
データは、前記関連付けられたデジタル署名を含む、方法。
【請求項１１】
アイデンティティデータの分散格納のためのシステムであって、
複数のエンティティのエンティティデータを受信するよう構成された、処理サーバの受
信装置であって、前記エンティティデータは少なくとも、関連付けられた公開鍵と、１以
上の関連付けられた属性と、地理的管轄とを含み、前記複数のエンティティのうち少なく
とも１つは下位であるとして示される、受信装置と、
前記複数のエンティティの各々につきデータファイルを生成するよう構成された、前記
処理サーバの生成モジュールであって、各データファイルは前記１以上の関連付けられた
属性と関連付けられた公開鍵とを少なくとも含み、下位であるとして示されたエンティテ
ィについての前記データファイルは、上位のエンティティに関連付けられたデジタル署名
を含む、生成モジュールと、
１以上のハッシュ化アルゴリズムを前記それぞれのエンティティにつき生成された前記
データファイルへ適用することによって、前記複数のエンティティの各々につきアイデン
ティティ値を生成するよう構成された、前記処理サーバのハッシュ化モジュールと、
分散ハッシュテーブルに対しクエリを実行して、前記複数のエンティティの各々につき
鍵と値とのペアを格納するよう構成された、前記処理サーバの問い合わせモジュールとを
含み、
前記鍵は前記それぞれのエンティティの前記アイデンティティ値であり、前記値は前記
それぞれのエンティティについての前記１以上の関連付けられた属性の各々を少なくとも
含み、
前記分散ハッシュテーブルは複数の物理的なデータ記憶装置を含み、各データ記憶装置
は地理的領域に位置し、鍵と値との各ペアは物理的なデータ記憶装置に格納され、前記関
連付けられた地理的領域は、前記それぞれのエンティティについての前記エンティティデ
ータに含まれる前記地理的管轄に対応する、システム。
【請求項１２】
請求項１１に記載のシステムにおいて、下位として示された各エンティティについての
前記エンティティデータは、前記上位のエンティティに関連付けられた前記デジタル署名
を含む、システム。
【請求項１３】
請求項１１に記載のシステムにおいて、下位であるとの標示は、前記上位のエンティテ
ィに関連付けられた前記デジタル署名である、システム。
【請求項１４】
請求項１１に記載のシステムにおいて、
前記上位のエンティティは前記複数のエンティティの１つであり、
前記上位のエンティティに関連付けられた前記デジタル署名は、前記上位のエンティテ
ィの前記エンティティデータに含まれる前記関連付けられた公開鍵に対応する秘密鍵を用
いて生成される、システム。
【請求項１５】
請求項１４に記載のシステムにおいて、前記上位のエンティティについての前記エンテ
ィティデータは、前記関連付けられたデジタル署名を含む、システム。
【請求項１６】
アイデンティティデータの不変格納のためのシステムであって、
ブロックチェーンを格納するよう構成された、処理サーバのメモリであって、前記ブロ
ックチェーンは複数のブロックを含み、各ブロックはブロックデータとブロックヘッダと
を含み、前記ブロックヘッダは少なくともタイムスタンプを含む、メモリと、
複数のエンティティのエンティティデータを受信するよう構成された、処理サーバの受
信装置であって、前記エンティティデータは少なくとも、関連付けられた公開鍵と、１以
上の関連付けられた属性と、地理的管轄とを含み、前記複数のエンティティのうち少なく
とも１つは下位であるとして示される、受信装置と、
前記複数のエンティティの各々につきデータファイルを生成するよう構成された、前記
処理サーバの生成モジュールであって、各データファイルは前記１以上の関連付けられた
属性と関連付けられた公開鍵とを少なくとも含み、下位であるとして示されたエンティテ
ィについての前記データファイルは、上位のエンティティに関連付けられたデジタル署名
を含む、生成モジュールと、
１以上のハッシュ化アルゴリズムを前記それぞれのエンティティにつき生成された前記
データファイルへ適用することによって、前記複数のエンティティの各々につきアイデン
ティティ値を生成するよう構成された、前記処理サーバのハッシュ化モジュールと
を含み、
前記処理サーバの生成モジュールは、新たなブロックヘッダとブロックデータとを含む
新たなブロックを生成するよう構成され、前記ブロックヘッダは少なくとも、タイムスタ
ンプと各それぞれのブロックの前記ブロックヘッダに含まれる前記タイムスタンプに基づ
いた、前記複数のブロックのうち最も最近の前記ブロックヘッダのハッシュ値とを含み、
前記ブロックデータは前記複数のエンティティの各々につき、前記生成されたアイデンテ
ィティ値を少なくとも含む、システム。
【請求項１７】
請求項１６に記載のシステムにおいて、
前記メモリ上でクエリを実行し、前記生成された新たなブロックを前記ブロックチェー
ンに追加するよう構成された、前記処理サーバの問い合わせモジュールを更に含むシステ
ム。
【請求項１８】
請求項１６に記載のシステムにおいて、
前記生成された新たなブロックを、前記ブロックチェーンに関連付けられたノードへ電
子的に送信するよう構成された、前記処理サーバの送信装置を更に含むシステム。
【請求項１９】
請求項１６に記載のシステムにおいて、
前記上位のエンティティは前記複数のエンティティの１つであり、
前記上位のエンティティに関連付けられた前記デジタル署名は、前記上位のエンティテ
ィの前記エンティティデータに含まれる前記関連付けられた公開鍵に対応する秘密鍵を用
いて生成される、システム。
【請求項２０】
請求項１９に記載のシステムにおいて、前記上位のエンティティについての前記エンテ
ィティデータは、前記関連付けられたデジタル署名を含む、システム。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
本願は、米国特許出願第62/404,885号（2016年10月6日出願）の優先権を主張する。上
記出願の開示全体は参照によってここに取り込まれる。
【技術分野】
【０００２】
本開示はアイデンティティと証明データとの格納及び検証に関し、特に、分散格納の使
用と、アイデンティティ及び証明データの保護のためのブロックチェーンを介した格納と
、それを検証することとに関する。
【背景技術】
【０００３】
個人又は他の種別のエンティティのアイデンティティは、情報における価値のある部分
である。エンティティのアイデンティティは、ビジネス上の取引、契約、支払、購入、又
は、複数当事者間のトランザクション若しくは相互作用（インタラクション）にとって重
要である。多くの場合、エンティティはトランザクション又は他の相互作用の一部として
、自身のアイデンティティの証明書を提供するために要求される。伝統的に、そのような
証明書はしばしば政府による識別、クレジットカード、ビジネスカード、文通等を介して
提供されてきた。これらの場合、提供された証明書は不正確かもしれない（例えば個人は
すでに雇用されてないが、以前の雇用時のビジネスカードを依然として保持しているかも
しれない）し、識別困難な方法で全体的に偽造されているかもしれない。その場合、エン
ティティが虚偽のアイデンティティの反証をあげることは困難であるかもしれないので、
不確実な個人又はエンティティとの相互作用をもたらすかもしれない。
【０００４】
したがって偽造と不確実性を低減するためにアイデンティティ及び証明データを不変に
格納する技術的解決手段を提供する必要がある。
【発明の概要】
【０００５】
本開示は、アイデンティティデータを分散し且つ不変に格納するシステム及び方法を記
述する。分散ハッシュテーブルを使用して、アイデンティティ、証明属性及び他のデータ
を格納することは、データの迅速且つ効率的な利用可能性を確実にしてよい一方で、その
ようなデータのオンサイトの格納についての規則に従う状態を維持する。更に、アイデン
ティティ及び証明データの格納のためにブロックチェーンを用いることは、そのようなデ
ータの不変な格納を提供し、その正確な検証を提供すると共にそのデータのでっち上げを
防止することができる。
【０００６】
アイデンティティデータの分散格納のための方法は、
処理サーバの受信装置によって複数のエンティティのエンティティデータを受信するス
テップであって、前記エンティティデータは少なくとも、関連付けられた公開鍵と、１以
上の関連付けられた属性と、地理的管轄とを含み、前記複数のエンティティのうち少なく
とも１つは下位であるとして示される、ステップと、
前記処理サーバの生成モジュールによって、前記複数のエンティティの各々につきデー
タファイルを生成するステップであって、各データファイルは前記１以上の関連付けられ
た属性と関連付けられた公開鍵とを少なくとも含み、下位であるとして示されたエンティ
ティについての前記データファイルは、上位のエンティティに関連付けられたデジタル署
名を含む、ステップと、
前記処理サーバのハッシュ化モジュールによって、１以上のハッシュ化アルゴリズムを
前記それぞれのエンティティにつき生成された前記データファイルへ適用することによっ
て、前記複数のエンティティの各々についてのアイデンティティ値を生成するステップと
、
前記処理サーバの問い合わせモジュールによって分散ハッシュテーブルに対しクエリを
実行して、前記複数のエンティティの各々につき鍵と値とのペアを格納するステップであ
って、前記鍵は前記それぞれのエンティティの前記アイデンティティ値であり、前記値は
前記それぞれのエンティティについての前記１以上の関連付けられた属性の各々を少なく
とも含む、ステップと、
を含み、
前記分散ハッシュテーブルは複数の物理的なデータ記憶装置を含み、各データ記憶装置
は地理的領域に位置し、鍵と値との各ペアは物理的なデータ記憶装置に格納され、前記関
連付けられた地理的領域は、前記それぞれのエンティティについての前記エンティティデ
ータに含まれる前記地理的管轄に対応する。
【０００７】
アイデンティティデータの不変格納のための方法は、
ブロックチェーンを処理サーバのメモリに格納するステップであって、前記ブロックチ
ェーンは複数のブロックを含み、各ブロックはブロックデータと少なくともタイムスタン
プを含むブロックヘッダとを含む、ステップと、
処理サーバの受信装置によって複数のエンティティのエンティティデータを受信するス
テップであって、前記エンティティデータは少なくとも、関連付けられた公開鍵と、１以
上の関連付けられた属性と、地理的管轄とを含み、前記複数のエンティティのうち少なく
とも１つは下位であるとして示される、ステップと、
前記処理サーバの生成モジュールによって、前記複数のエンティティの各々につきデー
タファイルを生成するステップであって、各データファイルは１以上の関連付けられた属
性と関連付けられた公開鍵とを少なくとも含み、下位であるとして示されたエンティティ
についての前記データファイルは、上位のエンティティに関連付けられたデジタル署名を
含む、ステップと、
前記処理サーバのハッシュ化モジュールによって、１以上のハッシュ化アルゴリズムを
前記それぞれのエンティティにつき生成された前記データファイルへ適用することによっ
て、前記複数のエンティティの各々についてアイデンティティ値を生成するステップと、
前記処理サーバの生成モジュールによって、新たなブロックヘッダとブロックデータと
を含む新たなブロックを生成するステップであって、前記ブロックヘッダは少なくとも、
タイムスタンプと各それぞれのブロックの前記ブロックヘッダに含まれる前記タイムスタ
ンプに基づいた、前記複数のブロックのうち最も最近の前記ブロックヘッダのハッシュ値
とを含み、前記ブロックデータは前記複数のエンティティの各々につき、前記生成された
アイデンティティ値を少なくとも含む、ステップと、
を含む。
【０００８】
アイデンティティデータの不変格納のための方法は、
ブロックチェーンを処理サーバのメモリに格納するステップであって、前記ブロックチ
ェーンは複数のブロックを含み、各ブロックはブロックデータと少なくともタイムスタン
プを含むブロックヘッダとを含む、ステップと、
処理サーバの受信装置によって複数のエンティティのエンティティデータを受信するス
テップであって、前記エンティティデータは少なくとも、関連付けられた公開鍵と、１以
上の関連付けられた属性と、地理的管轄とを含み、前記複数のエンティティのうち少なく
とも１つは下位であるとして示される、ステップと、
前記処理サーバの生成モジュールによって、前記複数のエンティティの各々につきデー
タファイルを生成するステップであって、各データファイルは１以上の関連付けられた属
性と関連付けられた公開鍵とを少なくとも含み、下位であるとして示されたエンティティ
についての前記データファイルは、上位のエンティティに関連付けられたデジタル署名を
含む、ステップと、
前記処理サーバのハッシュ化モジュールによって、１以上のハッシュ化アルゴリズムを
前記それぞれのエンティティにつき生成された前記データファイルへ適用することによっ
て、前記複数のエンティティの各々についてアイデンティティ値を生成するステップと、
前記処理サーバの生成モジュールによって、新たなブロックヘッダとブロックデータと
を含む新たなブロックを生成するステップであって、前記ブロックヘッダは少なくとも、
タイムスタンプと各それぞれのブロックの前記ブロックヘッダに含まれる前記タイムスタ
ンプに基づいた、前記複数のブロックのうち最も最近の前記ブロックヘッダのハッシュ値
とを含み、前記ブロックデータは前記複数のエンティティの各々につき、前記生成された
アイデンティティ値を少なくとも含む、ステップと、
を含む。
【０００９】
アイデンティティデータの不変格納のためのシステムは、
ブロックチェーンを格納するよう構成された、処理サーバのメモリであって、前記ブロ
ックチェーンは複数のブロックを含み、各ブロックはブロックデータとブロックヘッダと
を含み、前記ブロックヘッダは少なくともタイムスタンプを含む、メモリと、
複数のエンティティのエンティティデータを受信するよう構成された、処理サーバの受
信装置であって、前記エンティティデータは少なくとも、関連付けられた公開鍵と、１以
上の関連付けられた属性と、地理的管轄とを含み、前記複数のエンティティのうち少なく
とも１つは下位であるとして示される、受信装置と、
前記複数のエンティティの各々につきデータファイルを生成するよう構成された、前記
処理サーバの生成モジュールであって、各データファイルは前記１以上の関連付けられた
属性と関連付けられた公開鍵とを少なくとも含み、下位であるとして示されたエンティテ
ィについての前記データファイルは、上位のエンティティに関連付けられたデジタル署名
を含む、生成モジュールと、
１以上のハッシュ化アルゴリズムを前記それぞれのエンティティにつき生成された前記
データファイルへ適用することによって、前記複数のエンティティの各々につきアイデン
ティティ値を生成するよう構成された、前記処理サーバのハッシュ化モジュールと
を含み、
前記処理サーバの生成モジュールは、新たなブロックヘッダとブロックデータとを含む
新たなブロックを生成するよう構成され、前記ブロックヘッダは少なくとも、タイムスタ
ンプと各それぞれのブロックの前記ブロックヘッダに含まれる前記タイムスタンプに基づ
いた、前記複数のブロックのうち最も最近の前記ブロックヘッダのハッシュ値とを含み、
前記ブロックデータは前記複数のエンティティの各々につき、前記生成されたアイデンテ
ィティ値を少なくとも含む。
【図面の簡単な説明】
【００１０】
本開示の範囲は、添付の図面と共に解釈されると、例示的な実施形態についての下記の
詳細な記載から最も良く理解される。図面には次の図が含まれる。
【００１１】
【図１】図１は、本開示の実施形態による、アイデンティティ及び証明データの分散及び不変の格納とその検証とのための高いレベルのシステム構造を示す。
【図２】図２は、本開示の実施形態による、アイデンティティ及び証明データの分散及び不変の格納とその検証とのための、図１のシステムにおける処理サーバの機能ブロック図である。
【図３】図３は、例示的実施形態による図１のシステムにおいて使用される、エンティティのアイデンティティ間の関係とそのハッシュ化とを示す機能ブロック図である。
【図４】図４は、例示的実施形態による図１のシステムを用いて、エンティティのアイデンティティと証明書とを検証する処理を示すフローチャートである。
【図５】図５は、例示的実施形態による、アイデンティティデータの分散格納のための例示的な方法を示すフローチャートである。
【図６】図６は、例示的実施形態による、アイデンティティデータの不変格納のための例示的な方法を示すフローチャートである。
【図７】図７は、例示的実施形態による、コンピュータシステム構造（アーキテクチャ）を示す機能ブロック図である。
【００１２】
本開示の更なる応用分野は、下記の詳細な説明から自明である。例示的実施形態の詳細
な説明は、例示目的のみを意図しており、本開示の範囲を必要的に制限することを意図し
ない。
【発明を実施するための形態】
【００１３】
用語解説
ブロックチェーン：ブロックチェーンを基礎とした通貨の全てのトランザクションの公
共台帳（public  ledger）である。１以上のコンピュータ装置は、ブロックチェーンネッ
トワークを含んでよく、これはブロックチェーンにおけるブロックの一部としてトランザ
クションを処理及び記録するよう構成されてよい。一旦ブロックが完成すると、当該ブロ
ックはブロックチェーンへ追加され、したがってトランザクション記録が更新される。多
くの実施形態では、ブロックチェーンは時系列順のトランザクションの台帳であってよい
し、ブロックチェーンネットワークによる使用に適した他の順番で提示されてもよい。い
くつかの実施形態では、ブロックチェーンで記録されたトランザクションは、宛先アドレ
スと通貨金額とを含んでよい。これによりブロックチェーンは、どれほどの通貨が特定の
アドレスへ帰属するかを記録する。いくつかの実施形態では、トランザクションは金融的
であってもそうでなくてもよいし、追加情報又は異なる情報（例えばソースアドレス、タ
イムスタンプ等）を含んでよい。いくつかの実施形態では、ブロックチェーンは追加的に
又は代替的に、ほぼ任意の種別のデータ（これは改ざん又は改訂に対して強化された継続
的に増加するデータレコードの一覧を維持する分散データベースに配置されるもの又は配
置される必要のあるものである）をトランザクションの形態として含んでよい。あるいは
ブロックチェーンは、プルーフオブワーク及び／又はそれに関連付けられた任意の他の適
切な検証技術によってブロックチェーンネットワークによって確認及び有効化されてよい
。いくつかの実施形態では、所定のトランザクションについてのデータは更に、トランザ
クションデータに付加されたトランザクションの直接的な一部ではない追加のデータを含
んでよい。いくつかの実施形態では、そのようなデータをブロックチェーンに含めること
は、トランザクションを構成してよい。そのような実施形態では、ブロックチェーンは特
定のデジタル通貨、仮想通貨、不換通貨又は他の種別の通貨に直接的に関連付けられなく
てよい。
【００１４】
アイデンティティ及び証明データの分散及び不変の格納のためのシステム
図１は、エンティティのためのアイデンティティ及び証明データの分散及び不変の格納
とその検証とのためのシステム１００を示す。
【００１５】
システム１００は処理サーバ１０２を含んでよい。下記で詳細に開示される処理サーバ
１０２は、複数のエンティティ１０４につきアイデンティティ及び証明データの格納及び
検証を管理するよう構成されてよい。図１に示す処理は、エンティティ１０４は、アイデ
ンティティ及び／又はそれに関連付けられた証明書を有する任意の種別のエンティティで
あってよい。いくつかの実施形態では、エンティティ１０４は他のエンティティ１０４と
関係を有してよく、このことは処理サーバ１０２によって管理、格納及び検証されるアイ
デンティティデータにおいて反映されてよい。
【００１６】
例えばエンティティ１０４は組織１０４ａを含んでよく、これは複数の組織部（ユニッ
ト）１０４ｂを含んでよい。組織部１０４ｂの各々は複数の個人１０４ｃを配置してよく
、これらは一層大きい組織１０４ａの一部として、各組織部１０４ｂに勤務してよい。そ
のような例において、エンティティ１０４の各々のアイデンティティは、残りのエンティ
ティ１０４との関係を反映してよい。このため、例えば、個人１０４ｃのアイデンティテ
ィを検証することは、組織部１０４ｂでの個人の雇用を検証してよいし、より拡張すれば
、組織１０４ａの下での雇用を検証してよい。
【００１７】
処理サーバ１０２は適切な通信ネットワーク及び方法を用いて、エンティティ１０４の
各々についての複数のアイデンティティ属性を受信するよう構成されてよい。いくつかの
実施形態では、処理サーバ１０２はそれぞれのエンティティ１０４から直接、属性を受信
してよい。例えば処理サーバ１０２は組織１０４ａ、組織部１０４ｂ及び個人１０４ｃの
各々から属性を受信してよい。他の例では、処理サーバ１０２は組織１０４ａ及び／又は
組織部１０４ｂからアイデンティティ属性を受信してよい。これは、それに関連付けられ
た他のエンティティ１０４の属性を含んでよい（例えば組織部１０４ｂはそれに関連した
各個人１０４ｃのアイデンティティ属性を提供してよい）。処理サーバ１０２はアプリケ
ーションプログラミングインタフェース又はデータ伝送のための他の適切な方法によって
アイデンティティ属性を受信してよい。
【００１８】
アイデンティティ属性は関連エンティティ１０４に直接関連付けられた属性であってよ
い。アイデンティティ属性は例えば、氏名、住所（street  address）、税金識別番号、
登録番号、e-mailアドレス、国コード、誕生日等を含んでよい。いくつかの実施形態では
、アイデンティティ属性は各種別のエンティティ１０４（これについての属性が受信され
てよい）につき可変でよい。例えば組織部１０４ｂのアイデンティティ属性は国コード、
住所、ビジネス登録番号を含んでよい。一方でその個人１０４ｃのアイデンティティ属性
は氏名、従業員番号、e-mailアドレス及び誕生日を含んでよい。
【００１９】
各エンティティ１０４についてのアイデンティティ属性に含まれるもの又はそれに付随
するものは、それに関連付けられた公開鍵であってよい。公開鍵はそれぞれのエンティテ
ィ１０４に直接関連付けられた鍵ペアの一部であってよい。一方エンティティ１０４又は
エンティティ１０４の代理で動作する他の当事者は、対応する秘密鍵を保持してよい。例
えば処理サーバ１０２は組織１０４ａ、組織部１０４ｂ及び個人１０４ｃの各々につき、
公開鍵を受信してよい。一方で、個人１０４ｃの各々についての対応する秘密鍵は、関連
付けられた組織部１０４ｂによって保持及び管理されてよい。
【００２０】
いくつかの実施形態では、エンティティ１０４についての秘密鍵は、エンティティ１０
４と下位のエンティティとの間の関係を提供するときに使用するデジタル署名を生成する
ために使用されてよい。例えば組織１０４ａは、関連付けられた秘密鍵を用いてデジタル
署名を生成してよい。これは、関連する各組織部１０４ｂについてのアイデンティティ属
性に含まれてよい。組織１０４ａの（そのアイデンティティ属性において提供され又はア
イデンティティ属性と共に提供される）対応公開鍵を保有する処理サーバ１０２は、各組
織部１０４ｂにつき提供されるデジタル署名を検証するよう構成されてよい。したがって
、検証されたデジタル署名は、組織部１０４ｂと組織１０４ａとの間の関係についての検
証済み証明書として組織部１０４ｂのアイデンティティ属性に含まれ、又はアイデンティ
ティ属性と共に含まれてよい。類似的に、各個人１０４ｃについてのアイデンティティ属
性は、関連付けられた組織部１０４ｂの秘密鍵によって生成された検証済みデジタル署名
を含んでよい。
【００２１】
処理サーバ１０２はエンティティ１０４の各々についてのアイデンティティ属性を格納
するよう構成されてよい。いくつかの実施形態では、処理サーバ１０２は鍵と値との複数
のペア（キーバリューペア）として、ハッシュテーブルに、各エンティティ１０４につい
てのアイデンティティ属性を格納するよう構成されてよい。鍵と値とのペアにおける値は
、所定のエンティティ１０４のアイデンティティ属性を含んでよい。鍵と値とのペアにお
ける対応する鍵は、エンティティ１０４のアイデンティティを示す特異値であってよい。
例示的実施形態では、鍵はエンティティ１０４のアイデンティティの表示として使用され
る、エンティティ１０４のために生成されたハッシュ値であってよい。ハッシュ値は処理
サーバ１０２により、１以上のハッシュ化アルゴリズムをエンティティ１０４についての
アイデンティティ属性へ適用することによって、生成されてよい。例えば処理サーバ１０
２はデータファイルを生成してよいし、アイデンティティ属性はデータファイルにて伝送
されてよい。データファイルはアイデンティティ属性の各々を含む。一方ハッシュ化アル
ゴリズムはデータファイルに適用されてよく、それに関連するハッシュ値を生成してよい
。ハッシュ値は次いでエンティティ１０４のアイデンティティとして、又は、鍵と値との
対応するペア内の鍵として、使用されてよいし、ハッシュテーブルに適宜格納されてよい
。
【００２２】
いくつかの実施形態では、ハッシュテーブルは分散ハッシュテーブルであってよい。一
方でそれに関連付けられた鍵と値とのペアは、複数の異なるデータ記憶装置１１０に格納
されてよい。これは、複数の異なる地理的領域１１２に分散されてよい。例えば図１に示
すように、処理サーバ１０２は鍵と値とのペアを複数のデータ記憶装置１１０（データ記
憶装置１１０ａ及び１１０ｂとして示される）に格納してよい。これは、別の地理的領域
１１２（地理的領域１１２ａ及び１１２ｂとして示される）に配置されてよい。いくつか
の実施形態では、鍵と値とのペアはデータ記憶装置１１０に格納されてよい。これは、関
連付けられたエンティティ１０４に関連する地理的な管轄に関連付けられた地理的領域１
１２に位置してよい。例えば組織部１０４ｂと関連付けられた個人１０４ｃとの各々は、
特定の地理的管轄（例えば特定の国）に関連付けられてよい。一方で関連付けられた鍵と
値とのペアは、その特定の国に位置するデータ記憶装置１１０に格納されてよい。
【００２３】
いくつかの実施形態では、アイデンティティ属性又は証明データを格納すること（例え
ば下記で詳述される）は、１以上の規則又は規定（これは例えば、地理的領域１１２に関
連付けられた代理人によって発行されてよい）に応じてよい。そのような場合、処理サー
バ１０２は鍵と値とのペアを、適用される規則又は規定に沿って、データ記憶装置１１０
に格納してよい。例えば地理的領域１１２ａに対する管轄を有する政府機関は、地理的領
域１１２ａで動作する任意のエンティティ１０４についてのアイデンティティデータがそ
の地理的領域１１２ａの構内に物理的に格納されることを要求してよい。そのような場合
、処理サーバ１０２は、地理的領域１１２ａ内のエンティティ１０４の各々についての鍵
と値とのペアが、地理的領域１１２ａに配置されたデータ記憶装置１１０ａに格納される
ことを要求してよい。そのような場合、エンティティ１０４の地理的管轄は、アイデンテ
ィティ属性（例えばそこに含まれる住所、国コード、管轄等）によって識別されてよいし
、アイデンティティ属性に付随するデータにおいて識別されてよい（例えば、自身に適用
される地理的管轄を提供する組織部１０４ｂであってよいが、自身のアイデンティティを
確立するために使用されるアイデンティティ属性に含まれないもの）。
【００２４】
いくつかの実施形態では、処理サーバ１０２はまた、エンティティ１０４に関連付けら
れた証明データを格納するよう構成されてよい。その実施形態では、システム１００は証
明発行者１０６を含んでよい。証明発行者１０６は、任意の適切な機能（例えば金融機関
、政府機関、企業、建物のオペレータ等）のために使用される、エンティティ１０４用の
証明書を発行するよう構成されてよい。証明発行者１０６は、１以上のエンティティ１０
４についての証明データを、適切な通信ネットワーク又は手段を用いて、処理サーバ１０
２へ電子的に送信してよい。いくつかの実施形態では、処理サーバ１０２は証明発行者１
０６による証明データの提出において使用するためのアプリケーションプログラミングイ
ンタフェースを有してよい。
【００２５】
証明データは複数の証明属性を含んでよい。証明属性は少なくとも、証明に関連する要
求、証明のための発行日及び／又は有効期限、並びに発行者署名を含んでよい。発行者署
名は証明発行者１０６によって生成されたデジタル署名（例えば証明発行者１０６に関連
付けられた鍵ペアの秘密鍵を用いたもの）であってよい。そのような場合、対応する公開
鍵は、発行者署名の検証のための処理サーバ１０２へ提供されてよい。いくつかの実施形
態では、証明属性は追加データ（例えば証明種別、名称、又は証明発行者１０６に関連付
けられた他の識別情報）を含んでよい。いくつかの実施形態では、証明属性は１以上の関
連エンティティ１０４を識別する情報（例えばエンティティ署名（これは例えば関連付け
られた秘密鍵を用いて生成され、対応する公開鍵により検証される）又はエンティティア
イデンティティ等）を含んでよい。
【００２６】
処理サーバ１０２はまた、証明を示す証明属性のハッシュ値を生成するよう構成されて
よい。いくつかの実施形態では、ハッシュ値は、エンティティ１０４のアイデンティティ
を生成するために使用されるものと同一のハッシュ化アルゴリズムを用いて生成されてよ
い。証明を示すハッシュ値はハッシュ化アルゴリズムを証明属性へ適用することによって
生成されてよいし、いくつかの実施形態では、証明属性の全てを含むデータファイルへ適
用されてよい。いくつかの実施形態では、ハッシュ値は証明の鍵ペアにおける鍵として使
用されてよい。これは、処理サーバ１０２のデータ記憶装置１１０に格納されてよい（し
、適用可能なら、証明に関連付けられた地理的領域１１２に格納されてよい）。他の実施
形態では、証明及び／又は証明属性は、適用可能なら、証明書に関連付けられたエンティ
ティ１０４の鍵と値とのペアの値に格納されてよい。
【００２７】
いくつかの実施形態では、処理サーバ１０２はまた、アイデンティティを格納するよう
構成されてよく、適用可能なら、ブロックチェーンに対する証明書を格納するよう構成さ
れてよい。ブロックチェーンはアイデンティティ、証明書及びそれに関連付けられた情報
を格納するために使用される台帳であってよく、その検証において使用するためのアイデ
ンティティと証明書とについての不変のレコードとして機能する。いくつかの実施形態で
は、ブロックチェーンは私的な又は半私的なブロックチェーンであってよい。ここでは新
たなブロックをブロックチェーンに追加することは、承認済みブロックチェーンノード１
１４によってのみ実行されてよく、例えば、そこに格納されるデータの正確性を損なうお
それがあるデータの追加を防止する。いくつかの実施形態では、処理サーバ１０２はブロ
ックチェーンについてのブロックチェーンノードであってよく、そこへの追加のために新
たなブロックを生成するよう構成されてよい。他の実施形態では、処理サーバ１０２は、
ブロックチェーンに関連付けられた１以上の外部ブロックチェーンノード１１４へ、ブロ
ックチェーンへの追加のためのデータを電子的に送信するよう構成されてよい。いくつか
の実施形態では、処理サーバ１０２はブロックを生成してよく、これは検証と従来の方法
を用いたブロックチェーンへの追加のために、ブロックチェーンノード１１４に送信され
てよい。
【００２８】
ブロックチェーンは複数のブロックを含んでよい。各ブロックは少なくともブロックヘ
ッダとブロックデータとを含んでよく、このときブロックデータはアイデンティティと証
明書とそれに関連付けられたデータとを含んでよい。例えばブロックデータに含まれるア
イデンティティと証明書とは、状態指示子により付随されてよい。これは、ブロックがブ
ロックチェーンに追加されるときの関連アイデンティティと証明書との状態変化を示して
よい。例えば新たなアイデンティティが生成されるとき、それは、アイデンティティが作
成されたことを示す状態指示子と共にブロックチェーンに付加されてよい。アイデンティ
ティが取り消されると（例えば組織部１０４ｂは、もはや雇用されていない個人１０４ｃ
のアイデンティティを取り消す）、アイデンティティはブロックチェーン内の新たなブロ
ックに、取り消しを示す新たな状態指示子と共に追加される。類似的に、エンティティ１
０４のアイデンティティ属性が変更されると、アイデンティティ（例えばこれは属性の変
化により異なる値であってよい）は再生成されてよく、次いでブロックチェーン内の新た
なブロックに付加されてよい。その場合、以前のアイデンティティは取り消されてよい。
このため、それは更新済みアイデンティティに代わって使用されない。いくつかのそのよ
うな場合、取り消しはエンティティ１０４の新たなアイデンティティを示してよい。
【００２９】
各ブロックヘッダは少なくともタイムスタンプとハッシュ値とを含んでよい。このとき
ハッシュ値はブロックチェーン内の以前のブロックのブロックヘッダのハッシュ化によっ
て生成される。以前のブロックはそのブロック以前の最も最近にブロックチェーンに追加
されたものである。最も最近のブロックは、対応するブロックヘッダに含まれるタイムス
タンプに基づいて識別されてよい。各ブロックヘッダはまた、ハッシュ、又は、ブロック
に含まれるブロックデータに関連付けられた他のハッシュ（例えばブロックデータに含ま
れるデータ値の各々のマークルルート）を含んでよい。追加中の新たなブロックヘッダに
以前のブロックヘッダのハッシュ値を含めることは、ブロックチェーンの普遍性を確保す
る。というのも、ブロックへの任意の変更は、異なるハッシュ値がそのブロックヘッダに
つき生成されることをもたらし、このことは各結果として生じるブロックにつき各ブロッ
クヘッダのハッシュ値を変更するからである。したがってブロックヘッダについてのハッ
シュ値の一貫性は、ブロックチェーンが改ざんされていないことを確実にするので、アイ
デンティティと証明書とについての不正確性とでっち上げとを防止する。
【００３０】
処理サーバ１０２は第三者に代わって、アイデンティティ及び証明書と、それに関連付
けられた属性とを検証するよう更に構成されてよい。例えば個人１０４ｃは自身のアイデ
ンティティをトランザクションの一部として要求元エンティティ１０８へ提供してよい。
例えば要求元エンティティ１０８として金融機関へローンを要求する個人１０４ｃは、自
身のアイデンティティを、組織部１０４ｂでの雇用及び役職の証明として提供してよい。
要求元エンティティ１０８は検証要求を、適切な通信ネットワーク及び方法を用いて処理
サーバ１０２へ電子的に送信してよい。その検証要求は、個人１０４ｃのアイデンティテ
ィを含み、いくつかの実施形態ではまた、検証される特定のアイデンティティ属性（例え
ば上記の例では、組織部１０４ｂ及び個人の役職）を含む。いくつかの実施形態では、検
証要求はアプリケーションプログラミングインタフェース又は処理サーバ１０２によって
提供される他のプラットフォームを通して提出されてよい。
【００３１】
処理サーバ１０２はその要求を受信してよく、まずブロックチェーンに問い合わせて、
提供済みアイデンティティの状態を識別してよい。処理サーバ１０２はブロックチェーン
内の最も最近のブロック（例えばこれはブロックヘッダに含まれるタイムスタンプを介し
て識別される）を識別してよく（これは、ブロックデータ内にアイデンティティを含む）
、その対応する状態指示子を識別してよい。例えばもしアイデンティティの状態が、それ
が取り消されていることを示せば、検証は否定的な結果を産出してよい。もしアイデンテ
ィティが依然として有効なら、処理サーバ１０２は次いで、関連付けられたアイデンティ
ティ属性をデータ記憶装置１１０から検索してよい。このとき、アイデンティティが鍵（
キー）として使用され、対応する鍵と値とのペアが検索される。処理サーバ１０２は、エ
ンティティ１０４についてのアイデンティティ属性が、申し立てられた属性と一致するこ
とを検証してよく、検証結果を要求元エンティティ１０８に提供してよい。いくつかの実
施形態では、処理サーバ１０２は１以上のアイデンティティ属性についての値（例えば明
示的に要求された値）を要求元エンティティ１０８へ提供してよい。要求元エンティティ
１０８は次いで、個人のアイデンティティにつき、正確な第三者検証を有してよい。処理
サーバ１０２は類似的に、エンティティ１０８によって要求元エンティティ１０８へ提示
された証明書を検証するために使用されてよい。エンティティ１０４の証明書は処理サー
バ１０２によって格納される。
【００３２】
いくつかの実施形態では、アイデンティティと証明データとを格納するために使用され
るブロックチェーンは、スマートコントラクトを使用するよう構成されてよい。スマート
コントラクトは、その中の１以上の条項が満たされると１以上の動作を実行するために使
用されてよい。スマートコントラクトの１以上の条項が満たされると、１以上の動作がス
マートコントラクトによって実行されて、意図した結果を実現してよい。システム１００
において、スマートコントラクトは、アイデンティティ及び証明書並びに関連付けられた
属性の管理を実現するために使用されてよい。例えば新たに発行された証明書は、スマー
トコントラクトセットと共にブロックチェーンに追加されて、証明書の有効期限が過ぎた
ときに実行されてよい。このことは自動的に証明書を取り消してよい。そのような例では
、スマートコントラクトの実行に応じて、処理サーバ１０２は、証明書を取り消すよう通
知を受けてよく、次いで、証明書と取り消し状態通知とを、ブロックチェーンに追加され
る新たなブロックへの包含のために提出してよい。他の実施形態では、組織部１０４ｂは
属性としてそこに関連付けられた信用スコアを有する企業組織であってよい。ブロックチ
ェーンはスマートコントラクトを含んでよく、これは、組織部１０４ｂが動作についての
所定のリストの１つを実行する（例えば新たな信用が発行された、信用ラインを取り消し
た、特定のトランザクション量を達成した等）と実行される、組織部１０４ｂについての
信用スコアアイデンティティ属性を更新する。動作の実行に応じて、処理サーバ１０２は
属性を更新し、組織部１０４ｂについての新たなアイデンティティを（例えば属性変更に
より）生成し、以前のアイデンティティを取り消し、そして、有効状態を有する新たなア
イデンティティをブロックチェーンに追加してよい。
【００３３】
本明細書の方法とシステムとにより処理サーバ１０２は、アイデンティティと証明デー
タとを、不変な、且つ、でっち上げ又は不正記述が（不可能でないにしても）困難な方法
で、安全に格納することができる。配布されたハッシュテーブルを使用してアイデンティ
ティ及び証明属性を格納することにより、処理サーバ１０２は、データを、適用される規
則又は任意の地理的管轄の規定に沿った方法で格納することができる一方で、ネットワー
ク効率を維持する。一方でアイデンティティと証明書との格納のためにブロックチェーン
を使用することは、データの不変レコードが、第三者エンティティのアイデンティティ及
び証明書の正確な検証を支援することを可能にする。
【００３４】
処理サーバ
図２は、システム１００の処理サーバ１０２の実施形態を示す。当業者にとって、図２
に示す処理サーバ１０２の実施形態が、例示目的のみで提供されることと、本開示の機能
を実行するのに適した、処理サーバ１０２の全ての可能な構成を徹底的に示したものでな
いことは自明である。例えば図７に示され下記で一層詳細に説明されるコンピュータシス
テム７００が、処理サーバ１０２の適切な構成であってよい。
【００３５】
処理サーバ１０２は受信装置２０２を含んでよい。受信装置２０２は１以上のネットワ
ークプロトコルを介して１以上のネットワーク上でデータを受信するよう構成されてよい
。いくつかの実施形態では、受信装置２０２はエンティティ１０４と証明発行者１０６と
要求元エンティティ１０８とデータ記憶装置１１０とブロックチェーンノード１１４と他
のシステム及びエンティティから、１以上の通信手段（例えば近距離通信、物理接触点、
Bluetooth、インターネット、ローカルエリアネットワーク等）を介してデータを受信す
るよう構成されてよい。いくつかの実施形態では、受信装置２０２は複数の装置（例えば
、異なるネットワーク上でデータを受信する異なる受信装置（例えばローカルエリアネッ
トワークでデータを受信する第１の受信装置と、インターネット上でデータを受信する第
２の受信装置））を含んでよい。受信装置２０２は送信される電子的なデータ信号を受信
してよい。このとき、受信装置２０２によるデータ信号の受信によって、データはデータ
信号上に重ねられ、復号、解析（パース）、読取り、又は取得されてよい。いくつかの実
施形態では、受信装置２０２は、受信されたデータ信号を解析して、そこに重ねられたデ
ータを取得するための解析モジュールを含んでよい。例えば受信装置２０２は、受信され
たデータ信号を受信し、処理装置によって実行される機能のための利用可能な入力へと変
換して本開示の方法及びシステムを実行するよう構成される解析プログラムを含んでよい
。
【００３６】
受信装置２０２はエンティティ１０４及び発行者１０６によって電子的に送信されたデ
ータ信号（これは処理サーバ１０２による格納のために、アイデンティティ及び／又は証
明属性に重畳され又はエンコードされる）を受信するよう構成されてよい。受信装置２０
２はまた、エンティティ１０４及び他の当事者によって電子的に送信されたデータ信号（
これは、ブロックチェーンへの追加のためにスマートコントラクトに重畳され又はエンコ
ードされる）を受信するよう構成されてよい。受信装置２０２は更に、要求元エンティテ
ィ１０８によって電子的に送信されたデータ信号（これは、アイデンティティ及び／又は
証明書の検証を要求する検証要求に重畳され又はエンコードされてよい）を受信するよう
構成されてよい。受信装置２０２はまた、格納されたデータの検索のために、データ記憶
装置１１０によって電子的に送信されたデータ信号を受信するよう構成されてよい。いく
つかの実施形態では、受信装置２０２は、ブロックチェーンノード１１４によって電子的
に送信されたデータ信号（これはブロックチェーンデータに重畳され又はエンコードされ
てよい）を受信するよう構成されてよい。
【００３７】
処理サーバ１０２はまた通信モジュール２０４を含んでよい。通信モジュール２０４は
、本開示の機能を実行する際に使用するために、モジュール、エンジン、データベース、
メモリ、及び処理サーバ１０２の他の構成要素の間でデータを転送するよう構成されてよ
い。通信モジュール２０４は１以上の通信種別を含んでよく、コンピューティング装置内
での通信のために様々な通信方法を使用してよい。例えば通信モジュール２０４はバス、
接続ピンコネクタ、ケーブル等を含んでよい。いくつかの実施形態では、通信モジュール
２０４はまた、処理サーバ１０２の内部構成要素と処理サーバ１０２の外部構成要素（例
えば外部で接続されたデータベース、表示装置、入力装置等）との間で通信するよう構成
されてよい。処理サーバ１０２はまた、処理装置を含んでよい。処理装置は本開示の処理
サーバ１０２の機能を実行するよう構成されてよい。このことは、当業者にとって自明で
ある。いくつかの実施形態では、処理装置は、処理装置の１以上の機能を実行するよう特
別に構成された複数のエンジン及び／又はモジュール（例えば問い合わせモジュール２１
６、生成モジュール２１８、ハッシュ化モジュール２２０等）を含んでよい。本開示のよ
うに、「モジュール」との用語は、入力を受信し、当該入力を使用して１以上の処理を実
行し、且つ出力を提供するよう特別にプログラムされたソフトウェア又はハードウェアで
あってよい。様々なモジュールによって実行される入力、出力及び処理は、本開示に基づ
いて、当業者にとって自明である。
【００３８】
処理サーバ１０２はまた、メモリ２０６を含んでよい。メモリ２０６は、本開示の機能
を実行するときに処理サーバ１０２が使用するためのデータ（例えば公開鍵、秘密鍵、対
称鍵等）を格納するよう構成されてよい。メモリ２０６は、データ整形方法及びスキーマ
を用いてデータを格納するよう構成されてよく、また、任意の適切な種類のメモリ（例え
ば読み取り専用メモリ、ランダムアクセスメモリ等）であってよい。メモリ２０６は例え
ば暗号鍵及びアルゴリズム、通信プロトコル及び基準、データ整形基準及びプロトコル、
モジュール用プログラムコード及び処理装置のアプリケーションプログラム、並びに、本
開示の機能を実行する際に処理サーバ１０２によって使用される適切な他のデータを含ん
でよい。このことは、本開示を読む当業者にとって自明である。いくつかの実施形態では
、メモリ２０６は、構造照会言語を使用するリレーショナルデータベースを含んでよく、
記憶された構造化データセットを記憶、識別、修正、更新、アクセス等してよい。
【００３９】
例えば処理サーバ１０２がブロックチェーンのブロックチェーンノードである場合、メ
モリ２０６はブロックチェーンを格納するよう構成されてよい。メモリ２０６はまた、デ
ータ記憶装置１１０の一部として又はそれに加えて、分散したハッシュテーブルのいくつ
か又は全てを格納するよう構成されてよい。例えばメモリ２０６はまた、データ記憶装置
１１０に格納された分散ハッシュテーブルの、集合した冗長なコピーを格納するよう構成
されてよい。他の実施形態では、メモリ２０６は分散ハッシュテーブルの一部を格納する
よう構成されて、地理的領域１０４（ここに処理サーバ１０２が位置する）に関連付けら
れたアイデンティティ及び証明書を格納してよい。メモリ２０６は、処理サーバ１０２に
よって使用するのに適した任意の追加データ（例えばハッシュ化アルゴリズム、スマート
コントラクト実行データ等）を格納するよう構成されてよい。
【００４０】
処理サーバ１０２は問い合わせモジュール２１６を含んでよい。問い合わせモジュール
２１６はデータベース上のクエリを実行して情報を識別するよう構成されてよい。問い合
わせモジュール２１６は１以上のデータ値又はクエリ列を受信してよく、それに基づいて
、示されたデータベース（例えばメモリ２０６）上でクエリ列を実行して、そこに格納さ
れた情報を識別してよい。問い合わせモジュール２１６は次いで、識別された情報を、必
要に応じて処理サーバ１０２の適切なエンジン又はモジュールへ出力してよい。問い合わ
せモジュール２１６は例えばメモリ上でクエリを実行して、関連付けられた属性にアクセ
スするための鍵として生成済みのアイデンティティ又は証明書を用いて、鍵と値とのペア
の値を識別する。
【００４１】
処理サーバ１０２はまた生成モジュール２１８を含んでよい。生成モジュール２１８は
、本開示の処理サーバ１０２の機能を実行するのに適切なデータを生成するよう構成され
てよい。生成モジュール２１８は入力値として命令（これはデータを生成するために使用
される）を受信してよいし、処理サーバ１０２の１以上のエンジン又はモジュールへ出力
される生成済みデータを受信してよい。いくつかの実施形態では、生成モジュール２１８
に入力される命令は、そこで使用されるデータによって付随されてよい。例えば生成モジ
ュール２１８はエンティティについてのデータファイル（これは関連付けられたアイデン
ティティ属性を含み、対応する鍵と値とのペアにて値として格納されてよく、関連付けら
れたアイデンティティの生成において使用されてよい）を生成するよう構成されてよい。
生成モジュール２１８は、処理サーバ１０２によるアイデンティティ及び／又は証明書の
検証に例えば基づいて、検証結果を生成するよう構成されてよい。いくつかの実施形態で
は、生成モジュール２１８ブロックチェーンへの追加のためのブロックを生成するよう構
成されてよい。
【００４２】
処理サーバ１０２はまたハッシュ化モジュール２２０を含んでよい。ハッシュ化モジュ
ール２２０は、ハッシュ値の生成のために、処理サーバ１０２についてのデータをハッシ
ュ化するよう構成されてよい。ハッシュ化モジュール２２０は、入力値としてハッシュ化
されたデータを受信してよいし、１以上のハッシュ化アルゴリズムをそこへ適用すること
によってハッシュ値を生成してよいし、処理サーバ１０２の他のモジュール又はエンジン
へ、結果的に生成されたハッシュ値を出力してよい。いくつかの実施形態では、入力は、
１以上の暗号化アルゴリズム又はその標示を含んでよい。他の実施形態では、ハッシュ化
モジュール２２０は、使用されるハッシュ化アルゴリズムを（例えばメモリ２０６におい
て）識別するよう構成されてよい。ハッシュ化モジュール２２０は例えば、対応するデー
タファイル（これは例えば生成モジュール２１８によって生成される）へハッシュ化アル
ゴリズムを適用することによって、アイデンティティ属性と証明属性とのハッシュ値を生
成するよう構成されてよく、それぞれアイデンティティ及び証明書として機能させる。他
の実施形態では、ハッシュ化モジュール２２０は新たなブロックヘッダに含めるために、
ブロックチェーンブロックのブロックヘッダについてのハッシュ値を生成するよう構成さ
れてよい。それは例えば、生成モジュール２１８によって生成されてよい。
【００４３】
処理サーバ１０２はまた、送信装置２２２を含んでよい。送信装置２２２は１以上のネ
ットワークプロトコルを介して１以上のネットワーク上でデータを送信するよう構成され
てよい。いくつかの実施形態では、送信装置２２２はエンティティ１０４と証明発行者１
０６と要求元エンティティ１０８とデータ記憶装置１１０とブロックチェーンノード１１
４と他のエンティティとから、１以上の通信手段（例えば近距離通信、物理接触点、Blue
tooth、無線周波数、インターネット、ローカルエリアネットワーク等）を介してデータ
を送信するよう構成されてよい。いくつかの実施形態では、送信装置２３３は複数装置（
例えば、異なるネットワーク上でデータを送信するための異なる送信装置（例えばローカ
ルエリアネットワーク上でデータを送信する第１の送信装置と、インターネット上でデー
タを送信する第２の送信装置））を含んでよい。送信装置２２２は、重畳されたデータで
あって受信コンピューティング装置によって解析されるデータを有するデータ信号を電子
的に送信してよい。いくつかの実施形態では、送信装置２２２は、データを重畳しエンコ
ードし、又はデータを送信に適したデータ信号へ整形する１以上のモジュールを含んでよ
い。
【００４４】
送信装置２２２は、データ信号（これはデータ記憶装置１１０への格納のためにそこに
関連付けられた鍵と値とのペア及び／又はデータに重畳され又はエンコードされる）をデ
ータ記憶装置１１０に電子的に送信するよう構成されてよい。いくつかの実施形態では、
データ記憶装置１１０におけるデータの挿入及び／又は更新のために、問い合わせモジュ
ール２１６によってデータ信号は実行のためのクエリに重畳され又はエンコードされてよ
い。送信装置２２２は、ブロックチェーンノード１１４へデータ信号を電子的に送信して
よい。これは、アイデンティティ及び証明書に重畳され又はエンコードされてよいし、関
連付けられたブロックチェーンへの追加のために生成済みブロックに重畳され又はエンコ
ードされてよい。送信装置２２２は、データ信号を要求元エンティティ１０８へ電子的に
送信するよう構成されてよい。これは、検証結果に重畳され又はエンコードされる（例え
ば証明書又はアイデンティティの検証に基づいて生成される）。
【００４５】
アイデンティティと証明書との生成
図３は関連付けられた複数のエンティティについてのアイデンティティ間の関係の標示
と、エンティティのアイデンティティ属性に基づいたアイデンティティの生成とを示す。
【００４６】
処理サーバ１０２は（例えば受信装置２０２を介して）複数の異なる関連エンティティ
についてのデータを受信してよい。アイデンティティデータは組織１０４ａについてのア
イデンティティデータ３０２と、組織１０４ａの下で動作する組織部１０４ｂについての
アイデンティティデータ３０４と、組織部１０４ｂの下で動作する個人１０４ｃについて
のアイデンティティデータ３０６とを含んでよい。図３に示すように、他のエンティティ
１０４に対し下位であるエンティティ１０４のアイデンティティデータは、上位のエンテ
ィティ１０４との関係を示すデータを含んでよい。
【００４７】
組織１０４ａのアイデンティティデータ３０２は、上位のエンティティを有さず、複数
のアイデンティティ属性を含んでよい。これは任意の他のエンティティのデジタル署名を
含んでよいが、組織１０４ａに関連付けられた公開鍵３０８を少なくとも含んでよい。公
開鍵３０８は組織１０４ａに関連付けられた鍵と値とのペアの一部であってよい。このと
き対応する秘密鍵は組織署名３１０を生成するために使用されてよい。それは、公開鍵３
０８を用いて検証可能な秘密鍵によって生成されるデジタル署名であってよい。
【００４８】
組織署名３１０は、組織部１０４ｂに関連付けられたアイデンティティデータ３０４に
含んでよい。組織部１０４ｂは組織１０４ａの下で動作する。組織部１０４ｂは組織１０
４ａの下位であってよい。組織署名３１０と他のアイデンティティ属性とに加えて、アイ
デンティティデータ３０４は組織部１０４ｂに関連付けられた公開鍵３１２を含んでよい
。公開鍵３１２は組織部１０４ｂに関連付けられた鍵と値とのペアの一部であってよい。
このとき対応する秘密鍵は組織部（OU）の署名３１４を生成するために使用されてよい。
OU署名３１４は、公開鍵３１２を用いて検証可能な秘密鍵によって生成されるデジタル署
名であってよい。
【００４９】
OU署名３１４は、個人１０４ｃに関連付けられたアイデンティティデータ３０６に含ま
れてよい。個人１０４ｃは組織部１０４ｂの下位として動作する。OU署名３１４と他のア
イデンティティ属性とに加えて、アイデンティティデータ３０６はそこに関連付けられた
自身の公開鍵３１６を含んでよい。公開鍵３１６は対応する秘密鍵によって生成されるデ
ジタル署名を検証するために使用されてよい。いくつかの実施形態では、対応する秘密鍵
は、個人１０４ｃではなく、上位の組織部１０４ｂ又は組織１０４ａによって保持されて
よい。
【００５０】
エンティティ１０４についてのアイデンティティを生成するために、そこに関連付けら
れたアイデンティティデータ（例えば個人１０４ｃのアイデンティティデータ３０６）は
、処理サーバ１０２の生成モジュール２１８によって生成されたデータファイルに含まれ
てよい。例えば図３に示すアイデンティティデータ３０６は生成モジュール２１８によっ
て生成されたデータファイルであってよく、これはOU署名３１４と公開鍵３１６と個人１
０４ｃの氏名とをアイデンティティ属性として含む。次いでハッシュ化モジュール２２０
は１以上のハッシュアルゴリズムをデータファイルへ適用して、個人１０４ｃのアイデン
ティティ３１８を生成してよい。このときアイデンティティ３１８は結果的なハッシュ値
である。アイデンティティ３１８は次いで、（例えば処理サーバ１０２の送信装置２２２
による電子的な送信によって）データ記憶装置１１０に、鍵と値とのペアとして分散ハッ
シュテーブルへの格納のために、提供されてよい。このときアイデンティティ３１８は、
アイデンティティデータ３０６に含まれる鍵と値して機能する。
【００５１】
アイデンティティ及び証明書の検証処理
図４は、システム１００を用いて、関連付けられたエンティティのアイデンティティ及
び証明書を検証する処理を示す。
【００５２】
ステップ４０２にて証明発行者１０６は、のエンティティ１０４についての証明書を発
行してよい。このとき証明属性は、適切な通信ネットワーク及び方法を用いて、処理サー
バ１０２へ電子的に送信されてよい。ステップ４０４にて、処理サーバ１０２の受信装置
２０２は証明データを受信してよい。証明データは例えば、証明発行者１０６に関連付け
られた識別情報と、発行日時及び／又は有効日時と、要求（証明書が適用される主張）と
、証明発行者１０６に関連付けられた秘密鍵によって生成される発行者署名とを含んでよ
い。
【００５３】
ステップ４０６にて処理サーバ１０２は分散ハッシュテーブルに証明属性を格納する際
に使用するための証明データについての鍵を識別してよい。いくつかの実施形態では、鍵
は１以上のハッシュ化アルゴリズムを証明データに含まれるデータファイルに適用するこ
とによって処理サーバ１０２のハッシュ化モジュール２２０によって生成されてよい。結
果的なハッシュ値は本明細書で「証明書」として参照される。このときデータファイルは
証明発行者１０６から受信されてよいし、処理サーバ１０２の生成モジュール２１８によ
って生成されてよい。他の実施形態では鍵は証明データ（例えば証明属性はエンティティ
１０４のアイデンティティであり、これに対して証明データが関連付けられた）内で提供
されてよいし、又は、鍵が存在する特定のエンティティ１０４を識別する証明データに含
まれるデータに基づいて識別されてよい。ステップ４０８にて処理サーバ１０２の送信装
置２２２は証明データを、格納のために、適用されるデータ記憶装置１１０ａへ電子的に
送信してよい。このとき、適用されるデータ記憶装置１１０ａは識別された鍵を既に格納
する装置であってよいし、証明書（これは証明データにおいて識別されてよい）に関連付
けられた地理的領域１１２に位置する装置であってよい。
【００５４】
ステップ４１０にて要求元エンティティ１０８は証明書又は提示された関連データの検
証を要求してよい。例えば個人１０４ｃは安全化された領域への入力のために、証明発行
者１０６から、受信済み証明書を受信しているかもしれない。このとき個人１０４ｃはそ
の証明書を、安全化された領域へのアクセス点で警備員に提示する。警備員は例えばコン
ピューティング端末を用いて、処理サーバ１０２に対し、提示された証明書を検証する要
求を入力してよい。ステップ４１２にて、処理サーバ１０２の受信装置２０２は検証要求
を受信してよい。これは少なくとも、検証される証明書を含んでよい。
【００５５】
ステップ４１４にて処理サーバ１０２は、受信された証明書に関連付けられたデータ鍵
を識別してよい。いくつかの実施形態では、証明書はデータ鍵であってよい。他の実施形
態では、データ鍵は関連付けられたエンティティ１０４のアイデンティティであってよい
。これはルックアップテーブルによって、又は識別のための他の類似の方法によって、識
別されてよい。ステップ４１６にて問い合わせモジュール２１６はクエリを実行して、デ
ータ鍵に関連付けられた証明属性を識別してよく、例えばハッシュ値を再生成してそれを
提示された証明書と比較することによって、提示された証明書が正確であることを検証す
る。いくつかの実施形態では、検証はブロックチェーンを閲覧して、証明書を含む最も最
近のブロック（これは証明書を含む）内の証明書の状態を、それに関連付けられた状態指
示子に基づいて識別することを含んでよい。
【００５６】
ステップ４１８にて処理サーバ１０２の送信装置２２６は検証結果を、要求元エンティ
ティ１０８へ電子的に返信してよい。ステップ４２０にて要求元エンティティ１０８はそ
の結果を受信してよい。要求元エンティティ１０８は次いで、検証結果に基づいて動作し
てよい。例えば上記の例では、個人１０４ｃは、提示された証明書の検証に基づいて、安
全化された領域へのアクセスを与えられてよいし、そのアクセスを妨げられてよい。
【００５７】
アイデンティティデータの分散格納のための例示的方法
図５は鍵と値とのペアの一部として、分散ハッシュテーブルにアイデンティティデータ
を格納する方法５００を示す。
【００５８】
ステップ５０２にてエンティティデータは、複数のエンティティ（例えばエンティティ
１０４）につき、処理サーバ（例えば処理サーバ１０２）の受信装置（例えば受信装置２
０２）によって受信されてよい。エンティティデータは少なくとも、関連付けられた公開
鍵と、１以上の関連付けられた属性と、地理的管轄と、複数のエンティティのうち少なく
とも１つがどこで下位として示されるか、を含む。ステップ５０４にて、データファイル
は処理サーバの生成モジュール（例えば生成モジュール２１８）によって、複数のエンテ
ィティのそれぞれにつき生成されてよい。各データファイルは少なくとも、１以上の関連
付けられた属性と関連付けられた公開鍵とを含み、下位として示されたエンティティにつ
いてのデータファイルは上位のエンティティに関連付けられたデジタル署名を含む。
【００５９】
ステップ５０６にて、アイデンティティデータ値は、１以上のハッシュ化アルゴリズム
をそれぞれのエンティティにつき生成されたデータファイルへ適用することによって、処
理サーバのハッシュ化モジュール（例えばハッシュ化モジュール２２０）によって複数の
エンティティの各々につき生成されてよい。ステップ５０８では、処理サーバの問い合わ
せモジュール（例えば問い合わせモジュール２１６）によって分散ハッシュテーブルに対
しクエリが実行されて、複数のエンティティの各々につき鍵と値とのペアを格納してよい
。鍵はそれぞれのエンティティのアイデンティティ値であり、値はそれぞれのエンティテ
ィについての１以上の関連付けられた属性の各々を少なくとも含む。分散ハッシュテーブ
ルは複数の物理的なデータ記憶装置（例えばデータ記憶装置１１０）を含み、各データ記
憶装置は地理的領域（例えば地理的領域１１２）に位置し、鍵と値との各ペアは物理的な
データ記憶装置に格納され、関連付けられた地理的領域は、それぞれのエンティティにつ
いてのエンティティデータに含まれる地理的管轄に対応する。
【００６０】
一実施形態では、下位として示された各エンティティについてのエンティティデータは
、上位のエンティティと関連付けられたデジタル署名を含んでよい。いくつかの実施形態
では、下位であるとの標示は、上位のエンティティと関連付けられたデジタル署名であっ
てよい。一実施形態では、上位のエンティティ複数のエンティティの１つであってよい。
上位のエンティティに関連付けられたデジタル署名は、上位のエンティティのエンティテ
ィデータに含まれる関連付けられた公開鍵に対応する秘密鍵を用いて生成されてよい。更
なる実施形態では、上位のエンティティについてのエンティティデータは、関連付けられ
たデジタル署名を含んでよい。
【００６１】
アイデンティティデータの不変格納のための例示的方法
図６は、ブロックチェーンにアイデンティティデータを不変格納する方法６００を示す
。
【００６２】
ステップ６０２にて、ブロックチェーンは処理サーバ（例えば処理サーバ１０２）のメ
モリ（例えばメモリ２０６）に格納されてよい。このときブロックチェーンは複数のブロ
ックを含み、各ブロックはブロックデータと少なくともタイムスタンプを含むブロックヘ
ッダとを含む。ステップ６０４にて複数のエンティティ（例えばエンティティ１０４）に
ついてのエンティティデータは、処理サーバの受信装置（例えば受信装置２０２）によっ
て受信されてよい。エンティティデータは少なくとも、関連付けられた公開鍵と、１以上
の関連付けられた属性と、地理的管轄と、複数のエンティティのうち少なくとも１つがど
こで下位として示されるか、を含む。ステップ６０６にて、データファイルは処理サーバ
の生成モジュール（例えば生成モジュール２１８）によって、複数のエンティティのそれ
ぞれにつき生成されてよい。各データファイルは少なくとも、１以上の関連付けられた属
性と関連付けられた公開鍵とを含み、下位として示されたエンティティについてのデータ
ファイルは上位のエンティティに関連付けられたデジタル署名を含む。
【００６３】
ステップ６０８にて、アイデンティティデータ値は、１以上のハッシュ化アルゴリズム
をそれぞれのエンティティにつき生成されたデータファイルへ適用することによって、処
理サーバのハッシュ化モジュール（例えばハッシュ化モジュール２２０）によって複数の
エンティティの各々につき生成されてよい。ステップ６１０にて新たなブロックは処理サ
ーバの生成モジュールによって生成されてよい。このとき新たなブロックは新たなブロッ
クヘッダとブロックデータとを含む。ブロックヘッダは少なくとも、タイムスタンプと各
それぞれのブロックのブロックヘッダに含まれるタイムスタンプに基づいた、複数のブロ
ックのうち最も最近のブロックヘッダのハッシュ値とを含む。ブロックデータは複数のエ
ンティティの各々につき、生成されたアイデンティティ値を少なくとも含む。
【００６４】
一実施形態では、方法６００は更に、処理サーバの問い合わせモジュール（例えば問い
合わせモジュール２１６）によって、メモリ上でクエリを実行してよく、生成された新た
なブロックをブロックチェーンに追加することを含んでよい。いくつかの実施形態では、
方法６００はまた、処理サーバの送信装置（例えば送信装置２２２）によって、生成され
た新たなブロックを、ブロックチェーンに関連付けられたノードへ電子的に送信すること
を含んでよい。一実施形態では、上位のエンティティ複数のエンティティの１つであって
よい。上位のエンティティに関連付けられたデジタル署名は、上位のエンティティのエン
ティティデータに含まれる関連付けられた公開鍵に対応する秘密鍵を用いて生成されてよ
い。更なる実施形態では、上位のエンティティについてのエンティティデータは、関連付
けられたデジタル署名を含んでよい。
【００６５】
コンピュータシステムアーキテクチャ
図７は、コンピュータシステム７００を示す。そこには、本開示の実施形態又はその一
部が、コンピュータ読取り可能なコードとして実装されてよい。例えば図１の処理サーバ
１０２は、ハードウェア、ソフトウェア、ファームウェア、格納された命令を有する非一
時的なコンピュータ読取り可能な媒体、又はこれらの組合せを用いてシステム７００内に
実装されてよく、１以上のコンピュータシステム又は他の処理システムにおいて実装され
てよい。ハードウェア、ソフトウェア及びこれらの任意の組合せは、図４乃至６の方法を
実装するために使用されるモジュール及びコンポーネントを実現してよい。
【００６６】
プログラマブルロジックが使用される場合、そのようなロジックは、実行可能なソフト
ウェアコードで構成された商業的に利用可能な処理プラットフォーム上で実行され、特定
用途装置又は特別目的装置となってよい（例えばプログラマブルロジックアレイ、特定用
途向け集積回路等）。当業者は、開示された事項についての実施形態が、様々なコンピュ
ータシステム構成で実行可能であることを理解する。当該システム構成は、マルチコアの
マルチプロセッサシステムと、ミニコンピュータと、メインフレームコンピュータと、分
散された機能でリンクされ又はクラスタ化されたコンピュータと、任意の装置へ仮想的に
実装可能な汎用（pervasive）又はミニチュアのコンピュータとを含む。例えば少なくと
も１つのプロセッサ装置及びメモリが、上記実施形態を実装するために使用されてよい。
【００６７】
本開示のプロセッサユニット又は装置は、単一のプロセッサ、複数のプロセッサ、又は
これらの組合せであってよい。プロセッサ装置は、１以上のプロセッサ「コア」を有して
よい。本開示の「コンピュータプログラム媒体」、「非一時的なコンピュータ読取り可能
な媒体」及び「コンピュータ使用可能な媒体」との用語は、概して、有形の媒体（例えば
取外し可能なストレージユニット７１８、取外し可能なストレージユニット７２２及びハ
ードディスクドライブ７１２にインストールされたハードディスク等）を指すために使用
される。
【００６８】
本開示の様々な実施形態は、この例示的なコンピュータシステム７００に関して記述さ
れる。本開示を読んだ後、当業者にとって、他のコンピュータシステム及び／又はコンピ
ュータアーキテクチャを用いて本開示をどのように実装するかは自明である。動作はシー
ケンシャルな処理として開示されるが、いくつかの動作は実際には、並行して、同時に及
び／又は分散環境で、実行されてよい。このとき、プログラムコードは、単一プロセッサ
の又はマルチプロセッサのマシンによってアクセスするために、ローカルに又はリモート
に格納された状態である。更に、いくつかの実施形態では、動作の順番は、開示される事
項の趣旨を逸脱することなく再配置可能である。
【００６９】
プロセッサ装置７０４は、本開示の機能を実行するよう特別に構成された特定用途又は
汎用プロセッサ装置であってよい。プロセッサ装置７０４は、通信インフラストラクチャ
７０６（例えばバス、メッセージキュー、ネットワーク、マルチコアメッセージパススキ
ーム等）へ接続されてよい。ネットワークは、本開示の機能を実行するのに適した任意の
ネットワークであってよく、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネッ
トワーク（ＷＡＮ）、無線ネットワーク（例えばＷｉｆｉ）、モバイル通信ネットワーク
、衛星ネットワーク、インターネット、光ファイバ、同軸ケーブル、赤外線、無線周波数
（ＲＦ）又はこれらの任意の組合せを含んでよい。他の適切なネットワークタイプ及び構
成は、当業者にとって自明である。コンピュータシステム７００はまた、メインメモリ７
０８（例えばランダムアクセスメモリ、読み取り専用メモリ等）を含んでよく、また、補
助メモリ７１０を含んでよい。補助メモリ７１０は、ハードディスクドライブ７１２と取
外し可能なストレージドライブ７１４（例えばフロッピーディスクドライブ、磁気テープ
ドライブ、光ディスクドライブ、フラッシュメモリ等）とを含んでよい。
【００７０】
取外し可能なストレージドライブ７１４は、周知の方法で、取外し可能なストレージユ
ニット７１８から読み取りを行ってもよいし、そこへ書き込みを行ってもよい。取外し可
能なストレージユニット７１８は、取外し可能なストレージドライブ７１４によって読み
取られ又は書き込まれることができる、取外し可能なストレージ媒体を含んでよい。例え
ばもし取外し可能なストレージドライブ７１４がフロッピーディスクドライブ又はユニバ
ーサルシリアルバスポートであれば、取外し可能なストレージユニット７１８はそれぞれ
、フロッピーディスク又はポータブルフラッシュドライブであってよい。一実施形態では
、取外し可能なストレージユニット７１８は非一時的な読取り可能記録媒体であってよい
。
【００７１】
いくつかの実施形態では、補助メモリ７１０は代替手段を含み、コンピュータプログラ
ム又は他の命令がコンピュータシステム７００（例えば取外し可能なストレージユニット
７２２及びインタフェース７２０）にロードされることを可能にしてよい。そのような手
段の例は、（例えばビデオゲームシステムで見られる）プログラムカートリッジ及びカー
トリッジインタフェース、取外し可能なメモリチップ（例えばＥＥＰＲＯＭ、ＰＲＯＭ等
）、関連ソケット、他の取外し可能なストレージユニット７２２及びインタフェース７２
０を含んでよい。このことは当業者にとって自明である。
【００７２】
コンピュータシステム７００に（例えばメインメモリ７０８に及び／又は補助メモリ７
１０に）格納されたデータは、任意のタイプの適切なコンピュータ読取り可能な媒体（例
えば光ストレージ（コンパクトディスク、デジタル多目的ディスク、Blu-rayディスク等
）又は磁気テープストレージ（例えばハードディスクドライブ））上に格納されてよい。
データは任意のタイプの適切なデータベース構成（例えばリレーショナルデータベース、
構造化照会言語（ＳＱＬ）データベース、分散データベース、オブジェクトデータベース
等）で構成されてよい。適切な構成及びストレージタイプは、当業者にとって自明である
。
【００７３】
コンピュータシステム７００はまた、通信インタフェース７２４を含んでよい。通信イ
ンタフェース７２４は、ソフトウェア及びデータが、コンピュータシステム７００と外部
装置との間で送信されることを可能にしてよい。例示的な通信インタフェース７２４は、
モデム、ネットワークインタフェース（例えばイーサネットカード）、通信ポート、ＰＣ
ＭＣＩＡスロット及びカード等を含んでよい。
【００７４】
通信インタフェース７２４を介して転送されるソフトウェア及びデータは信号形式であ
ってよい。当該信号形式は、電子の、電磁気の、光の、又は当業者にとって自明な他の信
号のものであってよい。信号は、通信パス７２６を介して伝わる。当該通信パス７２６は
信号を伝送するよう構成され、電線、ケーブル、光ファイバ、電話線、携帯電話リンク、
無線周波数リンク等を用いて実装されてよい。
【００７５】
コンピュータシステム７００は表示インタフェース７０２を更に含んでよい。表示イン
タフェース７０２は、データが、コンピュータシステム７００と外部ディスプレイ７３０
との間で転送されることを可能にするよう構成されてよい。例示的な表示インタフェース
７０２は、高精細度マルチメディアインタフェース（ＨＤＭＩ）、デジタルビジュアルイ
ンタフェース（ＤＶＩ）、ビデオグラフィックスアレイ（ＶＧＡ）等を含んでよい。ディ
スプレイ７３０は任意の適切なタイプのディスプレイであってよく、コンピュータシステ
ム７００の表示インタフェース７０２を介して転送されるデータを表示する。ディスプレ
イ７３０は、ブラウン管（ＣＲＴ）ディスプレイ、液晶ディスプレイ（ＬＣＤ）、発光ダ
イオード（ＬＥＤ）ディスプレイ、静電容量方式タッチディスプレイ、薄膜トランジスタ
（ＴＦＴ）ディスプレイ等を含む。
【００７６】
コンピュータプログラム媒体及びコンピュータ使用可能な媒体は、メモリ（例えばメイ
ンメモリ７０８及び補助メモリ７１０）を指してよく、半導体メモリ（ＤＲＡＭ等）であ
ってよい。これらのコンピュータプログラム製品は、コンピュータシステム７００へソフ
トウェアを提供するための手段であってよい。コンピュータプログラム（例えばコンピュ
ータ制御ロジック）は、メインメモリ７０８及び／又は補助メモリ７１０に格納されてよ
い。コンピュータプログラムはまた、通信インタフェース７２４を介して受信されてよい
。そのようなコンピュータプログラムは、実行されると、コンピュータシステム７００が
本開示の方法を実行することを可能にしてよい。特に、コンピュータプログラムは、実行
されると、プロセッサ装置７０４が図４乃至６に示される本開示の方法を実行することを
可能にしてよい。したがって、そのようなコンピュータプログラムはコンピュータシステ
ム７００のコントローラを示す。本開示はソフトウェアを使用して実装される。当該ソフ
トウェアは、取外し可能なストレージドライブ７１４、インタフェース７２０、及びハー
ドディスクドライブ７１２又は通信インタフェース７２４を用いて、コンピュータプログ
ラム製品に格納されてコンピュータシステム７００へロードされてよい。
【００７７】
プロセッサ装置７０４は、コンピュータシステム７００の機能を実行するよう構成され
る１以上のモジュール又はエンジンを含んでよい。各モジュール又はエンジンは、ハード
ウェアを用いて実装されてよく、いくつかの実施形態ではソフトウェア（例えばこれは、
メインメモリ７０８又は補助メモリ７１０に格納されるプログラムコード又はプログラム
に対応する）を用いてよい。そのような実施形態では、プログラムコードは、コンピュー
タシステム７００のハードウェアによる実行前に、プロセッサ装置７０４によって（例え
ばモジュール又はエンジンをコンパイルすることによって）コンパイルされてよい。例え
ばプログラムコードは、低レベルの言語へと解釈されるプログラミング言語で記述された
ソースコード（例えばアセンブリ言語又は機械コード）であってよい。これは、プロセッ
サ装置７０４及び／又はコンピュータシステム７００の任意の追加のハードウェア構成要
素によって実行するためのものである。コンパイル処理は、語彙解析と、前処理と、解析
と、意味解析と、文法指向の翻訳と、コード生成と、コード最適化と、コンピュータシス
テム７００の制御のためにプログラムコードを低レベルの言語へ解釈して本開示の機能を
実行するのに適した任意の他の技術との使用を含んでよい。そのような処理によってコン
ピュータシステム７００が、上記の機能を実行するために一意にプログラムされた特別構
成コンピュータシステム７００になることは当業者にとって自明である。
【００７８】
本開示に一貫する技術は、とりわけ、アイデンティティデータを分散して不変に格納す
るシステム及び方法を提供する。本開示のシステム及び方法の様々な例示的実施形態が上
述されるが、それらは限定目的でなく例示目的のみで示されることを理解されたい。それ
は徹底したものでなく、本開示を、開示された形態そのものへ限定しない。上記の教示に
照らして修正例及び変形例が可能である。広がり又は範囲を逸脱すること無く、本開示の
実装から修正例及び変形例が得られてよい。
【図１】
2020184774.tif 000003
【図２】
2020184774.tif 000004
【図３】
2020184774.tif 000005
【図４】
2020184774.tif 000006
【図５】
2020184774.tif 000007
【図６】
2020184774.tif 000008
【図７】
2020184774.tif 000009
【手続補正書】
【提出日】令和2年7月31日(2020.7.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
アイデンティティデータの不変格納のための方法であって、
ブロックチェーンを処理サーバのメモリに格納するステップであって、前記ブロックチェーンは複数のブロックを含み、各ブロックはブロックデータと少なくともタイムスタンプを含むブロックヘッダとを含む、ステップと、
処理サーバの受信装置によって複数のエンティティのエンティティデータを受信するステップであって、前記エンティティデータは少なくとも、関連付けられた公開鍵と、１以上の関連付けられた属性と、地理的管轄とを含み、前記複数のエンティティのうち少なくとも１つは下位であるとして示される、ステップと、
前記処理サーバの生成モジュールによって、前記複数のエンティティの各々につきデータファイルを生成するステップであって、各データファイルは１以上の関連付けられた属性と関連付けられた公開鍵とを少なくとも含み、下位であるとして示されたエンティティについての前記データファイルは、上位のエンティティに関連付けられたデジタル署名を含む、ステップと、
前記処理サーバのハッシュ化モジュールによって、１以上のハッシュ化アルゴリズムを前記それぞれのエンティティにつき生成された前記データファイルへ適用することによって、前記複数のエンティティの各々についてアイデンティティ値を生成するステップと、
前記処理サーバの生成モジュールによって、新たなブロックヘッダとブロックデータとを含む新たなブロックを生成するステップであって、前記ブロックヘッダは少なくとも、タイムスタンプと各それぞれのブロックの前記ブロックヘッダに含まれる前記タイムスタンプに基づいた、前記複数のブロックのうち最も最近の前記ブロックヘッダのハッシュ値とを含み、前記ブロックデータは前記複数のエンティティの各々につき、前記生成されたアイデンティティ値を少なくとも含む、ステップと、
を含む方法。
【請求項２】
請求項１に記載の方法において、
前記処理サーバの問い合わせモジュールによって、前記メモリ上でクエリを実行し、前記生成された新たなブロックを前記ブロックチェーンに追加するステップを更に含む、方法。
【請求項３】
請求項１に記載の方法において、
前記処理サーバの送信装置によって、前記生成された新たなブロックを、前記ブロックチェーンに関連付けられたノードへ電子的に送信するステップを更に含む方法。
【請求項４】
請求項１に記載の方法において、
前記上位のエンティティは前記複数のエンティティの１つであり、
前記上位のエンティティに関連付けられた前記デジタル署名は、前記上位のエンティティの前記エンティティデータに含まれる前記関連付けられた公開鍵に対応する秘密鍵を用いて生成される、方法。
【請求項５】
請求項４に記載の方法において、前記上位のエンティティについての前記エンティティデータは、前記関連付けられたデジタル署名を含む、方法。
【請求項６】
アイデンティティデータの不変格納のためのシステムであって、
ブロックチェーンを格納するよう構成された、処理サーバのメモリであって、前記ブロックチェーンは複数のブロックを含み、各ブロックはブロックデータとブロックヘッダとを含み、前記ブロックヘッダは少なくともタイムスタンプを含む、メモリと、
複数のエンティティのエンティティデータを受信するよう構成された、処理サーバの受信装置であって、前記エンティティデータは少なくとも、関連付けられた公開鍵と、１以上の関連付けられた属性と、地理的管轄とを含み、前記複数のエンティティのうち少なくとも１つは下位であるとして示される、受信装置と、
前記複数のエンティティの各々につきデータファイルを生成するよう構成された、前記処理サーバの生成モジュールであって、各データファイルは前記１以上の関連付けられた属性と関連付けられた公開鍵とを少なくとも含み、下位であるとして示されたエンティティについての前記データファイルは、上位のエンティティに関連付けられたデジタル署名を含む、生成モジュールと、
１以上のハッシュ化アルゴリズムを前記それぞれのエンティティにつき生成された前記データファイルへ適用することによって、前記複数のエンティティの各々につきアイデンティティ値を生成するよう構成された、前記処理サーバのハッシュ化モジュールと
を含み、
前記処理サーバの生成モジュールは、新たなブロックヘッダとブロックデータとを含む新たなブロックを生成するよう構成され、前記ブロックヘッダは少なくとも、タイムスタンプと各それぞれのブロックの前記ブロックヘッダに含まれる前記タイムスタンプに基づいた、前記複数のブロックのうち最も最近の前記ブロックヘッダのハッシュ値とを含み、前記ブロックデータは前記複数のエンティティの各々につき、前記生成されたアイデンティティ値を少なくとも含む、システム。
【請求項７】
請求項６に記載のシステムにおいて、
前記メモリ上でクエリを実行し、前記生成された新たなブロックを前記ブロックチェーンに追加するよう構成された、前記処理サーバの問い合わせモジュールを更に含むシステム。
【請求項８】
請求項６に記載のシステムにおいて、
前記生成された新たなブロックを、前記ブロックチェーンに関連付けられたノードへ電子的に送信するよう構成された、前記処理サーバの送信装置を更に含むシステム。
【請求項９】
請求項６に記載のシステムにおいて、
前記上位のエンティティは前記複数のエンティティの１つであり、
前記上位のエンティティに関連付けられた前記デジタル署名は、前記上位のエンティティの前記エンティティデータに含まれる前記関連付けられた公開鍵に対応する秘密鍵を用いて生成される、システム。
【請求項１０】
請求項９に記載のシステムにおいて、前記上位のエンティティについての前記エンティティデータは、前記関連付けられたデジタル署名を含む、システム。
【外国語明細書】
2020184774000001.pdf