JP2019176432A - ブロックチェーン上での正誤判断・結果共有システム - Google Patents

ブロックチェーン上での正誤判断・結果共有システム Download PDF

Info

Publication number
JP2019176432A
JP2019176432A JP2018065807A JP2018065807A JP2019176432A JP 2019176432 A JP2019176432 A JP 2019176432A JP 2018065807 A JP2018065807 A JP 2018065807A JP 2018065807 A JP2018065807 A JP 2018065807A JP 2019176432 A JP2019176432 A JP 2019176432A
Authority
JP
Japan
Prior art keywords
data
transaction data
user
answer
hash value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018065807A
Other languages
English (en)
Other versions
JP6438615B1 (ja
Inventor
智行 木村
Satoyuki Kimura
智行 木村
田中 俊太郎
Shuntaro Tanaka
俊太郎 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Research Institute Ltd
Sumitomo Mitsui Banking Corp
Original Assignee
Japan Research Institute Ltd
Sumitomo Mitsui Banking Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Japan Research Institute Ltd, Sumitomo Mitsui Banking Corp filed Critical Japan Research Institute Ltd
Priority to JP2018065807A priority Critical patent/JP6438615B1/ja
Application granted granted Critical
Publication of JP6438615B1 publication Critical patent/JP6438615B1/ja
Publication of JP2019176432A publication Critical patent/JP2019176432A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】分散型台帳検証システムを提供する。【解決手段】分散型台帳に記録するための第1のコンピュータデバイスによって実行される方法であって、第1のユーザからの問いに対する正答に基づいて第1のハッシュ値を生成するステップと、第1のハッシュ値を含む第1のトランザクションデータを生成するステップであって、第1のトランザクションデータは、過去のトランザクションデータと関連付けられている、ステップと、第1のトランザクションデータをブロードキャストするステップと、を備える。第1のトランザクションデータは、第2のコンピュータデバイスによってブロードキャストされる第2のトランザクションデータと比較することによって分散型台帳に記録され、第2のトランザクションデータは、問いに対する第2のユーザからの回答に基づいて生成された第2のハッシュ値を含む。【選択図】図3

Description

本発明は、ブロックチェーン上での正誤判断・結果共有システム(分散型台帳検証システム)に関し、特に、従来のプルーフオブワーク(poW)による検証を行うことなく台帳の改ざんを防止する分散型台帳検証システムに関する。
近年、いわゆる「ブロックチェーン」と称される分散型台帳システムが利用されつつある。ブロックチェーンでは、複数のコンピュータデバイス(ノード)の間で通信を行うピアツーピアネットワークにおいて、ブロックと称されるデータを連結することによって台帳が作成される。ブロックチェーンにおいて生成される台帳は、全ノードに公開され、それぞれのノードが台帳の正当性を検証することによって、台帳の改ざんを防止している。
各ノードは、プルーフオブワークと称される計算を行い、最初に計算を解いたノードが次のブロックを生成することができる(新たなブロックが承認される)。このプルーフオブワークでは、nonceと称されるランダムな変数を増加させることによって計算が解かれる。この計算は、ある程度のリソース(時間およびコンピュータデバイス機器の物理的リソースなど)を要する(つまり、計算に要する負荷が高い)。プルーフオブワークにおける計算においてこのような高い負荷をかけるのは、仮に台帳の改ざんが行われた場合、そのブロックを承認するのに前のブロックに遡って再計算する必要があり、正当なブロックを承認することと比べて再計算速度に要する速度が追い付かないからである。つまり、ブロックチェーンでは、台帳の改ざんを防止するために、負荷の高い計算を解くことを要求している(非特許文献1を参照)。
Satoshi Nakamoto、"Bitcoin: A Peer-to-Peer Electronic Cash System,"、[online]、2008年、2018年2月15日検索、インターネット<URL:https://bitcoin.org/bitcoin.pdf>)
上述したように、ブロックチェーンにおける台帳の改ざんを防止するために、負荷の高い計算を解くことをノードに要求している。この計算は、例えば、100未満の数字を求める(f(x)<100)というような単純な計算であり、ノードは、nonceを総当たり的に増加させて計算する。この計算は負荷を高めることのみを目的としているものであり、計算自体に意味を成していない。
ブロックチェーンは、負荷の高い計算を解くことをノードに要求しつつ、計算を最初に解いたノードに報奨を与えることによって、台帳の相互管理を実現している。しかしながら、上述した負荷を考慮すると、計算に要するリソースの観点から無駄が多い側面も有している。
本発明によれば、従来のプルーフオブワークによる検証を行うことなく台帳の改ざんを防止する分散型台帳検証システムが提供される。特に、本発明によれば、ユーザ間で交換される問いおよびその回答に関する情報そのものを秘匿しつつ、その回答の検証結果および判断ロジックを広く共有し、信用ある機関なしに回答を検証することができる分散型台帳検証システムが提供される。
本発明の一実施形態に係る分散型台帳に記録するための第1のコンピュータデバイスによって実行される方法は、分散型台帳に記録するための第1のコンピュータデバイスによって実行される方法であって、第1のユーザからの問いに対する正答に基づいて第1のハッシュ値を生成するステップと、前記第1のハッシュ値を含む第1のトランザクションデータを生成するステップであって、前記第1のトランザクションデータは、過去のトランザクションデータと関連付けられている、ステップと、前記第1のトランザクションデータをブロードキャストするステップと、を備え、前記第1のトランザクションデータは、第2のコンピュータデバイスによってブロードキャストされる第2のトランザクションデータと比較することによって前記分散型台帳に記録され、前記第2のトランザクションデータは、前記問いに対する第2のユーザからの回答に基づいて生成された第2のハッシュ値を含むことを特徴とする。
本発明の一実施形態に係る分散型台帳検証システムによれば、従来の分散型台帳検証システムにおける台帳の改ざん耐性を担保しつつ、有意な方法によってトランザクションの検証を行うことによってコンピュータリソースなどの無駄を削減することができる。
本発明の一実施形態に係る分散型台帳検証システムの全体的な構成の例を示すブロック図である。 本発明の一実施形態に係る分散型台帳検証システムを構成するデバイスの詳細な構成要素の例を示すブロック図である。 第1の実施形態に係る分散型台帳検証システムが実行する処理を示すフローチャートである。 第1の実施形態に係る分散型台帳検証システムが実行する処理を示すフローチャートである。 第1の実施形態に係る分散型台帳検証システムが実行する処理を示すフローチャートである。 第2の実施形態に係る分散型台帳検証システムが実行する処理を示すフローチャートである。 第2の実施形態に係る分散型台帳検証システムが実行する処理を示すフローチャートである。 第3の実施形態に係る分散型台帳検証システムが実行する処理を示すフローチャートである。 第3の実施形態に係る分散型台帳検証システムが実行する処理を示すフローチャートである。
以下、添付した図面を参照して、本発明の一実施形態に係る分散型台帳検証システムを詳細に説明する。本発明の一実施形態に係る分散型台帳検証システムは、ピアツーピアネットワークにおいて正当なデータのみを連結することによって分散型台帳を作成する(つまり、データの改ざんを防止する)。この台帳は、それぞれのユーザが相互に検証することによって台帳の正当性が担保される。
図1は、本発明の一実施形態に係る分散型台帳検証システムの全体的な構成の例を示している。本発明の一実施形態に係る分散型台帳検証システムは、複数のコンピュータデバイス1および認証機関デバイス2がネットワーク3を介して相互接続されることによって構成される。複数のコンピュータデバイス1の各々は、スマートフォンなどの携帯電話およびタブレット端末などの携帯情報端末、デスクトップ型パーソナルコンピュータ、ノート型パーソナルコンピュータ、およびデータセンター設置型コンピュータなどを含むが、それらに限定されない。
複数のコンピュータデバイス1の各々は、分散型台帳検証システムのノード(つまり、分散型台帳検証システムへの参加者(ユーザ)が使用するコンピュータデバイス)を構成する。また、複数のコンピュータデバイス1のうちのいずれかが、認証機関としての役割を果たす。認証機関は、認証機関のみの役割を果たしてもよく、認証機関および参加者の両方の役割を果たしてもよい。
図1では、ノードを構成するコンピュータデバイスを、コンピュータデバイス1a乃至1c(以下、「コンピュータデバイス1」)と表し、認証機関を構成するコンピュータデバイスを、認証機関デバイス2と表している。なお、ノードおよび認証機関が実装されるコンピュータデバイスのタイプは特に限定されず、演算および通信機能を有するいずれかのコンピュータデバイスであってもよい。また、ネットワーク3は、インターネットなどのパブリックネットワークである。
コンピュータデバイス1は、本発明の一実施形態に係る分散型台帳検証システムに参加するユーザが使用するコンピュータデバイスである。コンピュータデバイス1を使用するユーザは、公開鍵暗号方式における秘密鍵と公開鍵のペア、および公開鍵から生成されるユーザIDを有する。ユーザIDは、本発明の一実施形態に係る分散型台帳検証システムにおいてユーザを識別するID(アドレス)であり、以下で説明するトランザクションデータが、全てのユーザIDを宛先としてブロードキャストされる。ユーザは、コンピュータデバイス1を使用して、台帳にデータを書き込む。この台帳を書き込む際に、他のノードによってデータの正当性が検証される。
認証機関デバイス2は、ユーザが台帳にデータを書き込む際に使用する秘密鍵および公開鍵のペアを発行する役割を果たす。上述したように、認証機関デバイス2は、分散型台帳検証システムにおけるノードのうちの1つであってもよく、または認証機関としての役割のみを果たしてもよいが、少なくとも分散型台帳システムにおいて、信頼可能な第三者機関の役割を果たす(特殊な権限を有する)。
次に、図2を参照して、本発明の一実施形態に係る分散型台帳検証システムを構成するコンピュータデバイス1および認証機関デバイス2の詳細な構成要素の例を説明する。コンピュータデバイス1および認証機関デバイス2は、同一の構成を有してもよく、または異なる構成を有してもよい。本実施形態では、両者は同一の構成を有するものとして説明する。よって、図2では、コンピュータデバイス1および認証機関デバイス2をまとめて、コンピュータデバイス1が有する構成要素を説明する。
コンピュータデバイス1は、制御装置11、メモリ12、記憶装置13、通信装置14、および表示装置15を備えている。図2には示されないが、認証機関デバイス2も同様の構成要素を有しており、以下の説明で、それぞれ制御装置21、メモリ22、記憶装置23、通信装置24、および表示装置25を有するものとする。
制御装置11は、プロセッサとも称され、上記各構成要素の制御やデータの演算を行う。また、制御装置11は、本発明の一実施形態に係る各種処理を実行するための、記憶装置13に記憶されているプログラムをメモリ12に読み出して実行する。ここで、上述したプログラムとは、本発明の一実施形態に係る分散型台帳検証システムを実行するためのプログラム(以下、「分散型台帳検証プログラム」)であり、各コンピュータデバイス1および認証機関デバイス2の記憶装置13に記憶されている。認証機関デバイス2は、コンピュータデバイス1とは異なる特殊な権限を有するが、その権限は、分散型台帳検証プログラムによって制御されてもよい(例えば、認証機関デバイス2のみが秘密鍵および公開鍵を発行する権限を有するよう制御される)。代わりに、認証機関デバイス2のみ、コンピュータデバイス1が実行するプログラムとは異なるプログラムを実行することによって制御されてもよい(このプログラムを実行したコンピュータデバイスのみが秘密鍵および公開鍵を発行することができる)。
メモリ12は、他のコンピュータデバイス1および認証機関デバイス2などからブロードキャストされたデータ、コンピュータ実行可能な命令および当該命令による演算処理後のデータなどを記憶する揮発性データ記憶装置である。メモリ12は、RAM(ランダムアクセスメモリ)(例えば、SRAM(スタティックRAM)およびDRAM(ダイナミックRAM))などで実装されてもよい。
記憶装置13は、上述した分散型台帳検証プログラムおよび本発明の一実施形態に係る分散型台帳検証システムを通じて生成される台帳を記憶する不揮発性データ記憶装置である。記憶装置13は、ROM(リードオンリメモリ)などの不揮発性半導体メモリ、磁気記憶装置(ハードディスクドライブなど)、および光ディスクなどで実装されてもよい。また、記憶装置13には、認証機関デバイス2が生成した秘密鍵と公開鍵のペアおよびユーザIDが記憶されている。
通信装置14は、ネットワーク3を介して接続された他のコンピュータデバイス1および認証機関デバイス2との間でデータおよび制御情報を送受信するネットワークインタフェースである。このネットワークインタフェースは、例えば、TCP/IPなどのプロトコルに準拠したネットワークカード(例えば、LANカード)などによって実装される。
表示装置15は、制御装置11が分散型台帳検証プログラムを実行することによって、ユーザが情報を入力および表示するための入出力インタフェースを表示する。表示装置1は、コンピュータデバイス1と一体化されたディスプレイデバイス(例えば、タッチパネルディスプレイ)、または別個に接続されたディスプレイデバイス(例えば、ディスプレイボード)などで実装される。
<第1の実施形態>
次に、図3乃至図5を参照して、本発明の第1の実施形態に係る分散型台帳検証システムが実行する処理の例を説明する。本発明の一実施形態に係る分散型台帳検証システムは、ユーザ間の相互検証によってデータが記録される台帳を管理するシステムに関するものである。台帳にデータを記録する行為は、例えば、資金決済などの取引行為に対応するが、その行為は特に限定されない。以下では、ユーザが台帳に記録する行為を「トランザクション」と称し、そのときに台帳に記録されるデータを「トランザクションデータ」と称する。第1の実施形態では、ユーザの本人確認を行う例を説明し、本人確認を証明するユーザ(被確認ユーザ)および本人確認を検証するユーザ(確認ユーザ)の双方がトランザクションを発生させる。
第1の実施形態を説明する前提として、ユーザがコンピュータデバイス1を通じて生成したトランザクションデータは、本発明の一実施形態に係る分散型台帳検証システムに参加する全てのコンピュータデバイス1にブロードキャストされる。トランザクションデータは、少なくとも同一のユーザが生成した前のトランザクションデータから生成されたハッシュ値を含む。
トランザクションデータがブロードキャストされると、他のユーザがそのトランザクションデータの正当性を検証する。そして、正当と判断されたトランザクションに対応するトランザクションデータが前のトランザクションデータと連結して台帳に記録される。各トランザクションデータは、前のトランザクションデータのハッシュ値が含まれ、該当のトランザクションデータを改ざんしようとすると、そのトランザクションデータにつながる過去の全てのデータのハッシュ値をも変更する必要がある。本発明の一実施形態に係る分散型台帳は、このような履歴構造によって台帳の改ざん耐性を高めている。
図3乃至図5の例では、ユーザA(図示せず)が、ユーザB(図示せず)との間で資金決済などを行う上で、その取引においてユーザBによってユーザAの本人確認が行われるものとする。ユーザAの本人確認は、自身が有する本人確認証明データ(例えば、氏名および住所などを含む)とユーザBが有するユーザAの本人確認検証データとを比較することによって行われる。ユーザAが使用するコンピュータデバイス1をコンピュータデバイス1Aとし、ユーザBが使用するコンピュータデバイス1をコンピュータデバイス1Bとする。また、コンピュータデバイス1Aが生成したトランザクションデータは、ユーザAおよびユーザB以外の第三者によって検証されるが、その検証するものをユーザCとし、ユーザCが使用するコンピュータデバイス1をコンピュータデバイス1Cとする。以下で説明する各動作は、コンピュータデバイス1A乃至コンピュータデバイス1C、および認証機関デバイス2のそれぞれが分散型台帳検証プログラムを実行することによって実装される。
なお、図3乃至図5の説明では、以下で言及するトランザクションデータ1が生成および検証されるが、対応するトランザクション1の前にトランザクションaが発生しているものとする。トランザクションaは、他のユーザによって検証されており、対応するトランザクションデータaが台帳に記録されている。よって、トランザクションデータ1には、トランザクションデータaから生成されたハッシュ値が含まれるものとする。同様に、以下で言及するトランザクションデータ2に対応するトランザクション2の前にトランザクションbが発生しているものとする。トランザクションデータ2には、トランザクションbに対応するトランザクションデータbから生成されたハッシュ値が含まれるものとする。
図3は、ユーザAが、自身の本人確認のための本人確認証明データを生成し、本人確認証明データに基づいて生成されたトランザクションデータ1をブロードキャストするまでの処理を説明するフローチャートである。
まず、ユーザAがコンピュータデバイス1Aの表示装置15(以下、表示装置15A)に表示された入出力インタフェース(図示しない)を介して本人確認を行うための所定の操作を行う。この操作は、ユーザAが自身の本人確認のための本人確認証明データを台帳に記録するトランザクション1のトリガとなり、対応するトランザクションデータ1が生成される。トランザクション1が検証されると、ユーザAの本人確認が行われたことになり、トランザクションデータ1が台帳に記録される。上記操作に応じて、コンピュータデバイス1Aの通信装置14(以下、通信装置14A)は、認証機関デバイス2に秘密鍵発行要求を送信する(ステップS301)。
認証機関デバイス2の通信装置24が秘密鍵発行要求を受信すると、制御装置21が秘密鍵と公開鍵のペアを生成する(ステップS302)。生成した秘密鍵は、書式データとともにコンピュータデバイス1Aに送信され(ステップS303)、生成した公開鍵は、全てのコンピュータデバイス1にブロードキャストされる(ステップS304)。ここで、書式データとは、ユーザAの本人確認を行うためにコンピュータデバイス1Aが生成する本人確認証明データおよび認証機関デバイス2が生成する本人確認検証データの双方に共通する書式を有するデータである。
書式データは、ユーザA、ユーザBまたは認証機関のいずれかが予め定義し、少なくともその書式データが記憶装置23に記憶されている。書式データは、本人確認を行う際に、コンピュータデバイス1Bによって認証機関デバイス2に送信されてもよく、または予め記憶装置23に記憶されてもよい。制御装置2は、上述した公開鍵を生成すると、生成した公開鍵を使用して書式データを暗号化する。この暗号化によって、以下で説明するように、書式データの更新は、認証機関が発行した秘密鍵を有しているユーザのみが更新することができるよう制御される。
通信装置14AがステップS303で送信された秘密鍵および書式データを受信すると、コンピュータデバイス1Aの制御装置11(以下、制御装置11A)は、書式データに基づいて、本人確認証明データを生成する(ステップS305)。本人確認証明データは、書式データに従ってユーザAの本人確認を証明するために使用する情報(例えば、氏名および住所など)が挿入されたデータである。上述した情報は、本人確認を行う際に上述した入出力インタフェースを介してユーザAによって入力されてもよく、または予めコンピュータデバイス1Aの記憶装置13(以下、記憶装置13A)に記憶されてもよい。
本人確認証明データは、後述する本人確認検証データとともにハッシュ化される。検証者は、ハッシュ値が一致するかを確認することによって、双方のデータが一致するかを検証する。よって、本人確認証明データおよび本人確認検証データは同一の情報を有するだけでなく、同一のデータ構造を有する必要がある。書式データは、双方のデータ間で統一したデータ構造を定義したデータである。
上述した本人確認証明データを生成することは、ユーザAの本人確認情報を使用して書式データを更新することを意味する。本人確認を行うユーザAおよびユーザBは、認証機関が発行した秘密鍵を有している。つまり、ユーザAおよびユーザBのみがこの書式データを更新することができる。
本人確認証明データが生成されると、制御装置11Aは、本人確認証明データからハッシュ値を生成し、ステップS303で送信された秘密鍵を使用して署名を生成する。また、上述したトランザクションデータaからハッシュ値を生成する。そして、制御装置11Aは、本人確認証明データから生成したハッシュ値、生成した署名、およびトランザクションデータaから生成したハッシュ値を含むトランザクションデータ1を生成する(ステップS306)。トランザクションデータ1が生成されると、通信装置14Aは、トランザクションデータ1を全てのコンピュータデバイス1にブロードキャストする(ステップS307)。
図4は、ユーザBが、ユーザAの本人確認のための本人確認検証データを生成し、本人確認検証データに基づいて生成されたトランザクションデータ2をブロードキャストするまでの処理を説明するフローチャートである。
ユーザBがコンピュータデバイス1Bの表示装置15(以下、表示装置15B)に表示された入出力インタフェース(図示しない)を介してユーザAの本人確認を検証するために使用する本人確認検証情報(例えば、氏名および住所など)を入力する。この操作は、ユーザBがユーザAの本人確認のための本人確認検証データを台帳に記録するトランザクション2のトリガとなり、対応するトランザクションデータ2が生成される。この情報は、ユーザBが有しているユーザAに関する情報であり、上述した入出力インタフェースから入力することに代えて、予めコンピュータデバイス1Bの記憶装置13(以下、記憶装置13B)に記憶されてもよい。なお、本人確認検証データに含まれるユーザAの氏名および住所などの属性は特に限定されないが、上述した本人確認証明データと同様の属性を含む必要がある。
上記操作に応じて、コンピュータデバイス1Bの通信装置14(以下、通信装置14B)は、認証機関デバイス2に本人確認検証情報を送信する(ステップS401)。通信装置24が本人確認検証情報を受信すると、制御装置21は、図3のステップS303でコンピュータデバイス1Aに送信されたものと同一の書式データに本人確認検証情報を挿入して本人確認検証データを生成する(ステップS402)。
本人確認検証データが生成されると、制御装置21は、本人確認検証データからハッシュ値を生成し、図3のステップS302で生成した秘密鍵を使用して署名を生成する。また、上述したトランザクションデータbからハッシュ値を生成する。そして、制御装置21は、本人確認検証データから生成したハッシュ値、生成した署名、およびトランザクションデータbから生成したハッシュ値を含むトランザクションデータ2を生成する(ステップS403)。トランザクションデータ2が生成されると、通信装置24は、トランザクションデータ2を全てのコンピュータデバイス1にブロードキャストする(ステップS404)。
ユーザAが生成した本人確認証明データおよびユーザBが生成した本人確認検証データは、双方が有しているユーザAに関する情報である。以下で説明するように、これらの情報が同一の書式に従ってハッシュ化されるので、双方の情報が一致する限り、ハッシュ値も一致することになる。トランザクションのデータを検証する検証者(ユーザC)は、生成された2つのハッシュ値が同一であるか否かを確認することによって本人確認を行い、ひいてはトランザクションの正当性を検証する。
上述した処理によって、トランザクションデータ1およびトランザクションデータ2が全てのコンピュータデバイス1にブロードキャストされることになる。後続の処理では、ユーザAおよびユーザB以外の第三者がトランザクションデータ1およびトランザクションデータ2を検証することになる。上述したように、この検証を行う第三者は、コンピュータデバイス1Cを使用するユーザCであるものとする。
なお、本実施形態では、トランザクションデータ2は、認証機関デバイス2によって生成されるが、認証機関デバイス2の代わりにコンピュータデバイス1Bによって生成されてもよい。この場合、ステップS401で本人確認検証情報が認証機関デバイス2に送信されるのではなく、秘密鍵発行要求が送信される。それに応じて、認証機関デバイス2が秘密鍵と書式データをコンピュータデバイス1Bに送信し、コンピュータデバイス1Bが書式データに本人確認検証情報を挿入して本人確認検証データを生成する。その後は、上述したステップS403およびステップS404で説明した処理と同様に、トランザクションデータ2が生成およびブロードキャストされる。
図5は、ユーザCが、図3および図4でブロードキャストされたトランザクションデータ1およびトランザクションデータ2の整合性を検証する処理を説明するフローチャートである。
コンピュータデバイス1Cの通信装置14(以下、通信装置14C)がトランザクションデータ1およびトランザクションデータ2を受信する(ステップS501)。そして、コンピュータデバイス1Cの制御装置11(以下、制御装置11C)は、図3のステップS304でブロードキャストされた公開鍵を使用して、トランザクションデータ1およびトランザクションデータ2を復号する(ステップS502)。復号されると、コンピュータデバイス1Cの表示装置15(以下、表示装置15C)には、本人確認証明データから生成したハッシュ値および本人確認検証データから生成したハッシュ値が表示される。そして、ユーザCは2つのハッシュ値が一致するか否かを確認することによってトランザクション1およびトランザクション2を検証する(ステップS503)。
上記検証において、2つのハッシュ値が一致する場合は、本人確認がされたものとしてトランザクション1およびトランザクション2を承認する。一致しない場合は、本人確認がされていないものとしてトランザクション1およびトランザクション2を承認しない。トランザクションが承認されると、対応するトランザクションデータ1およびトランザクションデータ2が台帳に記録され、それぞれがトランザクションデータaおよびトランザクションデータbと連結される。
上記トランザクション1およびトランザクション2の承認は、ユーザCが表示装置15Cに表示された入出力インタフェース(図示しない)を介して所定の操作を行うことによって行われる。つまり、上記操作が行われたことに応答して、通信装置14Cが、トランザクション1およびトランザクション2それぞれに対する承認電文を全てのコンピュータデバイス1にブロードキャストする(ステップS504)。なお、本人確認がされなかった場合、少なくともトランザクション1は承認されず、トランザクションデータ1は破棄されてもよい。
本実施形態では、ユーザCが検証を行うユーザとして説明しているが、トランザクションデータ1およびトランザクションデータ2は、全てのコンピュータデバイス1にブロードキャストされるので、上述した検証を最も早く行ったユーザが検証者になる。つまり、トランザクション1およびトランザクション2は、最も早く検証を行ったユーザに対応するノードに連結し、分散型台帳を形成する。よって、検証者は認証機関になることもあり、例えば、ビットコインなどで利用されている報酬がない場合は、認証機関が検証者として機能することによって、誰も検証を行わないといった事態を回避することができる。
上述したコンピュータデバイス1Aが実行する処理(図3で説明した処理)およびコンピュータデバイス1Bが実行する処理(図4で説明した処理)の順序は逆であってもよい。すなわち、図3および図4の説明とは逆に、本人確認検証データが生成およびブロードキャストされた後に、本人確認証明データが生成およびブロードキャストされてもよい。
以上のように第1の実施形態に係る分散型台帳検証システムを説明した。第1の実施形態では、トランザクションの検証を行う際に、本人確認に使用するデータの整合性の可否を検証者に要求している。従来の分散型台帳システムで適用されているプルーフオブワークでは、負荷をかけることのみを目的とし、計算自体に意味を成していないことは上述した。第1の実施形態に係る分散型台帳検証システムでは、本人確認に使用するデータの整合性をチェックすることが、従来のプルーフオブワークにおける計算に対応している。つまり、本人確認を行うためのデータの整合性を確認することが、トランザクションを検証することにもなっている。このような構成によって、本人確認を行うことと同時にトランザクションの正当性を確認することができ、ひいては、従来の分散型台帳システムと比較して、コンピュータリソースなどの無駄を削減することができる。
また、認証機関が発行する秘密鍵によってトランザクションデータが暗号化され、また後続のトランザクションデータには、前のトランザクションデータのハッシュ値が含まれるので、第三者による改ざん耐性をも高めている。そして、トランザクションデータには、本人確認に使用する情報から生成されたハッシュ値のみが含まれ、本人確認に使用する情報そのものは含まれないので、個人情報が第三者に漏洩することも防止することができる。つまり、第1の実施形態に係る分散型台帳検証システムによれば、ユーザ間で交換される問いおよびその回答に関する情報そのものが秘匿されつつ、その回答の検証結果および判断ロジックがユーザ間で広く共有され、信用ある機関なしに回答を検証することができる。
上述した書式データは、有効期限および書き込み回数に関する情報を有するように構成されてもよい。有効期限を有している場合、認証機関から書式データが送信されてから所定の期間が経過すると書き込みができないよう制御される。書き込み回数を有している場合、認証機関から書式データが送信されてから所定の回数の書き込みを行うと書き込みができないよう制御される。この制御によって、例えば、ユーザが生成した本人確認証明データを第三者に移転することを防止することができ、ひいては、台帳の整合性をさらに担保することができる。この制御は、以下の第2の実施形態および第3の実施形態でも同様に適用される。
<第2の実施形態>
次に、図6乃至図7を参照して、本発明の第2の実施形態に係る分散型台帳検証システムが実行する処理の例を説明する。第2の実施形態では、被確認ユーザ(借り手)が確認ユーザ(貸し手)から融資を受ける例を説明する。よって、第1の実施形態で説明したユーザAは借り手となり、ユーザBが貸し手となる。認証機関は、例えば、ユーザAが資産を預けている口座を管理する金融機関である。検証者はユーザCとなる。第1の実施形態での説明と同様に、ユーザA乃至ユーザCはコンピュータデバイス1A乃至コンピュータデバイス1Cのそれぞれを使用し、認証機関が認証機関デバイス2を使用するものとする。よって、コンピュータデバイス1A乃至コンピュータデバイス1C、および認証機関デバイス2のそれぞれの構成要素(制御装置11Aなど)は、第1の実施形態での説明と同様である。
認証機関デバイス2は、例えば、金融機関が提供する既存の勘定系コンピュータシステムで実装されてもよく、または認証機関デバイス2と勘定系システムとが連携してもよい。以下の実施形態では、認証機関デバイス2が勘定系システムの機能を有するものとする。認証機関デバイス2は、ユーザAについての口座情報および資産情報などを有し、それらの情報をユーザIDに基づいて特定することができるものとする。
図6は、ユーザBがユーザAからの融資の申し込みを受けたことに対し、融資検証データを生成し、融資検証データに基づいて生成されたトランザクションデータ1をブロードキャストするまでの処理を説明するフローチャートである。
まず、ユーザBは、表示装置15Bに表示された入出力インタフェース(図示しない)を介して、ユーザAのユーザIDおよび融資条件に関する情報を入力する。この操作は、ユーザAが融資条件を満たすかを確認するための融資証明データを台帳に記録するトランザクション1のトリガとなり、対応するトランザクションデータ1が生成される。
これらの情報が入力されると、制御装置11Bは、融資条件データを生成する(ステップS601)。融資条件データは、少なくともユーザAのユーザIDおよび融資条件(例えば、「資産を1000万円以上有していること」などとする問い、およびその問いに対して「Yes」などとする回答など)を含む。融資条件データを生成すると、通信装置14Bは、融資条件データを認証機関デバイス2に送信する(ステップS602)。
通信装置24が融資条件データを受信すると、制御装置21が秘密鍵と公開鍵のペアを生成する(ステップS603)。また、制御装置21は、ステップS602で送信された融資条件データに含まれるユーザID(ユーザAのユーザID)に基づいて、ユーザAの資産額を含む資産情報を取得する(例えば、認証機関デバイス2は、ユーザごとに記憶および管理された資産情報データベースを備え、そのデータベースから情報を取得する)(ステップS604)。
次に、制御装置21は、書式データに基づいて融資検証データを生成する(ステップS605)。融資検証データは、ステップS602で送信された融資条件データが挿入されたデータである。書式データは、第1の実施形態で説明した書式データと同様に、ユーザAが融資条件を満たすかを確認するために認証機関デバイス2が生成する融資検証データおよびコンピュータデバイス1Aが生成する融資証明データの双方に共通する書式を有するデータである。
ここで、ステップS604で、制御装置21がユーザAの資産情報を取得しているが、この資産情報に基づいて新たな融資条件を追加して融資検証データが生成されてもよい。新たな融資条件は、例えば、ステップS604でユーザAの資産が1500万円以上ある場合、「資産を1500万円以上有していること」などとする問い、およびその問いに対して「Yes」などとする回答などである。この資産情報は、例えば、ゼロ知識証明技術を使用して秘匿にされてもよい。
次に、制御装置21は、融資検証データからハッシュ値を生成し、ステップS603で生成した秘密鍵を使用して署名を生成する。また、上述したトランザクションデータbからハッシュ値を生成する。そして、制御装置21は、融資検証データから生成したハッシュ値、生成した署名、およびトランザクションデータbから生成したハッシュ値を含むトランザクションデータ1を生成する(ステップS606)。トランザクションデータ1が生成されると、通信装置14Bは、トランザクションデータ1を全てのコンピュータデバイス1にブロードキャストする(ステップS607)。
第2の実施形態でも同様に、確認ユーザ(ユーザB)から生成されるトランザクションデータ1は、認証機関デバイス2によって生成されるが、認証機関デバイス2の代わりにコンピュータデバイス1Bによって生成されてもよい。この場合、ステップS605では書式データに認証機関デバイス2が設定した融資条件(ユーザAの資産情報に基づいた)のみが挿入され、その書式データおよび秘密鍵がコンピュータデバイス1Bに送信される。そして、コンピュータデバイス1Bが、この書式データにユーザBが設定した融資条件を挿入して本人確認検証データを生成する。その後は、上述したステップS606およびステップS607で説明した処理と同様に、トランザクションデータ1が生成およびブロードキャストされる。
図7は、ユーザAが融資条件を満たすかを証明するための融資証明データを生成し、融資証明データに基づいて生成されたトランザクションデータ2をブロードキャストするまでの処理を説明するフローチャートである。
ユーザAは、表示装置15Aに表示された入出力インタフェース(図示しない)を介して融資条件を満たすかを証明するための所定の操作を行う。この操作は、ユーザAが融資条件を満たすかを証明するための融資証明データを台帳に記録するトランザクション2のトリガとなり、対応するトランザクションデータ2が生成される。上記操作に応じて、通信装置14Bは、認証機関デバイス2に秘密鍵発行要求を送信する(ステップS701)。通信装置24が秘密鍵発行要求を受信すると、図6のステップS603で生成した秘密鍵、および公開鍵で暗号化された融資検証データを送信する(ステップS702)。また、通信装置24は、生成した公開鍵を全てのコンピュータデバイス1にブロードキャストする(ステップS703)。
通信装置14AがステップS702で送信された秘密鍵および融資検証データを受信すると、制御装置11Aは、融資検証データに基づいて、融資証明データを生成する(ステップS704)。融資証明データは、融資検証データに従ってユーザAが回答した情報が挿入されたデータである(例えば、「1000万円有しているか?」の問いに対して「Yes」など)。なお、上述したように、融資検証データは認証機関デバイス2によって生成された公開鍵によって暗号化されているが、ユーザAは認証機関デバイス2から発行された秘密鍵を有しているので、その秘密鍵を使用して、融資検証データの内容を参照することができる。つまり、ユーザAは、融資検証データに含まれる融資条件に基づいて、融資条件を満たすか否かについて回答することができる。
ユーザAが生成した融資証明データおよびユーザBが生成した融資検証データに含まれる情報が同一の書式に従ってハッシュ化されるので、双方の情報が一致する限り、ハッシュ値も一致することになる。トランザクションのデータを検証する検証者(ユーザC)は、生成された2つのハッシュ値が同一であるか否かを確認することによってユーザAの回答に対する検証を行い、ひいてはトランザクションの正当性を検証する。
融資証明データが生成されると、制御装置11Aは、融資証明データからハッシュ値を生成し、ステップS702で送信された秘密鍵を使用して署名を生成する。また、上述したトランザクションデータaからハッシュ値を生成する。そして、制御装置11Aは、解答検証データから生成したハッシュ値、生成した署名、およびトランザクションデータaから生成したハッシュ値を含むトランザクションデータ2を生成する(ステップS705)。トランザクションデータ2が生成されると、通信装置14Bは、トランザクションデータ2を全てのコンピュータデバイス1にブロードキャストする(ステップS706)。
上述した処理によって、トランザクションデータ1およびトランザクションデータ2が全てのコンピュータデバイス1にブロードキャストされることになる。その後は、ユーザCによってトランザクションデータ1およびトランザクションデータ2の双方に含まれるハッシュ値が一致するかを検証する。つまり、ユーザBの問い(融資条件を満たすか)に対してユーザAの回答が一致するかが検証される。具体的な検証の処理は、第1の実施形態における図5で説明した処理を同様であるので説明を省略する。
以上のように第2の実施形態に係る分散型台帳検証システムを説明した。第2の実施形態では、トランザクションの検証を行う際に、貸し手が確認することになる資産状況に対する問いおよび借り手がその問いに対する回答の整合性の可否を検証者に要求している。これによって、第1の実施形態で説明したのと同様に、従来の分散型台帳システムと比較して、コンピュータリソースなどの無駄を削減することができる。
また、貸し手からの問いに対し借り手が回答するべき情報(融資検証データ)および借り手が実際に回答する情報(融資証明データ)が同一の書式に従ってハッシュ化されているので、ユーザAの資産内容などを公開することなく、検証者は融資条件を満たすか否かの検証を行うことができる。
さらに、認証機関として、借り手が資産を預けている銀行がその役割を担うことによって、借り手の資産状況をより正確に反映した融資条件を満たすかの確認をすることができる。つまり、貸し手(ユーザB)からの問い(第1の問い)および認証機関からの問い(第2の問い)をトランザクションデータに含めることができる。この第2の問いは、少なくとも貸し手が知りえない情報であり、コンピュータデバイス1Bによって、融資条件データを介して認証機関デバイス2から受信される。一方で、ゼロ資産証明などの技術を使用することによって、借り手の資産についての情報が第三者に知られることはない。
<第3の実施形態>
次に、図8および図9を参照して、本発明の第3の実施形態に係る分散型台帳検証システムが実行する処理の例を説明する。第3の実施形態では、試験などの問題を解答する例を説明する。よって、第1の実施形態で説明したユーザAは試験の回答者となり、ユーザBが試験実施機関などの出題者となる。検証者はユーザCとなる。第1の実施形態での説明と同様に、ユーザA乃至ユーザCはコンピュータデバイス1A乃至コンピュータデバイス1Cのそれぞれを使用するものとする。よって、認証機関デバイス2とともにコンピュータデバイス1A乃至コンピュータデバイス1Cのそれぞれの構成要素(制御装置11Aなど)は、第1の実施形態での説明と同様である。
第2の実施形態では、出題者と回答者との関係は、1対M(Mは1以上の整数)、またはN対M(Nは2以上の整数)となる。つまり、出題者は、試験を申し込んだ1または複数の回答者に対し、問題を出題することになる。以下の例では、1または複数の回答者のうちユーザAのみを回答者として説明する。
図8は、ユーザBが、ユーザAに出題するための問題データを生成し、本人確認証明データに基づいて生成されたトランザクションデータ1をブロードキャストするまでの処理を説明するフローチャートである。
まず、ユーザBは、表示装置15Bに表示された入出力インタフェース(図示しない)を介して、回答者のユーザIDを入力する。回答者のIDが入力されると、制御装置11Bは、回答者リストを生成する(ステップS801)。回答者リストは、少なくともユーザBが定めている回答者全てのユーザIDを含む。この回答者リストに含まれる回答者IDは、事前にユーザBに試験の実施を申し込んだユーザに対応するユーザIDである。
また、ユーザBは、上述した入出力インタフェースを介して、回答者に公開する出題内容およびその出題内容に対する正答情報を入力する。出題内容および正答情報が入力されると、制御装置11Bは、問題データおよび正答データを生成する(ステップS802)。回答者リスト、問題データおよび正答データを生成すると、通信装置14Bは、それらのうちの少なくとも回答者リストおよび正答データを認証機関デバイス2に送信する。問題データも認証機関2に送信されてもよいが、その送信は必須ではなく、例えば、本発明の一実施形態に係る分散型台帳検証システムとは別に回答者に公開されてもよい(例えば、WEBページに問題をアップロードすることによって公開する)。問題データも認証機関デバイス2に送信される場合、問題データは、以下のステップで秘密鍵とともにコンピュータデバイス1Aに送信される。
通信装置24が回答者リストおよび正答データを受信すると、制御装置21が回答者IDそれぞれに対して秘密鍵と公開鍵のペアを生成する(ステップS803)。そして、制御装置21は、書式データに基づいて、解答検証データを生成する(ステップS804)。解答検証データは、ステップS802で生成した正答データが挿入されたデータである。書式データは、第1の実施形態で説明した書式データと同様に、ユーザAが問題に回答するためにコンピュータデバイス1Aが生成する回答証明データおよび認証機関デバイス2が生成する回答検証データの双方に共通する書式を有するデータである。
解答検証データが生成されると、制御装置21は、解答検証データからハッシュ値を生成し、ステップS803で生成した秘密鍵を使用して署名を生成する。また、上述したトランザクションデータbからハッシュ値を生成する。そして、制御装置21は、解答検証データから生成したハッシュ値、生成した署名、およびトランザクションデータbから生成したハッシュ値を含むトランザクションデータ1を生成する(ステップS805)。トランザクションデータ1が生成されると、通信装置24は、トランザクションデータ1を全てのコンピュータデバイス1にブロードキャストする(ステップS806)。
図9は、ユーザAが問題に解答するための解答証明データを生成し、回答証明データに基づいて生成されたトランザクションデータ2をブロードキャストするまでの処理を説明するフローチャートである。
ユーザAは、表示装置15Aに表示された入出力インタフェース(図示しない)を介して問題に解答するための所定の操作を行う。この操作は、ユーザAが問題に解答するための解答証明データを台帳に記録するトランザクション2のトリガとなり、対応するトランザクションデータ2が生成される。上記操作に応じて、通信装置14Bは、認証機関デバイス2に秘密鍵発行要求を送信する(ステップS901)。通信装置24が秘密鍵発行要求を受信すると、図8のステップS803で生成した秘密鍵および公開鍵で暗号化された書式データを送信する(ステップS902)。また、通信装置24は、生成した公開鍵を全てのコンピュータデバイス1にブロードキャストする(ステップS903)。
通信装置14AがステップS902で送信された秘密鍵および書式データを受信すると、制御装置11Aは、書式データに基づいて、解答証明データを生成する(ステップS904)。解答証明データは、書式データに従って回答者が解答した情報が挿入されたデータである。上述した情報は、問題に解答する際に上述した入出力インタフェースを介してユーザAによって入力されてもよく、または予め記憶装置13Bに記憶されてもよい。
ユーザAが生成した解答証明データおよびユーザBが生成した解答検証データに含まれる情報が同一の書式に従ってハッシュ化されるので、双方の情報が一致する限り、ハッシュ値も一致することになる。トランザクションのデータを検証する検証者(ユーザC)は、生成された2つのハッシュ値が同一であるか否かを確認することによってユーザAの解答に対する検証を行い、ひいてはトランザクションの正当性を検証する。
解答証明データが生成されると、制御装置11Aは、解答検証データからハッシュ値を生成し、ステップS902で送信された秘密鍵を使用して署名を生成する。また、上述したトランザクションデータaからハッシュ値を生成する。そして、制御装置11Aは、解答検証データから生成したハッシュ値、生成した署名、およびトランザクションデータaから生成したハッシュ値を含むトランザクションデータ2を生成する(ステップS905)。トランザクションデータ2が生成されると、通信装置14Bは、トランザクションデータ2を全てのコンピュータデバイス1にブロードキャストする(ステップS906)。
上述した処理によって、トランザクションデータ1およびトランザクションデータ2が全てのコンピュータデバイス1にブロードキャストされることになる。その後は、ユーザCによってトランザクションデータ1およびトランザクションデータ2の双方に含まれるハッシュ値が一致するかを検証する。つまり、出題に対するユーザAの解答が一致するかが検証される。具体的な検証の処理は、第1の実施形態における図5で説明した処理と同様であるので説明を省略する。
第3の実施形態でも同様に、確認ユーザ(ユーザB)から生成されるトランザクションデータ1は、認証機関デバイス2によって生成されるが、認証機関デバイス2の代わりにコンピュータデバイス1Bによって生成されてもよい。この場合、ステップS802で正答データが認証機関デバイス2に送信されるのではなく、秘密鍵発行要求が送信される。それに応じて、認証機関デバイス2が秘密鍵と書式データをコンピュータデバイス1Bに送信し、コンピュータデバイス1Bが書式データに正答データを挿入して解答検証データを生成する。その後は、上述したステップS905およびステップS906で説明した処理と同様に、トランザクションデータ1が生成およびブロードキャストされる。
以上のように第3の実施形態に係る分散型台帳検証システムを説明した。第3の実施形態では、トランザクションの検証を行う際に、試験などの問題における解答および正答の整合性の可否を検証者に要求している。これによって、第1の実施形態で説明したのと同様に、従来の分散型台帳システムと比較して、コンピュータリソースなどの無駄を削減することができる。
また、出題者および回答者のいずれも、認証機関が発行した秘密鍵を使用しないと書式データを更新することができない。つまり、認証機関によって認証されたユーザのみが出題することができ、認証されたユーザのみが解答することができる。この構成によって、出題者の出題権限および回答者の解答権限を制御することができる。
なお、通常、試験は試験期間が定められているが、上述したように、書式データに有効期限を設定することによって期限経過後は書式データを更新することができなくなる。このことは、期限経過後にはユーザが解答することができないことを意味する。この構成によって、試験期間を実質的に定めることができる。
また、問題が複数の設問で構成される場合、設問ごとにトランザクションが発生してもよく、または一定数の設問ごとにトランザクションが発生してもよい。
上述した第1の実施形態乃至第3の実施形態で説明したトランザクションの検証はいずれも、1のユーザからの問いに対する正答と、もう一方のユーザのその問いに対する回答とが一致するかを確認するものである。いずれのケースでも、両者の整合性を第三者が確認することによって、トランザクションの正当性を検証している。つまり、本発明の一実施形態に係る分散型台帳検証システムは、確認者の問いに対する被確認者の回答が一意となるような(例えば、選択問題、正答が一意な数字および文字であるなど)問いおよび回答から構成される検証に適用されてもよい。
また、第2の実施形態で説明したように、1のユーザからの第1の問いに対する第1の正答と認証機関からの第2の問いに対する第2の正答とをトランザクションデータに含めてもよい。第2の実施形態では、融資条件に対する例を説明したが、そのような例に限定されず、確認者が知りえない任意の問いに対する正答を認証機関が補足してもよい。
さらに、1のユーザからの問いに対する正答と、もう一方のユーザのその問いに対する回答とが統一した書式データに従って同一のデータ構造を有するデータがハッシュ化されることは上述した。よって、双方のデータのハッシュ値が比較されるので、双方のデータが完全一致する必要がある。このことを考慮して、例えば、正答および/または回答に含まれる平仮名およびカタカナなどの文字を変換するなど、正答および/または回答の内容を変更しない範囲で文字などの形式を双方で一致するよう変換してもよい。この変換は、例えば、予め定義された所定の基準に基づいて、コンピュータデバイス1が実行してもよく、または認証機関デバイス2が実行してもよい。また、変換の基準は、書式データにおいて定義されてもよい。
上記実施形態で説明したハードウェアの構成要素は例示的なものにすぎず、その他の構成も可能であることに留意されたい。また、上記実施形態で説明した処理の順序は、必ずしも説明した順序で実行される必要がなく、任意の順序で実行されてもよい。さらに、本発明の基本的な概念から逸脱することなく、追加のステップが新たに加えられてもよい。
また、本発明の一実施形態に係る分散型台帳検証システムは、コンピュータデバイス1および/または認証機関デバイス2によって実行されるプログラムによって実装されるが、当該プログラムは、非一時的記憶媒体に記憶されてもよい。非一時的記憶媒体の例は、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、レジスタ、キャッシュメモリ、半導体メモリ装置、内蔵ハードディスクおよび取外可能ディスク装置などの磁気媒体、光磁気媒体、ならびにCD−ROMディスクおよびデジタル多用途ディスク(DVD)などの光学媒体などを含む。
1 コンピュータデバイス
2 認証機関デバイス
3 ネットワーク

Claims (7)

  1. 分散型台帳に記録するための第1のコンピュータデバイスによって実行される方法であって、
    第1のユーザからの第1の問いに対する第1の正答に基づいて第1のハッシュ値を生成するステップと、
    前記第1のハッシュ値を含む第1のトランザクションデータを生成するステップであって、前記第1のトランザクションデータは、過去のトランザクションデータと関連付けられている、ステップと、
    前記第1のトランザクションデータをブロードキャストするステップと、
    を備え、
    前記第1のトランザクションデータは、第2のコンピュータデバイスによってブロードキャストされる第2のトランザクションデータと比較することによって前記分散型台帳に記録され、前記第2のトランザクションデータは、前記第1の問いに対する第2のユーザからの第1の回答に基づいて生成された第2のハッシュ値を含む
    ことを特徴とする方法。
  2. 前記第1のコンピュータデバイスは、認証機関デバイスであり、
    前記方法は、
    書式データを前記第1の問いに適用するステップをさらに備え、
    前記第1の回答は、前記書式データが適用されている
    ことを特徴とする請求項1に記載の方法。
  3. 前記第1のコンピュータデバイスは、認証機関デバイスであり、
    前記方法は、
    前記第1の正答を受信するステップと、
    第2の問いに対する第2の正答を生成するステップと、
    前記第1の正答および前記第2の正答に基づいて前記第1のハッシュ値を生成するステップと
    を備え、
    前記第2のハッシュ値は、前記第1の問いに対する前記第2のユーザからの第1の回答および前記第2の問いに対する前記第2のユーザからの第2の回答に基づいて生成される
    ことを特徴とする請求項1または2に記載の方法。
  4. 分散型台帳に記録するための第1のコンピュータデバイスによって実行される方法であって、
    第1のユーザからの回答に基づいて第1のハッシュ値を生成するステップであって、前記回答は、第2のユーザからの問いに対する回答である、ステップと、
    前記第1のハッシュ値を含む第1のトランザクションデータを生成するステップであって、前記第1のトランザクションデータは、過去のトランザクションデータと関連付けられている、ステップと、
    前記第1のトランザクションデータをブロードキャストするステップと、
    を備え、
    前記第1のトランザクションデータは、第2のコンピュータデバイスによってブロードキャストされる第2のトランザクションデータと比較することによって前記分散型台帳に記録され、前記第2のトランザクションデータは、前記問いに対する正答に基づいて生成された第2のハッシュ値を含む
    ことを特徴とする方法。
  5. 秘密鍵および書式データを受信するステップであって、前記書式データは、公開鍵で暗号化されている、ステップと、
    前記秘密鍵を使用して前記書式データを復号するステップと、
    前記書式データを前記回答に適用するステップと
    さらに備え、
    前記回答は、前記書式データが適用されている
    をさらに備えた請求項4に記載の方法。
  6. 分散型台帳に記録するための方法であって、
    第1のコンピュータデバイスによって、
    第1のユーザからの問いに対する正答に基づいて第1のハッシュ値を生成するステップと、
    前記第1のハッシュ値を含む第1のトランザクションデータを生成するステップであって、前記第1のトランザクションデータは、過去のトランザクションデータと関連付けられている、ステップと、
    前記第1のトランザクションデータをブロードキャストするステップと、
    第2のコンピュータデバイスによって、
    第2のユーザからの回答に基づいて第2のハッシュ値を生成するステップであって、前記回答は、前記問いに対する回答である、ステップと、
    前記第2のハッシュ値を含む第2のトランザクションデータを生成するステップであって、前記第2のトランザクションデータは、過去のトランザクションデータと関連付けられている、ステップと、
    前記第2のトランザクションデータをブロードキャストするステップと、
    第3のコンピュータデバイスによって、
    前記第1のトランザクションデータおよび前記第2のトランザクションデータを受信するステップと、
    前記第1のトランザクションデータに含まれる前記第1のハッシュ値と、前記第2のトランザクションデータに含まれる前記第2のハッシュ値とを比較するステップと、
    前記比較した結果を示す電文をブロードキャストするステップと
    を備えたことを特徴とする方法。
  7. プロセッサによって実行されると、請求項1乃至6のいずれか一項に記載の方法をコンピュータデバイスに実行させるコンピュータ実行可能命令を含むことを特徴とするコンピュータプログラム。
JP2018065807A 2018-03-29 2018-03-29 ブロックチェーン上での正誤判断・結果共有システム Active JP6438615B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018065807A JP6438615B1 (ja) 2018-03-29 2018-03-29 ブロックチェーン上での正誤判断・結果共有システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018065807A JP6438615B1 (ja) 2018-03-29 2018-03-29 ブロックチェーン上での正誤判断・結果共有システム

Publications (2)

Publication Number Publication Date
JP6438615B1 JP6438615B1 (ja) 2018-12-19
JP2019176432A true JP2019176432A (ja) 2019-10-10

Family

ID=64668444

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018065807A Active JP6438615B1 (ja) 2018-03-29 2018-03-29 ブロックチェーン上での正誤判断・結果共有システム

Country Status (1)

Country Link
JP (1) JP6438615B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021099626A (ja) * 2019-12-20 2021-07-01 株式会社レシカ アンケートデータの管理・分析システム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6656446B1 (ja) * 2019-03-22 2020-03-04 株式会社ウフル デバイス管理システム、デバイス管理方法、情報処理装置、及びプログラム
EP3982591A4 (en) 2019-06-05 2022-07-27 Sony Group Corporation INFORMATION PROCESSING DEVICE AND METHOD

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017079795A1 (en) * 2015-11-09 2017-05-18 Roger Hanna A distributed user profile identity verification system for e-commerce transaction security
WO2017090329A1 (ja) * 2015-11-24 2017-06-01 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
US20170279801A1 (en) * 2016-03-28 2017-09-28 Black Gold Coin, Inc. Systems and methods for providing block chain-based multifactor personal identity verification
US20170317997A1 (en) * 2016-04-30 2017-11-02 Civic Technologies, Inc. Methods and systems of providing verification of the identity of a digital entity using a centralized or distributed ledger
WO2018043599A1 (ja) * 2016-08-30 2018-03-08 ソラミツ株式会社 情報共有システム
US20180082256A1 (en) * 2016-09-19 2018-03-22 Sap Se Decentralized credentials verification network

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017079795A1 (en) * 2015-11-09 2017-05-18 Roger Hanna A distributed user profile identity verification system for e-commerce transaction security
WO2017090329A1 (ja) * 2015-11-24 2017-06-01 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
US20170279801A1 (en) * 2016-03-28 2017-09-28 Black Gold Coin, Inc. Systems and methods for providing block chain-based multifactor personal identity verification
US20170317997A1 (en) * 2016-04-30 2017-11-02 Civic Technologies, Inc. Methods and systems of providing verification of the identity of a digital entity using a centralized or distributed ledger
WO2018043599A1 (ja) * 2016-08-30 2018-03-08 ソラミツ株式会社 情報共有システム
US20180082256A1 (en) * 2016-09-19 2018-03-22 Sap Se Decentralized credentials verification network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
小口 直樹 ほか: "研究開発最前線", FUJITSU, vol. 68, no. 5, JPN6018034289, 1 September 2017 (2017-09-01), pages 85 - 94, ISSN: 0003909567 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021099626A (ja) * 2019-12-20 2021-07-01 株式会社レシカ アンケートデータの管理・分析システム

Also Published As

Publication number Publication date
JP6438615B1 (ja) 2018-12-19

Similar Documents

Publication Publication Date Title
US10728283B1 (en) Methods, systems, and devices for encrypted electronic storage and confidential network transfer of private data through a trustless distributed ledger technology system
US11757643B2 (en) System and method for authenticating user identity
JP6647731B2 (ja) ブロックチェーン機密トランザクションの管理
JP6873270B2 (ja) ブロックチェーンにおけるスマートコントラクトに基づくトランザクション活動の取扱注意データを保護するための方法及びデバイス
US10614456B2 (en) Dynamic cryptocurrency aliasing
CN113544722A (zh) 使用区块链的方法
Ali et al. A blockchain-based models for student information systems
CN111160998B (zh) 基于区块链的点评数据处理方法、装置及点评系统
JP6683332B1 (ja) 有価物管理システム
JP6438615B1 (ja) ブロックチェーン上での正誤判断・結果共有システム
CN112801778B (zh) 联盟式不良资产区块链系统
US11621858B2 (en) Anonymity mechanisms in permissioned blockchain networks
US20220276996A1 (en) Assessment node and token assessment container
KR20230005353A (ko) 탈중앙화된 데이터베이스에서 허가된 이벤팅
JP2022532889A (ja) 複数インプットトランザクション
US20210256512A1 (en) Provisioning Of Assets Based On Content Usage
Chen et al. Based on consortium blockchain to design a credit verifiable cross university course learning system
Hartmann et al. Privacy considerations for a decentralized finance (DeFi) loans platform
US20230188353A1 (en) Multi-issuer anonymous credentials for permissioned blockchains
US20230179424A1 (en) Compressible blockchains
Duy et al. A blockchain-based Certificate Management System using the Hyperledger Fabric Platform
Abed et al. Towards maintaining confidentiality and anonymity in secure blockchain-based e-voting
US20230306412A1 (en) Docket credential insertion in non-fungible tokens
US20230403161A1 (en) Aggregate anonymous credentials for decentralized identity in blockchain
US20230245112A1 (en) Non-interactive token certification and verification

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180329

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180620

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181018

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181116

R150 Certificate of patent or registration of utility model

Ref document number: 6438615

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250