(57)【要約】ブロックチェーントランザクションを署名するためにデジタル署名を使用する方法は、ドメイン鍵ペアを生成するステップと、複数の会員公開鍵を受信するステップと、ドメイン秘密鍵を用いて会員公開鍵の各々を署名するステップと、前記ブロックチェーンネットワークの特定の会員からトランザクションブロックを受信するステップと、前記ドメイン秘密鍵を用いて、前記受信されたトランザクションブロックを署名するステップと、前記署名済みトランザクションブロックを電子的に送信するステップと、を含む。
2019505150.tif 000002
【特許請求の範囲】
【請求項１】
ブロックチェーントランザクションを署名するためにデジタル署名を使用する方法において、
処理サーバの生成モジュールによって、ドメイン秘密鍵とドメイン公開鍵とを含むドメイン鍵ペアを生成するステップであって、前記ドメイン公開鍵は生成後に署名される、ステップと、
前記処理サーバの受信装置によって複数の会員公開鍵を受信するステップであって、各会員公開鍵はブロックチェーンネットワークの関連会員から受信され、前記関連会員に対応する会員公開鍵と会員秘密鍵とを含む鍵ペアにおける公開鍵である、ステップと、
前記処理サーバの署名モジュールによって、前記ドメイン秘密鍵を用いて前記複数の会員公開鍵の各々を署名するステップと、
前記処理サーバの前記受信装置によって、前記ブロックチェーンネットワークの特定の会員からトランザクションブロックを受信するステップでって、前記トランザクションブロックは、複数のブロックチェーントランザクション値と、前記特定の会員に対応する前記会員秘密鍵を用いて署名されたハッシュとを含む、ステップと、
前記処理サーバの前記署名モジュールによって、前記ドメイン秘密鍵を用いて、前記受信されたトランザクションブロックを署名するステップと、
前記処理サーバの送信装置によって、前記署名されたトランザクションブロックを電子的に送信するステップと、を含む方法。
【請求項２】
請求項１に記載の方法において、更に、
前記処理サーバの前記送信装置によって、各署名済み会員公開鍵を、前記ブロックチェーンネットワークの１以上の会員へ電子的に送信するステップを含む、方法。
【請求項３】
請求項１に記載の方法において、前記ドメイン公開鍵は公共団体によって署名される、方法。
【請求項４】
請求項１に記載の方法において、前記ドメイン公開鍵は前記処理サーバの前記署名モジュールによって署名される、方法。
【請求項５】
請求項１に記載の方法において、
前記処理サーバの前記受信装置によって、前記ブロックチェーンネットワークの各会員から認証情報を受信するステップと、
前記処理サーバの認証モジュールによって、前記関連付けられた会員公開鍵を署名する前に、前記受信された認証情報を用いて、前記ブロックチェーンネットワークの各会員を認証するステップと、を含む方法。
【請求項６】
ブロックチェーントランザクションを署名するためにデジタル署名を使用する方法において、
処理サーバのメモリにブロックチェーンを格納するステップであって、前記ブロックチェーンは複数のトランザクションブロックを含み、各トランザクションブロックは少なくとも複数のブロックチェーントランザクション値を含む、ステップと、
前記処理サーバの生成モジュールによって、会員秘密鍵と会員公開鍵とを含む会員鍵ペアを生成するステップと、
前記処理サーバの送信装置によって、前記生成された会員公開鍵を、ブロックチェーンネットワークに関連付けられた署名権限者へ電子的に送信するステップと、
前記処理サーバの受信装置によって、新たなトランザクションブロックを含む複数のブロックチェーントランザクション値を受信するステップと、
前記処理サーバのハッシュ化モジュールによって、１以上のハッシュ化アルゴリズムを、前記ブロックチェーンに含まれる前記複数のトランザクションブロックのうち特定のブロックへ適用することによって、第１のハッシュ値をハッシュ化するステップと、
前記処理サーバの前記生成モジュールによって第２のハッシュ値を生成するステップであって、前記第２のハッシュ値は前記第１のハッシュ値に対応する、ステップと、
前記処理サーバの署名モジュールによって、前記生成された会員秘密鍵を用いて、前記生成された第２のハッシュ値を署名するステップと、
前記処理サーバの前記送信装置によって、前記新たなトランザクションブロックと前記署名された第２のハッシュ値とを前記署名権限者へ電子的に送信するステップと、を含む方法。
【請求項７】
請求項６に記載の方法において、前記第２のハッシュ値は、１以上のハッシュ化アルゴリズムを、前記受信された新たなトランザクションブロックへ適用することによって生成される、方法。
【請求項８】
請求項６に記載の方法において、前記処理サーバの前記送信装置によって、認証情報を前記署名権限者へ電子的に送信するステップを更に含む方法。
【請求項９】
請求項６に記載の方法において、
前記処理サーバの前記受信装置によって、署名済みトランザクションブロックと署名済みドメイン公開鍵とを前記署名権限者から受信するステップであって、前記署名済みトランザクションブロックは新たなトランザクションブロックと署名済みの第２のハッシュ値とを含み、前記署名済みドメイン公開鍵に対応するドメイン秘密鍵を用いて署名される、ステップと、
前記処理サーバの確認モジュールによって、前記会員公開鍵と署名済みドメイン公開鍵とを用いて、前記署名済みトランザクションブロックを確認するステップとを更に含む方法。
【請求項１０】
請求項９に記載の方法において、前記署名済みトランザクションブロックを確認することは、
前記署名済みドメイン公開鍵を前記署名済みトランザクションブロックへ適用して、前記新たなトランザクションブロックと署名済みの第２のハッシュ値とを生成することと、
前記会員公開鍵を前記署名済みの第２のハッシュ値へ適用して、前記第２のハッシュ値を生成することと、
前記生成された第２のハッシュ値を、前記生成された第２のハッシュ値に対応するものとして確認することと、を含む方法。
【請求項１１】
ブロックチェーントランザクションを署名するためにデジタル署名を使用するシステムにおいて、
処理サーバの送信装置と、
ドメイン秘密鍵とドメイン公開鍵とを含むドメイン鍵ペアを生成するよう構成された、前記処理サーバの生成モジュールであって、前記ドメイン公開鍵は生成後に署名される、生成モジュールと、
複数の会員公開鍵を受信するよう構成された、前記処理サーバの受信装置であって、各会員公開鍵はブロックチェーンネットワークの関連会員から受信され、前記関連会員に対応する会員公開鍵と会員秘密鍵とを含む鍵ペアにおける公開鍵である、受信装置と、
前記ドメイン秘密鍵を用いて前記複数の会員公開鍵の各々を署名するよう構成された、前記処理サーバの署名モジュールと、を含み、
前記処理サーバの前記受信装置は更に、前記ブロックチェーンネットワークの特定の会員からトランザクションブロックを受信するよう構成され、前記トランザクションブロックは複数のブロックチェーントランザクション値と、前記特定の会員に対応する前記会員秘密鍵を用いて署名されたハッシュとを含み、
前記処理サーバの前記署名モジュールは更に、前記ドメイン秘密鍵を用いて、前記受信されたトランザクションブロックを署名するよう構成され、
前記処理サーバの前記送信装置は更に、前記署名されたトランザクションブロックを電子的に送信するよう構成される、システム。
【請求項１２】
請求項１１に記載のシステムにおいて、前記処理サーバの前記送信装置は更に、各署名済み会員公開鍵を、前記ブロックチェーンネットワークの１以上の会員へ電子的に送信するよう構成される、システム。
【請求項１３】
請求項１１に記載のシステムにおいて、前記ドメイン公開鍵は公共団体によって署名される、システム。
【請求項１４】
請求項１１に記載のシステムにおいて、前記ドメイン公開鍵は前記処理サーバの前記署名モジュールによって署名される、システム。
【請求項１５】
請求項１１に記載のシステムにおいて、
前記処理サーバの認証モジュールを更に含み、
前記処理サーバの前記受信装置は、前記ブロックチェーンネットワークの各会員から認証情報を受信するよう更に構成され、
前記処理サーバの前記認証モジュールは、前記関連付けられた会員公開鍵を署名する前に、前記受信された認証情報を用いて、前記ブロックチェーンネットワークの各会員を認証するよう構成される、システム。
【請求項１６】
ブロックチェーントランザクションを署名するためにデジタル署名を使用するシステムにおいて、
処理サーバの署名モジュールと、
ブロックチェーンを格納するよう構成された、前記処理サーバのメモリであって、前記ブロックチェーンは複数のトランザクションブロックを含み、各トランザクションブロックは少なくとも複数のブロックチェーントランザクション値を含む、メモリと
会員秘密鍵と会員公開鍵とを含む会員鍵ペアを生成するよう構成された、前記処理サーバの生成モジュールと、
前記生成された会員公開鍵を、ブロックチェーンネットワークに関連付けられた署名権限者へ電子的に送信するよう構成された、前記処理サーバの送信装置と、
新たなトランザクションブロックを含む複数のブロックチェーントランザクション値を受信するよう構成された、前記処理サーバの受信装置と、
１以上のハッシュ化アルゴリズムを、前記ブロックチェーンに含まれる前記複数のトランザクションブロックのうち特定のブロックへ適用することによって、第１のハッシュ値を生成するよう構成された、前記処理サーバのハッシュ化モジュールと、を含み、
前記処理サーバの前記生成モジュールは更に、第２のハッシュ値を生成するよう構成され、前記第２のハッシュ値は前記第１のハッシュ値に対応し、
前記処理サーバの前記署名モジュールは、前記生成された会員秘密鍵を用いて、前記生成された第２のハッシュ値を署名するよう構成され、
前記処理サーバの前記送信装置は、前記新たなトランザクションブロックと署名済みの第２のハッシュ値とを前記署名権限者へ電子的に送信するよう構成される、システム。
【請求項１７】
請求項１６に記載のシステムにおいて、前記第２のハッシュ値は、１以上のハッシュ化アルゴリズムを、前記受信された新たなトランザクションブロックへ適用することによって生成される、システム。
【請求項１８】
請求項１６に記載のシステムにおいて、前記処理サーバの前記送信装置は、認証情報を前記署名権限者へ電子的に送信するよう構成される、システム。
【請求項１９】
請求項１６に記載のシステムにおいて、
前記処理サーバの確認モジュールを更に含み、
前記処理サーバの前記受信装置は、署名済みトランザクションブロックと署名済みドメイン公開鍵とを前記署名権限者から受信するよう構成され、前記署名済みトランザクションブロックは前記新たなトランザクションブロックと署名済みの第２のハッシュ値とを含み、前記署名済みドメイン公開鍵に対応するドメイン秘密鍵を用いて署名され、
前記処理サーバの前記確認モジュールは、前記会員公開鍵と署名済みドメイン公開鍵とを用いて、前記署名済みトランザクションブロックを確認するよう構成される、システム。
【請求項２０】
請求項１９に記載のシステムにおいて、前記署名済みトランザクションブロックを確認することは、
前記署名済みドメイン公開鍵を前記署名済みトランザクションブロックへ適用して、前記新たなトランザクションブロックと署名済みの第２のハッシュ値とを生成することと、
前記会員公開鍵を前記署名済みの第２のハッシュ値へ適用して、前記第２のハッシュ値を生成することと、
前記生成された第２のハッシュ値を、前記生成された第２のハッシュ値に対応するものとして確認することと、を含む、システム。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
本願は、米国特許出願第14/976,331号（2015年12月21日出願）の優先権を主張するものであり、当該出願の開示全体をここに参照のために取り込む。
【技術分野】
【０００２】
本開示はブロックチェーントランザクションに署名するためのデジタル署名の使用に関し、特に、ブロックチェーントランザクションの署名及び確認において使用するために複数エンティティによってデジタル署名を使用して追加の安全性及び一層効率的な確認を実現することに関する。
【背景技術】
【０００３】
ブロックチェーンは、電子的トランザクションの公共台帳（public  ledger）として使用される。ブロックチェーンへ追加されるトランザクションの各新たなブロックは、以前のブロックの更なる確認を提供する。これによりブロックチェーンは、ブロックチェーンが経時的に成長するにつれてより強固になる。ブロックチェーン内の過去のブロックは決して変更されないので、且つ、ブロックチェーンは過去のブロックを失わず破棄しないので、ブロックチェーンは全てのトランザクションについて（公共的にもアクセス可能な）不変の記録である。ブロックチェーンはまた、電子的トランザクションを実行する際に使用されることを促進する追加の利点（例えば匿名性と安全性）を提供する。
【０００４】
ブロックチェーンにつき新たなブロックを生成するために、多くのブロックチェーンは、ハッシュ化アルゴリズムを使用する広範な演算能力に依存する。当該ハッシュ化アルゴリズムは、ブルートフォース（brute  force）検索と組み合わされ、ブロックチェーン内の以前のブロックと一致するハッシュを生成する。当該検索への参加を促進するために、ブロックチェーンはしばしば任意の適切なコンピューティング装置を有する任意のユーザが参加することを可能にし、また、適切なハッシュ値を成功裏に検出したユーザへ報酬を提供する。一層のユーザが参加するにつれて且つ演算能力が増加するにつれて、ブロックチェーンは、電力及び演算能力の一層の無駄を経験することになる。
【０００５】
したがって、信頼可能且つ安全なブロックチェーンの新たなブロックが生成されるが演算と電力との膨大な無駄がないという技術的解決手段が必要である。検証され信頼された参加者による署名の使用は、新たなブロックが信頼可能且つ安全であることを確実にし、当該ブロックが、ブロックチェーンへの方眼のために適切に検証されることを可能にする。また、要求される演算能力は非常に減ることになる。更に信頼されたエンティティだけを使用することで、参加者のプールは限定されてよい。このことは、ブロックチェーンの新たなブロックを生成するために無駄になる電力量を低減する。したがって、ブロックチェーントランザクションを署名するために、参加者の信頼されたプールとデジタル署名とを使用する技術的解決手段が必要である、
【発明の概要】
【０００６】
本開示は、ブロックチェーントランザクションを署名するためにデジタル署名を使用するシステム及び方法を開示する。
【０００７】
ブロックチェーントランザクションを署名するためにデジタル署名を使用する方法は、
処理サーバの生成モジュールによって、ドメイン秘密鍵とドメイン公開鍵とを含むドメイン鍵ペアを生成するステップであって、前記ドメイン公開鍵は生成後に署名される、ステップと、
前記処理サーバの受信装置によって複数の会員公開鍵を受信するステップであって、各会員公開鍵はブロックチェーンネットワークの関連会員から受信され、前記関連会員に対応する会員公開鍵と会員秘密鍵とを含む鍵ペアにおける公開鍵である、ステップと、
前記処理サーバの署名モジュールによって、前記ドメイン秘密鍵を用いて前記複数の会員公開鍵の各々を署名するステップと、
前記処理サーバの前記受信装置によって、前記ブロックチェーンネットワークの特定の会員からトランザクションブロックを受信するステップでって、前記トランザクションブロックは、複数のブロックチェーントランザクション値と、前記特定の会員に対応する前記会員秘密鍵を用いて署名されたハッシュとを含む、ステップと、
前記処理サーバの前記署名モジュールによって、前記ドメイン秘密鍵を用いて、前記受信されたトランザクションブロックを署名するステップと、
前記処理サーバの送信装置によって、前記署名されたトランザクションブロックを電子的に送信するステップと、を含む。
【０００８】
ブロックチェーントランザクションを署名するためにデジタル署名を使用する他の方法は、
処理サーバのメモリにブロックチェーンを格納するステップであって、前記ブロックチェーンは複数のトランザクションブロックを含み、各トランザクションブロックは少なくとも複数のブロックチェーントランザクション値を含む、ステップと、
前記処理サーバの生成モジュールによって、会員秘密鍵と会員公開鍵とを含む会員鍵ペアを生成するステップと、
前記処理サーバの送信装置によって、前記生成された会員公開鍵を、ブロックチェーンネットワークに関連付けられた署名権限者へ電子的に送信するステップと、
前記処理サーバの受信装置によって、新たなトランザクションブロックを含む複数のブロックチェーントランザクション値を受信するステップと、
前記処理サーバのハッシュ化モジュールによって、１以上のハッシュ化アルゴリズムを、前記ブロックチェーンに含まれる前記複数のトランザクションブロックのうち特定のブロックへ適用することによって、第１のハッシュ値をハッシュ化するステップと、
前記処理サーバの前記生成モジュールによって第２のハッシュ値を生成するステップであって、前記第２のハッシュ値は前記第１のハッシュ値に対応する、ステップと、
前記処理サーバの署名モジュールによって、前記生成された会員秘密鍵を用いて、前記生成された第２のハッシュ値を署名するステップと、
前記処理サーバの前記送信装置によって、前記新たなトランザクションブロックと前記署名された第２のハッシュ値とを前記署名権限者へ電子的に送信するステップと、を含む。
【０００９】
ブロックチェーントランザクションを署名するためにデジタル署名を使用するシステムは、
処理サーバの送信装置と、
ドメイン秘密鍵とドメイン公開鍵とを含むドメイン鍵ペアを生成するよう構成された、前記処理サーバの生成モジュールであって、前記ドメイン公開鍵は生成後に署名される、生成モジュールと、
複数の会員公開鍵を受信するよう構成された、前記処理サーバの受信装置であって、各会員公開鍵はブロックチェーンネットワークの関連会員から受信され、前記関連会員に対応する会員公開鍵と会員秘密鍵とを含む鍵ペアにおける公開鍵である、受信装置と、
前記ドメイン秘密鍵を用いて前記複数の会員公開鍵の各々を署名するよう構成された、前記処理サーバの署名モジュールと、を含み、
前記処理サーバの前記受信装置は更に、前記ブロックチェーンネットワークの特定の会員からトランザクションブロックを受信するよう構成され、前記トランザクションブロックは複数のブロックチェーントランザクション値と、前記特定の会員に対応する前記会員秘密鍵を用いて署名されたハッシュとを含み、
前記処理サーバの前記署名モジュールは更に、前記ドメイン秘密鍵を用いて、前記受信されたトランザクションブロックを署名するよう構成され、
前記処理サーバの前記送信装置は更に、前記署名されたトランザクションブロックを電子的に送信するよう構成される。
【００１０】
ブロックチェーントランザクションを署名するためにデジタル署名を使用する他のシステムは、
処理サーバの署名モジュールと、
ブロックチェーンを格納するよう構成された、前記処理サーバのメモリであって、前記ブロックチェーンは複数のトランザクションブロックを含み、各トランザクションブロックは少なくとも複数のブロックチェーントランザクション値を含む、メモリと
会員秘密鍵と会員公開鍵とを含む会員鍵ペアを生成するよう構成された、前記処理サーバの生成モジュールと、
前記生成された会員公開鍵を、ブロックチェーンネットワークに関連付けられた署名権限者へ電子的に送信するよう構成された、前記処理サーバの送信装置と、
新たなトランザクションブロックを含む複数のブロックチェーントランザクション値を受信するよう構成された、前記処理サーバの受信装置と、
１以上のハッシュ化アルゴリズムを、前記ブロックチェーンに含まれる前記複数のトランザクションブロックのうち特定のブロックへ適用することによって、第１のハッシュ値を生成するよう構成された、前記処理サーバのハッシュ化モジュールと、を含み、
前記処理サーバの前記生成モジュールは更に、第２のハッシュ値を生成するよう構成され、前記第２のハッシュ値は前記第１のハッシュ値に対応し、
前記処理サーバの前記署名モジュールは、前記生成された会員秘密鍵を用いて、前記生成された第２のハッシュ値を署名するよう構成され、
前記処理サーバの前記送信装置は、前記新たなトランザクションブロックと署名済みの第２のハッシュ値とを前記署名権限者へ電子的に送信するよう構成される。
【図面の簡単な説明】
【００１１】
本開示の範囲は、添付の図面と共に解釈されると、例示的な実施形態についての下記の詳細な記載から最も良く理解される。図面には次の図が含まれる。
【００１２】
【図１】図１は機能ブロック図であり、例示的実施形態による、デジタル署名を用いてブロックチェーントランザクションを署名するためのハイレベルシステムアーキテクチャを示す。
【図２】図２は、例示的実施形態による、署名されたブロックチェーントランザクションを検証しブロックチェーンのブロックをデジタルに署名するための、図１の署名権限サーバを示すブロック図である。
【図３】図３は、例示的実施形態による、ブロックチェーントランザクションをデジタル署名してそれを確認するための図１の会員処理サーバを示すブロック図である。
【図４】図４は、例示的実施形態による、ブロックチェーントランザクションをデジタル署名する際に使用するための鍵を生成し署名し及び配布するための処理フローを示すフローチャートである。
【図５】図５は、例示的実施形態による、ブロックチェーンに含めるためにブロックチェーントランザクションのブロックを作成及びデジタル署名するための処理を示すフローチャートである。
【図６】図６は、例示的実施形態による、ブロックチェーントランザクションを署名するためのデジタル署名を用いる例示的な方法を示すフローチャートである。
【図７】図７は、例示的実施形態による、ブロックチェーントランザクションを署名するためのデジタル署名を用いる例示的な方法を示すフローチャートである。
【図８】図８は、例示的実施形態による、コンピュータシステムアーキテクチャを示す機能ブロック図である。
【００１３】
本開示の更なる応用分野は、下記の詳細な説明から自明である。例示的実施形態の詳細な説明は、例示目的のみを意図しており、本開示の範囲を必要的に制限することを意図しない。
【発明を実施するための形態】
【００１４】
用語解説
ブロックチェーン：ブロックチェーンを基礎とした通貨の全てのトランザクションの公共台帳（public  ledger）である。１以上のコンピュータ装置は、ブロックチェーンネットワークを含んでよく、これはブロックチェーンにおけるブロックの一部としてトランザクションを処理及び記録するよう構成されてよい。一旦ブロックが完成すると、当該ブロックはブロックチェーンへ追加され、したがってトランザクション記録が更新される。多くの実施形態では、ブロックチェーンは時系列順のトランザクションの台帳であってよいし、ブロックチェーンネットワークによる使用に適した他の順番で提示されてもよい。いくつかの実施形態では、ブロックチェーンで記録されたトランザクションは、宛先アドレスと通貨金額とを含んでよい。これによりブロックチェーンは、どれほどの通貨が特定のアドレスへ帰属するかを記録する。いくつかの実施形態では、追加情報（例えばソースアドレス、タイムスタンプ等）が捕捉されてよい。いくつかの実施形態では、ブロックチェーンはまた、追加の、又はいくつかの実施形態では、任意のデータを含んでよい。これは、プルーフオブワークを通るブロックチェーンネットワークによって、及び／又は、それに関連付けられた他の任意の適切な検証技術によって、確認及び有効化される。いくつかの実施形態では、そのようなデータはトランザクションの一部としてブロックチェーンに含まれてよい（例えばトランザクションデータに付加される追加データに含まれる）。いくつかの実施形態では、そのようなデータをブロックチェーンに含めることは、トランザクションを構成してよい。そのような実施形態では、ブロックチェーンは特定のデジタル通貨、仮想通貨、不換通貨又は他の種別の通貨に直接的に関連付けられなくてよい。
【００１５】
デジタル署名を用いてブロックチェーントランザクションを署名するシステム
図１は検証可能なデジタル署名を用いて、参加者の信頼済みプールによりブロックチェーントランザクションを署名するシステム１００を示す。
【００１６】
システム１００は署名権限サーバ１０２を含んでよい。署名権限サーバ１０２は、下記で詳述されるが、ブロックチェーンに関連付けられ、ブロックチェーンに含めるためにブロックチェーントランザクションのブロックをデジタル署名するよう構成されてよい。いくつかの実施形態では、ブロックチェーンは単一の署名権限サーバ１０２に関連付けられてよい。これは、ブロックチェーンへ追加される各ブロックをデジタル署名してよい。他の実施形態では、ブロックチェーンは複数の署名権限サーバ１０２に関連付けられてよい。その各々は、ブロックチェーンへ分離して追加されるブロックをデジタル署名（同時の又は冗長な署名）するよう構成されてよい。後者の場合、会員システムによるそれぞれの署名済みブロックの分離確認のために、異なる署名権限サーバ１０２は異なる鍵を有してよいし、同一の鍵を用いてよい。このとき結果として生じる署名済みブロックは、正確性のために比較され、会員システム又は他の署名権限サーバ１０２によって確認される。
【００１７】
システム１００はまた、図１に示す複数の会員処理サーバ１０４（会員処理サーバ１０４ａ及び１０４ｂ）を含んでよい。会員処理サーバ１０４は、下記で詳述されるが、ブロックチェーンに関連付けられ、ブロックチェーントランザクションをデジタル署名し、ブロックチェーンに含めるためにブロックをデジタル署名するよう構成されてよい。会員処理サーバ１０４はまた、ブロックチェーンに包含する前に、他の会員処理サーバ１０４又は署名権限サーバ１０２によって署名されたデジタル署名済みブロックを確認してよい。本開示のように、署名権限サーバ１０２及び会員処理サーバ１０４は「ブロックチェーンネットワーク」を含んでよい。これは、ブロックチェーンの管理及び維持において使用されるシステム及びインフラストラクチャを参照するものとして当業者に理解される。
【００１８】
システム１００はまた、図１に示す複数の参加者装置１０６（参加者装置１０６ａ、１０６ｂ、１０６ｃ、１０６ｄ、１０６ｅ、１０６ｆ）を含んでよい。各参加者装置１０６は、ブロックチェーンへ追加される新たなブロックに含めるために、新たなブロックチェーントランザクションを会員処理サーバ１０４へ提出するのに適したコンピューティング装置であってよい。コンピューティング装置はデスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、携帯電話、スマートフォン、スマートウォッチ、スマートテレビ、ウェアラブルコンピューティング装置、埋込式コンピューティング装置等であってよい。各参加者装置１０６は、ブロックチェーンへの送信のために、ブロックチェーントランザクションに関連付けられたデータを、会員処理サーバ１０４へ電子的に送信してよい。会員処理サーバ１０４へ送信されるデータは、トランザクション種別、ブロックチェーンの特性、及び他の基準に基づいてよく、また、例えば、発信元アドレス、宛先アドレス及び移転されるブロックチェーン通貨金額を含んでよい。いくつかの実施形態では、複数の発信元又は宛先アドレスが含まれてよい。発信元アドレスは、関連ブロックチェーン通貨の承認済みユーザとしての確認のために、参加者装置１０６によってデジタル署名されてよい。
【００１９】
ブロック及び他のデータをデジタル署名するときに使用するために、署名権限サーバ１０２はドメイン鍵ペアを生成してよい。ドメイン鍵ペアはドメイン秘密鍵と対応するドメイン公開鍵とを含んでよい。ドメイン鍵はブロック及び他のデータの署名のために使用されてよい。このときドメイン秘密鍵はデータの一部を署名するために使用されてよい。ドメイン公開鍵は、署名を確認し又は検証するために（例えば他のエンティティ（例えば会員処理サーバ１０４）によって）使用されてよい。ドメイン鍵ペアは、任意の適切な鍵ペア生成アルゴリズムを用いて生成されてよい。ドメイン秘密鍵を用いてデータをデジタル署名する処理は、本開示の機能と調和する秘密鍵を用いてデータをデジタル署名するための任意の適切な方法を用いてよい。
【００２０】
一旦ドメイン鍵ペアが生成されると、署名権限サーバ１０２はドメイン公開鍵を署名してよい。いくつかの実施形態では、ドメイン公開鍵は署名権限サーバ１０２によって自己署名されてよい。いくつかの実施形態では、ドメイン公開鍵は、もし署名権限サーバ１０２と会員処理サーバ１０４とが関連ブロックチェーンへのアクセス及び／又は提出のために閉ネットワークの一部であるときに、自己署名されてよい。他の実施形態では、ドメイン公開鍵は公共団体（例えば、公開鍵を署名するよう構成された信頼された第三者エンティティ）によって署名されてよい。信頼された第三者は、ドメイン公開鍵を署名してよい。その署名は、ブロックチェーンネットワーク内の１以上の会員処理サーバ１０４によって確認されてよい。
【００２１】
各会員処理サーバ１０４はまた、鍵ペアを生成してよい。これは、「会員」鍵ペアとして本開示にて参照される。各会員鍵ペアは、会員秘密鍵と対応する会員公開鍵とを含んでよい。いくつかの実施形態では、ドメイン鍵ペアの生成において署名権限サーバ１０２によって使用される同一の鍵ペア生成アルゴリズムを用いて、会員鍵ペアが生成されてよい。各会員処理サーバ１０４は自身のそれぞれの会員秘密鍵を安全に格納してよいし、自身のそれぞれの会員公開鍵を、署名のための署名権限サーバ１０２へ電子的に送信してよい。会員公開鍵は、任意の適切な種別の通信ネットワーク又は方法（例えばローカルエリアネットワーク、ワイドエリアネットワーク、無線エリアネットワーク、無線周波数、Bluetooth、近距離通信、インターネット等）を用いて送信されるデータ信号上への重畳によって、署名権限サーバ１０２へ電子的に送信されてよい。
【００２２】
署名権限サーバ１０２はドメイン秘密鍵を用いて会員公開鍵の各々を署名するよう構成されてよい。署名済み会員公開鍵は次いで、署名済みブロック及びブロックチェーントランザクションの確認において後に使用するために、会員処理サーバ１０４へ再配布されてよい。いくつかの実施形態では、各会員処理サーバ１０４は、ブロックチェーンネットワーク内の１以上の他の会員処理サーバ１０４につき、（例えば１以上の他の会員処理サーバ１０４によってなされた署名を確認するときに使用するために、等）署名済み会員公開鍵を受信してよい。いくつかの実施形態では、署名権限サーバ１０２はまた、ドメイン秘密鍵を用いて署名権限サーバ１０２によってなされる署名を確認する際に使用するために、署名済みドメイン公開鍵を１以上の会員処理サーバ１０４へ配布してよい。
【００２３】
いくつかの実施形態では、署名権限サーバ１０２は、会員処理サーバ１０４へ任意の鍵を配布する前に、会員処理サーバ１０４を認証するよう構成されてよい。会員処理サーバ１０４の認証はは、標準的な登録スキームを用いて実行されてよい。これにより、会員処理サーバ１０４及び／又はそれに関連付けられたエンティティは、ブロックチェーントランザクションをデジタル署名する際に使用するための信頼されたサーバとして、署名権限サーバ１０２へ登録してよい。例えば会員処理サーバ１０４は産業証明書、識別情報、詳細装置データ等を、登録処理の一部として署名権限サーバ１０２へ提供してよい。これは、データの確実性を検証してよいし、サーバをブロックチェーン内の会員処理サーバ１０４（これに対して鍵が配布されてよい）として登録してよい。いくつかの実施形態では、署名権限サーバ１０２は処理サーバ（これはブロックチェーントランザクションをデジタル署名する際に使用するために会員処理サーバ１０４として登録されるよう試行する）の適切性を点検又は判定してよい。当該判定は例えば、処理サーバの技術レベルと、サーバと関連コンピュータシステムとによって使用される安全プロトコルと、内部ネットワークインフラストラクチャ等に基づいてよい。いくつかの実施形態では、署名権限サーバ１０２は、（例えば安全性の理由で制限された規模である、信頼された会員処理サーバ１０４の群まで）会員処理サーバ１０４の数を制限してよい。
【００２４】
登録され且つ署名済み会員公開鍵と署名済みドメイン公開鍵とを受信した後、会員処理サーバ１０４は、ブロックチェーンへの送信のために、ブロックチェーントランザクションを受信してよい。ブロックチェーンにつき新たなブロックを生成するために、会員処理サーバ１０４は、新たなブロックが追加される対象であるブロックチェーン内の以前のブロックのハッシュに対応するハッシュを検索する必要がある。会員処理サーバ１０４は、１以上の適切なハッシュ化アルゴリズムを用いて以前のブロックをハッシュ化し、第１のハッシュ値を取得してよい。会員処理サーバ１０４は次いで、第１のハッシュ値に対応する第２のハッシュ値を検索してよい。その対応関係は、完全一致（例えば両方のハッシュ値が一致）であってよいし、１以上の他の方法で対応するものであってよい（例えば第２のハッシュ値は第１のハッシュ値の逆、ハッシュ値内の特定の数値が一致、第１のハッシュ値内の最後の文字が第２のハッシュ値の最初の文字に一致）。許容可能な対応関係は、検索用の所望の時間長、所望の安全性レベル、ブロックチェーンネットワークの設定等に基づいてよい。
【００２５】
適切な第２のハッシュ値が検出されると、会員処理サーバ１０４は当該ハッシュ値を、自身の会員秘密鍵を用いて署名してよい。会員処理サーバ１０４は次いでブロックチェーントランザクションを含むブロックと署名済みハッシュ値とを、署名権限サーバ１０２へ電子的に送信してよい。署名権限サーバ１０２はドメイン秘密鍵を用いてブロックを署名してよい。署名権限サーバ１０２はデジタル署名されたブロックを、確認のために１以上の会員処理サーバ１０４へ配布してよい。いくつかの実施形態では、デジタル署名されたブロックは、ブロックが生じた会員処理サーバ１０４以外の会員処理サーバ１０４によって確認されてよい。例えば図１に示す例では、会員処理サーバ１０４ａはトランザクションと署名済みハッシュ値とを署名権限サーバ１０２へ提供してよい。署名済みブロックは確認のために会員処理サーバ１０４ｂへ配布されてよい。
【００２６】
会員処理サーバ１０４は、ブロックを署名した署名権限サーバ１０２に関連付けられた署名済みドメイン公開鍵を使用してよいし、ハッシュ値を署名した会員処理サーバ１０４に関連付けられた署名済み会員公開鍵を使用してよく、ブロックを確認してよい。ブロックの確認は、署名済みドメイン公開鍵を署名済みブロックへ、適切なハッシュ化アルゴリズムを用いて適用することを含んでよく、トランザクションと署名済みハッシュ値とを生成してよい（又は署名済み会員公開鍵を署名済みハッシュ値へ適用して未署名ハッシュ値を生成してよい）。未署名ハッシュ値は次いで、ブロックチェーン（これに対して新たなブロックが追加される）内の以前のブロックのハッシュ値と一致するものとして検証されてよい。一旦ブロックが確認されると、新たなブロックはブロックチェーンへ追加されてよい。いくつかの実施形態では、ブロックは複数の会員処理サーバ１０４よってまず確認されてよい。いくつかの実施形態では、新たなブロックは参加者装置１０６によって確認されてよい。そのような実施形態では、参加者装置１０６は署名済みドメイン公開鍵と署名済み会員公開鍵とを、上記の署名済みブロックを確認する処理において使用するために、受信してよい。いくつかの実施形態では、会員処理サーバ１０４又は確認を実行する参加者装置１０６はまた、ドメイン公開鍵の証明信頼チェーン（certificate  trust  chain）（例えばこれは信頼された第三者エンティティによってドメイン公開鍵を署名する際に使用される）を確認してよい。
【００２７】
本開示の方法及びシステムは、ブロックチェーン内のブロックチェーントランザクションの新たなブロックを署名し確認する処理を提供する。当該処理は、より少ない演算能力で実行可能であり、電力の無駄を低減することができつつも、既存のブロックチェーンシステムにて使用されるのと同一レベルの安全性を維持する。デジタル署名を使用することによって、トランザクションブロックの安全性と確実性とが維持され、使用される演算能力はより少ない。これによって更に、ブロックチェーンへブロックを一層効率的に追加することができ、今度はブロックチェーンネットワーク内の追加のノードの使用を不要にし、電力の無駄を低減する。更にデジタル署名を使用することで、参加者装置１０６はトランザクションブロックを確認することが可能である。当該確認は、演算上の要件が理由で、従来のブロックチェーンネットワーク内の参加者装置にとって、不可能又は非実用的である。
【００２８】
署名権限サーバ
図２は、システム１００の署名権限サーバ１０２の実施形態を示す。当業者にとって、図２に示す署名権限サーバ１０２の実施形態が、例示目的のみで提供されることと、本開示の機能を実行するのに適した、署名権限サーバ１０２の全ての可能な構成を徹底的に示したものでないことは自明である。例えば図８に示され下記で一層詳細に説明されるコンピュータシステム８００が、署名権限サーバ１０２の適切な構成であってよい。
【００２９】
署名権限サーバ１０２は受信装置２０２を含んでよい。受信装置２０２は１以上のネットワークプロトコルを介して１以上のネットワーク上でデータを受信するよう構成されてよい。他の実施形態では受信装置２０２は、データを、例えば会員処理サーバ１０４、参加者装置１０６、及び他のエンティティ（例えばローカルエリアネットワーク、ワイドエリアネットワーク、無線周波数ネットワーク、インターネット等）から、適切な通信ネットワークを介して受信してよい。いくつかの実施形態では、受信装置２０２は複数の装置（例えば、異なるネットワーク上でデータを受信する異なる受信装置（例えば近距離通信でデータを受信する第１の受信装置と、インターネット上でデータを受信する第２の受信装置））を含んでよい。受信装置２０２は送信される電子的なデータ信号を受信してよい。このとき、受信装置２０２によるデータ信号の受信によって、データはデータ信号上に重ねられ、復号、解析（パース）、読取り、又は取得されてよい。いくつかの実施形態では、受信装置２０２は、受信されたデータ信号を解析して、そこに重畳されたデータを取得するための解析モジュールを含んでよい。例えば受信装置２０２は、受信されたデータ信号を受信し、処理装置によって実行される機能のための利用可能な入力へと変換して本開示の方法及びシステムを実行するよう構成される解析プログラムを含んでよい。
【００３０】
受信装置２０２は会員処理サーバ１０４によって電子的に送信されたデータ信号を受信するよう構成されてよい。会員処理サーバ１０４からのデータ信号は、署名のために、トランザクションブロックと署名済みハッシュ値と共に、署名用の会員公開鍵に重畳されてよく、署名済みトランザクションブロック上で実行された確認処理から生じてよい。受信装置２０２は参加者装置１０６によって電子的に送信されたデータ信号を受信するよう構成されてよい。これは、当該データ信号は確認結果に重畳されてよい。いくつかの実施形態では、受信装置２０２は第三者エンティティからデータ信号（例えばドメイン公開鍵の署名中に受信されたデータ信号）を受信してよい。
【００３１】
署名権限サーバ１０２はまた通信モジュール２０４を含んでよい。通信モジュール２０４は、本開示の機能を実行する際に使用するために、モジュール、エンジン、データベース、メモリ、及び署名権限サーバ１０２の他の構成要素の間でデータを転送するよう構成されてよい。通信モジュール２０４は１以上の通信種別を含んでよく、コンピューティング装置内での通信のために様々な通信方法を使用してよい。例えば通信モジュール２０４はバス、接続ピンコネクタ、ケーブル等を含んでよい。いくつかの実施形態では、通信モジュール２０４はまた、署名権限サーバ１０２の内部構成要素と署名権限サーバ１０２の外部構成要素（例えば外部で接続されたデータベース、表示装置、入力装置等）との間で通信するよう構成されてよい。署名権限サーバ１０２は処理装置を含んでよい。処理装置は本開示の署名権限サーバ１０２の機能を実行するよう構成されてよい。このことは、当業者にとって自明である。いくつかの実施形態では、処理装置は、処理装置の１以上の機能を実行するよう特別に構成された複数のエンジン及び／又はモジュール（例えば問い合わせモジュール２０６、生成モジュール２０８、署名モジュール２１０、認証モジュール２１２等）を含んでよい。本開示のように、「モジュール」との用語は、入力を受信し、当該入力を使用して１以上の処理を実行し、且つ出力を提供するよう特別にプログラムされたソフトウェア又はハードウェアであってよい。様々なモジュールによって実行される入力、出力及び処理は、本開示に基づいて、当業者にとって自明である。
【００３２】
署名権限サーバ１０２はまた問い合わせモジュール２０６を含んでよい。問い合わせモジュール２０６はデータベース上のクエリを実行して情報を識別するよう構成されてよい。問い合わせモジュール２０６は１以上のデータ値又はクエリ列を受信してよく、それに基づいて、示されたデータベース（例えばメモリ２１６）上でクエリ列を実行して、そこに格納された情報を識別してよい。問い合わせモジュールは次いで、識別された情報を、必要に応じて署名権限サーバ１０２の適切なエンジン又はモジュールへ出力してよい。例えば問い合わせモジュール２０６はメモリ２１６上でクエリを実行して、本開示の方法で使用するために、鍵、ブロックチェーンデータ及び他のデータを識別してよい。
【００３３】
署名権限サーバ１０２はまた生成モジュール２０８を含んでよい。生成モジュール２０８は鍵ペアと共有済み秘密事項とを生成するよう構成されてよい。生成モジュール２０８は、入力値としてデータを受信してよいし、要求された機能を実行してデータを生成してよいし、署名権限サーバ１０２の他のモジュール又はエンジンへ、要求されたデータを出力してよい。例えば生成モジュール２０６は鍵ペア（例えば、ブロックチェーンに含めるためにブロックチェーントランザクションの新たなブロックの署名及び確認にて使用されるドメイン鍵ペア）を生成するよう構成されてよい。生成モジュール２０６は、任意の適切な鍵ペア生成アルゴリズムを用いてドメイン公開鍵を生成してよい。ドメイン鍵ペアはドメイン秘密鍵と対応するドメイン公開鍵とを含んでよい。
【００３４】
署名権限サーバ１０２はまた署名モジュール２１０を含んでよい。署名モジュール２１０は、署名されるデータを受信してよいし、秘密鍵を用いて当該データを署名してよいし、署名権限サーバ１０２の他のモジュール又はエンジンへ、署名済みデータを出力してよい。いくつかの実施形態では、署名モジュール２１０はまた、署名用に用いる秘密鍵の提供を受けてよい。他の実施形態では、署名モジュール２１０は、例えば命令を問い合わせモジュール２０６へ発行することによって、秘密鍵を取得してよく、データの署名にて使用するためにメモリ２１６内の秘密鍵を識別してよい。署名モジュール２１０は例えば、会員公開鍵と完了済みトランザクションブロックとを、生成モジュール２０８によって生成されたドメイン秘密鍵を用いて署名してよい。いくつかの実施形態では、署名モジュール２１０はまた、生成モジュール２０８によって生成されたドメイン秘密鍵を自己署名してよい。
【００３５】
署名権限サーバ１０２はまた認証モジュール２１２を含んでよい。認証モジュール２１２は認証のためのデータを受信してよいし、データを認証してよいし、認証の結果（例えば成功又は失敗）を、署名権限サーバ１０２の他のモジュール又はエンジンへ出力してよい。例えば署名権限サーバ１０２は会員処理サーバ１０４からデータ（例えばこれは受信装置２０２を介して受信される）を受信してよい。これは、標準的な登録処理の一部として認証モジュール２１２によって認証されてよい。当該認証モジュール２１２は、ブロックチェーンネットワーク内のノードとして会員処理サーバ１０４を登録してよい。
【００３６】
署名権限サーバ１０２は送信装置２１４を含んでよい。送信装置２１４は１以上のネットワークプロトコルを介して１以上のネットワーク上でデータを送信するよう構成されてよい。他の実施形態では送信装置２１４は、データを、例えば会員処理サーバ１０４、参加者装置１０６、及び他のエンティティ（例えばローカルエリアネットワーク、ワイドエリアネットワーク、無線周波数ネットワーク、インターネット等）へ、適切な通信ネットワークを介して送信してよい。いくつかの実施形態では、送信装置２１４は複数装置（例えば、異なるネットワーク上でデータを送信するための異なる送信装置（例えば近距離通信でデータを送信する第１の送信装置と、インターネット上でデータを送信する第２の送信装置））を含んでよい。送信装置２１４は、重畳されたデータであって受信コンピューティング装置によって解析されるデータを有するデータ信号を電子的に送信してよい。いくつかの実施形態では、送信装置２１４は、データを重畳しエンコードし、又はデータを送信に適したデータ信号へ整形する１以上のモジュールを含んでよい。
【００３７】
送信装置２１４は、データ信号を会員処理サーバ１０４へ電子的に送信するよう構成されてよい。会員処理サーバ１０４へ電子的に送信されたデータ信号は、署名済み公開鍵に重畳されてよく、これは、署名済み会員公開鍵及び署名済みドメイン公開鍵と、確認用の署名済みトランザクションブロックとを含む。送信装置２１８はまた、署名済みトランザクションブロックに重畳されたデータ信号を、確認のために参加者装置１０６へ電子的に送信してよい。いくつかの実施形態では、送信装置２１４は第三者エンティティへデータ信号（例えば信頼された第三者による署名のためにドメイン公開鍵に重畳されたデータ信号）を電子的に送信してよい。
【００３８】
署名権限サーバ１０２はまた、メモリ２１６を含んでよい。メモリ２１６は、本開示の機能を実行するときに署名権限サーバ１０２によって使用されるためのデータを格納するよう構成されてよい。メモリ２１６は、データ整形方法及びスキーマを用いてデータを格納するよう構成されてよく、また、任意の適切な種類のメモリ（例えば読み取り専用メモリ、ランダムアクセスメモリ等）であってよい。メモリ２１６は例えばドメイン秘密鍵、署名済みドメイン公開鍵、署名済み会員公開鍵、各署名済み会員公開鍵を会員処理サーバ１０４、ブロックチェーン等へ関連付けるデータを含んでよい。メモリ２１６は、鍵ペア生成アルゴリズムと、ハッシュ化アルゴリズムと、本開示の署名権限サーバ１０２の機能を実行するための他のアルゴリズムとを格納してよい。
【００３９】
署名権限サーバ
図２は、システム１００の会員処理サーバ１０４の実施形態を示す。当業者にとって、図２に示す会員処理サーバ１０４の実施形態が、例示目的のみで提供されることと、本開示の機能を実行するのに適した、会員処理サーバ１０４の全ての可能な構成を徹底的に示したものでないことは自明である。例えば図８に示され下記で一層詳細に説明されるコンピュータシステム８００が、会員処理サーバ１０４の適切な構成であってよい。
【００４０】
会員処理サーバ１０４は受信装置３０２を含んでよい。受信装置３０２は１以上のネットワークプロトコルを介して１以上のネットワーク上でデータを受信するよう構成されてよい。他の実施形態では受信装置３０２は、データを、例えば署名権限サーバ１０４、参加者装置１０６、及び他のエンティティ（例えばローカルエリアネットワーク、ワイドエリアネットワーク、無線周波数ネットワーク、インターネット等）から、適切な通信ネットワークを介して受信してよい。いくつかの実施形態では、受信装置３０２は複数の装置（例えば、異なるネットワーク上でデータを受信する異なる受信装置（例えば近距離通信でデータを受信する第１の受信装置と、インターネット上でデータを受信する第２の受信装置））を含んでよい。受信装置３０２は送信される電子的なデータ信号を受信してよい。このとき、受信装置３０２によるデータ信号の受信によって、データはデータ信号上に重ねられ、復号、解析（パース）、読取り、又は取得されてよい。いくつかの実施形態では、受信装置３０２は、受信されたデータ信号を解析して、そこに重畳されたデータを取得するための解析モジュールを含んでよい。例えば受信装置３０２は、受信されたデータ信号を受信し、処理装置によって実行される機能のために利用可能な入力値へと変換して、本開示の方法及びシステムを実行するよう構成される解析プログラムを含んでよい。
【００４１】
受信装置３０２は署名権限サーバ１０２によって電子的に送信されたデータ信号を受信するよう構成されてよい。署名権限サーバ１０２から受信されたデータ信号は、会員処理サーバ１０４による確認のために、署名済みドメイン公開鍵と署名済み会員公開鍵と（署名済みトランザクションブロックも同様）に重畳されてよい。受信装置３０２はまた、参加者装置１０６からデータ信号を受信するよう構成されてよい。これは、新たなブロックへ含めるために、ブロックチェーントランザクションと（参加者装置１０６が新たなブロックの確認を実行する場合の）確認結果に重畳されてよい。
【００４２】
会員処理サーバ１０４はまた通信モジュール３０４を含んでよい。通信モジュール３０４は、本開示の機能を実行する際に使用するために、モジュール、エンジン、データベース、メモリ、及び会員処理サーバ１０４の他の構成要素の間でデータを転送するよう構成されてよい。通信モジュール３０４は１以上の通信種別を含んでよく、コンピューティング装置内での通信のために様々な通信方法を使用してよい。例えば通信モジュール３０４はバス、接続ピンコネクタ、ケーブル等を含んでよい。いくつかの実施形態では、通信モジュール３０４はまた、会員処理サーバ１０４の内部構成要素と会員処理サーバ１０４の外部構成要素（例えば外部で接続されたデータベース、表示装置、入力装置等）との間で通信するよう構成されてよい。会員処理サーバ１０４はまた、処理装置を含んでよい。処理装置は本開示の会員処理サーバ１０４の機能を実行するよう構成されてよい。このことは、当業者にとって自明である。いくつかの実施形態では、処理装置は、処理装置の１以上の機能を実行するよう特別に構成された複数のエンジン及び／又はモジュール（例えば問い合わせモジュール３０６、生成モジュール３０８、署名モジュール３１０、確認モジュール３１２等）を含んでよい。本開示のように、「モジュール」との用語は、入力を受信し、当該入力を使用して１以上の処理を実行し、且つ出力を提供するよう特別にプログラムされたソフトウェア又はハードウェアであってよい。様々なモジュールによって実行される入力、出力及び処理は、本開示に基づいて、当業者にとって自明である。
【００４３】
会員処理サーバ１０４はまた問い合わせモジュール３０６を含んでよい。問い合わせモジュール３０６はデータベース上のクエリを実行して情報を識別するよう構成されてよい。問い合わせモジュール３０６は１以上のデータ値又はクエリ列を受信してよく、それに基づいて、示されたデータベース（例えばメモリ３１６）上でクエリ列を実行して、そこに格納された情報を識別してよい。問い合わせモジュールは次いで、識別された情報を、必要に応じて会員処理サーバ１０４の適切なエンジン又はモジュールへ出力してよい。問い合わせモジュール３０６は例えばメモリ３１６上でクエリを実行して、本開示の方法で使用するために、鍵、ブロックチェーンデータ及び他のデータを識別してよい。
【００４４】
会員処理サーバ１０４はまた生成モジュール３０８を含んでよい。生成モジュール３０８は鍵ペアと共有済み秘密事項とを生成するよう構成されてよい。生成モジュール３０８は、入力値としてデータを受信してよいし、要求された機能を実行してデータを生成してよいし、会員処理サーバ１０４の他のモジュール又はエンジンによる使用のために、要求されたデータを出力してよい。例えば生成モジュール３０６は鍵ペア（例えば、ハッシュ値の署名と、ブロックチェーンに含めるためのブロックチェーントランザクションの新たなブロックの確認とにて使用される会員鍵ペア）を生成するよう構成されてよい。生成モジュール３０６は、任意の適切な鍵ペア生成アルゴリズムを用いて会員鍵ペアを生成してよい。会員鍵ペアは、会員秘密鍵と対応する会員公開鍵とを含んでよい。生成モジュール３０６は、ハッシュ値を生成するよう構成されてよい。ハッシュ値は１以上のハッシュ化アルゴリズムを、その生成のためのデータへ適用することで生成されてよい。例えば生成モジュール３０６は、ブロックチェーン内のブロックのためのハッシュ値を生成するよう構成されてよい。生成モジュール３０６はまた、適切な方法を用いて（例えばハッシュ化アルゴリズムをデータへ適用すること、１以上のアルゴリズムを使用して演算を実行すること等によって）、一致する又は対応するハッシュ値を生成してよい。
【００４５】
会員処理サーバ１０４はまた署名モジュール３１０を含んでよい。署名モジュール３１０は、署名されるデータを受信してよいし、秘密鍵を用いて当該データを署名してよいし、会員処理サーバ１０４の他のモジュール又はエンジンへ、署名済みデータを出力してよい。いくつかの実施形態では、署名モジュール３１０は署名のために用いるための秘密鍵の提供を受けてよい。他の実施形態では、署名モジュール３１０は、例えば命令を問い合わせモジュール３０６へ発行することによって、秘密鍵を取得してよく、データの署名にて使用するためにメモリ３１６内の秘密鍵を識別してよい。例えば署名モジュール３１０は例えば、生成モジュール２０８によって生成されたハッシュ値を署名してよく、ブロックチェーン内に含まれる新たなブロックにブロックチェーントランザクションと共に含めてよい。
【００４６】
会員処理サーバ１０４はまた確認モジュール３１２を含んでよい。確認モジュール３１２は確認のためのデータを受信してよいし、データを確認してよいし、確認の結果（例えば成功又は失敗）を、会員処理サーバ１０４の他のモジュール又はエンジンへ出力してよい。例えば確認モジュール３１２は署名済みブロックを（例えば受信装置３０２を介して）受信してよい。これは、ブロックを署名した署名権限サーバ１０２に関連付けられた署名済みドメイン公開鍵を用いて、確認モジュール３１２によって確認されてよい。確認モジュール３１２はまた、署名済み会員公開鍵を用いて、署名済みハッシュ値（これは例えば、署名済みハッシュ値を含む署名済みブロックの確認によって取得されてよい）を確認してよい。会員公開鍵は生成モジュール３０８によって生成された会員公開鍵であってよいし、ハッシュ値を署名するために使用された会員処理サーバ１０４に関連付けられた署名権限サーバ１０２から受信された会員公開鍵であってよい。後者の場合、署名権限サーバ１０２は署名済み会員公開鍵を（例えば署名済みブロックと共に）提供してよいし、どの会員公開鍵が確認のために使用されるかの指示子を提供してよい。
【００４７】
会員処理サーバ１０４はまた、送信装置３１４を含んでよい。送信装置３１４は１以上のネットワークプロトコルを介して１以上のネットワーク上でデータを送信するよう構成されてよい。他の実施形態では送信装置３１４は、データを、署名権限サーバ１０２、参加者装置１０６、及び他のエンティティ（例えばローカルエリアネットワーク、ワイドエリアネットワーク、無線周波数ネットワーク、インターネット等）へ、適切な通信ネットワークを介して送信してよい。いくつかの実施形態では、送信装置３１４は複数装置（例えば、異なるネットワーク上でデータを送信するための異なる送信装置（例えば近距離通信でデータを送信する第１の送信装置と、インターネット上でデータを送信する第２の送信装置））を含んでよい。送信装置３１４は、重畳されたデータであって受信コンピューティング装置によって解析されるデータを有するデータ信号を電子的に送信してよい。いくつかの実施形態では、送信装置３１４は、データを重畳しエンコードし、又はデータを送信に適したデータ信号へ整形する１以上のモジュールを含んでよい。
【００４８】
送信装置３１４は、データ信号を署名権限サーバ１０２へ電子的に送信するよう構成されてよい。署名権限サーバ１０２へ電子的に送信されたデータ信号は、署名用会員公開鍵と、署名済みハッシュ値と、ブロックチェーンへ追加されるトランザクションブロックと、確認結果と、本開示の機能を実行する際に使用されるのに適切な他のデータとに重畳されてよい。送信装置３１４はまた、署名済みトランザクションブロックに重畳されたデータ信号を、確認のために参加者装置１０６へ電子的に送信してよい。
【００４９】
会員処理サーバ１０４はまた、メモリ３１６を含んでよい。メモリ３１６は、本開示の機能を実行するときに会員処理サーバ１０４によって使用されるためのデータを格納するよう構成されてよい。メモリ３１６は、データ整形方法及びスキーマを用いてデータを格納するよう構成されてよく、また、任意の適切な種別のメモリ（例えば読み取り専用メモリ、ランダムアクセスメモリ等）であってよい。メモリ３１６は例えば、会員秘密鍵、対応する署名済み会員公開鍵、他の会員処理サーバ１０２に関連付けられた署名済み会員公開鍵、各追加の署名済み会員公開鍵を他の会員処理サーバ１０４へ関連付けるデータ、ブロックチェーン、署名済みドメイン公開鍵等を含んでよい。メモリ３１６は、鍵ペア生成アルゴリズムと、ハッシュ化アルゴリズムと、本開示の会員処理サーバ１０４の機能を実行するための他のアルゴリズムとを格納してよい。
【００５０】
デジタル署名用の鍵の生成及び配布
図４は、ブロックチェーンに含めるためにブロックチェーントランザクションをデジタル署名するときに使用するための、図１のシステム１００の署名権限サーバ１０２と会員処理サーバ１０４とによる鍵の生成及び配布処理を示す。
【００５１】
ステップ４０２にて署名権限サーバ１０２の生成モジュール２０８はドメイン鍵ペアを生成してよい。ドメイン鍵ペアは適切な鍵ペア生成アルゴリズムを用いて生成されてよく、ドメイン秘密鍵と対応するドメイン公開鍵とを含んでよい。ステップ４０２にて署名権限サーバ１０２の署名モジュール２１０はドメイン公開鍵を自己署名してよい。いくつかの実施形態では、ドメイン公開鍵は対応するドメイン公開鍵を用いて署名されてよい。他の実施形態では、異なる秘密鍵が使用されてよい。いくつかの実施形態では、ステップ４０４は、信頼された第三者エンティティによってドメイン公開鍵を署名することと置き換えられてよい。
【００５２】
ステップ４０６にて会員処理サーバ１０４の生成モジュール３０８は会員鍵ペアを生成してよい。会員鍵ペアは適切な鍵ペア生成アルゴリズムを用いて生成されてよく、会員秘密鍵と対応する会員公開鍵とを含んでよい。ステップ４０８にて、会員処理サーバの送信装置３１４は、適切な通信ネットワークを用いて、署名権限サーバ１０２へデータ信号を電子的に生成してよい。このときデータ信号は、生成された会員公開鍵と認証データとに重畳される。認証データはその識別及び／又は認証に適切な会員処理サーバ１０４に関連付けられたデータであってよい。
【００５３】
ステップ４１０にて、署名権限サーバ１０２の受信装置２０２は、会員処理サーバ１０４からデータ信号を受信してよい。ステップ４１２にて、署名権限サーバ１０２の認証モジュール２１２は、提供された認証データを用いて、会員処理サーバ１０４を認証してよい。一旦認証が完了すると、ステップ４１４にて署名権限サーバ１０２の署名モジュール２１０は、ドメイン秘密鍵を用いて会員公開鍵を署名してよい。
【００５４】
ステップ４１６にて、署名権限サーバ１０２の送信装置２１４は、適切な通信ネットワークを用いて、会員処理サーバ１０４へデータ信号を電子的に生成してよい。このときデータ信号は、署名済み会員公開鍵（あるいは他の会員処理サーバ１０４に関連付けられた追加の署名済み会員公開鍵）に重畳されるいくつかの実施形態では、署名済みドメイン公開鍵はまた、会員処理サーバ１０４へ送信されてよい。ステップ４１８にて、会員処理サーバ１０４の受信装置３０２は、データ信号を受信して、そこに含まれるデータを分析してよい。
【００５５】
デジタル署名済みブロックの生成及び確認
図５は図１のシステム１００の署名権限サーバ１０２と会員処理サーバ１０４とを用いて、ブロックチェーントランザクションのデジタル署名済みブロックの生成とその確認とを行う処理を示す。
【００５６】
ステップ５０２にて、会員処理サーバ１０４の受信装置３０２は複数のブロックチェーントランザクションを受信してよい。各ブロックチェーントランザクションは参加者装置１０６から受信されてよく、会員処理サーバ１０４に関連付けられたブロックチェーンへ送信されるトランザクションに関連付けられたデータを含んでよい。ステップ５０４にて会員処理サーバ１０４の生成モジュール３０８はブロックチェーントランザクションを含む新たなブロックを生成してよい。いくつかの実施形態では、ブロックは追加のデータ（例えばヘッダ、トランザクションカウンタ、及び他のデータ）を含んでよい。ブロックチェーンのブロックに含まれた追加のデータは、当業者にとって自明なように、ブロックチェーンの特徴に依存してよい。
【００５７】
ステップ５０６にて会員処理サーバ１０４の生成モジュール３０８は適切なハッシュ値を検出してよい。適切なハッシュ値の検出は、ハッシュ化アルゴリズムをブロックチェーン内の以前のブロック（例えば追加される新たなブロックに先行するブロック）へ適用することによって第１のハッシュ値を生成すること（あるいは第１のハッシュ値に対応する第２のハッシュ値を生成し又は識別すること）を含んでよい。一旦、適切なハッシュ値が識別されると、次いでステップ５０８にて、会員処理サーバ１０２の署名モジュール３１０は当該ハッシュ値を、自身の会員秘密鍵を用いて署名してよい。
【００５８】
ステップ５１０にて、会員処理サーバ１０４の送信装置３１４は、適切な通信ネットワークを用いて、署名権限サーバ１０２へデータ信号を電子的に生成してよい。このときデータ信号は、新たなブロックと署名済みハッシュ値に重畳される。ステップ５１２にて、署名権限サーバ１０２の受信装置２０２は、データ信号を受信して、そこに重畳されるデータを分析してよい。ステップ５１４にて署名権限サーバ１０２の署名モジュール２１０は、自身のドメイン秘密鍵を用いて複合ブロック（これは新たなブロックと署名済みハッシュ値とを含む）を署名してよい。
【００５９】
ステップ５１６にて、署名権限サーバ１０２の送信装置２１４は、適切な通信ネットワークを用いて、デジタル署名されたブロックに重畳されたデータ信号を、会員処理サーバ１０４へ電子的に送信してよい。ステップ５１８にて会員処理サーバ１０４の受信装置３０２は、署名済みブロックを受信してよい。ステップ５２０にて、会員処理サーバ１０４の確認モジュール３１２は、署名済みドメイン公開鍵と署名済み会員公開鍵とを用いて、署名済みブロックを確認してよい。いくつかの実施形態においてステップ５１８と５２０とは、ステップ５０２から５１０において使用される会員処理サーバ１０４と異なる会員処理サーバ１０４によって実行されてよい。そのような実施形態では、ステップ５２０で実行される確認処理は、ステップ５０８にてハッシュ値を署名するのに使用される会員処理サーバ１０４に関連付けられた署名済み会員公開鍵を使用してよい。
【００６０】
ブロックチェーントランザクションを署名するためにデジタル署名を使用する第１の例示的方法
図６は、確認のために、署名済みハッシュ値を含むブロックチェーントランザクションのブロックをデジタル署名する方法６００を示す。
【００６１】
ステップ６０２にてドメイン鍵ペアは処理サーバ（例えば署名権限サーバ１０２）の生成モジュール（例えば生成モジュール２０８）によって生成されてよい。このときドメイン鍵ペアはドメイン秘密鍵とドメイン公開鍵とを含み、ドメイン公開鍵は生成後に署名される。ステップ６０４にて複数の会員公開鍵は処理サーバの受信装置（例えば受信装置２０２）によって受信されてよい。このとき各会員公開鍵はブロックチェーンネットワークの関連会員（例えば会員処理サーバ１０４）から受信され、関連会員に対応する会員公開鍵と会員秘密鍵とを含む鍵ペアにおける公開鍵である。
【００６２】
ステップ６０６にて複数の会員公開鍵の各々は、ドメイン秘密鍵を用いて、処理サーバの署名モジュール（例えば署名モジュール２１０）によって署名されてよい。ステップ６０８にて、トランザクションブロックは処理サーバの受信装置によってブロックチェーンネットワークの特定の会員から受信されてよい。このときトランザクションブロックは複数のブロックチェーントランザクション値と、特定の会員に対応する会員秘密鍵を用いて署名されたハッシュとを含む。
【００６３】
ステップ６１０にて、受信されたトランザクションブロックは、ドメイン秘密鍵を用いて、処理サーバの署名モジュールによって署名されてよい。ステップ６１２にて、署名済みトランザクションブロックは、処理サーバの送信装置（例えば送信装置２１４）によって電子的に送信されてよい。
【００６４】
一実施形態では方法６００はまた、処理サーバの送信装置によって、各署名済み会員公開鍵を、ブロックチェーンネットワークの１以上の会員へ電子的に送信することを含んでよい。いくつかの実施形態では、ドメイン公開鍵は公共団体によって署名されてよい。他の実施形態では、ドメイン公開鍵は処理サーバの署名モジュールによって署名されてよい。一実施形態では、方法６００は次のことを含んでよい。すなわち、方法６００は、処理サーバの受信装置によって、ブロックチェーンネットワークの各会員から認証情報を受信するステップと、処理サーバの認証モジュール（例えば認証モジュール２１２）によって、関連付けられた会員公開鍵を署名する前に、受信された認証情報を用いて、ブロックチェーンネットワークの各会員を認証するステップと、を含む。
【００６５】
ブロックチェーントランザクションを署名するためにデジタル署名を使用する第２の例示的方法
図７は、ブロックチェーントランザクションのブロックに含めるためにハッシュ値をデジタル署名して、ブロックチェーンに含める方法７００を示す。
【００６６】
ステップ７０２にて、ブロックチェーンは処理サーバ（例えば会員処理サーバ１０４）のメモリ（例えばメモリ３１６）に格納されてよい。このときブロックチェーンは複数のトランザクションブロックを含み、各トランザクションブロックは少なくとも複数のブロックチェーントランザクション値を含む。ステップ７０４にて会員秘密鍵と会員公開鍵とを含む会員鍵ペアは、処理サーバの生成モジュール（例えば生成モジュール３０８）によって生成されてよい。
【００６７】
ステップ７０６にて、生成された会員公開鍵は、処理サーバの送信装置（例えば送信装置３１４）によって、ブロックチェーンネットワークに関連付けられた署名権限者（例えば署名権限サーバ１０２）へ電子的に送信されてよい。ステップ７０８にて複数のブロックチェーントランザクション値は、新たなトランザクションブロックを含む、処理サーバの受信装置（例えば受信装置３０２）によって受信されてよい。
【００６８】
ステップ７１０にて、処理サーバのハッシュ化モジュール（例えば生成モジュール３０８）は１以上のハッシュ化アルゴリズムを、ブロックチェーンに含まれる複数のトランザクションブロックのうち特定のものへ適用することによって、第１のハッシュ値をハッシュ化してよい。ステップ７１２にて第２のハッシュ値は、第１のハッシュ値に対応する処理サーバの生成モジュールによって生成されてよい。
【００６９】
ステップ７１４にて、生成された第２のハッシュ値は、生成された会員秘密鍵を用いて、処理サーバの署名モジュール（例えば署名モジュール２１０）によって署名されてよい。ステップ７１６にて、新たなトランザクションブロックと署名済み第２のハッシュ値とは、処理サーバの送信装置によって署名権限者へ電子的に送信されてよい。
【００７０】
一実施形態では、第２のハッシュ値は、１以上のハッシュ化アルゴリズムを、受信された新たなトランザクションブロックへ適用することによって、生成されてよい。いくつかの実施形態では、方法７００はまた、処理サーバの送信装置によって、認証情報を、署名権限者へ電子的に送信することを含んでよい。一実施形態では、方法７００はまた、処理サーバの受信装置によって、署名済みトランザクションブロックと署名済みドメイン公開鍵とを署名権限者から受信するステップであって、署名済みトランザクションブロックは新たなトランザクションブロックと署名済みの第２のハッシュ値とを含み、署名済みドメイン公開鍵に対応するドメイン秘密鍵を用いて署名される、ステップと、処理サーバの確認モジュール（例えば確認モジュール３１２）によって、会員公開鍵と署名済みドメイン公開鍵とを用いて、署名済みトランザクションブロックを確認するステップとを更に含んでよい。別の実施形態では、署名済みトランザクションブロックを確認することは、署名済みドメイン公開鍵を署名済みトランザクションブロックへ適用して、新たなトランザクションブロックと署名済みの第２のハッシュ値とを生成することと、会員公開鍵を署名済みの第２のハッシュ値へ適用して、第２のハッシュ値を生成することと、生成された第２のハッシュ値を、生成された第２のハッシュ値に対応するものとして確認することと、を含んでよい。
【００７１】
コンピュータシステムアーキテクチャ
図８は、コンピュータシステム８００を示す。そこには、本開示の実施形態又はその一部が、コンピュータ可読コードとして実装されてよい。例えば図１の署名権限サーバ１０２及び会員処理サーバ１０４は、ハードウェア、ソフトウェア、ファームウェア、格納された命令を有する非一時的なコンピュータ読取り可能な媒体、又はこれらの組合せを用いてコンピュータシステム８００内で実装されてよく、１以上のコンピュータシステム又は他の処理システムにおいて実装されてよい。ハードウェア、ソフトウェア及びこれらの任意の組合せは、図４乃至７の方法を実装するために使用されるモジュール及びコンポーネントを実現してよい。
【００７２】
プログラマブルロジックが使用される場合、そのようなロジックは、商業的に利用可能な処理プラットフォーム又は特定用途装置上で実行してよい。当業者は、開示された事項についての実施形態が、様々なコンピュータシステム構成で実行可能であることを理解する。当該システム構成は、マルチコアのマルチプロセッサシステムと、ミニコンピュータと、メインフレームコンピュータと、分散された機能でリンクされ又はクラスタ化されたコンピュータと、任意の装置へ仮想的に実装可能な汎用（pervasive）又はミニチュアのコンピュータとを含む。例えば少なくとも１つのプロセッサ装置及びメモリが、上記実施形態を実装するために使用されてよい。
【００７３】
本開示のプロセッサユニット又は装置は、単一のプロセッサ、複数のプロセッサ、又はこれらの組合せであってよい。プロセッサ装置は、１以上のプロセッサ「コア」を有してよい。本開示の「コンピュータプログラム媒体」、「非一時的なコンピュータ可読媒体」及び「コンピュータ使用可能な媒体」との用語は、概して、有形の媒体（例えば取外し可能なストレージユニット８１８、取外し可能なストレージユニット８２２及びハードディスクドライブ８１２にインストールされたハードディスク等）を指すために使用される。
【００７４】
本開示の様々な実施形態は、この例示的なコンピュータシステム８００に関して記述される。本開示を読んだ後、当業者にとって、他のコンピュータシステム及び／又はコンピュータアーキテクチャを用いて本開示をどのように実装するかは自明である。動作はシーケンシャルな処理として開示されるが、いくつかの動作は実際には、並行して、同時に及び／又は分散環境で、実行されてよい。このとき、プログラムコードは、単一プロセッサの又はマルチプロセッサのマシンによってアクセスするために、ローカルに又はリモートに格納された状態である。更に、いくつかの実施形態では、動作の順番は、開示される事項の趣旨を逸脱することなく再配置可能である。
【００７５】
プロセッサ装置８０４は、本開示の機能を実行するよう特別に構成された特定用途又は汎用プロセッサ装置であってよい。プロセッサ装置８０４は、通信インフラストラクチャ８０６（例えばバス、メッセージキュー、ネットワーク、マルチコアメッセージパススキーム等）へ接続されてよい。ネットワークは、本開示の機能を実行するのに適した任意のネットワークであってよく、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、無線ネットワーク（例えばＷｉｆｉ）、モバイル通信ネットワーク、衛星ネットワーク、インターネット、光ファイバ、同軸ケーブル、赤外線、無線周波数（ＲＦ）又はこれらの任意の組合せを含んでよい。他の適切なネットワークタイプ及び構成は、当業者にとって自明である。コンピュータシステム８００はまた、メインメモリ８０８（例えばランダムアクセスメモリ、読み取り専用メモリ等）を含んでよく、また、補助メモリ８１０を含んでよい。補助メモリ８１０は、ハードディスクドライブ８１２と取外し可能なストレージドライブ８１４（例えばフロッピーディスクドライブ、磁気テープドライブ、光ディスクドライブ、フラッシュメモリ等）とを含んでよい。
【００７６】
取外し可能なストレージドライブ８１４は、周知の方法で、取外し可能なストレージユニット８１８から読み取りを行ってもよいし、そこへ書き込みを行ってもよい。取外し可能なストレージユニット８１８は、取外し可能なストレージドライブ８１４によって読み取られ又は書き込まれることができる、取外し可能なストレージ媒体を含んでよい。例えばもし取外し可能なストレージドライブ８１４がフロッピーディスクドライブ又はユニバーサルシリアルバスポートであれば、取外し可能なストレージユニット８１８はそれぞれ、フロッピーディスク又はポータブルフラッシュドライブであってよい。一実施形態では、取外し可能なストレージユニット８１８は非一時的な可読記憶媒体であってよい。
【００７７】
いくつかの実施形態では、補助メモリ８１０は代替手段を含み、コンピュータプログラム又は他の命令がコンピュータシステム８００（例えば取外し可能なストレージユニット８２２及びインタフェース８２０）にロードされることを可能にしてよい。そのような手段の例は、（例えばビデオゲームシステムで見られる）プログラムカートリッジ及びカートリッジインタフェース、取外し可能なメモリチップ（例えばＥＥＰＲＯＭ、ＰＲＯＭ等）、関連ソケット、他の取外し可能なストレージユニット８２２及びインタフェース８２０を含んでよい。このことは当業者にとって自明である。
【００７８】
コンピュータシステム８００に（例えばメインメモリ８０８に及び／又は補助メモリ８１０に）格納されたデータは、任意のタイプの適切なコンピュータ読取り可能な媒体（例えば光ストレージ（コンパクトディスク、デジタル多目的ディスク、Blu-rayディスク等）又は磁気テープストレージ（例えばハードディスクドライブ））上に格納されてよい。データは任意のタイプの適切なデータベース構成（例えばリレーショナルデータベース、構造化照会言語（ＳＱＬ）データベース、分散データベース、オブジェクトデータベース等）で構成されてよい。適切な構成及びストレージタイプは、当業者にとって自明である。コンピュータシステム８００はまた、通信インタフェース８２４を含んでよい。通信インタフェース８２４は、ソフトウェア及びデータが、コンピュータシステム８００と外部装置との間で送信されることを可能にしてよい。例示的な通信インタフェース８２４は、モデム、ネットワークインタフェース（例えばイーサネットカード）、通信ポート、ＰＣＭＣＩＡスロット及びカード等を含んでよい。
【００７９】
通信インタフェース８２４を介して転送されるソフトウェア及びデータは信号形式であってよい。当該信号形式は、電子の、電磁気の、光の、又は当業者にとって自明な他の信号のものであってよい。信号は、通信パス８２６を介して伝わる。当該通信パス８２６は信号を伝送するよう構成され、電線、ケーブル、光ファイバ、電話線、携帯電話リンク、無線周波数リンク等を用いて実装されてよい。
【００８０】
コンピュータシステム８００は表示インタフェース８０２を更に含んでよい。表示インタフェース８０２は、データが、コンピュータシステム８００と外部ディスプレイ８３０との間で転送されることを可能にするよう構成されてよい。例示的な表示インタフェース８０２は、高精細度マルチメディアインタフェース（ＨＤＭＩ）、デジタルビジュアルインタフェース（ＤＶＩ）、ビデオグラフィックスアレイ（ＶＧＡ）等を含んでよい。ディスプレイ８３０は任意の適切なタイプのディスプレイであってよく、コンピュータシステム８００の表示インタフェース８０２を介して転送されるデータを表示する。ディスプレイ８３０は、ブラウン管（ＣＲＴ）ディスプレイ、液晶ディスプレイ（ＬＣＤ）、発光ダイオード（ＬＥＤ）ディスプレイ、静電容量方式タッチディスプレイ、薄膜トランジスタ（ＴＦＴ）ディスプレイ等を含む。
【００８１】
コンピュータプログラム媒体及びコンピュータ使用可能な媒体は、メモリ（例えばメインメモリ８０８及び補助メモリ８１０）を指してよく、半導体メモリ（ＤＲＡＭ等）であってよい。これらのコンピュータプログラム製品は、コンピュータシステム８００へソフトウェアを提供するための手段であってよい。コンピュータプログラム（例えばコンピュータ制御ロジック）は、メインメモリ８０８及び／又は補助メモリ８１０に格納されてよい。コンピュータプログラムはまた、通信インタフェース８２４を介して受信されてよい。そのようなコンピュータプログラムは、実行されると、コンピュータシステム８００が本開示の方法を実行することを可能にしてよい。特に、コンピュータプログラムは、実行されると、プロセッサ装置８０４が図４乃至７に示される本開示の方法を実行することを可能にしてよい。したがって、そのようなコンピュータプログラムはコンピュータシステム８００のコントローラを示す。本開示はソフトウェアを使用して実装される。当該ソフトウェアは、取外し可能なストレージドライブ８１４、インタフェース８２０、及びハードディスクドライブ８１２又は通信インタフェース８２４を用いて、コンピュータプログラム製品に格納されてコンピュータシステム８００へロードされてよい。
【００８２】
プロセッサ装置８０４は、コンピュータシステム８００の機能を実行するよう構成される１以上のモジュール又はエンジンを含んでよい。各モジュール又はエンジンは、ハードウェアを用いて実装されてよく、いくつかの実施形態ではソフトウェア（例えばこれは、メインメモリ８０８又は補助メモリ８１０に格納されるプログラムコード又はプログラムに対応する）を用いてよい。そのような実施形態では、プログラムコードは、コンピュータシステム８００のハードウェアによる実行前に、プロセッサ装置８０４によって（例えばモジュール又はエンジンをコンパイルすることによって）コンパイルされてよい。例えばプログラムコードは、低レベルの言語へと解釈されるプログラミング言語で記述されたソースコード（例えばアセンブリ言語又は機械コード）であってよい。これは、プロセッサ装置８０４及び／又はコンピュータシステム８００の任意の追加のハードウェア構成要素によって実行するためのものである。コンパイル処理は、語彙解析と、前処理と、解析と、意味解析と、文法指向の翻訳と、コード生成と、コード最適化と、コンピュータシステム８００の制御のためにプログラムコードを低レベルの言語へ解釈して本開示の機能を実行するのに適した任意の他の技術との使用を含んでよい。そのような処理によってコンピュータシステム８００が、上記の機能を実行するために一意にプログラムされた特別構成コンピュータシステム８００になることは当業者にとって自明である。
【００８３】
本開示に一貫する技術は、とりわけ、ブロックチェーントランザクションを署名するためにデジタル署名を使用するシステム及び方法を開示する。本開示のシステム及び方法の様々な例示的実施形態が上述されるが、それらは限定目的でなく例示目的のみで示されることを理解されたい。それは徹底したものでなく、本開示を、開示された形態そのものへ限定しない。上記の教示に照らして修正例及び変形例が可能である。広がり又は範囲を逸脱すること無く、本開示の実装から修正例及び変形例が得られてよい。
【図１】
2019505150.tif 000003
【図２】
2019505150.tif 000004
【図３】
2019505150.tif 000005
【図４】
2019505150.tif 000006
【図５】
2019505150.tif 000007
【図６】
2019505150.tif 000008
【図７】
2019505150.tif 000009
【図８】
2019505150.tif 000010
【国際調査報告】
2019505150.tif 000011
2019505150.tif 000012