(57)【要約】      （修正有）【課題】ユーザーの識別を管理してブロックチェーン内のトークンの流れを制御するための分散型台帳装置、分散型台帳方法、トランザクション情報のブロードキャスト装置及び方法を提供する。【解決手段】分散型台帳装置１は、識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存し、識別情報管理契約アカウントに少なくとも一つの既保存された基準識別情報を含む分散型台帳が保存されたメモリモジュール１２と、メモリモジュール１２と動作可能に結合され、識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュール１１と、を含む。【選択図】図１
2019096272.tif 000002
【特許請求の範囲】
【請求項１】
識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存し、前記識別情報管理契約アカウントに少なくとも一つの既保存された基準識別情報を含む分散型台帳が保存されたメモリモジュールと；
前記メモリモジュールと動作可能に結合され、前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、
前記識別情報管理契約アカウントの前記プログラムコードは、
確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を前記ブロックチェーン内の特定のアカウントから受信するクエリ受信ステップと；
前記識別情報確認クエリに基づいて前記基準識別情報内で前記確認識別情報を検索する識別情報検索ステップと；
前記基準識別情報内で前記確認識別情報が検索されるかどうかのトランザクション情報の形態である確認応答トランザクション情報を生成し、前記確認応答トランザクション情報を前記特定のアカウントに応答する応答ステップと；を含み、
前記分散型台帳の前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のアカウントを管理することを特徴とする、
分散型台帳装置。
【請求項２】
前記識別情報管理契約アカウントは、前記基準識別情報に対応されてブラックリスティング（Ｂｌａｃｋ  ｌｉｓｔｉｎｇ）の有無またはホワイトリスティング（Ｗｈｉｔｅ  ｌｉｓｔｉｎｇ）の有無を決定するリスティング情報をさらに含み、
前記確認応答トランザクション情報は、前記基準識別情報内で前記確認識別情報が検索される場合、前記リスティング情報を含めて前記特定のアカウントに応答され、
前記ブラックリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントに対して前記ユーザにより提供される要請が前記ユーザのデジタルウォレットアドレスに返されることを意味し、
前記ホワイトリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントのスマート契約コードが実行されて発生した状態変化が前記分散型台帳に保存され、ブロックチェーン分散ネットワークに配布されることを意味する、
請求項１に記載の分散型台帳装置。
【請求項３】
前記識別情報管理契約アカウントは、前記基準識別情報に対応してトークン発行量条件情報をさらに含み、
前記確認応答トランザクション情報は、前記トークン発行量条件情報を含めて前記特定のアカウントに応答する、
請求項１に記載の分散型台帳装置。
【請求項４】
識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存し、前記識別情報管理契約アカウントに少なくとも一つの既保存された基準識別情報を含む分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；によって行われる分散型台帳方法において、
前記識別情報管理契約アカウントが、確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を前記ブロックチェーン内の特定のアカウントから受信するクエリ受信ステップと；
前記識別情報管理契約アカウントが、前記識別情報確認クエリに基づいて前記基準識別情報内で前記確認識別情報を検索する識別情報検索ステップと；
前記識別情報管理契約アカウントが、前記基準識別情報内で前記確認識別情報が検索されるかどうかのトランザクション情報の形態である確認応答トランザクション情報を生成し、前記確認応答トランザクション情報を前記特定のアカウントに応答する応答ステップと；を含み、
前記分散型台帳の前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のアカウントを管理することを特徴とする、
分散型台帳方法。
【請求項５】
前記識別情報管理契約アカウントは、前記基準識別情報に対応されてブラックリスティング（Ｂｌａｃｋ  ｌｉｓｔｉｎｇ）の有無またはホワイトリスティング（Ｗｈｉｔｅ  ｌｉｓｔｉｎｇ）の有無を決定するリスティング情報をさらに含み、
前記確認応答トランザクション情報は、前記基準識別情報内で前記確認識別情報が検索される場合、前記リスティング情報を含めて前記特定のアカウントに対応され、
前記ブラックリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントに対して前記ユーザにより提供される要請が前記ユーザのデジタルウォレットアドレスに返されることを意味し、
前記ホワイトリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントのスマート契約コードが実行されて発生した状態変化が前記分散型台帳に保存され、ブロックチェーン分散ネットワークに配布されることを意味する、
請求項４に記載の分散型台帳方法。
【請求項６】
前記識別情報管理契約アカウントは、前記基準識別情報に対応してトークン発行量条件情報をさらに含み、
前記確認応答トランザクション情報は、前記トークン発行量条件情報を含めて前記特定のアカウントに応答する、
請求項４に記載の分散型台帳方法。
【請求項７】
識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存する分散型台帳が保存されたメモリモジュールと；
前記メモリモジュールと動作可能に結合され、前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、
前記識別情報管理契約アカウントの前記プログラムコードは、
基準識別情報を含む識別情報保存トランザクション情報を前記ブロックチェーン内の特定のアカウントから受信するトランザクション情報受信ステップと；
前記識別情報保存トランザクション情報に基づいて前記基準識別情報を保存する識別情報保存ステップと；
前記基準識別情報の保存による状態変化をブロックチェーン分散ネットワークに配布する配布ステップと；を含み、
前記分散型台帳の前記識別情報管理契約アカウントに、前記特定のアカウントを管理するための前記基準識別情報を保存することを特徴とする、
分散型台帳装置。
【請求項８】
識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存する分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；によって行われる分散型台帳方法において、
前記識別情報管理契約アカウントが、前記基準識別情報を含む識別情報保存トランザクション情報を前記ブロックチェーン内の特定のアカウントから受信するトランザクション情報受信ステップと；
前記識別情報管理契約アカウントが、前記識別情報保存トランザクション情報に基づいて前記基準識別情報を保存する識別情報保存ステップと；
前記識別情報管理契約アカウントが、前記基準識別情報の保存による状態変化をブロックチェーン分散ネットワークに配布する配布ステップと；を含み、
前記分散型台帳の前記識別情報管理契約アカウントに、前記特定のアカウントを管理するための前記基準識別情報を保存することを特徴とする、
分散型台帳方法。
【請求項９】
特定のスマート契約アカウントおよび識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存し、前記識別情報管理契約アカウントに少なくとも一つの既保存された基準識別情報を含む分散型台帳が保存されたメモリモジュールと；
前記メモリモジュールと動作可能に結合され、前記特定のスマート契約アカウントおよび前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、
前記特定のスマート契約アカウントの前記プログラムコードは、
特定のアカウントから、確認識別情報を含むと共に特定コードの実行命令を要請するトランザクション情報を受信するトランザクション情報受信ステップと；
前記識別情報管理契約アカウントに前記確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を送信するクエリ送信ステップと；
前記基準識別情報内で前記確認識別情報が検索されるかどうかのトランザクション情報の形態である確認応答トランザクション情報を、前記識別情報管理契約アカウントから応答される応答受信ステップと；
前記確認応答トランザクション情報に基づいて前記特定コードの実行命令の以後コードを実行する以後手続きステップと；を含み、
前記分散型台帳の前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のスマート契約アカウントを管理することを特徴とする、
分散型台帳装置。
【請求項１０】
特定のスマート契約アカウントおよび識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存し、前記識別情報管理契約アカウントに少なくとも一つの既保存された基準識別情報を含む分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記特定のスマート契約アカウントおよび前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；によって行われる分散型台帳方法において、
前記特定のスマート契約アカウントが、特定のアカウントから、確認識別情報を含むと共に特定コードの実行命令を要請するトランザクション情報を受信するトランザクション情報受信ステップと；
前記特定のスマート契約アカウントが、前記識別情報管理契約アカウントに前記確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を送信するクエリ送信ステップと；
前記特定のスマート契約アカウントが、前記基準識別情報内で前記確認識別情報が検索されるかどうかのトランザクション情報の形態である確認応答トランザクション情報を前記識別情報管理契約アカウントから応答される応答受信ステップと；
前記特定のスマート契約アカウントが、前記確認応答トランザクション情報に基づいて前記特定コードの実行命令の以後コードを実行する以後手続きステップと；を含み、
前記分散型台帳の前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のスマート契約アカウントを管理することを特徴とする、
分散型台帳方法。
【請求項１１】
ユーザクライアントから前記ユーザの確認識別情報を受信する識別情報受信モジュールと；
受信された前記確認識別情報を特定のスマート契約アカウントについてのトランザクション情報に含ませ、前記識別情報が含まれた前記トランザクション情報を分散型台帳に保存した後、ブロックチェーン分散ネットワークを介して少なくとも一部のノードにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するブロードキャストモジュールと；を含み、
前記特定のスマート契約アカウントは、
前記確認識別情報を含む前記トランザクション情報を受信するトランザクション情報受信ステップと；
既保存された基準識別情報を含む識別情報管理契約アカウントに前記確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を送信するクエリ送信ステップと；
前記基準識別情報内で前記確認識別情報が検索されるかどうかについてのトランザクション情報である確認応答トランザクション情報を前記識別情報管理契約アカウントから応答される応答受信ステップと；
前記確認応答トランザクション情報に基づいて前記特定コードの実行命令の以後コードを実行する以後手続きステップと；を行うコンピュータ読み取り可能なプログラムコードを含み、
前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のスマート契約アカウントを管理することを特徴とする、
トランザクション情報のブロードキャスト装置。
【請求項１２】
ユーザクライアントから前記ユーザの確認識別情報を受信する識別情報受信モジュールと；受信された前記確認識別情報を特定のスマート契約アカウントについてのトランザクション情報に含ませ、前記識別情報が含まれた前記トランザクション情報を分散型台帳に保存した後、ブロックチェーン分散ネットワークを介して少なくとも一部のノードにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するブロードキャストモジュールと；によって行われるトランザクション情報ブロードキャスト方法において、
前記特定のスマート契約アカウントが、前記確認識別情報を含む前記トランザクション情報を受信するトランザクション情報受信ステップと；
前記特定のスマート契約アカウントが、既保存された基準識別情報を含む識別情報管理契約アカウントに前記確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を送信するクエリ送信ステップと；
前記特定のスマート契約アカウントが、前記基準識別情報内で前記確認識別情報が検索されるかどうかについてのトランザクション情報である確認応答トランザクション情報を前記識別情報管理契約アカウントから応答される応答受信ステップと；
前記特定のスマート契約アカウントが、前記確認応答トランザクション情報に基づいて前記特定コードの実行命令の以後コードを実行する以後手続きステップと；を含み、
前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のスマート契約アカウントを管理することを特徴とする、
トランザクション情報ブロードキャスト方法。
【請求項１３】
ブロックチェーン内の識別情報管理契約アカウントと連結された特定のスマート契約アカウントが生成されるように契約生成トランザクション情報を生成する契約生成モジュールと；
生成された前記契約生成トランザクション情報を分散型台帳に保存した後、ブロックチェーン分散ネットワークを介して少なくとも一部のノードにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するブロードキャストモジュールと；を含み、
前記特定のスマート契約アカウントは、
前記確認識別情報を含む前記トランザクション情報を受信するトランザクション情報受信ステップと；
既保存された基準識別情報を含む前記識別情報管理契約アカウントに前記確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を送信するクエリ送信ステップと；
前記基準識別情報内で前記確認識別情報が検索されるかどうかについてのトランザクション情報である確認応答トランザクション情報を前記識別情報管理契約アカウントから応答される応答受信ステップと；
前記確認応答トランザクション情報に基づいて前記特定コードの実行命令の以後コードを実行する以後手続きステップと；を行うコンピュータ読み取り可能なプログラムコードを含み、
前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のスマート契約アカウントを管理することを特徴とする、
トランザクション情報のブロードキャスト装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザーの識別を管理してブロックチェーン内のトークンの流れを制御するための分散型台帳装置、分散型台帳方法、トランザクション情報のブロードキャスト装置及び方法に関する。
【背景技術】
【０００２】
ブロックチェーンは、様々な技術分野に適用することができるが、ＩＣＯ（Ｉｎｉｔｉａｌ  Ｃｏｉｎ  Ｏｆｆｅｒｉｎｇ）によって資金調達（Ｆｕｎｄｒａｉｓｉｎｇ）が容易になり、暗号通貨（或いは、仮想通貨）を実現するための技術として発展してきた。例えば、ビットコインもブロックチェーンの技術を用いることにより、 一般的な通貨とは異なり、中央銀行などの第３者が価値を担保しなくても通貨と同じ価値を持つことを達成しつつある。ブロックチェーンを発明する前には、通貨を代替する電子マネーを作るために、その価値を保証したり通貨の取引記録を管理する「ミドルメン」が必要であった。しかし、ブロックチェーンを用いると、次のような構造により第３者の機関がなくても特定の暗号通貨が実際の通貨として機能することができるようになる。
【０００３】
（１）ブロックが時間単位でソートされており、ブロックに取引記録と前のブロックについての連結情報が含まれているため、偽造及び変造が困難である。
【０００４】
（２）分散型台帳構造をとることにより、取引の透明性が高く、重複支給が難しい。
上記のような理由から、暗号通貨は通貨としての機能を果せるようになった。このような属性を有する暗号通貨としては、Ｂｉｔｃｏｉｎ、Ｌｉｔｅｃｏｉｎ、Ｒｉｐｐｌｅ、Ｅｔｈｅｒｉｕｍ、Ｄａｓｈ、Ｍｏｎｅｒｏなど色々なものがパブリックに発行されている。特に、ＩＣＯ（Ｉｎｉｔｉａｌ  Ｃｏｉｎ  Ｏｆｆｅｒｉｎｇ）を介して特定のトークンに対して大規模な資金調達（Ｆｕｎｄｒａｉｓｉｎｇ）が行われているのが現状である。このように様々な暗号通貨が発行されているが、ネットワーク効果により主に使用されているものとそうでないものとに分かれている状況である。
【０００５】
また、ブロックチェーンを用いた多様なアプリケーションが試みられている。例えば、Ｓｅｎｔｂｅ、Ａｌｉｇｎ  Ｃｏｍｍｅｒｃｅ、Ｍｏｉｎなどの国際送金サービス、 バンク・オブ・アメリカ （Ｂａｎｋ  ｏｆ  Ａｍｅｒｉｃａ）とＨＳＢＣホールディングス（エイチエスビーシーホールディングス、ＨＳＢＣ  Ｈｏｌｄｉｎｇｓ  ｐｌｃ）などにより検証された信用状取引サービス、各種資金調達、電力販売サービス、Ｓｔｅｅｍｉｔ、Ｓｔｒｅａｍｉｕｍなどのコンテンツサービス、ＮＥＭなどの公証サービス、Ｂｌｏｃｋａｉなどの著作権管理サービス、Ｅｖｅｒｌｅｄｇｅｒなどの物品取引追跡サービス、ＶｉｓaとＤｏｃｕｓｉｇｎの契約管理及び実行サービスなどが幅広く試みられている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】大韓民国登録特許、１０−１７５１０２５、ブロックチェーンベースのスマート証券業務処理システム（Ｓｍａｒｔ  ｓｙｓｔｅｍ  ｆｏｒ  ｔｒａｄｉｎｇ  ｓｔｏｃｋ  ｂａｓｅｄ  ｂｌｏｃｋｃｈａｉｎ）、株式会社オンザ
【特許文献２】大韓民国登録特許、１０−１７５８８７０、マイニングリグ管理システム及びこれを用いたマイニングリグ管理方法（Ｍｉｎｉｎｇ  Ｒｉｇ  Ｍｏｎｉｔｏｒｉｎｇ  Ｓｙｓｔｅｍ  Ａｎｄ  Ｍｉｎｉｎｇ  Ｒｉｇ  Ｍｏｎｉｔｏｒｉｎｇ  Ｍｅｔｈｏｄ  Ｉｎ  Ｕｓｉｎｇ  Ｓａｍｅ）、株式会社オンザ
【特許文献３】米国公開特許、ＵＳ２０１６／０３４２９８９  Ａ１、Ｍｅｔｈｏｄ  ａｎｄ  ｓｙｓｔｅｍ  ｆｏｒ  ｐｒｏｃｅｓｓｉｎｇ  ｂｌｏｃｋｃｈａｉｎ−ｂａｓｅｄ  ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  ｅｘｉｓｔｉｎｇ  ｐａｙｍｅｎｔ  ｎｅｔｗｏｒｋｓ、Ｍａｓｔｅｒｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｉｎｃｏｒｐｏｒａｔｅｄ
【特許文献４】米国公開特許、ＵＳ２０１６／０２９２６７２  Ａ１、Ｓｙｓｔｅｍｓ  ａｎｄ  ｍｅｔｈｏｄｓ  ｏｆ  ｂｌｏｃｋｃｈａｉｎ  ｔｒａｎｓａｃｔｉｏｎ  ｒｅｃｏｒｄａｔｉｏｎ、Ｎａｓｄａｑ、Ｉｎｃ．
【特許文献５】米国公開特許、ＵＳ２０１７０１３２６１５  Ａ１、Ｂｌｏｃｋ  ｃｈａｉｎ  ａｌｉａｓ  ｆｏｒ  ｐｅｒｓｏｎ−ｔｏ−ｐｅｒｓｏｎ  ｐａｙｍｅｎｔｓ、Ｂａｎｋ Ｏｆ Ａｍｅｒｉｃａ Ｃｏｒｐｏｒａｔｉｏｎ
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来のブロックチェーンを用いた様々なサービスとＩＣＯ（Ｉｎｉｔｉａｌ  Ｃｏｉｎ  Ｏｆｆｅｒｉｎｇ）を用いて公募される様々な暗号通貨は、「個人の識別」という問題に直面している。従来は、ブロックチェーンを用いた特定のサービスを行うかＩＣＯなどを通じて資金を公募するとき、個人を識別するために電子メールアドレス、連絡先、その他のソーシャルネットワークのＩＤを用いることに加えて、パスポートのコピー、身分証明書のコピー、通帳のコピー、告知書コピーなどの個人識別情報をさらに用いるか、電子メールによる認証コード通知、携帯電話による認証コード通知などを用いている。個人識別情報を用いて個人を識別するためにはＨｕｍａｎ  Ｒｅｓｏｕｒｃｅが必要であるため、大幅なコストと処理時間がかかるという問題があり、認証コード通知を用いた識別認証コードプッシュ（Ｐｕｓｈ）に費用が発生し、ユーザーエクスペリエンス（Ｕｓｅｒ  Ｅｘｐｅｒｉｅｎｃｅ：ＵＸ）を損なうという問題があった。
【０００８】
したがって、本発明は、上記問題を解決するためになされたもので、その目的は、ユーザーのデジタルウォレットアドレスを用いてユーザーの識別を管理してブロックチェーン内のトークンの流れを制御するための分散型台帳装置、分散型台帳方法、トランザクション情報のブロードキャスト装置および方法を提供することである。
【課題を解決するための手段】
【０００９】
以下、本発明の目的を達成するための具体的手段について説明する。
本発明の目的は、識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存し、前記識別情報管理契約アカウントに少なくとも一つの既保存された基準識別情報を含む分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、前記識別情報管理契約アカウントの前記プログラムコードは、確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を前記ブロックチェーン内の特定のアカウントから受信するクエリ受信ステップと；前記識別情報確認クエリに基づいて前記基準識別情報内で前記確認識別情報を検索する識別情報検索ステップと；前記基準識別情報内で前記確認識別情報が検索されるかどうかについてのトランザクション情報の形態である確認応答トランザクション情報を生成し、前記確認応答トランザクション情報を前記特定のアカウントに応答する応答ステップと；を含み、前記分散型台帳の前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のアカウントを管理することを特徴とする、分散型台帳装置を提供することにより達成される。
【００１０】
また、前記識別情報管理契約アカウントは、前記基準識別情報に対応されてブラックリスティング（Ｂｌａｃｋ  ｌｉｓｔｉｎｇ）の有無またはホワイトリスティング（Ｗｈｉｔｅ  ｌｉｓｔｉｎｇ）の有無を決定するリスティング情報をさらに含み、前記確認応答トランザクション情報は、前記基準識別情報内で前記確認識別情報が検索される場合、前記リスティング情報を含めて前記特定のアカウントに応答され、前記ブラックリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントに対して前記ユーザにより提供される要請が前記ユーザのデジタルウォレットアドレスに返されることを意味し、前記ホワイトリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントのスマート契約コードが実行されて発生した状態変化が前記分散型台帳に保存され、ブロックチェーン分散ネットワークに配布されることを意味することができる。
【００１１】
また、前記識別情報管理契約アカウントは、前記基準識別情報に対応してトークン発行量条件情報をさらに含み、前記確認応答トランザクション情報は、前記トークン発行量条件情報を含めて前記特定のアカウントに応答することができる。
【００１２】
本発明の他の目的は、識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存し、前記識別情報管理契約アカウントに少なくとも一つの既保存された基準識別情報を含む分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；によって行われる分散型台帳方法において、前記識別情報管理契約アカウントが、確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を前記ブロックチェーン内の特定のアカウントから受信するクエリ受信ステップと；前記識別情報管理契約アカウントが、前記識別情報確認クエリに基づいて前記基準識別情報内で前記確認識別情報を検索する識別情報検索ステップと；前記識別情報管理契約アカウントが、前記基準識別情報内で前記確認識別情報が検索されるかどうかについてのトランザクション情報の形態である確認応答トランザクション情報を生成し、前記確認応答トランザクション情報を前記特定のアカウントに応答する応答ステップと；を含み、前記分散型台帳の前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のアカウントを管理することを特徴とする、分散型台帳方法を提供することにより達成される。
【００１３】
また、前記識別情報管理契約アカウントは、前記基準識別情報に対応されてブラックリスティング（Ｂｌａｃｋ  ｌｉｓｔｉｎｇ）の有無またはホワイトリスティング（Ｗｈｉｔｅ  ｌｉｓｔｉｎｇ）の有無を決定するリスティング情報をさらに含み、前記確認応答トランザクション情報は、前記基準識別情報内で前記確認識別情報が検索される場合、前記リスティング情報を含めて前記特定のアカウントに対応され、前記ブラックリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントに対して前記ユーザにより提供される要請が前記ユーザのデジタルウォレットアドレスに返されることを意味し、前記ホワイトリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントのスマート契約コードが実行されて発生した状態変化が前記分散型台帳に保存され、ブロックチェーン分散ネットワークに配布されることを意味することができる。
【００１４】
また、前記識別情報管理契約アカウントは、前記基準識別情報に対応してトークン発行量条件情報をさらに含み、前記確認応答トランザクション情報は、前記トークン発行量条件情報を含めて前記特定のアカウントに応答することができる。
【００１５】
本発明のまた他の目的は、識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存する分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、前記識別情報管理契約アカウントの前記プログラムコードは、基準識別情報を含む識別情報保存トランザクション情報を前記ブロックチェーン内の特定のアカウントから受信するトランザクション情報受信ステップと；前記識別情報保存トランザクション情報に基づいて前記基準識別情報を保存する識別情報保存ステップと；前記基準識別情報の保存による状態変化をブロックチェーン分散ネットワークに配布する配布ステップと；を含み、前記分散型台帳の前記識別情報管理契約アカウントに、前記特定のアカウントを管理するための前記基準識別情報を保存することを特徴とする、分散型台帳装置を提供することにより達成される。
【００１６】
本発明のまた他の目的は、識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存する分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；によって行われる分散型台帳方法において、前記識別情報管理契約アカウントが、前記基準識別情報を含む識別情報保存トランザクション情報を前記ブロックチェーン内の特定のアカウントから受信するトランザクション情報受信ステップと；前記識別情報管理契約アカウントが、前記識別情報保存トランザクション情報に基づいて前記基準識別情報を保存する識別情報保存ステップと；前記識別情報管理契約アカウントが、前記基準識別情報の保存による状態変化をブロックチェーン分散ネットワークに配布する配布ステップと；を含み、前記分散型台帳の前記識別情報管理契約アカウントに、前記特定のアカウントを管理するための前記基準識別情報を保存することを特徴とする、分散型台帳方法を提供することにより達成される。
【００１７】
本発明のまた他の目的は、特定のスマート契約アカウントおよび識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存し、前記識別情報管理契約アカウントに少なくとも一つの既保存された基準識別情報を含む分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記特定のスマート契約アカウントおよび前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、前記特定のスマート契約アカウントの前記プログラムコードは、特定のアカウントから、確認識別情報を含むと共に特定コードの実行命令を要請するトランザクション情報を受信するトランザクション情報受信ステップと；前記識別情報管理契約アカウントに前記確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を送信するクエリ送信ステップと；前記基準識別情報内で前記確認識別情報が検索されるかどうかについてのトランザクション情報の形態である確認応答トランザクション情報を、前記識別情報管理契約アカウントから応答される応答受信ステップと；前記確認応答トランザクション情報に基づいて前記特定コードの実行命令の以後コードを実行する以後手続きステップと；を含み、前記分散型台帳の前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のスマート契約アカウントを管理することを特徴とする、分散型台帳装置を提供することにより達成される。
【００１８】
本発明のまた他の目的は、特定のスマート契約アカウントおよび識別情報管理契約アカウントを含む少なくとも一部のブロックチェーンを保存し、前記識別情報管理契約アカウントに少なくとも一つの既保存された基準識別情報を含む分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記特定のスマート契約アカウントおよび前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；によって行われる分散型台帳方法において、前記特定のスマート契約アカウントが、特定のアカウントから、確認識別情報を含むと共に特定コードの実行命令を要請するトランザクション情報を受信するトランザクション情報受信ステップと；前記特定のスマート契約アカウントが、前記識別情報管理契約アカウントに前記確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を送信するクエリ送信ステップと；前記特定のスマート契約アカウントが、前記基準識別情報内で前記確認識別情報が検索されるかどうかについてのトランザクション情報の形態である確認応答トランザクション情報を前記識別情報管理契約アカウントから応答される応答受信ステップと；前記特定のスマート契約アカウントが、前記確認応答トランザクション情報に基づいて前記特定コードの実行命令の以後コードを実行する以後手続きステップと；を含み、前記分散型台帳の前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のスマート契約アカウントを管理することを特徴とする、分散型台帳方法を提供することにより達成される。
【００１９】
本発明のまた他の目的は、ユーザクライアントから前記ユーザの確認識別情報を受信する識別情報受信モジュールと；受信された前記確認識別情報を特定のスマート契約アカウントについてのトランザクション情報に含ませ、前記識別情報が含まれた前記トランザクション情報を分散型台帳に保存した後、ブロックチェーン分散ネットワークを介して少なくとも一部のノードにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するブロードキャストモジュールと；を含み、前記特定のスマート契約アカウントは、前記確認識別情報を含む前記トランザクション情報を受信するトランザクション情報受信ステップと；既保存された基準識別情報を含む識別情報管理契約アカウントに前記確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を送信するクエリ送信ステップと；前記基準識別情報内で前記確認識別情報が検索されるかどうかについてのトランザクション情報である確認応答トランザクション情報を前記識別情報管理契約アカウントから応答される応答受信ステップと；前記確認応答トランザクション情報に基づいて前記特定コードの実行命令の以後コードを実行する以後手続きステップと；を行うコンピュータ読み取り可能なプログラムコードを含み、前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のスマート契約アカウントを管理することを特徴とする、トランザクション情報のブロードキャスト装置を提供することにより達成される。
【００２０】
本発明のまた他の目的は、ユーザクライアントから前記ユーザの確認識別情報を受信する識別情報受信モジュールと；受信された前記確認識別情報を特定のスマート契約アカウントについてのトランザクション情報に含ませ、前記識別情報が含まれた前記トランザクション情報を分散型台帳に保存した後、ブロックチェーン分散ネットワークを介して少なくとも一部のノードにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するブロードキャストモジュールと；によって行われるトランザクション情報ブロードキャスト方法において、前記特定のスマート契約アカウントが、前記確認識別情報を含む前記トランザクション情報を受信するトランザクション情報受信ステップと；前記特定のスマート契約アカウントが、既保存された基準識別情報を含む識別情報管理契約アカウントに前記確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を送信するクエリ送信ステップと；前記特定のスマート契約アカウントが、前記基準識別情報内で前記確認識別情報が検索されるかどうかについてのトランザクション情報である確認応答トランザクション情報を前記識別情報管理契約アカウントから応答される応答受信ステップと；前記特定のスマート契約アカウントが、前記確認応答トランザクション情報に基づいて前記特定コードの実行命令の以後コードを実行する以後手続きステップと；を含み、前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のスマート契約アカウントを管理することを特徴とする、トランザクション情報ブロードキャスト方法を提供することにより達成される。
【００２１】
本発明のまた他の目的は、ブロックチェーン内の識別情報管理契約アカウントと連結された特定のスマート契約アカウントが生成されるように契約生成トランザクション情報を生成する契約生成モジュールと；生成された前記契約生成トランザクション情報を分散型台帳に保存した後、ブロックチェーン分散ネットワークを介して少なくとも一部のノードにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するブロードキャストモジュールと；を含み、前記特定のスマート契約アカウントは、前記確認識別情報を含む前記トランザクション情報を受信するトランザクション情報受信ステップと；既保存された基準識別情報を含む前記識別情報管理契約アカウントに前記確認識別情報を含む識別情報確認クエリ（Ｑｕｅｒｙ）を送信するクエリ送信ステップと；前記基準識別情報内で前記確認識別情報が検索されるかどうかについてのトランザクション情報である確認応答トランザクション情報を前記識別情報管理契約アカウントから応答される応答受信ステップと；前記確認応答トランザクション情報に基づいて前記特定コードの実行命令の以後コードを実行する以後手続きステップと；を行うコンピュータ読み取り可能なプログラムコードを含み、前記識別情報管理契約アカウントに既保存された前記基準識別情報を用いて前記特定のスマート契約アカウントを管理することを特徴とする、トランザクション情報のブロードキャスト装置を提供することにより達成される。
【発明の効果】
【００２２】
以上述べたように、本発明によれば、以下のような効果を奏する。
第一に、本発明の一実施形態によれば、ブロックチェーンを用いたサービスや資金公募をする場合、別途の複雑な個人識別手続きを必要としないという効果がある。
【００２３】
第二に、本発明の一実施形態によれば、ユーザーのブラックリスティング（Ｂｌａｃｋ  ｌｉｓｔｉｎｇ）やホワイトリスティング（Ｗｈｉｔｅ  Ｌｉｓｔｉｎｇ）が簡単に転換できるという効果がある。
【００２４】
第三に、本発明の一実施形態により特定のスマート契約アカウント及び識別情報管理契約アカウントをブロックチェーン内に別に設定する場合、複数のスマート契約アカウントに対して統合的に識別情報を管理可能な識別情報プラットフォームを形成することができるという効果が発生する。
【００２５】
第四に、本発明の一実施形態により特定のスマート契約アカウント及び識別情報管理契約アカウントをブロックチェーン内に別に設定する場合、識別情報の管理を行うときにサーバークライアントの形ではない、フルノード自体で識別情報管理が自動的に行われるので、非常に効率的で高速の識別情報管理が可能となるという効果がある。
【００２６】
本明細書に添付される次の図面は、本発明の望ましい実施形態を例示するものであり、発明の詳細な説明とともに本発明の技術的な思想をさらに理解させる役割をするため、本発明は図面に記載された事項だけに限定されて解釈されてはならない。
【図面の簡単な説明】
【００２７】
【図１】本発明の一実施形態による分散型台帳装置を示す模式図である。
【図２】様々なノードの形態を示す模式図である。
【図３】本発明の一実施形態によるメモリモジュールのデータ構造を示す模式図である。
【図４】本発明の一実施形態によるメモリモジュールのデータ構造を示す模式図である。
【図５】本発明の一実施形態による識別情報確認クエリを示す模式図である。
【図６】本発明の一実施形態による確認応答トランザクション（Ｔｘ、Ｔｒａｎｓａｃｔｉｏｎ）情報を示す模式図である。
【図７】基準識別情報の保存が要請されるとき、本発明の一実施形態による分散型台帳装置内におけるトークンの流れを示す模式図である。
【図８】基準識別情報の保存が要請されると、本発明の一実施形態による分散型台帳装置の処理モジュールの処理ステップ（識別情報の保存方法）を示すフローチャートである。
【図９】確認識別情報の確認が要請されると、本発明の一実施形態による分散型台帳装置内でのトークンの流れを示した模式図である。
【図１０】特定のスマート契約アカウントから確認識別情報の確認が要請されるとき、本発明の一実施形態による分散型台帳装置の処理モジュールの処理ステップ（識別情報の確認方法）を示すフローチャートである。
【図１１】本発明のトランザクション情報送信装置及び分散型台帳装置のＨＴＴＰ通信を示す模式図である。
【図１２】本発明の一実施形態によるトランザクション情報送信装置が特定のスマート契約の実行要請（ユーザーの確認識別情報を含む）を受信した場合を示す模式図である。
【図１３】本発明の一実施形態によるトランザクション情報送信装置が特定のスマート契約の実行要請（ユーザーの確認識別情報を含む）を受信した場合を示すフローチャートである。
【発明を実施するための形態】
【００２８】
以下、添付図面に基づいて本発明の属する技術分野において通常の知識を有する者が本発明を容易に実施することができる実施形態について詳細に説明する。但し、本発明の好ましい実施形態についての動作原理を詳細に説明するにあたり、関連した公知の機能または構成についての具体的な説明が本発明の要旨を不必要に不明瞭にするおそれがあると判断される場合は、その詳細な説明を省略する。
【００２９】
また、図面全体にわたって類似した機能及び作用をする部分に対しては同一の符号を使用する。これに加えて、明細書全体において、ある特定の部分が他の部分に「連結」されているとしたとき、これは、直接連結されている場合だけでなく、それらの構成要素の間に別の構成要素が介在して間接連結されている場合も含む。また、ある特定の構成要素を「含む」というのは、特に反対される記載がない限り、他の構成要素を除外するのではなく、他の構成要素をさらに含むことができることを意味する。
【００３０】
分散型台帳装置
分散型台帳装置において、図１は、本発明の一実施形態による分散型台帳装置を示す模式図である。図１に示すように、本発明の一実施形態による分散型台帳装置１は、ブロックチェーン分散ネットワーク１００のノードのうちのいずれか一つを意味することができ、通信モジュール１０、処理モジュール１１、メモリモジュール１２を含むことができる。
【００３１】
ブロックチェーン分散ネットワーク１００は、ブロックチェーンの分散型台帳を保存している複数のノードで構成されたＰ２Ｐ分散ネットワークを意味する。ブロックチェーン分散ネットワーク１００は、少なくとも一部のノードが同じ処理を行えるように構成されるので、一部のノードがシャットダウン（Ｓｈｕｔ  ｄｏｗｎ）されるか変調されても、システム全体には影響を与えないという特徴を有する。ノードは、ブロックチェーン分散ネットワーク１００に連結された全てのコンピューティング装置を意味することができる。このようなノードは、デジタルウォレット、ブロックチェーンのコピー、検証エンジン、採掘エンジン、Ｐ２Ｐネットワークの配布機能（ブロードキャスト）などを含んでもよく、さらにＬｉｇｈｔな機能のみで構成されたクライアントをも含んでもよい。本発明の一実施形態によるブロックチェーン分散ネットワーク１００は、ピュア（Ｐｕｒｅ）Ｐ２Ｐと、スーパーノード（Ｓｕｐｅｒ  Ｎｏｄｅ）を有するハイブリッド（Ｈｙｂｒｉｄ）Ｐ２Ｐと、を含んでもよい。
【００３２】
ノードにおいて、図２は、様々なノードの形態を示す模式図である。図２に示すように、参照クライアント（Ｒｅｆｅｒｅｎｃｅ  ｃｌｉｅｎｔ）は、ユーザーのデジタルウォレット管理モジュールと、合意アルゴリズムが作業証明（ＰＯＷ、Ｐｒｏｏｆ  ｏｆ  Ｗｏｒｋ）である場合のブロック採掘（Ｂｌｏｃｋ  Ｍｉｎｉｎｇ）のためのマイニングモジュール（Ｍｉｎｉｎｇ  Ｍｏｄｕｌｅ）と、全体のブロックチェーンの全部または少なくとも一部のブロックを保存するブロックチェーンデータベース（Ｂｌｏｃｋｃｈａｉｎ  Ｄａｔａｂａｓｅ）と、トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）をブロックチェーン分散ネットワークにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するネットワークルーティングモジュール（Ｎｅｔｗｏｒｋ  Ｒｏｕｔｉｎｇ  Ｍｏｄｕｌｅ）と、を含むノードを意味することができ、例えば、ビットコイン・コア（Ｂｉｔｃｏｉｎ  Ｃｏｒｅ）のクライアント（Ｃｌｉｅｎｔ）などを意味することができる。フルノード（Ｆｕｌｌ  Ｎｏｄｅ）は、ブロックチェーンデータベースと、ネットワークルーティングモジュールと、を含むノードを意味することができる。ソロマイナーノード（Ｓｏｌｏ  Ｍｉｎｅｒ  Ｎｏｄｅ）は、マイニングモジュールと、ブロックチェーンデータベースと、ネットワークルーティングモジュールと、を含むノードを意味することができる。マイニングノード（Ｍｉｎｉｎｇ  Ｎｏｄｅ）は、マイニングプール（Ｍｉｎｉｎｇ  Ｐｏｏｌ）のノードを意味するプールマイニングノード（Ｐｏｏｌ  Ｍｉｎｉｎｇ  Ｎｏｄｅ）に連結されるゲートウェイルータ（Ｇａｔｅｗａｙ  Ｒｏｕｔｅｒ）と、マイニングモジュールと、を含む光ノードを意味することができる。ライトウェイトウォレットノード（Ｌｉｇｈｔｗｅｉｇｈｔ  Ｗａｌｌｅｔ  Ｎｏｄｅ）は、一般的にブロックチェーンのヘッダ情報のみを保存し、デジタルウォレット管理モジュールを保有してユーザーのデジタルウォレットを保存し、ネットワークルーティングモジュールを含むがブロックチェーンデータベースを含まないので、トランザクションの生成やブロックチェーン分散ネットワークにアクセスするためには第３者が所有しているサーバーに依存する軽いノードを意味することができる。本発明の一実施形態による分散型台帳装置１は、前記ノードのうちブロックチェーンデータベースとネットワークルーティングモジュールを含むノードを意味することができる。
【００３３】
通信モジュール１０は、トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）をブロックチェーン分散ネットワークにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するネットワークルーティングモジュール（Ｎｅｔｗｏｒｋ  Ｒｏｕｔｉｎｇ  Ｍｏｄｕｌｅ）やプールマイニングノード（Ｐｏｏｌ  Ｍｉｎｉｎｇ  Ｎｏｄｅ）に連結されるゲートウェイルータ（Ｇａｔｅｗａｙ  Ｒｏｕｔｅｒ）などを意味することができる。
【００３４】
処理モジュール１１は、メモリモジュール１２に保存された分散型台帳であるブロックチェーンのブロックに保存されているトランザクションの内容を処理するモジュールである。本発明の一実施形態による処理モジュール１１は、イーサリアム仮想マシン（Ｅｔｈｅｒｅｕｍ Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）のような仮想マシン（ＶＭ）で構成されることができる。このような仮想マシンは、例えば、ムータン （Ｍｕｔａｎ）、ＬＬＬ、セーペント（Ｓｅｒｐｅｎｔ）、ソリディティー（Ｓｏｌｉｄｉｔｙ）などの上位レベルの言語で作られたコード（スマート契約：Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）がコンパイルされて生成されるバイトコード（Ｂｙｔｅ  Ｃｏｄｅ）を実行するためのランタイム（Ｒｕｎｔｉｍｅ）であり、オペコード（Ｏｐｃｏｄｅ）及びスタック（Ｓｔａｃｋ）のほかメモリ（Ｍｅｍｏｒｙ）及びストレージ（Ｓｔｏｒａｇｅ）を使用する主体でもある。
【００３５】
メモリモジュール１２は、分散型台帳を保存するモジュールであり、全体ブロックチェーンの全部または一部のブロックを保存するブロックチェーンデータベース（Ｂｌｏｃｋｃｈａｉｎ  Ｄａｔａｂａｓｅ）を意味することができる。図３及び図４は、本発明の一実施形態によるメモリモジュールのデータ構造を示す模式図である。図３及び図４に示すように、本発明の一実施形態によるメモリモジュール１２は、全部または一部のブロックチェーンを保存することができ、各ブロックのヘッダには、前のブロックヘッダのハッシュ値（ｈａｓｈ）、解答値（ｎｏｎｃｅ）、トランザクショングループのハッシュ値とその他の生成された時間に関する情報であるタイムスタンプ（Ｔｉｍｅｓｔａｍｐ）（図示せず）、採掘難易度を意味するディフィカルティー（Ｄｉｆｆｉｃｕｌｔｙ）（図示せず）、ブロックのナンバーを意味するブロック番号（Ｂｌｏｃｋ  Ｎｕｍｂｅｒ）（図示せず）などが含まれ得る。各ブロック体（Ｃｏｎｔｅｎｔｓ）には、少なくとも一つ以上のトランザクション情報（特に、本発明の一実施形態による識別情報管理契約生成トランザクション情報、識別情報保存トランザクション情報）が含まれることができる。
【００３６】
図３に示すように、識別情報管理契約生成トランザクション情報には、アドレス（ａｄｄｒｅｓｓ）は含まれていない可能性があり、本発明の一実施形態によるスマート契約の一種である識別情報管理契約のコード（例えば、バイトコード（Ｂｙｔｅ Ｃｏｄｅ））を含むことができる。識別情報管理契約生成トランザクション情報をブロックに保存して実行すると、当該スマート契約に対する契約アカウント（Ｃｏｎｔｒａｃｔ  ａｃｃｏｕｎｔ）の一種である識別情報管理契約アカウントのアドレスが生成され、ブロックに保存される。図３に示すように、本発明の一実施形態による識別情報管理契約アカウントを生成した後に識別情報管理契約を条件付きで利用する特定のスマート契約アカウントを生成するか、既存の特定のスマート契約アカウントを変更して配布することができる。
【００３７】
図４に示すように、識別情報保存トランザクション情報には、識別情報管理契約アカウントアドレス情報、識別情報保存実行命令、当該命令のパラメータ（ｐａｒａｍｅｔｅｒ）のうちのいずれか一つである基準識別情報、その他の伝達しようとする価値情報（Ｖａｌｕｅ）またはパラメータを含むことができる。識別情報保存トランザクション情報をブロックに保存して実行すると、基準識別情報を識別情報管理契約アカウントのストレージ（Ｓｔｏｒａｇｅ）やメモリ（ｍｅｍｏｒｙ）内に含むなどの方法でブロックに保存することができる。
【００３８】
図５は、本発明の一実施形態による識別情報確認クエリを示す模式図である。図５に示すように、本発明の一実施形態により特定のスマート契約アカウントは、既保存された基準識別情報にユーザーの確認識別情報が含まれているかどうかを確認するために、識別情報管理契約アカウントに識別情報確認クエリ（Ｑｕｅｒｙ）を送信することができる。識別情報確認クエリには、識別情報管理契約アカウントアドレス情報、識別情報検索命令、当該命令のパラメータのうちの一つである確認識別情報、その他の確認しようとする価値情報（Ｖａｌｕｅ）またはパラメータを含むことができる。識別情報確認クエリは、ローカル（Ｌｏｃａｌ）の分散型台帳装置１にのみ要請され、ブロックチェーン分散ネットワーク全体の状態を変更しない。本発明の一実施形態による識別情報管理契約アカウントが識別情報確認クエリを受信すると、確認識別情報が識別情報管理契約アカウントのストレージ（Ｓｔｏｒａｇｅ）やメモリ（ｍｅｍｏｒｙ）内に保存された基準識別情報に含まれていかどうかを確認し、含まれているかどうかについての情報を特定のスマート契約アカウントに送信して特定のスマート契約が以後のアルゴリズムを実行するように構成されてもよい。
【００３９】
図６は、本発明の一実施形態による確認応答トランザクション（Ｔｘ、Ｔｒａｎｓａｃｔｉｏｎ）情報を示す模式図である。図６に示すように、識別情報管理契約アカウントで識別情報の確認が終了した後に、特定のスマート契約アカウントに確認応答メッセージのトランザクション情報を送信して特定のスマート契約の以後手続きが実行されるように構成されてもよい。このような確認応答メッセージのトランザクション情報には、特定のスマート契約アカウントアドレス情報、識別情報検索命令、当該命令のパラメータのうちの一つである確認識別情報、その他の価値情報（Ｖａｌｕｅ）またはパラメータを含むことができる。本発明の一実施形態による確認応答メッセージのトランザクション情報は、検証が完了すると、ブロックチェーン分散ネットワーク１００内に配布（ブロードキャスト）されて、全ノードにおいて特定のスマート契約が実行されるように構成されてもよい。
【００４０】
このようなスマート契約のコード（Ｃｏｄｅ）は、例えば、イーサリアム（Ｅｔｈｅｒｅｕｍ）の場合、ソリディティー（Ｓｏｌｉｄｉｔｙ）、セーペント（Ｓｅｒｐｅｎｔ）、ＬＬＬ、ムータン （Ｍｕｔａｎ）の言語として用いられるが、現在はソリディティー（Ｓｏｌｉｄｉｔｙ）が主に用いられており、文法はジャバスクリプト（ＪａｖａＳｃｒｉｐｔ（登録商標））と類似している。 スマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）は、「変数」、「構造体」及び「関数」を含めて処理モジュール１１によって処理されるプログラムコードである。このようなスマートコントラクトコード（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ Ｃｏｄｅ）は、コンパイル（Ｃｏｍｐｉｌｅ）過程を経てバイトコード（Ｂｙｔｅ Ｃｏｄｅ）に変換される。バイトコード（Ｂｙｔｅ Ｃｏｄｅ）はソリディティーリアルタイムコンパイラ（Ｓｏｌｉｄｉｔｙ  Ｒｅａｌｔｉｍｅ  Ｃｏｍｐｉｌｅｒ）を用いてコンパイルされる。ソリディティー（Ｓｏｌｉｄｉｔｙ）のバイトコード（Ｂｙｔｅ Ｃｏｄｅ）はすべて１６進数のコードであり、ソリディティー（Ｓｏｌｉｄｉｔｙ）においてこのバイトコード（Ｂｙｔｅ Ｃｏｄｅ）を受信アドレスなしにペイロード（Ｐａｙｌｏａｄ）（ｄａｔａ：）タイプに割り当ててブロックチェイン（Ｂｌｏｃｋｃｈａｉｎ）にトランザクション（Ｔｒａｎｓａｃｔｉｏｎ）を配布すれば、マイナー（Ｍｉｎｅｒ）によってブロック（Ｂｌｏｃｋ）が生成され、このようなトランザクション（Ｔｒａｎｓａｃｔｉｏｎ）はコントラクトクリエーショントランザクション（Ｃｏｎｔｒａｃｔ  Ｃｒｅａｔｉｏｎ  Ｔｒａｎｓａｃｔｉｏｎ）とみなされ、トランザクションレシート（Ｔｒａｎｓａｃｔｉｏｎ Ｒｅｃｅｉｐｔ）のコントラクトアドレス（Ｃｏｎｔｒａｃｔ  Ａｄｄｒｅｓｓ）：フィールドに生成（配布）されたコントラクト（Ｃｏｎｔｒａｃｔ）のアドレスを入れてリターンする。
【００４１】
スマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）開発環境は、開発ツール及びコンパイラ（Ｃｏｍｐｉｌｅｒ）を含む範囲を含むことができる。例えば、ソリディティー（Ｓｏｌｉｄｉｔｙ）の場合、コード（Ｃｏｄｅ）を作成してコンパイルすると、すべてのコンパイラは、「バイトコード（Ｂｙｔｅ Ｃｏｄｅ）」と「ファンクション・シグネチャ（Ｆｕｎｃｔｉｏｎ  Ｓｉｇｎａｔｕｒｅ）」、「アプリケーション・バイナリー・インタフェース（Ａｐｐｌｉｃａｔｉｏｎ  Ｂｉｎａｒｙ  Ｉｎｔｅｒｆａｃｅ、ＡＢＩ）」を出力する。
【００４２】
バイトコード（Ｂｙｔｅ Ｃｏｄｅ）は、前述したようにスマートコントラクトコード（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ Ｃｏｄｅ）をコンパイルした結果であり、ブロックチェイン（Ｂｌｏｃｋｃｈａｉｎ）にコントラクトクリエーショントランザクション（Ｃｏｎｔｒａｃｔ  Ｃｒｅａｔｉｏｎ  Ｔｒａｎｓａｃｔｉｏｎ）を発生させて配置する場合と、コントラクト（Ｃｏｎｔｒａｃｔ）へのメッセージトランザクション（Ｍｅｓｓａｇｅ Ｔｘ：Ｍｅｓｓａｇｅ Ｔｒａｎｓａｃｔｉｏｎ）が発生する場合と、コントラクト（Ｃｏｎｔｒａｃｔ）へのコール／クエリ（Ｃａｌｌ／Ｑｕｅｒｙ）が発生した場合とにより分散型台帳装置（１、イーサネットリウムの場合ＥＶＭ）上で実行される。
【００４３】
ファンクションシグネチャ（Ｆｕｎｃｔｉｏｎ  Ｓｉｇｎａｔｕｒｅ）は、コントラクト（Ｃｏｎｔｒａｃｔ）関数を呼び出す時にインタフェースとして用いられるものであり、コントラクト関数名をＳＨＡ−３暗号的なハッシュ（Ｈａｓｈ）関数でハッシュした ４バイトのハッシュ値であり、コントラクト（Ｃｏｎｔｒａｃｔ）の関数を実行させるとき、トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）のｔｏ：アドレスにはコントラクトアドレス（Ｃｏｎｔｒａｃｔ  Ａｄｄｒｅｓｓ）が入り、ｄａｔａ：部分にはこのメソッドシグネチャー（ｍｅｔｈｏｄ  ｓｉｇｎａｔｕｒｅ）４バイトと共にパラメータ値がペイロード（Ｐａｙｌｏａｄ）に入る。
【００４４】
アプリケーション・バイナリー・インタフェース（Ａｐｐｌｉｃａｔｉｏｎ  Ｂｉｎａｒｙ  Ｉｎｔｅｒｆａｃｅ、ＡＢＩ）は、特定の言語やプラットフォームに依存しない方法で記述されたアプリケーション・インタフェース（Ａｐｐｌｉｃａｔｉｏｎ  Ｉｎｔｅｒｆａｃｅ）を意味する。ＡＢＩの定義をコンパイラ或いはＡＢＩジェネレーター（ＡＢＩ  Ｇｅｎｅｒａｔｏｒ）が出力するが、ＡＢＩにはスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）の関数とパラメータ（Ｐａｒａｍｅｔｅｒ）のメタデータ（Ｍｅｔａ  ｄａｔａ）が定義されている。ＡＢＩを用いてジャバスクリプト（ＪａｖａＳｃｒｉｐｔ）言語ベースのアプリケーションを作成するときに、オブジェクトを作成させることができ、簡単にそのオブジェクトのメソッド（Ｍｅｔｈｏｄ）を呼び出すだけでコントラクト（Ｃｏｎｔｒａｃｔ）の関数が呼び出されるようにすることができる。現在イーサリアム（Ｅｔｈｅｒｅｕｍ）は、ｗｅｂ３．ｊｓと共にジャバスクリプト（ＪａｖａＳｃｒｉｐｔ）応用で簡単にＡＢＩを用いてオブジェクトを作成して使用できるようにサポートしており、１.４.０以降のｇｏ−イーサリアム（Ｅｔｈｅｒｅｕｍ）では、Ｇｏ Ｎａｔｉｖｅ言語ベースの応用でスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）を簡単にバインディング（Ｂｉｎｄｉｎｇ）できるように、ＡＢＩをベースでＧｏ Ｃｏｄｅを生成させるＡＢＩＧｅｎを提供している。
【００４５】
このようなスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）開発環境は、ブロックチェーンエンジン（Ｂｌｏｃｋｃｈａｉｎ  Ｅｎｇｉｎｅ）と連結されてコントラクトクリエーション（Ｃｏｎｔｒａｃｔ  Ｃｒｅａｔｉｏｎ）／デプロイメント（Ｄｅｐｌｏｙｍｅｎｔ）、メッセージトランザクション（Ｍｅｓｓａｇｅ  Ｔｘ）、コール（Ｃａｌｌ）／クエリ（Ｑｕｅｒｙ）を伝達することができるが、このようなブロックチェーンエンジン（Ｂｌｏｃｋｃｈａｉｎ  Ｅｎｇｉｎｅ）は、本発明の一実施形態による分散型台帳装置１を意味し、イーサリアムの例では、 ゲス（ｇｅｔｈ）やパリティ（ｐａｒｉｔｙ）、エス（ｅｔｈ）のようなイーサリアムノード（Ｅｔｈｅｒｅｕｍ  Ｎｏｄｅ）を意味する。最終的にはすべてのスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）と関連したトランザクション（Ｔｒａｎｓａｃｔｉｏｎ）処理とコントラクト（Ｃｏｎｔｒａｃｔ）実行のためのＥＶＭのような仮想マシンは、分散型台帳装置１のようなノード（Ｎｏｄｅ）上に構成されている。
【００４６】
このようなスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）開発環境においてＡＢＩはＡｐｐｌｉｃａｔｉｏｎｓと連結可能である。スマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）はロジック（Ｌｏｇｉｃ）だけを所有し、ユーザーや外部システムとの相互作用のためにはアプリケーション（Ａｐｐｌｉｃａｔｉｏｎ）が必要である。
Ｈｔｍｌ ＋ ＣＳＳ ＋ＪａｖａＳｃｒｉｐｔ、アプリケーションサーバー（Ａｐｐｌｉｃａｔｉｏｎ Ｓｅｒｖｅｒ）、ウォレット（Ｗａｌｌｅｔ）などのアプリケーション（Ａｐｐｌｉｃａｔｉｏｎ）は、例えば、イーサリアム（Ｅｔｈｅｒｅｕｍ）とのインタフェース（Ｉｎｔｅｒｆａｃｅ）を介してスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）と相互作用する構成である。
【００４７】
スマートコントラクトコード（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ Ｃｏｄｅ）は、「Ｃｒｅａｔｉｏｎ／Ｄｅｐｌｏｙｍｅｎｔ」、「Ｉｎｖｏｋｅ  ｂｙ  Ｍｅｓｓａｇｅ」、「Ｃａｌｌ」に大別される。本発明の一実施形態による識別情報管理契約アカウントのコードも、契約アカウント生成、メッセージトランザクションによる識別情報保存、クエリによる識別情報確認に大別される。
【００４８】
本発明の一実施形態による識別情報（基準識別情報及び確認識別情報）は、デジタルウォレット情報、ｅ−ｍａｉｌ情報、ソーシャルネットワークＩＤなどのユーザー識別に関連する情報などを意味することができる。本発明の一実施形態によるメモリモジュール１２により識別情報がトランザクション情報の形でブロックに保存されるので、識別情報に対する偽造・変造が困難であること、識別情報記録時点を明確に把握できること、ユーザー識別により自動的にトークンの流れを制御可能であることが効果として得られる。
【００４９】
図７は、基準識別情報の保存が要請されると、本発明の一実施形態による分散型台帳装置１内におけるトークンの流れを示す模式図である。図７に示すように、本発明の一実施形態による分散型台帳装置１は、メモリモジュール１２のブロックチェーン内に契約アカウント（ＣＡ、Ｃｏｎｔｒａｃｔ  Ａｃｃｏｕｎｔ）の一種として、特定のスマート契約に対する契約アカウントと、識別情報管理契約に対する契約アカウントと、を含むことができる。識別情報管理契約は、スマート契約の一種であり、メモリモジュール１２のブロックチェーンに保存されて処理モジュール１１によって行われるプログラムコードを意味することができる。本発明の一実施形態による分散型台帳装置１に、基準識別情報の保存がグローバルステート（Ｇｌｏｂａｌ  Ｓｔａｔｅ）の変更を引き起こすメッセージトランザクション（Ｍｅｓｓａｇｅ  Ｔｒａｎｓａｃｔｉｏｎ）の形で要請されるとき、このようなトランザクションは、特定ＥＯＡ（Ｅｘｔｅｒｎａｌｌｙ  Ｏｗｎｅｄ  Ａｃｃｏｕｎｔ）または特定のＣＡ（Ｃｏｎｔｒａｃｔ Ａｃｃｏｕｎｔ）から識別情報管理契約アカウントのアドレスに、図４に示す識別情報管理契約アカウントアドレス情報、識別情報保存実行命令、当該命令のパラメータ（ｐａｒａｍｅｔｅｒ）のうちのいずれか一つである基準識別情報、その他の伝達しようとする価値情報（Ｖａｌｕｅ）またはパラメータなどを含めて伝達可能である。
【００５０】
本発明の一実施形態による識別情報の保存のトランザクション情報に含まれる価値情報又はパラメータは、当該識別情報をブラックリスティング（Ｂｌａｃｋ  ｌｉｓｔｉｎｇ）するかホワイトリスティング（Ｗｈｉｔｅ  ｌｉｓｔｉｎｇ）するかに対する変数を含むことができる。前記ブラックリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントに対して前記ユーザにより提供される要請が前記ユーザのデジタルウォレットアドレスに返されることを意味することができる。前記ホワイトリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントのスマート契約コードが実行されて発生した状態変化が前記分散型台帳に保存され、ブロックチェーン分散ネットワークに配布されることを意味することができる。
【００５１】
本発明の一実施形態による識別情報の保存のトランザクション情報に含まれる価値情報またはパラメータは、前記基準識別情報に対応してトークン発行量条件情報をさらに含むことができる。このようなトークン発行量条件情報の使用は、特定のコインを公開的にＩＣＯ（Ｉｎｉｔｉａｌ  Ｃｏｉｎ  Ｏｆｆｅｒｉｎｇ）するときを例として挙げることができる。例えば、特定のユーザーにＩＣＯの場合に購入可能なＣｏｉｎの限界（最小または最大）を指定したい場合、本発明の一実施形態による識別情報保存トランザクション情報に当該識別情報に対応するようにトークン発行量条件情報を一層入力することができる。このような条件情報から外れる場合、トランザクションが返されるように設計することができる。
【００５２】
図８は、基準識別情報の保存が要請されるとき、本発明の一実施形態による分散型台帳装置１の処理モジュール１１の処理ステップ（識別情報の保存方法）を示すフローチャートである。図８に示すように、本発明の一実施形態による処理モジュール１１は、識別情報保存トランザクション情報を受信すると、アドレス呼び出しステップ（Ｓ１０）、保存命令ステップ（Ｓ１１）、保存ステップ（Ｓ１２）を含めてトランザクション情報を処理することができる。
【００５３】
アドレス呼び出しステップ（Ｓ１０）は、処理モジュール１１が識別情報保存トランザクション情報に保存された識別情報管理契約アカウントのアドレスを呼び出すステップである。アドレス呼び出しステップ（Ｓ１０）により、仮想マシンである分散型台帳装置１においてスマート契約の一種である識別情報管理契約アカウントのコードが実行できるように活性化される。
【００５４】
保存命令ステップ（Ｓ１１）は、識別情報保存トランザクション情報の識別情報保存実行命令により識別情報管理契約アカウントのコードのうちの一部である識別情報保存コードを実行するステップである。
【００５５】
保存ステップ（Ｓ１２）は、識別情報管理契約アカウントのコードのうちの一部である識別情報保存コードにより識別情報保存トランザクション情報に含まれているパラメータ（ｐａｒａｍｅｔｅｒ）である基準識別情報を識別情報管理契約アカウントのストレージ（Ｓｔｏｒａｇｅ）またはメモリ（Ｍｅｍｏｒｙ）に保存するステップである。 契約アカウント（Ｃｏｎｔｒａｃｔ  Ａｃｃｏｕｎｔ）はストレージ（Ｓｔｏｒａｇｅ）と呼ばれるパーシステントストレージ（Ｐｅｒｓｉｓｔｅｎｔ  Ｓｔｏｒａｇｅ） を含むことができる。ストレージ（Ｓｔｏｒａｇｅ）では、Ｋｅｙ−Ｖａｌｕｅマップ構造で３２バイトのキーを３２バイト値にマッピングするようになっている。特定のスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）は、自分以外のコントラクト（Ｃｏｎｔｒａｃｔ）のストレージ（Ｓｔｏｒａｇｅ）を読み書きすることができない。 メモリ（Ｍｅｍｏｒｙ）はスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）がメッセージコール（Ｍｅｓｓａｇｅ Ｃａｌｌ）があるたびに最新のインスタンス（Ｉｎｓｔａｎｃｅ）を得ることができる空間である。メモリ（Ｍｅｍｏｒｙ）ではバイト（ｂｙｔｅ）レベルで読み書きすることができるが、３２バイト単位Ｃｈｕｎｋで保存することができる。すなわち、メモリ（Ｍｅｍｏｒｙ）では、１という値を保存すると３２バイト（２５６ビット）空間に保存される。例えば、ＥＶＭは、合計１０２４個の命令セット（Ｉｎｓｔｒｕｃｔｉｏｎ Ｓｅｔ）（ＯＰＣＯＤＥ）を入れることができるスタック（Ｓｔａｃｋ）を含み、２５６ビットのワード（ｗｏｒｄ）（値）を有する。
【００５６】
配布ステップ（Ｓ１３）では、保存ステップ（Ｓ１２）により変更された状態（Ｓｔａｔｅ）を、分散型台帳装置１がブロックチェーン分散ネットワーク１００の全ノードに配布するステップである。
【００５７】
本発明の一実施形態による識別情報保存トランザクション情報によれば、処理モジュール１１により識別情報管理契約アカウントのストレージまたはメモリに基準識別情報が保存され、ノード全体にこのような状態の変更が配布（グローバルステート（Ｇｌｏｂａｌ  Ｓｔａｔｅ）の変更）されるので、その後少なくとも一つ以上の特定のスマート契約に対して統合的に識別情報管理を行うことができるという効果が得られる。
【００５８】
図９は、確認識別情報の確認が要請されるとき、本発明の一実施形態による分散型台帳装置１内におけるトークンの流れを示す模式図である。図９に示すように、本発明の一実施形態による分散型台帳装置１は、メモリモジュール１２のブロックチェーン内の契約アカウント（ＣＡ、Ｃｏｎｔｒａｃｔ  Ａｃｃｏｕｎｔ）の一種として、特定のスマート契約に対する契約アカウントと、識別情報管理契約に対する契約アカウントと、を含むことができる。識別情報管理契約は、スマート契約の一種であり、メモリモジュール１２のトランザクション情報に保存されて処理モジュール１１により行われるプログラムコードを意味することができる。本発明の一実施形態による分散型台帳装置１に確認識別情報の確認がクエリの形で要請されるとき、このようなクエリは、少なくとも一つ以上の特定のスマート契約アカウントであるＣＡ（Ｃｏｎｔｒａｃｔ Ａｃｃｏｕｎｔ）から識別情報管理契約アカウントのアドレスに、図５に示す識別情報管理契約アカウントアドレス情報、識別情報検索命令、当該命令のパラメータ（ｐａｒａｍｅｔｅｒ）のうちのいずれか一つである確認識別情報、その他の確認しようとする価値情報（Ｖａｌｕｅ）またはパラメータなどを含めて伝達され得る。当該特定のスマート契約アカウントは、特定のＥＯＡ／ＣＡから確認識別情報を含む特定のスマート契約の実行要請（トランザクション情報の形態）を受信し、当該確認識別情報の確認を識別情報管理契約アカウントに要請（クエリの形態）ことになる。その後、識別情報管理契約アカウントで識別情報の有無の確認を行い、次いで、特定のスマート契約アカウントに確認応答メッセージトランザクション情報（トランザクション情報の形態）を送信する。
【００５９】
本発明の一実施形態による識別情報確認クエリに含まれる価値情報またはパラメータは、当該識別情報をブラックリスティング（Ｂｌａｃｋ  ｌｉｓｔｉｎｇ）するかホワイトリスティング（Ｗｈｉｔｅ  ｌｉｓｔｉｎｇ）するかに対する変数を含むことができる。前記ブラックリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントに対して前記ユーザにより提供される要請が前記ユーザのデジタルウォレットアドレスに返されることを意味することができる。前記ホワイトリスティングは、前記クエリ受信ステップで受信された前記確認識別情報が前記基準識別情報のうちの少なくとも一つに対応されると、前記特定のアカウントのスマート契約コードが実行されて発生した状態変化が前記分散型台帳に保存され、ブロックチェーン分散ネットワークに配布されることを意味することができる。
【００６０】
図１０は、特定のスマート契約アカウントから確認識別情報の確認が要請されるとき、本発明の一実施形態による分散型台帳装置１の処理モジュール１１の処理ステップ（識別情報の確認方法）を示すフローチャートである。図１０に示すように、本発明の一実施形態による処理モジュール１１は、識別情報確認クエリを受信すると、アドレス呼び出しステップ（Ｓ２０）、検索命令ステップ（Ｓ２１）、確認ステップ（Ｓ２２） 、応答ステップ（Ｓ２３ａ、Ｓ２３ｂ）を含めてトランザクション情報を処理することができる。
【００６１】
アドレス呼び出しステップ（Ｓ２０）は、処理モジュール１１が、識別情報確認クエリに含まれている識別情報管理契約アカウントのアドレスを呼び出すステップである。アドレス呼び出しステップ（Ｓ２０）により、仮想マシンである分散型台帳装置１においてスマート契約の一種である識別情報管理契約アカウントのストレージまたはメモリの検索が行われる。
【００６２】
検索命令ステップ（Ｓ２１）は、識別情報確認クエリの識別情報検索命令により識別情報の検索を行うステップである。
【００６３】
確認ステップ（Ｓ２２）は、識別情報管理契約アカウントのストレージまたはメモリ検索により、識別情報確認クエリに含まれているパラメータ（Ｐａｒａｍｅｔｅｒ）である確認識別情報を、識別情報管理契約アカウントのストレージ（Ｓｔｏｒａｇｅ）またはメモリ（Ｍｅｍｏｒｙ）に保存されている基準識別情報と比較して、当該確認識別情報が基準識別情報として識別情報管理契約アカウントのストレージまたはメモリに保存されているかどうかを確認するステップである。
【００６４】
応答ステップ（Ｓ２３ａ、Ｓ２３ｂ）は、識別情報管理契約アカウントが受信した確認識別情報が既保存されている基準識別情報に対応される場合、確認識別情報が確認されるという確認応答トランザクション情報を、特定のスマート契約アカウントに送信するか（Ｓ２３a）、識別情報管理契約アカウントが受信した確認識別情報が既保存されている基準識別情報に対応されない場合、確認識別情報が確認されないという確認応答トランザクション情報を、特定のスマート契約アカウントに送信する（Ｓ２３ｂ）ステップである。
【００６５】
本発明の一実施形態による識別情報確認クエリによれば、少なくとも一つ以上の特定のスマート契約について統合的に識別情報管理を行うことができるという効果が得られる。これにより、特定のスマート契約内における識別情報の有無に応じてブラックリスティング（Ｂｌａｃｋ  ｌｉｓｔｉｎｇ）やホワイトリスティング（Ｗｈｉｔｅ  ｌｉｓｔｉｎｇ）、トークン発行量条件などの様々なトークンの流れを実現することができるという効果が得られる。
【００６６】
トランザクション情報のブロードキャスト装置
本発明の一実施形態によるトランザクション情報のブロードキャスト装置において、図１１は、本発明のトランザクション情報送信装置２及び分散型台帳装置１０のＨＴＴＰ通信を示す模式図である。図１１に示すように、本発明の一実施形態によるトランザクション情報のブロードキャスト装置は、例えば、ソリディティー（Ｓｏｌｉｄｉｔｙ）でコーディングされる場合、ジャバスクリプト （ＪａｖａＳｃｒｉｐｔ）ベースのＷｅｂ３．Ｊｓ  ＡＰＩを用い、内部的にはＪＳＯＮ―ＲＰＣ  ＡＰＩを用いることができる。これにより、Ｂｒｏｗｓｅｒ、Ｎｏｄｅ．ＪＳ、Ｍｉｓｔなどでトランザクション情報送信装置２を構成することができる。トランザクション情報送信装置２の主体は、ＥＯＡまたはＣＡであり得る。
【００６７】
図１１に示すように、本発明の一実施形態によるトランザクション情報送信装置２は、識別情報管理契約アカウントに特定の条件の基準識別情報を保存するように識別情報保存トランザクション情報を分散型台帳装置１にＪＳＯＮ−ＲＰＣ  ＡＰＩを用いて要請することができる。識別情報保存トランザクション情報を受信した分散型台帳装置１は、図８の識別情報保存方法に基づいて基準識別情報を識別情報管理契約アカウントのストレージまたはメモリに保存した後にブロックチェーン分散ネットワーク１００に配布（Ｂｒｏａｄｃａｓｔ、ｐｒｏｐａｇａｔｉｏｎ）することができる。
【００６８】
図１２は、本発明の一実施形態によるトランザクション情報送信装置２が特定のスマート契約実行要請（ユーザーの確認識別情報を含む）を受信した場合を示す模式図であり、図１３は、本発明の一実施形態によるトランザクション情報送信装置２が特定のスマート契約実行要請を受信した場合を示すフローチャートである。図１２及び図１３に示すように、ユーザクライアント及びサーバを介してトランザクション情報送信装置２が、確認識別情報が含まれている特定のスマート契約実行要請をブロックチェーン分散ネットワーク１００に送信するようにＡＰＩが構成され、コア（Ｃｏｒｅ）において特定のスマート契約実行要請がトランザクション情報として生成した後（Ｓ３０、トランザクション情報の生成ステップ）、トランザクション情報送信装置の秘密キーで署名されたトランザクション情報がブロックチェーン分散ネットワーク１００の特定のノード（分散型台帳装置、１）に送信される（Ｓ３１、トランザクション情報送信ステップ）。
【００６９】
その後、特定のノード（分散型台帳装置、１）は特定のスマート契約を行い（Ｓ３２、スマート契約実行ステップ）、特定のスマート契約アカウントは、特定のスマート契約の実行要請のトランザクション情報に含まれている確認識別情報を識別情報管理契約アカウントに確認してほしいという識別情報確認クエリを送信することができる（Ｓ３３、クエリ送信のステップ）。
【００７０】
その後、特定のスマート契約アカウントは、識別情報管理契約アカウントから確認応答トランザクション情報を受信することができる。本発明の一実施形態による特定のスマート契約アカウントは、確認応答トランザクション情報に基づいてコードを実行して状態の変化を発生させ、発生した状態変化をブロードキャストするか、特定のスマート契約実行要請をリジェクション（Ｒｅｊｅｃｔｉｏｎ）することができある（Ｓ３４、コード実行ステップ）。
【００７１】
特定のノードからブロックチェーン分散ネットワーク１００に配布された状態変化情報は、特定のスマート契約アカウントのメモリに保存されているが、当該特定のノードまたは他の特定のノードが新しいブロック（Ｎｅｗ  ｂｌｏｃｋ）をマイニングすると、そのブロックに記録される。
【００７２】
以上説明したように、本発明が属する技術分野における通常の知識を有する者は、本発明がその技術的な思想や必須の特徴を変更することなく、他の具体的な形態に実施できることを理解するはずである。そこで、以上の記述した実施形態は全ての面で例示的なものであり、限定的ではないものと理解しなければならない。本発明の範囲は、詳細な説明よりは後述する特許請求の範囲によって示され、特許請求の範囲の意味及び範囲、そしてその均等な概念から導き出される全ての変更または変更された形態が本発明の範囲に含まれるものと解釈されなければならない。
【００７３】
本明細書に記述された特徴と利点は、全てを含む訳ではなく、特に、多くの追加の特徴と利点が、図面、明細書及び特許請求の範囲に鑑みて当業者に明らかになるであろう。更に、本明細書において使用される言語は、主として 可読的及び教授的な目的で選択されており、本発明の主題を記述又は限定するために選択されない可能性があることに 留意すべきである。
【００７４】
本発明の実施形態の前述の説明は、例示を目的として提示されたものである。これは、開示された正確な形態に本発明を限定するか網羅的に作製することを意図したものではない。当業者は、前述した開示に照らして種々の修正及び変形が可能であることを理解することができる。
【００７５】
本説明の一部は、演算の記号表現及びアルゴリズムに関する本発明の実施形態を記述する。このようなアルゴリズム的説明および表現は、一般的に自分の作業の核心を効率的に他の当業者に伝達するためにデータ処理分野の当業者により使用される。このような動作は、機能的、演算的、または論理的に説明されるが、コンピュータやこれと同等の電気回路、マイクロコードなどにより実現されると理解される。さらにこれはモジュールとしてのこのような動作の配列を示すために、時には一般性を失うことなく便利に証明される。前述した動作及びその関連するモジュールは、ソフトウェア、ファームウェア、ハードウェア、またはこれらの任意の組み合わせで実現され得る。
【００７６】
ここで記述された任意のステップ、動作、またはプロセスは、一つ以上のハードウェアまたはソフトウェアモジュールと共に単独でまたは他の装置と組み合わせて行われるか実現され得る。一実施形態において、ソフトウェアモジュールは、コンピュータプログラムコードを含むコンピュータ−読み取り可能な媒体で構成されるコンピュータプログラム製品と共に実現され、コンピュータプログラムコードは、記述された任意または全ての工程、ステップ、または動作を行うためのコンピュータプロセッサによって実行され得る。
【００７７】
また、本発明の実施形態は、本明細書における動作を実行するための装置と関する。この装置は、必要な目的のために特別に製作されてもよく、又はコンピュータ内に保存されたコンピュータプログラムにより選択的に活性化又は再構成される一般的な目的の演算装置を備えることができる。このようなコンピュータプログラムは、任意の種類のコンピュータ読み取り可能な記憶媒体又は電子命令語の保存に適した任意の種類のメディアに保存されてもよく、コンピュータ・システム・サーバーに結合されてもよい。さらに、本明細に参照される任意の演算システムは、単一のプロセッサを含んでもよく、又は計算能力増強のためのマルチプロセッサデザインを採用した構造であってもよい。
【００７８】
最後に、本明細書で使用される言語は、主に読みやすさや教示の目的のために選択されており、本発明の主題を記述又は限定するためには選択されていない。
【００７９】
このため、 本発明の範囲は、詳細な説明により限定されるものではなく、これをベースにした出願の任意の請求項によって限定されるものである。したがって、本発明の実施形態の開示は、例示的なものであり、以下の請求項に記載の本発明の範囲を限定するものではない。
【符号の説明】
【００８０】
１  分散型台帳装置
２  トランザクション情報送信装置
１０  通信モジュール
１１  処理モジュール
１２  メモリモジュール
１００  ブロックチェーン分散ネットワーク
【図１】
2019096272.tif 000003
【図２】
2019096272.tif 000004
【図３】
2019096272.tif 000005
【図４】
2019096272.tif 000006
【図５】
2019096272.tif 000007
【図６】
2019096272.tif 000008
【図７】
2019096272.tif 000009
【図８】
2019096272.tif 000010
【図９】
2019096272.tif 000011
【図１０】
2019096272.tif 000012
【図１１】
2019096272.tif 000013
【図１２】
2019096272.tif 000014
【図１３】
2019096272.tif 000015
【手続補正書】
【提出日】平成30年7月24日(2018.7.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
特定のスマート契約アカウントおよび識別情報を管理するスマート契約アカウントである識別情報管理契約アカウントを含むブロックチェーンを保存し、前記識別情報管理契約アカウントに少なくとも一つの既保存された基準識別情報を含む分散型台帳が保存されたメモリモジュールと；
前記メモリモジュールと動作可能に結合され、前記特定のスマート契約アカウントおよび前記識別情報管理契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；
を含み、
前記特定のスマート契約アカウントの前記プログラムコードは、
特定の命令を受信する命令受信ステップと；
確認識別情報を含む識別情報確認メッセージトランザクションを、前記ブロックチェーン内の前記識別情報管理契約アカウントに送信するメッセージ送信ステップと；
前記識別情報管理契約アカウントにおいて前記確認識別情報が検索される場合、生成されるトランザクション情報の形態である確認応答トランザクション情報を受信する確認応答受信ステップと；
受信された前記確認応答トランザクション情報に含まれたリスト情報に基づいて前記特定の命令の実行可否を決定する命令実行決定ステップと；
を実行するコンピュータ読み取り可能なプログラムコードを含み、
前記識別情報管理契約アカウントの前記プログラムコードは、
前記確認識別情報を含む前記識別情報確認メッセージトランザクションを、前記ブロックチェーン内の特定のスマート契約アカウントから受信するメッセージ受信ステップと；
前記識別情報確認メッセージトランザクションに基づいて前記基準識別情報内で前記確認識別情報を検索する識別情報検索ステップと；
前記基準識別情報内で前記確認識別情報が検索される場合、前記リスト情報が含まれたトランザクション情報の形態である確認応答トランザクション情報を生成し、前記確認応答トランザクション情報を前記特定のスマート契約アカウントに応答する応答ステップと；
を実行するコンピュータ読み取り可能なプログラムコードを含み、
前記リスト情報は、前記基準識別情報に対応されてブラックリスト（Ｂｌａｃｋ  ｌｉｓｔｉｎｇ）かどうかまたはホワイトリスト（Ｗｈｉｔｅ  ｌｉｓｔｉｎｇ）かどうかを決定するように、前記識別情報管理契約アカウントに保存される情報を意味し、
前記確認応答トランザクション情報が含まれたブロックが証明されると、前記確認応答トランザクション情報を、前記ブロックチェーンが含まれるブロックチェーン分散ネットワークにブロードキャストし、
前記識別情報管理契約アカウントに既保存された前記基準識別情報および前記リスト情報を用いて、複数のスマート契約アカウントに対して統合的に識別情報管理を行うことを特徴とする、
ブロックチェーンベースのユーザ識別管理用の分散型台帳装置。
【請求項２】
基準識別情報が既保存されたスマート契約アカウントである識別情報管理契約アカウントおよび特定のスマート契約アカウントを含むブロックチェーンを保存する分散型台帳装置が、特定のスマート契約アカウントに対する特定の命令を受信する命令受信ステップと；
前記分散型台帳装置が、確認識別情報を含む識別情報確認メッセージトランザクションを、前記ブロックチェーン内の前記特定のスマート契約アカウントから前記識別情報管理契約アカウントに送信するメッセージ送信ステップと、
前記分散型台帳装置が、前記識別情報確認メッセージトランザクションに基づいて前記基準識別情報内で前記確認識別情報を検索する識別情報検索ステップと；
前記分散型台帳装置が、前記識別情報管理契約アカウント内の前記基準識別情報内で前記確認識別情報が検索される場合、リスト情報が含まれたトランザクション情報の形態である確認応答トランザクション情報を生成し、前記確認応答トランザクション情報を、前記識別情報管理契約アカウントから前記特定のスマート契約アカウントに送信する応答ステップと；
前記分散型台帳装置が、受信された前記確認応答トランザクション情報に含まれたリスト情報に基づいて、前記特定のスマート契約アカウントにおいて前記特定の命令の実行可否を決定する命令実行決定ステップと；
を含み、
前記リスト情報は、前記基準識別情報に対応されてブラックリスト（Ｂｌａｃｋ  ｌｉｓｔｉｎｇ）かどうかまたはホワイトリスト（Ｗｈｉｔｅ  ｌｉｓｔｉｎｇ）かどうかを決定するように、前記識別情報管理契約アカウントに保存される情報を意味し、
前記確認応答トランザクション情報が含まれたブロックが証明されると、前記確認応答トランザクション情報を、前記ブロックチェーンが含まれるブロックチェーン分散ネットワークにブロードキャストし、
前記識別情報管理契約アカウントに既保存された前記基準識別情報および前記リスト情報を用いて、複数のスマート契約アカウントに対して統合的に識別情報管理を行うことを特徴とする、
ブロックチェーンベースのユーザ識別管理用の分散型台帳方法。
【外国語明細書】
2019096272000001.pdf