(57)【要約】      （修正有）【課題】車両で実行されたトランザクションの有効性を的確に担保するサーバ、車両、分散型トランザクション証明システム及び分散型トランザクション証明方法を提供する。【解決手段】サーバ１は、複数の車両のそれぞれの点検に関するトランザクション情報を連鎖的に記録するブロックチェーンを保持するメモリと、複数の車両の中から点検の対象車両を選定し、選定された前記対象車両の点検に関するトランザクション情報を前記ブロックチェーンに追加するプロセッサと、点検に関するトランザクションの実行指示を対象車両に送る通信回路と、を備える。プロセッサは、実行指示に基づく対象車両における点検に関するトランザクションの実行結果と、対象車両以外の周辺車両における点検に関するトランザクションの実行結果とに基づく点検結果を追加された対象車両の点検に関するトランザクション情報に登録する。【選択図】図３
2020030596.tif 000002
【特許請求の範囲】
【請求項１】
複数の車両を含む分散型トランザクション証明システムを構成するサーバであって、
前記複数の車両のそれぞれの点検に関するトランザクション情報を連鎖的に記録するブロックチェーンを保持するメモリと、
前記複数の車両の中から点検の対象車両を選定し、選定された前記対象車両の点検に関するトランザクション情報を前記ブロックチェーンに追加するプロセッサと、
前記点検に関するトランザクションの実行指示を前記対象車両に送る通信回路と、を備え、
前記プロセッサは、前記実行指示に基づく前記対象車両における前記点検に関するトランザクションの実行結果と、前記対象車両以外の周辺車両における前記点検に関するトランザクションの実行結果とに基づく点検結果を、追加された前記対象車両の点検に関するトランザクション情報に登録する、
サーバ。
【請求項２】
前記プロセッサは、前記ブロックチェーンに基づいて、前記対象車両を選定する、
請求項１に記載のサーバ。
【請求項３】
前記プロセッサは、前記対象車両の前記点検に関するトランザクションの実行結果と一致する前記実行結果を測定した前記周辺車両が過半数である場合に、前記点検結果として正常である旨の情報を作成する、
請求項１に記載のサーバ。
【請求項４】
前記プロセッサは、前記対象車両および前記周辺車両のそれぞれの前記点検に関するトランザクションの実行結果を受け取り、それぞれの前記実行結果の比較に基づき、前記対象車両の前記点検に関するトランザクションの実行結果と一致する前記実行結果を測定した前記周辺車両が過半数であるか否かを判定する、
請求項３に記載のサーバ。
【請求項５】
前記プロセッサは、前記対象車両および前記周辺車両のそれぞれの前記点検に関するトランザクションの実行結果の比較結果を受け取り、前記比較結果に基づき、前記対象車両の前記点検に関するトランザクションの実行結果と一致する前記実行結果を測定した前記周辺車両が過半数であるか否かを判定する、
請求項３に記載のサーバ。
【請求項６】
前記プロセッサは、前記対象車両の前記点検に関するトランザクションの実行結果と一致する前記実行結果を測定した前記周辺車両が過半数に満たない場合に、前記点検結果として異常である旨の情報を作成する、
請求項１に記載のサーバ。
【請求項７】
前記プロセッサは、前記異常に係る前記対象車両の機能の使用制限命令を、前記通信回路を介して、前記対象車両に送る、
請求項６に記載のサーバ。
【請求項８】
前記プロセッサは、前記対象車両の前記点検に関するトランザクションの実行結果と一致する前記実行結果を測定した過半数の前記周辺車両に所定の報酬を付与する、
請求項１に記載のサーバ。
【請求項９】
前記プロセッサは、前記複数の車両のうちいずれかの車両によるイベントの検知に基づいて、前記いずれかの車両以外の周辺車両に前記イベントの検知の可否を、前記通信回路を介して問い合わせ、過半数の前記イベントの正常検知通知に基づいて、前記イベントに対応するデータの登録指示を、前記通信回路を介して前記複数の車両のそれぞれに送る、
請求項１に記載のサーバ。
【請求項１０】
前記プロセッサは、前記イベントの検知が不可な車両を、前記対象車両として選定する、
請求項９に記載のサーバ。
【請求項１１】
前記イベントは、前記複数の車両のそれぞれが保持する地図データに存在していない障害物の検知であり、
前記プロセッサは、前記地図データに存在していない障害物に関する情報を受け取り、前記障害物に関する情報の前記地図データへの更新指示を、前記通信回路を介して前記複数の車両のそれぞれに送る、
請求項９に記載のサーバ。
【請求項１２】
サーバを含む分散型トランザクション証明システムを構成する車両であって、
前記車両の点検に関するトランザクション情報を連鎖的に記録するブロックチェーンを保持する前記サーバとの間で通信する通信回路と、
自車両の運転を含む動作を制御する制御部と、を備え、
前記自車両が点検の対象車両として選定された場合に、
前記通信回路は、前記点検に関するトランザクションの実行指示を受け取り、
前記制御部は、前記実行指示に基づく前記点検に関するトランザクションの実行を制御し、前記自車両における前記点検に関するトランザクションの実行結果と他車両における前記点検に関するトランザクションの実行結果とに基づく点検結果に基づき、前記自車両の運転を含む動作を制御する、
車両。
【請求項１３】
点検の対象となる少なくとも１つのセンサをさらに有し、
前記制御部は、前記点検に関するトランザクションとして、所定の走行ルートの走行中に前記センサによる周辺の外部環境情報の測定結果を受け取る、
請求項１２に記載の車両。
【請求項１４】
サーバと複数の車両とが通信可能に接続された分散型トランザクション証明システムであって、
前記サーバは、
前記複数の車両のそれぞれの点検に関するトランザクション情報を連鎖的に記録するブロックチェーンを保持し、
前記複数の車両の中から点検の対象車両を選定し、選定された前記対象車両の点検に関するトランザクション情報を前記ブロックチェーンに作成するとともに、点検に関するトランザクションの実行指示を前記対象車両に送り、
前記対象車両は、
前記実行指示に基づいて前記点検に関するトランザクションを実行するとともに、前記点検に関するトランザクションの実行指示を前記対象車両以外の周辺車両に送り、
前記サーバは、
前記対象車両および前記周辺車両のそれぞれの前記点検に関するトランザクションの実行結果に基づく点検結果を、作成された前記対象車両の点検に関するトランザクション情報に登録する、
分散型トランザクション証明システム。
【請求項１５】
サーバと複数の車両とが通信可能に接続された分散型トランザクション証明システムを用いた分散型トランザクション証明方法であって、
前記複数の車両のそれぞれの点検に関するトランザクション情報を連鎖的に記録するブロックチェーンを保持するステップと、
前記複数の車両の中から点検の対象車両を選定するステップと、
選定された前記対象車両の点検に関するトランザクション情報を前記ブロックチェーンに作成するとともに、点検に関するトランザクションの実行指示を前記対象車両に送るステップと、
前記実行指示に基づいて前記点検に関するトランザクションを実行するとともに、前記点検に関するトランザクションの実行指示を前記対象車両以外の周辺車両に送るステップと、
前記対象車両および前記周辺車両のそれぞれの前記点検に関するトランザクションの実行結果に基づく点検結果を、作成された前記対象車両の点検に関するトランザクション情報に登録するステップと、を有する、
分散型トランザクション証明方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、サーバ、車両、分散型トランザクション証明システムおよび分散型トランザクション証明方法に関する。
【背景技術】
【０００２】
近年、自動運転が可能な自動運転車両が普及しつつある。このような自動運転車両には、自動運転中に周囲の外部環境情報をリアルタイムに測定するために、複数のセンサが搭載されている。センサは、例えば、カメラ、ミリ波レーダ、ＬｉＤＡＲ（Light Detection and Ranging, Laser Imaging Detection and Ranging）、ＧＮＳＳ（Global Navigation Satellite System）センサ等である。このようなセンサを用いて外部環境情報を判定する技術も各種提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１０５０８１号公報
【特許文献２】特開２０１８−０１７１０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
自動運転車両では、上述した各種のセンサが検知して得た測定結果に基づいて自動運転の制御が実行される。このため、例えば自動運転中にセンサに不具合が発生すると、交通違反あるいは交通事故が発生する可能性が高まる。ところが、現状の自動車検査登録制度（いわゆる車検制度）の下では、例えば通常の乗用車では３年あるいは２年ごとの車検期間が設定されているので、この車検期間が早まるような対応は現時点で見込むことは難しい。また、センサに不具合が発生した場合等において自動運転車両の車検場への移動や検査には時間がかかるので、その間に自動運転車両が使用できず、使用効率が悪くなるという課題もある。
【０００５】
本開示は、上述した従来の事情に鑑みて案出され、身近な複数の車両のそれぞれに搭載されたセンサの不具合の点検に関するトランザクションの実行結果およびセンサの不具合の有無の検出結果を管理し、それぞれの車両で実行されたトランザクションの有効性を的確に担保するサーバ、車両、分散型トランザクション証明システムおよび分散型トランザクション証明方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本開示は、複数の車両を含む分散型トランザクション証明システムを構成するサーバであって、前記複数の車両のそれぞれの点検に関するトランザクション情報を連鎖的に記録するブロックチェーンを保持するメモリと、前記複数の車両の中から点検の対象車両を選定し、選定された前記対象車両の点検に関するトランザクション情報を前記ブロックチェーンに追加するプロセッサと、前記点検に関するトランザクションの実行指示を前記対象車両に送る通信回路と、を備え、前記プロセッサは、前記実行指示に基づく前記対象車両における前記点検に関するトランザクションの実行結果と、前記対象車両以外の周辺車両における前記点検に関するトランザクションの実行結果とに基づく点検結果を、追加された前記対象車両の点検に関するトランザクション情報に登録する、サーバを提供する。
【０００７】
また、本開示は、サーバを含む分散型トランザクション証明システムを構成する車両であって、前記車両の点検に関するトランザクション情報を連鎖的に記録するブロックチェーンを保持する前記サーバとの間で通信する通信回路と、自車両の運転を含む動作を制御する制御部と、を備え、前記自車両が点検の対象車両として選定された場合に、前記通信回路は、前記点検に関するトランザクションの実行指示を受け取り、前記制御部は、前記実行指示に基づく前記点検に関するトランザクションの実行を制御し、前記自車両における前記点検に関するトランザクションの実行結果と他車両における前記点検に関するトランザクションの実行結果とに基づく点検結果に基づき、前記自車両の運転を含む動作を制御する、車両を提供する。
【０００８】
また、本開示は、サーバと複数の車両とが通信可能に接続された分散型トランザクション証明システムであって、前記サーバは、前記複数の車両のそれぞれの点検に関するトランザクション情報を連鎖的に記録するブロックチェーンを保持し、前記複数の車両の中から点検の対象車両を選定し、選定された前記対象車両の点検に関するトランザクション情報を前記ブロックチェーンに作成するとともに、点検に関するトランザクションの実行指示を前記対象車両に送り、前記対象車両は、前記実行指示に基づいて前記点検に関するトランザクションを実行するとともに、前記点検に関するトランザクションの実行指示を前記対象車両以外の周辺車両に送り、前記サーバは、前記対象車両および前記周辺車両のそれぞれの前記点検に関するトランザクションの実行結果に基づく点検結果を、作成された前記対象車両の点検に関するトランザクション情報に登録する、分散型トランザクション証明システムを提供する。
【０００９】
また、本開示は、サーバと複数の車両とが通信可能に接続された分散型トランザクション証明システムを用いた分散型トランザクション証明方法であって、前記複数の車両のそれぞれの点検に関するトランザクション情報を連鎖的に記録するブロックチェーンを保持するステップと、前記複数の車両の中から点検の対象車両を選定するステップと、選定された前記対象車両の点検に関するトランザクション情報を前記ブロックチェーンに作成するとともに、点検に関するトランザクションの実行指示を前記対象車両に送るステップと、前記実行指示に基づいて前記点検に関するトランザクションを実行するとともに、前記点検に関するトランザクションの実行指示を前記対象車両以外の周辺車両に送るステップと、前記対象車両および前記周辺車両のそれぞれの前記点検に関するトランザクションの実行結果に基づく点検結果を、作成された前記対象車両の点検に関するトランザクション情報に登録するステップと、を有する、分散型トランザクション証明方法を提供する。
【００１０】
なお、以上の構成要素の任意の組合せ、本開示の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本開示の態様として有効である。
【発明の効果】
【００１１】
本開示によれば、身近な複数の車両のそれぞれに搭載されたセンサの不具合の点検に関するトランザクションの実行結果およびセンサの不具合の有無の検出結果を管理でき、それぞれの車両で実行されたトランザクションの有効性を的確に担保できる。
【図面の簡単な説明】
【００１２】
【図１】分散型トランザクション証明システムの第１ユースケースの動作概要例を示す説明図
【図２】分散型トランザクション証明システムのシステム構成例を示す図
【図３】サーバおよび端末の内部構成例を示すブロック図
【図４】車両の内部構成例を示すブロック図
【図５】ブロックチェーンの第１構成例を示す図
【図６】ブロックチェーンの第２構成例を示す図
【図７】ブロックチェーンを構成するブロックのデータ構造例
【図８】第１ユースケースに対応したサーバの動作手順例を時系列に示すフローチャート
【図９】対象車両（車両）の動作手順例を時系列に示すフローチャート
【図１０】周辺車両（車両）の動作手順例を時系列に示すフローチャート
【図１１】端末の動作手順例を時系列に示すフローチャート
【図１２】周辺車両における外部環境測定の動作手順例を時系列に示すシーケンス図
【図１３】サーバあるいは端末における外部環境測定の動作手順例を時系列に示すシーケンス図
【図１４】分散型トランザクション証明システムの第２ユースケースの動作概要例を示す説明図
【図１５】第２ユースケースに対応したサーバの動作手順例を時系列に示すフローチャート
【図１６】地図データの更新例を示す説明図
【発明を実施するための形態】
【００１３】
以下、添付図面を適宜参照しながら、本開示に係るサーバ、車両、分散型トランザクション証明システムおよび分散型トランザクション証明方法の構成および作用を具体的に開示した実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になることを避け、当業者の理解を容易にするためである。なお、添付図面及び以下の説明は、当業者が本開示を十分に理解するために提供されるものであって、これらにより特許請求の範囲に記載の主題を限定することは意図されていない。
【００１４】
実施の形態１では、分散型トランザクション証明システムのユースケースとして、２つのユースケースを例示して説明する。
【００１５】
第１ユースケースでは、分散型トランザクション証明システムは、複数台の車両のそれぞれの点検に関するトランザクション情報を連鎖的に記録するブロックチェーンを保持して管理し、このブロックチェーンに基づいて、複数台の車両の中から点検の対象車両を選定する。分散型トランザクション証明システムは、ブロックチェーン技術を用いて、対象車両ならびに他の周辺車両における点検に関するトランザクションのそれぞれの実行結果に基づく点検結果を判定し、その判定結果をブロックチェーンに登録する。これにより、分散型トランザクション証明システムによれば、身近な複数台の車両の中からブロックチェーンに基づいて選定された対象車両が点検に関するトランザクションを実行した結果に対して改ざん防止が可能となるので、対象車両における点検結果の有効性が担保される。
【００１６】
第２ユースケースでは、分散型トランザクション証明システムは、第１ユースケースと同様に、複数台の車両のそれぞれの点検に関するトランザクション情報を連鎖的に記録するブロックチェーンを保持して管理する。分散型トランザクション証明システムは、いずれかの車両がイベント（後述参照）を検知したことを契機に、他の周辺車両に同様なイベントの検知ができるか否かを問い合わせ、過半数の正常検知結果を得た場合に、そのイベントに対応するデータを新たに登録するとともにブロックチェーンに登録する。分散型トランザクション証明システムは、正常に検知できなかった車両を点検の対象車両として選定する。選定以降の処理は、第１ユースケースと同様である。これにより、分散型トランザクション証明システムによれば、イベントの検知を契機としてその検知結果の信憑性を身近な複数台の車両を用いて確認でき、信憑性の存在が得られた場合に、イベントの検知前まで知られていない未登録データを適正に登録できる。また、対象車両における点検に関するトランザクションの実行結果の改ざん防止が可能となるので、対象車両における点検結果の有効性が担保される。
【００１７】
（第１ユースケース）
図１は、分散型トランザクション証明システム１００の第１ユースケースの動作概要を示す説明図である。図２は、分散型トランザクション証明システム１００のシステム構成例を示す図である。
【００１８】
図２を参照して後述するが、実施の形態１に係る分散型トランザクション証明システム１００には、複数台の車両３１，…，３ｍ（ｍ：３以上の整数）が参加している。それぞれの車両３１〜３ｍは、自動運転が可能な車両であり、自動運転を行うために自車両の周囲の外部環境情報を測定可能な少なくとも１つのセンサ（図４参照）を搭載している。
【００１９】
このようなセンサに不具合（例えば故障等の異常）が存在していると、自動運転中に車両が交通違反あるいは交通事故を起こす可能性が高まる。ところが、現状の自動車検査登録制度（いわゆる車検制度）の下では、例えば通常の乗用車では３年あるいは２年ごとの車検期間が設定されているので、この車検期間が早まるような対応は現時点で見込むことは難しい。また、センサに不具合が発生した場合等において車両の車検場への移動や検査には時間がかかるので、その間に車両が使用できず、使用効率が悪くなるという課題もある。
【００２０】
そこで、実施の形態１では、分散型トランザクション証明システム１００に参加している複数台の車両３１〜３ｍ（身近な複数台の車両の一例）のそれぞれは、上述した車検のような公的な検査に比べて手軽な点検を受けられるように、点検の対象車両となることができる。具体的に、点検の対象は、例えば車両に搭載されるセンサである。点検の対象車両は、合計ｍ台の車両のうち１台である。残りの（ｍ−１）台の車両は、対象車両の点検を支援するための役割を有する周辺車両である。
【００２１】
図１において、先ず、点検の対象車両が選定される（Ｓｔ１）。図１では、合計４台の車両ＣＲ１，ＣＲ２，ＣＲ３，ＣＲ４が分散型トランザクション証明システム１００に参加している例が示され、対象車両として車両ＣＲ２が選定されている。対象車両（つまり、車両ＣＲ２）は、点検に関するトランザクションとして、同一エリアの同一走行ルート上を走行するとともに、その走行中に周囲の外部環境情報を、自車両に搭載されているセンサにより測定する（Ｓｔ１）。また、対象車両（つまり、車両ＣＲ２）は、前後の周辺車両（つまり、車両ＣＲ１，ＣＲ３，ＣＲ４）に、自車両の外部環境測定結果情報を送り、その外部環境測定結果情報が正しいか否かを問いかける。例えば、対象車両（つまり、車両ＣＲ２）は、「私の認識合っていますか？」等の問いかけを行う。なお、車両ＣＲ１〜ＣＲ４は、例えばＶ２Ｖ（Vehicle to Vehicle）により互いに通信可能である。
【００２２】
それぞれの周辺車両（つまり、車両ＣＲ１，ＣＲ３，ＣＲ４）は、対象車両（つまり、車両ＣＲ２）からの問いかけに応じて、点検に関するトランザクションとして、対象車両（つまり、車両ＣＲ２）と同一エリアの同一走行ルート上を走行するとともに、その走行中に周囲の外部環境情報を、それぞれの自車両に搭載されているセンサにより測定する（Ｓｔ２）。なお、それぞれの周辺車両（つまり、車両ＣＲ１，ＣＲ３，ＣＲ４）は、対象車両（つまり、車両ＣＲ２）から受け取った外部環境測定結果情報と、それぞれ自車両の測定により得た外部環境測定結果情報とを比較し、その結果を応答してよい。例えば、周辺車両（つまり、車両ＣＲ１，ＣＲ４）は、「測定したけど合っているよ」と応答する。一方、周辺車両（つまり、車両ＣＲ３）は、「測定したけど間違っているよ」と応答する。
【００２３】
それぞれの周辺車両（つまり、車両ＣＲ１，ＣＲ３，ＣＲ４）は、それぞれの自車両における比較結果をサーバ１（図２参照）に報告する（Ｓｔ３）。サーバ１は、周辺車両（つまり、車両ＣＲ１，ＣＲ３，ＣＲ４）のそれぞれからの比較結果の報告を受け取り、過半数（つまり、（ｍ−１）の過半数）の同意から対象車両（つまり、車両ＣＲ２）の外部環境測定結果情報が正しいことを認識する。サーバ１は、対象車両（つまり、車両ＣＲ２）の点検は正常であった旨の情報をブロックチェーンＢＫＣ１，ＢＫＣ２上に登録する（Ｓｔ３）。また、サーバ１は、対象車両（つまり、車両ＣＲ２）に対し、対象車両（つまり、車両ＣＲ２）の点検が正常である旨を証明するための通知（つまり、点検証明通知）を送る（Ｓｔ３）。これにより、対象車両（つまり、車両ＣＲ２）は、サーバ１により自車両の点検が正常であることの証明を手軽に得たことになり、点検の対象となったセンサの使用継続が可能となる。
【００２４】
サーバ１から、それぞれの周辺車両（つまり、車両ＣＲ１，ＣＲ３，ＣＲ４）のうち対象車両（つまり、車両ＣＲ２）の外部環境測定結果情報と一致する外部環境測定結果情報を得た周辺車両（つまり、車両ＣＲ１，ＣＲ４）に対し、所定の報酬が渡される（Ｓｔ４）。また、例えばサーバ１により、それぞれの周辺車両（つまり、車両ＣＲ１，ＣＲ３，ＣＲ４）の点検に関するトランザクション情報がブロックチェーンＢＫＣ１，ＢＫＣ２に登録される（Ｓｔ４）。対象車両（つまり、車両ＣＲ２）の外部環境測定結果情報と一致する外部環境測定結果情報を得ることができなかった周辺車両（つまり、車両ＣＲ３）は、例えば、次回の点検の対象車両としてサーバ１により選定される（Ｓｔ４）。点検の対象車両が選定されると、図１のステップＳｔ２，Ｓｔ３，Ｓｔ４の処理が繰り返される。
【００２５】
次に、図２を参照して分散型トランザクション証明システム１００の構成について説明する。実施の形態１に係る分散型トランザクション証明システム１００は、サーバ１と、端末２１，…，２ｎ（ｎ：２以上の整数）と、車両３１，…，３ｍ（ｍ：３以上の整数）とを含む構成である。言い換えると、ｍ台の車両３１〜３ｍは、ブロックチェーンＢＫＣ１，ＢＫＣ２を管理するサーバ１あるいは端末２１〜２ｎを有する、分散型トランザクション証明システム１００に参加している。
【００２６】
サーバ１と、端末２１〜２ｎと、車両３１〜３ｍとは、互いにネットワーク網ＮＷ１を介して通信可能に接続される。ネットワーク網ＮＷ１は、無線ＬＡＮ（Local Area Network）等の無線ネットワーク、あるいは有線ＬＡＮ等の有線ネットワークとして形成される。
【００２７】
サーバ１は、例えばデスクトップ型ＰＣ（Personal Computer）、ノートＰＣ、高速な情報処理能力を有するスマートフォンあるいはタブレット端末等、のような情報処理装置を用いて構成される。サーバ１の内部構成は端末２１〜２ｎのそれぞれと同様である（図３参照）。サーバ１は、複数の車両３１〜３ｍのそれぞれの点検に関するトランザクション情報（図７参照）を連鎖的に記録（登録）するブロックチェーンＢＫＣ１，ＢＫＣ２（図５，図６参照）の一部あるいは全部のデータを保持し、このブロックチェーンＢＫＣ１，ＢＫＣ２にブロック（図７参照）を新たに作成して追加することができる。また、サーバ１は、複数の車両３１〜３ｍのそれぞれが行う、点検に関するトランザクションの実行を、端末２１〜２ｎのそれぞれと連携して統括的に制御する。サーバ１の内部構成の詳細については、図３を参照して後述する。
【００２８】
端末２１〜２ｎのそれぞれは、例えばデスクトップ型ＰＣ、ノートＰＣ、高速な情報処理能力を有するスマートフォンあるいはタブレット端末等、のような情報処理装置を用いて構成される。端末２１〜２ｎのそれぞれの内部構成はサーバ１と同様である（図３参照）。端末２１〜２ｎのそれぞれは、複数の車両３１〜３ｍのそれぞれの点検に関するトランザクション情報（図７参照）を連鎖的に記録（登録）するブロックチェーンＢＫＣ１，ＢＫＣ２（図５，図６参照）の一部あるいは全部のデータを保持し、このブロックチェーンＢＫＣ１，ＢＫＣ２にブロック（図７参照）を新たに作成して追加することができる。また、端末２１〜２ｎのそれぞれは、複数の車両３１〜３ｍのそれぞれが行う、点検に関するトランザクションの実行を、サーバ１と連携して補足的に制御する。端末２１〜２ｎの内部構成の詳細については、図３を参照して後述する。
【００２９】
車両３１〜３ｍのそれぞれは、自動運転が可能な車両であり、自動運転を行うために自車両の周囲の外部環境情報を測定可能な少なくとも１つのセンサ（図４参照）を搭載している。詳細は図４を参照して説明するが、車両３１〜３ｍのそれぞれは、センサとして、カメラ４１、ＬｉＤＡＲ４２、ミリ波レーダ４３、その他センサ群４４を搭載し、これらのセンサを用いて自動運転を実行する。上述したように、車両３１〜３ｍのそれぞれは、センサの点検の対象車両となったり、その対象車両の点検を支援するための周辺車両となったりできる。車両３１〜３ｍのそれぞれは、サーバ１あるいは対象車両となった車両からの実行指示（後述参照）に基づいて、点検に関するトランザクション（上述参照）を実行し、実行結果（つまり、外部環境測定結果情報）を報告する。車両３１〜３ｍの内部構成の詳細については、図４を参照して後述する。
【００３０】
なお、ブロックチェーンＢＫＣ１，ＢＫＣ２のデータ実体は、例えばサーバ１、端末２１〜２ｎにそれぞれ記録して保存されているが、サーバ１、端末２１〜２ｎはネットワーク網ＮＷ１に接続されているので、車両３１〜３ｍから見ればネットワーク網ＮＷ１に仮想的に記録保持されていると考えることもできる。
【００３１】
図３は、サーバ１および端末２１〜２ｎの内部構成例を示すブロック図である。サーバ１は、操作部１１と、メモリ１２と、データ蓄積部１３と、通信回路１４と、プロセッサ１５とを含む構成である。
【００３２】
操作部１１は、分散型トランザクション証明システム１００のユーザ（例えば分散型トランザクション証明システム１００の運営者あるいは管理者。以下同様。）の操作を受け付ける入力デバイスにより構成される。操作部１１は、例えばマウス、キーボード、タッチパネルにより構成される。なお、ブロックチェーン技術におけるスマートコントラクト機能に準じた機能を用いることで、ユーザが使用する操作部１１の構成はサーバ１から省略されてよい。つまり、プロセッサ１５は、スマートコントラクト機能に準じた機能を用いるために、所定の処理を実行するための事前定義情報をメモリ１２あるいはデータ蓄積部１３に記録して保持する。プロセッサ１５は、上述した事前定義情報により記載されているイベントの発生を検知すると、その所定の処理を自動的に実行してよい。所定の処理は、例えば、後述する点検証明通知の作成および送信であるが、これに限定されない。
【００３３】
メモリ１２は、例えばＲＡＭ（Random Access Memory）とＲＯＭ（Read Only Memory）とを用いて構成され、サーバ１の動作の実行に必要なプログラムおよびデータ、さらには、動作中に生成されたデータもしくは情報を一時的に保持する。ＲＡＭは、例えば、サーバ１の動作時に使用されるワークメモリである。ＲＯＭは、例えば、サーバ１を制御するためのプログラムおよびデータを予め記憶して保持する。
【００３４】
データ蓄積部１３は、例えばＨＤＤ（Hard Disk Drive）もしくはＳＳＤ（Solid State Drive）を用いて構成され、プロセッサ１５により生成されるデータもしくは情報を記録して保持する。データ蓄積部１３は、例えばブロックチェーンＢＫＣ１，ＢＫＣ２の一部あるいは全部のデータを記録して保持する。ブロックチェーンＢＫＣ１，ＢＫＣ２のデータ構造例の詳細については、図５および図６を参照して後述する。
【００３５】
通信回路１４は、端末２１〜２ｎのそれぞれ、あるいは車両３１〜３ｍのそれぞれとの間のデータもしくは情報の送受信が可能な通信回路により構成される。通信回路１４は、プロセッサ１５により生成されたデータもしくは情報を受け取ると、通信相手（例えば、端末２１〜２ｎのそれぞれ、あるいは車両３１〜３ｍのそれぞれ）にそのデータもしくは情報を送る。また、通信回路１４は、通信相手（上述参照）から送られるデータもしくは情報を受信してプロセッサ１５に送る。
【００３６】
プロセッサ１５は、例えばＣＰＵ（Central Processing Unit）、ＤＳＰ（Digital Signal Processor）もしくはＦＰＧＡ（Field Programmable Gate Array）を用いて構成される。プロセッサ１５は、サーバ１の全体的な動作を司るコントローラとして機能し、サーバ１の各部の動作を統括するための制御処理、サーバ１の各部との間のデータの入出力処理、データの演算（計算）処理およびデータの記憶処理を行う。プロセッサ１５は、メモリ１２に記憶されたプログラムおよびデータに従って動作する。プロセッサ１５は、動作時にメモリ１２を使用し、プロセッサ１５が生成または取得したデータもしくは情報をメモリ１２に一時的に保存したり、データ蓄積部１３に記録したりする。プロセッサ１５の動作例の詳細については、図８を参照して後述する。
【００３７】
端末２１〜２ｎは、操作部１１ａと、メモリ１２ａと、データ蓄積部１３ａと、通信回路１４ａと、プロセッサ１５ａとを含む構成である。
【００３８】
操作部１１ａは、分散型トランザクション証明システム１００のユーザの操作を受け付ける入力デバイスにより構成される。操作部１１ａは、例えばマウス、キーボード、タッチパネルにより構成される。なお、ブロックチェーン技術におけるスマートコントラクト機能に準じた機能を用いることで、ユーザが使用する操作部１１ａの構成は端末２１〜２ｎのそれぞれから省略されてよい。つまり、プロセッサ１５ａは、スマートコントラクト機能に準じた機能を用いるために、所定の処理を実行するための事前定義情報をメモリ１２ａあるいはデータ蓄積部１３ａに記録して保持する。プロセッサ１５ａは、上述した事前定義情報により記載されているイベントの発生を検知すると、その所定の処理を自動的に実行してよい。所定の処理は、例えば、後述する点検証明通知の作成および送信であるが、これに限定されない。
【００３９】
メモリ１２ａは、例えばＲＡＭとＲＯＭとを用いて構成され、端末２１〜２ｎのそれぞれの動作の実行に必要なプログラムおよびデータ、さらには、動作中に生成されたデータもしくは情報を一時的に保持する。ＲＡＭは、例えば、端末２１〜２ｎのそれぞれの動作時に使用されるワークメモリである。ＲＯＭは、例えば、端末２１〜２ｎのそれぞれを制御するためのプログラムおよびデータを予め記憶して保持する。
【００４０】
データ蓄積部１３ａは、例えばＨＤＤもしくはＳＳＤを用いて構成され、プロセッサ１５ａにより生成されるデータもしくは情報を記録して保持する。データ蓄積部１３ａは、例えばブロックチェーンＢＫＣ１，ＢＫＣ２の一部あるいは全部のデータを記録して保持する。
【００４１】
通信回路１４ａは、サーバ１、あるいは車両３１〜３ｍのそれぞれとの間のデータもしくは情報の送受信が可能な通信回路により構成される。通信回路１４ａは、プロセッサ１５ａにより生成されたデータもしくは情報を受け取ると、通信相手（例えば、サーバ１、あるいは車両３１〜３ｍのそれぞれ）にそのデータもしくは情報を送る。また、通信回路１４ａは、通信相手（上述参照）から送られるデータもしくは情報を受信してプロセッサ１５ａに送る。
【００４２】
プロセッサ１５ａは、例えばＣＰＵ（Central Processing Unit）、ＤＳＰ（Digital Signal Processor）もしくはＦＰＧＡ（Field Programmable Gate Array）を用いて構成される。プロセッサ１５ａは、端末２１〜２ｎのそれぞれの全体的な動作を司るコントローラとして機能し、端末２１〜２ｎのそれぞれの各部の動作を統括するための制御処理、端末２１〜２ｎのそれぞれの各部との間のデータの入出力処理、データの演算（計算）処理およびデータの記憶処理を行う。プロセッサ１５ａは、メモリ１２ａに記憶されたプログラムおよびデータに従って動作する。プロセッサ１５ａは、動作時にメモリ１２ａを使用し、プロセッサ１５ａが生成または取得したデータもしくは情報をメモリ１２ａに一時的に保存したり、データ蓄積部１３ａに記録したりする。プロセッサ１５ａの動作例の詳細については、図１１を参照して後述する。
【００４３】
図４は、車両３１〜３ｍの内部構成例を示すブロック図である。車両３１〜３ｍのそれぞれは、制御部４０と、カメラ４１と、ＬｉＤＡＲ４２と、ミリ波レーダ４３と、その他センサ群４４と、通信回路４５と、メモリ４６とを含む構成である。実施の形態１に係る分散型トランザクション証明システム１００において、カメラ４１と、ＬｉＤＡＲ４２と、ミリ波レーダ４３と、その他センサ群４４とは、車両３１〜３ｍのそれぞれを車検のような３年あるいは２年ごとの検査ではなく、必要な時に都度手軽に行える点検を行うために、サーバ１より送られる点検実施要求の対象となるセンサである。
【００４４】
車両３１〜３ｍのそれぞれは、例えば自動運転レベル１以上の車両であり、以下、自動運転レベル３の車両を例示して説明する。カメラ４１と、ＬｉＤＡＲ４２と、ミリ波レーダ４３と、その他センサ群４４と、通信回路４５と、制御部４０とは、ＣＡＮ（Controller Area Network）等の車載ネットワークを介して互いにデータもしくは情報の入出力が可能に接続される。
【００４５】
車両３１〜３ｍは、自動運転を制御するためのコントローラの一例としての制御部４０を搭載する。制御部４０は、例えばＥＣＵ（Electronic Control Unit）を用いて構成される。制御部４０は単一あるいは複数のＥＣＵを用いて構成されてよい。制御部４０は、メモリ４６に記憶されたプログラムおよびデータに従って動作する。具体的には、制御部４０は、各種のセンサ（具体的には、カメラ４１、ＬｉＤＡＲ４２、ミリ波レーダ４３、その他センサ群４４）の検知出力に基づき、自動運転における経路情報を生成する。
【００４６】
制御部４０は、生成された経路情報に従い、制御対象装備（後述参照）を制御しながら自動運転する。車両３１〜３ｍのそれぞれの自動運転は、障害物（例えば、道路上に存在する穴、他車両、バイク等の二輪車、歩行者、ガードレール、電柱、ポール、店舗等の施設等）に衝突しそうになる直前にブレーキを作動させて車両３１〜３ｍのそれぞれを停止させる機能を含む。車両３１〜３ｍのそれぞれの自動運転は、前方を走る他車両との間で一定の間隔を保ったまま追従する機能を含む。車両３１〜３ｍのそれぞれの自動運転は、車線からはみ出さないように車両３１〜３ｍのそれぞれのステアリングを制御する機能を含むが、上述した各機能は自動運転の一例であり、これらの機能に限定されない。
【００４７】
センサの一例としてのカメラ４１は、いわゆる車載カメラであり、ＣＣＤ（Charge Coupled Device）もしくはＣＭＯＳ（Complementary Metal Oxide Semiconductor）等の撮像素子を有する。カメラ４１は、例えば車両３１〜３ｍのそれぞれの車体前部の中央に設置され、前方中央の範囲を検知範囲として撮像する。例えば、カメラ４１は、自車両の前方に存在する障害物（上述参照）あるいは信号機を検知する。カメラ４１は、撮像画像のデータを用いた画像処理を実行可能であり、その画像処理によって検知された障害物と自車両との関係を示す情報（例えば、自車両を基準とした障害物の速度や位置の情報）を検知したり、信号機の位置、大きさ、信号灯の色を検知したりできる。カメラ４１は、撮像画像、あるいは撮像画像に対する画像処理結果を制御部４０に送る。
【００４８】
センサの一例としてのＬｉＤＡＲ４２は、車両３１〜３ｍのそれぞれの周囲に光線（例えば、赤外線レーザ）を放射してその反射信号を受信し、受信された反射信号を基にして周囲に存在する対象物（例えば上述した障害物）との距離、対象物の大きさ、および対象物の組成を測定する。ＬｉＤＡＲ４２は、この測定結果を制御部４０に送る。
【００４９】
センサの一例としてのミリ波レーダ４３は、車両３１〜３ｍのそれぞれの周囲に電波（例えばミリ波）を放射してその反射信号を受信し、受信された反射信号を基にして周囲に存在する対象物までの距離を測定する。ミリ波レーダ４３は、この測定結果を制御部４０に送る。なお、ミリ波レーダ４３は、ＬｉＤＡＲ４２で検出困難な、より遠方の対象物を検出可能である。
【００５０】
その他センサ群４４は、上述したカメラ４１、ＬｉＤＡＲ４２、ミリ波レーダ４３以外に搭載される複数のセンサである。例えば、アラウンドビューカメラ、ＧＮＳＳセンサ、レーザレンジファインダが該当する。
【００５１】
センサの一例としてのアラウンドビューカメラは、車両３１〜３ｍのそれぞれの車体前方と車体後方と車体側方とにそれぞれ設置される複数台（例えば、車体前方に２台、車体後方に２台、車体側方に２台の計６台）のカメラを用いて構成される。アラウンドビューカメラは、車両３１〜３ｍのそれぞれの近傍の白線や隣接する車線の他車両等を検知する。
【００５２】
センサの一例としてのＧＮＳＳセンサは、複数のＧＰＳ衛星から発信された時刻および各ＧＰＳ衛星の位置（座標）を示す複数の信号を受信し、その受信された複数の信号に基づいて、ＧＰＳ受信機の位置（つまり、車両３１〜３ｍのそれぞれの位置）を算出する。ＧＮＳＳセンサは、車両３１〜３ｍのそれぞれの位置情報（算出結果）を制御部４０に送る。
【００５３】
センサの一例としてのレーザレンジファインダは、車両３１〜３ｍのそれぞれの車体前方右側、車体前方左側、車体側方右側、車体側方左側、車体後方右側、車体後方左側に設置される。レーザレンジファインダは、車両３１〜３ｍのそれぞれの前方右側、前方左側、側方右側、側方左側、後方右側、後方左側に存在する障害物（上述参照）等を検知する。具体的には、レーザレンジファインダは、それぞれレーザ光を一定の広角な角度範囲で走査しながら照射し、その反射光を受光して照射の開始時点と反射光の受光時点との時間差を検知することで、自車両と障害物と距離、更には、自車両から見た障害物の方向を検知する。
【００５４】
なお、その他センサ群４４は、上述したアラウンドビューカメラ、ＧＮＳＳセンサ、レーザレンジファインダに限定されず、例えばジャイロセンサ、加速度センサ、地磁気センサ、傾斜センサ、気温センサ、気圧センサ、湿度センサ、照度センサを有してよい。さらに、車両３１〜３ｍのそれぞれは、上述した各種のセンサを全て備える必要は無く、車両３１〜３ｍのそれぞれに割り当てられる自動運転レベルに準じて適宜備えてよい。
【００５５】
通信回路４５は、サーバ１、あるいは端末２１〜２ｎのそれぞれとの間のデータもしくは情報の送受信が可能な通信回路により構成される。通信回路４５は、制御部４０により生成または取得されたデータもしくは情報を、サーバ１、あるいは端末２１〜２ｎのそれぞれに送る。通信回路４５は、サーバ１、あるいは端末２１〜２ｎのそれぞれから送られたデータもしくは情報を受信して制御部４０に送る。
【００５６】
メモリ４６は、例えばＲＡＭとＲＯＭとを用いて構成され、制御部４０の動作の実行に必要なプログラムやデータ、更には、動作中に生成されたデータもしくは情報を一時的に保持する。ＲＡＭは、例えば制御部４０の動作時に使用されるワークメモリである。ＲＯＭは、例えば制御部４０を制御するためのプログラムおよびデータを予め記憶して保持する。
【００５７】
また、制御部４０は、車両３１〜３ｍのそれぞれのアクセルスロットル開度、車両３１〜３ｍのそれぞれのブレーキ力、ステアリング舵角、ウインカーの点滅タイミング等の自動運転に必要な制御対象装備を制御するための制御値を計算する。制御値は、例えば制御部４０により生成される経路情報に従って走行するように計算される。制御部４０は、計算された制御値を、それぞれの制御対象装備（例えば、ステアリング、アクセルペダル、ブレーキ、方向指示器）を駆動するためのアクチュエータ（つまり、ステアリングアクチュエータ、アクセルペダルアクチュエータ、ブレーキアクチュエータ、ウインカー点滅コントローラ）に伝達する。
【００５８】
制御対象装備は、車両３１〜３ｍのそれぞれに配備される装備物であり、車両３１〜３ｍのそれぞれの自動運転中に制御部４０により作動の制御を受ける。制御対象装備は、例えばステアリングアクチュエータ、アクセルペダルアクチュエータ、ブレーキアクチュエータ、ウインカー点滅コントローラであるが、これらに限定されない。
【００５９】
ステアリングアクチュエータは、車両３１〜３ｍのそれぞれに配置されるステアリングと接続され、制御部４０から入力されるステアリング（図示略）の制御信号に従って、自動運転中におけるステアリングの作動（言い換えると、車両３１〜３ｍのそれぞれの進行方向の維持または変更）を制御する。
【００６０】
アクセルペダルアクチュエータは、車両３１〜３ｍのそれぞれに配置されるアクセルペダルと接続され、制御部４０から入力されるアクセルペダル（図示略）の制御信号に従って、自動運転中におけるアクセルペダルの作動（言い換えると、車両３１〜３ｍのそれぞれの車速の維持または増減）を制御する。
【００６１】
ブレーキアクチュエータは、車両３１〜３ｍのそれぞれに配置されるブレーキと接続され、制御部４０から入力されるブレーキ（図示略）の制御信号に従って、自動運転中におけるブレーキの作動（言い換えると、車両３１〜３ｍのそれぞれの進行に対する制動の維持または変更）を制御する。
【００６２】
ウインカー点滅コントローラは、車両３１〜３ｍのそれぞれに配置されるウインカー点滅機構と接続され、制御部４０から入力されるウインカー点滅機構（図示略）の制御信号に従って、自動運転中における方向指示器の作動（言い換えると、車両３１〜３ｍのそれぞれが左折または右折することを報知するための方向指示器の点滅）を制御する。
【００６３】
次に、サーバ１、端末２１〜２ｎのそれぞれにより作成および記録されるブロックチェーンＢＫＣ１，ＢＫＣ２の構造例について、図５および図６を参照して説明する。図５は、ブロックチェーンの第１構成例を示す図である。図６は、ブロックチェーンの第２構成例を示す図である。図５および図６のブロックチェーンＢＫＣ１，ＢＫＣ２は、図１に示す第１ユースケースに対応したデータ構造を有しており、図５および図６に示すデータ構造例に限定されない。
【００６４】
図５に示すブロックチェーンＢＫＣ１は、複数の車両ＣＲ１〜ＣＲ４のそれぞれの点検に関するトランザクション情報を、それぞれのトランザクション情報が時系列的な関連性を有するように連鎖的に（まるで数珠つなぎのように）記録する。具体的には、ブロックチェーンＢＫＣ１は、複数の車両ＣＲ１〜ＣＲ４のそれぞれにより点検に関するトランザクションが実行される度に作成されるブロックを鎖（チェーン）のように時系列に繋げた構成である。
【００６５】
具体的には、図５に示すブロックチェーンＢＫＣ１では、以前に作成された以前ブロックＰＢＬ１に対し、その以前ブロックＰＢＬ１の後に作成されたという関連性を有する車両ＣＲ２ブロックＭＢＬ１が作成されて縦方向に繋がれている（つまり、連接されている）。より具体的には、直前に作成された以前ブロックＰＢＬ１の一方向性関数（いわゆるハッシュ関数）の出力であるハッシュ値（いわゆるダイジェスト）が車両ＣＲ２ブロックＭＢＬ１内に保持される（図７参照）。ここでいう縦方向とは、分散型トランザクション証明システム１００において、点検証明の対象車両として選定された車両に対応するブロックが繋がれる時系列の方向を示している。
【００６６】
車両ＣＲ２ブロックＭＢＬ１は、図１を参照して説明したように、分散型トランザクション証明システム１００における点検証明の対象車両（つまり、センサの点検の対象車両）として選定された車両ＣＲ２が行う、点検に関するトランザクションに対応するトランザクション情報を有するブロックである。また、車両ＣＲ２ブロックＭＢＬ１には、点検の対象車両以外の周辺車両（つまり、車両ＣＲ２の点検証明を支援する車両ＣＲ１，ＣＲ３，ＣＲ４）が行う、点検に関するトランザクションに対応するトランザクション情報を有するサイドブロックＢＬ１１，ＢＬ１２，ＢＬ１３がそれぞれ横方向に対応付けて繋げられている（つまり、連接されている）。サイドブロックＢＬ１１，ＢＬ１２，ＢＬ１３は、それぞれ車両ＣＲ１ブロック，車両ＣＲ３ブロック，車両ＣＲ４ブロックに対応する。ここでいう横方向とは、分散型トランザクション証明システム１００において、対象車両の点検証明を支援する周辺車両として選定された車両に対応するブロックが繋がれる方向を示している。
【００６７】
また、車両ＣＲ２ブロックＭＢＬ１に対し、その車両ＣＲ２ブロックＭＢＬ１の後に作成されたという関連性を有する車両ＣＲ３ブロックＭＢＬ２が作成されて縦方向に繋がれている（つまり、連接されている）。より具体的には、直前に作成された車両ＣＲ２ブロックＭＢＬ１の一方向性関数（いわゆるハッシュ関数）の出力であるハッシュ値（いわゆるダイジェスト）が車両ＣＲ３ブロックＭＢＬ２内に保持される（図７参照）。
【００６８】
車両ＣＲ３ブロックＭＢＬ２は、図１を参照して説明したように、分散型トランザクション証明システム１００における点検証明の対象車両（つまり、センサの点検の対象車両）として選定された車両ＣＲ３が行う、点検に関するトランザクションに対応するトランザクション情報を有するブロックである。また、車両ＣＲ３ブロックＭＢＬ２には、点検の対象車両以外の周辺車両（つまり、車両ＣＲ３の点検証明を支援する車両ＣＲ１，ＣＲ２，ＣＲ４）が行う、点検に関するトランザクションに対応するトランザクション情報を有するサイドブロックＢＬ２１，ＢＬ２２，ＢＬ２３がそれぞれ横方向に対応付けて繋げられている（つまり、連接されている）。
【００６９】
図６に示すブロックチェーンＢＫＣ２は、図５に示すブロックチェーンＢＫＣ１と同様に、複数の車両ＣＲ１〜ＣＲ４のそれぞれの点検に関するトランザクション情報を、それぞれのトランザクション情報が時系列的な関連性を有するように連鎖的に（まるで数珠つなぎのように）記録する。具体的には、ブロックチェーンＢＫＣ２は、複数の車両ＣＲ１〜ＣＲ４のそれぞれにより点検に関するトランザクションが実行される度に作成されるブロックを鎖（チェーン）のように時系列に繋げた構成である。
【００７０】
具体的には、図６に示すブロックチェーンＢＫＣ２では、以前に作成された以前ブロックＰＢＬ１ａに対し、その以前ブロックＰＢＬ１ａの後に作成されたという関連性を有する車両ＣＲ２ブロックＭＢＬ１ａが作成されて縦方向に繋がれている（つまり、連接されている）。より具体的には、直前に作成された以前ブロックＰＢＬ１の一方向性関数（いわゆるハッシュ関数）の出力であるハッシュ値（いわゆるダイジェスト）が車両ＣＲ２ブロックＭＢＬ１内に保持される（図７参照）。車両ＣＲ２ブロックＭＢＬ１ａは、図５と同様に、複数の車両ＣＲ１〜ＣＲ４のうち点検の対象車両として選定された車両ＣＲ２に対応するブロックである。また、車両ＣＲ２ブロックＭＢＬ１ａは、図５に示す車両ＣＲ２ブロックＭＢＬ１と異なり、点検の対象車両以外の周辺車両（つまり、車両ＣＲ２の点検証明を支援する車両ＣＲ１，ＣＲ３，ＣＲ４）が行う、点検に関するトランザクションに対応するトランザクション情報を有するサイドブロックＳＢＬ１１，ＳＢＬ１２，ＳＢＬ１３を含むように保持する。
【００７１】
また、車両ＣＲ２ブロックＭＢＬ１ａに対し、その車両ＣＲ２ブロックＭＢＬ１ａの後に作成されたという関連性を有する車両ＣＲ３ブロックＭＢＬ２ａが作成されて縦方向に繋がれている（つまり、連接されている）。より具体的には、直前に作成された車両ＣＲ２ブロックＭＢＬ１ａの一方向性関数（いわゆるハッシュ関数）の出力であるハッシュ値（いわゆるダイジェスト）が車両ＣＲ３ブロックＭＢＬ２ａ内に保持される（図７参照）。車両ＣＲ３ブロックＭＢＬ２ａは、図５と同様に、複数の車両ＣＲ１〜ＣＲ４のうち点検の対象車両として選定された車両ＣＲ３に対応するブロックである。また、車両ＣＲ３ブロックＭＢＬ２ａは、点検の対象車両以外の周辺車両（つまり、車両ＣＲ３の点検証明を支援する車両ＣＲ１，ＣＲ２，ＣＲ４）が行う、点検に関するトランザクションに対応するトランザクション情報を有するサイドブロックＳＢＬ２１，ＳＢＬ２２，ＳＢＬ２３を含むように保持する。
【００７２】
図７は、ブロックチェーンを構成するブロックのデータ構造例を示す図である。図７では、例えば車両ＣＲ２ブロックＭＢＬ１（図５参照）を例示して説明するが、個々のブロック内のデータ構造例は同様である。車両ＣＲ２ブロックＭＢＬ１は、直前ブロックのハッシュ値ＨＳ１と、ナンス値ＮＳ１と、少なくとも１つのトランザクション情報ＴＲ１とを含む構成である。
【００７３】
直前ブロックのハッシュ値ＨＳ１は、上述したように、車両ＣＲ２ブロックＭＢＬ１が直前に作成されたブロック（例えば図５に示す以前ブロックＰＢＬ１）の後に作成されたという時系列的な関連性を有することを示す。言い換えると、ハッシュ値ＨＳ１は、自ブロックの直前に作成されたブロックがどのブロックであるかを示す。
【００７４】
ナンス値ＮＳ１は、サーバ１あるいは端末２１〜２ｎのうちいずれかがブロックを新たに作成する際、ハッシュ値ＨＳ１が所定の値（いわゆる、ｄｉｆｆｉｃｕｌｔｙ  ｔａｒｇｅｔ）よりも小さい数に調整されるように、サーバ１あるいは端末２１〜２ｎのうちいずれかにより書き込まれる調整用データである。
【００７５】
トランザクション情報ＴＲ１は、事前定義情報ＤＦ１と、対象車両情報ＴＲＧ１と、周辺車両情報ＡＳＳ１と、外部環境測定結果情報ＳＥＮ１と、点検結果情報ＩＰＥ１と、付属情報ＡＴ１とを含む構成である。
【００７６】
事前定義情報ＤＦ１は、対象車両が備えるセンサのうち点検の対象となるセンサの情報、対象車両以外の周辺車両の台数、点検に関するトランザクションの実行内容、対象車両および周辺車両がそれぞれ行う点検に関するトランザクションの実行結果の比較指示、等を含む。事前定義情報ＤＦ１は、サーバ１あるいは端末２１〜２ｎのそれぞれにより記載される。
【００７７】
対象車両情報ＴＲＧ１は、複数の車両３１〜３ｍの中でサーバ１により選定される点検の対象車両に関する情報（識別情報を含む）を示す。対象車両情報ＴＲＧ１は、サーバ１あるいは端末２１〜２ｎのそれぞれにより記載される。
【００７８】
周辺車両情報ＡＳＳ１は、複数の車両３１〜３ｍの中でサーバ１により選定される点検の対象車両以外の周辺車両に関する情報（識別情報を含む）を示す。周辺車両情報ＡＳＳ１は、サーバ１あるいは端末２１〜２ｎのそれぞれにより記載される。
【００７９】
外部環境測定結果情報ＳＥＮ１は、自ブロックに対応する車両（図７の例では、点検の対象車両として選定される車両ＣＲ２）が点検に関するトランザクションの実行結果として、その車両が備えるセンサにより測定されたデータもしくは情報を示す。例えば、外部環境測定結果情報ＳＥＮ１は、対象車両および周辺車両が走行する同一エリアの同一走行ルート上に存在する、地形情報、標識認識結果情報、信号機の色識別結果情報が該当する。但し、外部環境測定結果情報ＳＥＮ１は、地形情報、標識認識結果情報、信号機の色識別結果情報に限定されない。外部環境測定結果情報ＳＥＮ１は、自ブロックに対応する車両から送られた外部環境測定結果情報を受け取ったサーバ１あるいは端末２１〜２ｎのそれぞれにより記載される。
【００８０】
点検結果情報ＩＰＥ１は、対象車両および周辺車両の点検に関するトランザクションのそれぞれの実行結果の比較に基づいて判定された、対象車両が備えるセンサの不具合（例えば故障）の有無を示す点検結果を示す。点検結果情報ＩＰＥ１は、対象車両が備えるセンサの不具合（例えば故障）の有無を判断するサーバ１あるいは端末２１〜２ｎのそれぞれにより記載される。
【００８１】
付属情報ＡＴ１は、例えば点検に関するトランザクションの実施日時情報、エリア情報、走行ルート情報、自ブロックと関連性を有する他のブロック情報を有する。なお、付属情報ＡＴ１は、自ブロックがサイドブロックを含むように保持する場合に限って、そのサイドブロックに関する情報（識別情報を含む）を有してもよい。
【００８２】
次に、第１ユースケースに係る分散型トランザクション証明システム１００のサーバ１、対象車両、周辺車両、端末２１〜２ｎの動作手順について、図８、図９、図１０、図１１、図１２および図１３をそれぞれ参照して説明する。図８は、第１ユースケースに対応したサーバ１の動作手順例を時系列に示すフローチャートである。図８に示す各処理は、サーバ１のプロセッサ１５により実行される。
【００８３】
図８において、サーバ１は、分散型トランザクション証明システム１００に参加している複数台の車両３１〜３ｍの中から、センサの点検の対象車両を選定する（Ｓｔ１１）。サーバ１は、ステップＳｔ１１の後、対象車両および周辺車両（図５参照）、あるいは対象車両（図６参照）に対応するブロックを新たに作成してブロックチェーンＢＫＣ１，ＢＫＣ２に追加（登録）する。サーバ１は、ブロックチェーンＢＫＣ１，ＢＫＣ２上に追加されたブロックに、点検内容を含む事前定義情報ＤＦ１、対象車両情報ＴＲＧ１および周辺車両情報ＡＳＳ１を記載し、または、事前定義情報ＤＦ１、対象車両情報ＴＲＧ１および周辺車両情報ＡＳＳ１の記載を端末２１〜２ｎのうちいずれかを選定して指示する（Ｓｔ１２）。
【００８４】
サーバ１は、ネットワーク網ＮＷ１を介して、ステップＳｔ１１において選定された対象車両が起動（例えば、イグニッションがオン）しているか否かをその対象車両に直接的に問い合わせ、あるいは他の周辺車両に間接的に問い合わせる（Ｓｔ１３）。サーバ１は、その問い合わせに対する応答結果として対象車両が起動していないことを判定した場合（Ｓｔ１３、ＮＯ）、ブロックチェーンＢＫＣ１，ＢＫＣ２上に新たな対象車両に対応するブロックを新たに追加（登録）してよいか否かを判定する（Ｓｔ１４）。
【００８５】
サーバ１は、一旦作成されたブロックに対応する対象車両の点検結果が記載されていない（言い換えると、点検証明がされていない）未完成状態のブロックの保持数を示す許容値情報を有している。この許容値情報は、例えばメモリ１２内に保持されてよい。サーバ１は、ステップＳｔ１３において起動していないことが判定された対象車両に対応するブロックの保持数が許容値情報に対応する許容値と一致した場合、ブロックチェーンＢＫＣ１，ＢＫＣ２上に新たなブロックの作成ができないため、対象車両が起動するまでプロセッサ１５の動作は待機状態となる（Ｓｔ１４、ＮＯ）。
【００８６】
一方、サーバ１は、ステップＳｔ１３において起動していないことが判定された対象車両に対応するブロックの保持数が許容値情報に対応する許容値まで満たない場合（Ｓｔ１４、ＹＥＳ）、点検対象に対応するブロックを新たに作成してブロックチェーンＢＫＣ１，ＢＫＣ２に追加（登録）する。つまり、サーバ１の処理はステップＳｔ１１に戻る。この場合には、他の車両が対象車両として選定されることになる。
【００８７】
一方、サーバ１は、対象車両が起動していることを判定した場合（Ｓｔ１３、ＹＥＳ）、事前定義情報ＤＦ１、対象車両情報ＴＲＧ１および周辺車両情報ＡＳＳ１を含む点検実施要求を作成し、対象車両に通知する（Ｓｔ１５）。点検実施要求は、対象車両情報ＴＲＧ１により特定される対象車両が実行する、事前定義情報ＤＦ１により記載された点検に関するトランザクションの実行指示を示す。また、図９、図１２および図１３を参照して後述するが、対象車両は、ステップＳｔ１５の点検実施要求の通知を受け取ると、周辺車両情報ＡＳＳ１に基づいて、周辺車両に対し、点検に関するトランザクションの実行指示を送る（Ｓｔ３２）。
【００８８】
サーバ１は、対象車両および周辺車両のそれぞれから、点検に関するトランザクションの実行結果としての外部環境測定結果情報を受信し（Ｓｔ１６）、それぞれの外部環境測定結果情報をブロックチェーンＢＫＣ１，ＢＫＣ２の対応する対象車両あるいは周辺車両のブロックに記載する。なお、後述するように、ブロックへの外部環境測定結果情報は、サーバ１ではなく、それぞれの外部環境測定結果情報を受信した端末２１〜２ｎのうちいずれかにより記載されてもよい（図１１参照）。
【００８９】
サーバ１は、ブロックチェーンＢＫＣ１，ＢＫＣ２上に、不正なく外部環境測定結果情報の記載が完了したことを認識する（Ｓｔ１７）。
【００９０】
サーバ１は、ステップＳｔ１７においてブロックチェーンＢＫＣ１，ＢＫＣ２の対象車両および周辺車両のそれぞれ対応するブロックに記載された外部環境測定結果情報に基づいて、対象車両の点検が正常であったか否かを判定する（Ｓｔ１８）。サーバ１は、ステップＳｔ１８の判定結果を点検結果情報ＩＰＥ１として、対象車両に対応するブロックに記載する。
【００９１】
サーバ１は、対象車両の外部環境測定結果情報と一致する外部環境測定結果情報を得た周辺車両の数が周辺車両の台数の過半数であると判定した場合、対象車両の点検が正常であると判定する（Ｓｔ１８、ＹＥＳ）。この場合、サーバ１は、点検結果情報ＩＰＥ１の一例としての点検証明通知を発行（作成）して対象車両に送る（Ｓｔ１９）。点検証明通知は、実施の形態１に係る分散型トランザクション証明システム１００に参加している周辺車両のうち過半数の同意が得られたことで、対象車両の点検が正常であったことの有効性を担保する情報である。これにより、分散型トランザクション証明システム１００において、対象車両および周辺車両の間で、車両が備えるセンサの点検証明を簡易かつ気軽に発行可能となる。上述したように、既存の車検場で車検完了の証明書を発行する中央集権型から個人あるいは民間業者のサービスとして車検証明に準じた点検証明を発行可能な分散型にすることで、従来よりも車両の異常を短周期に実行でき、かつ正常な車両（例えば、自動運転車両）であることの証明が可能となる。
【００９２】
一方、サーバ１は、対象車両の外部環境測定結果情報と一致する外部環境測定結果情報を得た周辺車両の数が周辺車両の台数の過半数でなかったと判定した場合（Ｓｔ１８、ＮＯ）、対象車両の点検が異常であると判定する。この場合、サーバ１は、点検結果情報ＩＰＥ１の一例としての異常通知（つまり、対象車両の点検が異常であった旨の情報通知）を作成して対象車両に送る、または、対象車両が備える一部あるいは全部のセンサの機能（制御）を制限する旨の命令（つまり、制御制限命令）を作成して対象車両に送る（Ｓｔ２０）。
【００９３】
なお、対象車両は、サーバ１から制御制限命令を受信した場合、その制御制限命令により特定されるセンサの使用を制限する。例えば、対象車両におけるブレーキアシスト機能（例えば、赤信号の検知によりブレーキが作動する機能）がオフになる。これにより、例えば自動運転中に制御制限命令により特定されるセンサの使用を控えるので、対象車両が交通違反あるいは交通事故を起こす確率を低減できる。
【００９４】
サーバ１は、ステップＳｔ１９あるいはステップＳｔ２０の後、対象車両の外部環境測定結果情報と一致する外部環境測定結果情報を得た一部あるいは全部の周辺車両に対し、所定の報酬を支払う（Ｓｔ２１）。所定の報酬は、例えば規定料の仮想通貨、あるいは規定のポイント値である。
【００９５】
図９は、対象車両（車両）の動作手順例を時系列に示すフローチャートである。図９に示す各処理は、対象車両（つまり、車両３１〜３ｍのうちいずれか１台の車両）の制御部４０により実行される。図１０は、周辺車両（つまり、車両）の動作手順例を時系列に示すフローチャートである。図１０に示す各処理は、対象車両以外の周辺車両の制御部４０により実行される。図１１は、端末２１〜２ｎの動作手順例を時系列に示すフローチャートである。図１１に示す各処理は、端末２１〜２ｎのうちの少なくとも１台の端末のプロセッサ１５ａにより実行される。図１２は、周辺車両における外部環境測定の動作手順例を時系列に示すシーケンス図である。図１３は、サーバ１あるいは端末２１〜２ｎにおける外部環境測定の動作手順例を時系列に示すシーケンス図である。
【００９６】
以下では、対象車両および周辺車両がそれぞれ測定した外部環境測定結果情報の比較は、周辺車両により実行されるパターン（図１２参照）と、サーバ１あるいは端末２１〜２ｎのそれぞれ（図１３参照）により実行されるパターン（図１３参照）とがある。このため、図１２の説明において適宜図９および図１０を参照して説明する例、図１３の説明において適宜図９および図１０を参照して説明する例の順に説明する。
【００９７】
図１２、図９および図１０において、サーバ１は、点検実施要求を作成し、対象車両に通知する（Ｓｔ１５）。対象車両は、サーバ１から送られた点検実施要求（図８参照）を受信する（Ｓｔ３１）。対象車両は、取得情報比較要求を周辺車両に通知するとともに、自車両が備えるセンサにより測定された外部環境測定結果情報を周辺車両に送る（Ｓｔ３２）。取得情報比較要求は、対象車両が得た外部環境測定結果情報と周辺車両が得た外部環境測定結果情報との比較を指示する。
【００９８】
周辺車両は、対象車両から送られた取得情報比較要求を受信すると（Ｓｔ４１）、この取得情報比較要求に基づいて、点検に関するトランザクションを実行することで、外部環境情報を測定する（Ｓｔ６１）。これにより、周辺車両は、外部環境測定結果情報を得ることができ、自車両（つまり、周辺車両）が得た外部環境測定結果情報と対象車両が得た外部環境測定結果情報とを比較できる（Ｓｔ６２）。周辺車両は、比較結果をサーバ１および端末２１〜２ｎのそれぞれに送る（Ｓｔ４２）。
【００９９】
サーバ１は、点検証明通知、異常通知、または制御制限命令を作成し、点検結果通知として対象車両に送る（Ｓｔ６３）。対象車両は、サーバ１から送られた点検証明通知あるいは異常通知、もしくは対象車両が備える一部あるいは全部のセンサの機能（制御）を制限する旨の命令（つまり、制御制限命令）を受信する（Ｓｔ３３）。ステップＳｔ３３の後、対象車両の処理はステップＳｔ３１に戻り、ステップＳｔ３１〜Ｓｔ３３の処理が繰り返される。
【０１００】
サーバ１は、ステップＳｔ１９あるいはステップＳｔ２０の後、対象車両の外部環境測定結果情報と一致する外部環境測定結果情報を得た一部あるいは全部の周辺車両に対し、所定の報酬を支払う（Ｓｔ２１）。周辺車両は、対象車両の外部環境測定結果情報と一致する外部環境測定結果情報を得た場合には、サーバ１から所定の報酬を受信する（Ｓｔ４３）。
【０１０１】
図１３、図９および図１０において、サーバ１は、点検実施要求を作成し、対象車両に通知する（Ｓｔ１５）。対象車両は、サーバ１から送られた点検実施要求（図８参照）を受信する（Ｓｔ３１）。対象車両は、取得情報比較要求を周辺車両に通知するとともに、自車両が備えるセンサにより測定された外部環境測定結果情報をサーバ１および端末２１〜２ｎのそれぞれに送る（Ｓｔ３２）。
【０１０２】
周辺車両は、対象車両から送られた取得情報比較要求を受信すると（Ｓｔ４１）、この取得情報比較要求に基づいて、点検に関するトランザクションを実行することで、外部環境情報を測定する（Ｓｔ６１）。周辺車両は、ステップＳｔ６１で測定された外部環境測定結果情報をサーバ１および端末２１〜２ｎのそれぞれに送る（Ｓｔ４２）。
【０１０３】
サーバ１は、対象車両および周辺車両のそれぞれから送られた外部環境測定結果情報を受信した場合、それらを比較することで（Ｓｔ６２ａ）、対象車両の点検結果を判定する。サーバ１は、点検証明通知、異常通知、または制御制限命令を作成し、点検結果通知として対象車両に送る（Ｓｔ６３）。対象車両は、サーバ１から送られた点検証明通知あるいは異常通知、もしくは対象車両が備える一部あるいは全部のセンサの機能（制御）を制限する旨の命令（つまり、制御制限命令）を受信する（Ｓｔ３３）。ステップＳｔ３３の後、対象車両の処理はステップＳｔ３１に戻り、ステップＳｔ３１〜Ｓｔ３３の処理が繰り返される。
【０１０４】
サーバ１は、ステップＳｔ１９あるいはステップＳｔ２０の後、対象車両の外部環境測定結果情報と一致する外部環境測定結果情報を得た一部あるいは全部の周辺車両に対し、所定の報酬を支払う（Ｓｔ２１）。周辺車両は、対象車両の外部環境測定結果情報と一致する外部環境測定結果情報を得た場合には、サーバ１から所定の報酬を受信する（Ｓｔ４３）。
【０１０５】
図１１において、端末２１〜２ｎのうち少なくとも１台の端末は、サーバ１から送られた事前定義情報ＤＦ１を受信する（Ｓｔ５１）。端末２１〜２ｎのうち少なくとも１台の端末は、対象車両および周辺車両から送られたそれぞれが測定した外部環境測定結果情報を受信する（Ｓｔ５２）。
【０１０６】
ステップＳｔ５２の後、端末２１〜２ｎのうちブロックチェーンＢＫＣ１，ＢＫＣ２に記載可能な１台の端末は、ステップＳｔ５２において受信された対象車両および周辺車両から送られたそれぞれが測定した外部環境測定結果情報をブロックチェーンＢＫＣ１，ＢＫＣ２の対応するブロックに記載する（Ｓｔ５３）。または、端末２１〜２ｎのうちブロックチェーンＢＫＣ１，ＢＫＣ２に記載可能な１台の端末は、必要に応じて、ブロックチェーンＢＫＣ１，ＢＫＣ２に追加するブロックを作成する（Ｓｔ５３）。
【０１０７】
端末２１〜２ｎのうちブロックチェーンＢＫＣ１，ＢＫＣ２に記載可能な１台の端末は、ステップＳｔ５３においてブロックチェーンＢＫＣ１，ＢＫＣ２に追加するブロックを作成した場合には、サーバ１から送られる所定の報酬を受け取る（Ｓｔ５４）。
【０１０８】
以上により、実施の形態１に係る第１ユースケースでは、分散型トランザクション証明システム１００は、サーバ１と複数の車両３１〜３ｍのそれぞれとが通信可能に接続される。サーバ１は、複数の車両のそれぞれの点検に関するトランザクション情報を連鎖的に記録するブロックチェーンＢＫＣ１，ＢＫＣ２を保持する。サーバ１は、複数の車両の中から点検の対象車両を選定し、選定された対象車両の点検に関するトランザクション情報をブロックチェーンに作成するとともに、点検に関するトランザクションの実行指示を対象車両に送る。対象車両は、実行指示に基づいて点検に関するトランザクションを実行するとともに、点検に関するトランザクションの実行指示を対象車両以外の周辺車両に送る。サーバ１は、対象車両および周辺車両のそれぞれの点検に関するトランザクションの実行結果に基づく点検結果を、作成された対象車両の点検に関するトランザクション情報に登録する。
【０１０９】
これにより、分散型トランザクション証明システム１００は、身近な複数の車両のそれぞれに搭載されたセンサの不具合の点検に関するトランザクションの実行結果およびセンサの不具合の有無の検出結果をブロックチェーンＢＫＣ１，ＢＫＣ２で管理できる。従って、分散型トランザクション証明システム１００によれば、分散型トランザクション証明システム１００に参加しているそれぞれの車両で実行されたトランザクションの有効性を的確に担保できる。さらに、点検に関するトランザクション情報がブロックチェーンＢＫＣ１，ＢＫＣ２において記録されるので、身近な複数台の車両の中からブロックチェーンＢＫＣ１，ＢＫＣ２に基づいて選定された対象車両が点検に関するトランザクションを実行した結果に対して改ざん防止が可能となり、対象車両における点検結果の有効性が担保される。さらに、対象車両だけでなく周辺車両が実行する点検に関するトランザクション情報もブロックチェーンＢＫＣ１，ＢＫＣ２上に記録されるので、対象車両の点検結果の改ざんの防止が可能となる。
【０１１０】
また、サーバ１のプロセッサ１５は、ブロックチェーンＢＫＣ１，ＢＫＣ２に基づいて、対象車両を選定する。これにより、サーバ１は、従前の点検に関するトランザクションの実行履歴が連鎖的に記録されているブロックチェーンＢＫＣ，ＢＫＣ２に基づいて、例えば一定期間点検がなされていない車両を抽出して対象車両に選定できる。
【０１１１】
また、サーバ１のプロセッサ１５は、対象車両の点検に関するトランザクションの実行結果と一致する実行結果を測定した周辺車両が過半数である場合に、点検結果として正常である旨の情報を作成する。これにより、分散型トランザクション証明システム１００に参加している複数台の車両３１〜３ｍのうち対象車両以外の周辺車両の過半数の同意（つまり、同一の外部環境測定結果情報が得られた）により、手軽に対象車両の点検証明の有効性が担保される。
【０１１２】
また、サーバ１のプロセッサ１５は、対象車両および周辺車両のそれぞれの点検に関するトランザクションの実行結果を受け取り、それぞれの実行結果の比較に基づき、対象車両の点検に関するトランザクションの実行結果と一致する実行結果を測定した周辺車両が過半数であるか否かを判定する。これにより、サーバ１は、分散型トランザクション証明システム１００に参加している合計（ｍ−１）台の周辺車両のうち過半数の周辺車両が得た外部環境測定結果情報が同一であるかどうかを判定するだけで、簡易に対象車両の点検の有効性を担保できる。
【０１１３】
また、サーバ１のプロセッサ１５は、対象車両および周辺車両のそれぞれの点検に関するトランザクションの実行結果の比較結果を受け取り、比較結果に基づき、対象車両の点検に関するトランザクションの実行結果と一致する実行結果を測定した周辺車両が過半数であるか否かを判定する。これにより、サーバ１は、分散型トランザクション証明システム１００に参加している合計（ｍ−１）台の周辺車両のうち過半数の周辺車両が得た外部環境測定結果情報が同一であるかどうかの比較結果を判定するだけで、簡易に対象車両の点検の有効性を担保できる。
【０１１４】
また、サーバ１のプロセッサ１５は、対象車両の点検に関するトランザクションの実行結果と一致する実行結果を測定した周辺車両が過半数に満たない場合に、点検結果として異常である旨の情報を作成する。これにより、サーバ１は、分散型トランザクション証明システム１００に参加している合計（ｍ−１）台の周辺車両のうち過半数の周辺車両が得た外部環境測定結果情報が同一でないと判定するだけで、対象車両の点検が異常であった旨を簡易に判定できる。
【０１１５】
また、サーバ１のプロセッサ１５は、異常に係る対象車両の機能の使用制限命令を、通信回路１４を介して、対象車両に送る。これにより、サーバ１は、例えば自動運転中に制御制限命令により特定されるセンサの使用を対象車両に控えさせるので、対象車両が交通違反あるいは交通事故を起こす確率を低減できる。
【０１１６】
また、サーバ１のプロセッサ１５は、対象車両の点検に関するトランザクションの実行結果と一致する実行結果を測定した過半数の周辺車両に所定の報酬を付与する。これにより、周辺車両へのインセンティブが保証されるので、車両が分散型トランザクション証明システム１００に参加することの意義が的確に向上する。
【０１１７】
また、車両３１〜３ｍのそれぞれは、サーバ１を含む分散型トランザクション証明システム１００を構成する車両であって、車両の点検に関するトランザクション情報を連鎖的に記録するブロックチェーンＢＫＣ１，ＢＫＣ２を保持するサーバ１との間で通信する通信回路４５を有する。車両３１〜３ｍのそれぞれは、自車両の運転を含む動作を制御する制御部４０を有する。自車両が点検の対象車両として選定された場合、通信回路４５は、点検に関するトランザクションの実行指示を受け取る。また、制御部４０は、実行指示に基づく点検に関するトランザクションの実行を制御し、自車両における点検に関するトランザクションの実行結果と他車両（つまり、複数台の周辺車両）における点検に関するトランザクションの実行結果とに基づく点検結果に基づき、自車両の運転を含む動作を制御する。
【０１１８】
これにより、分散型トランザクション証明システム１００において、対象車両および周辺車両の間で、車両が備えるセンサの点検証明を簡易かつ気軽に発行可能となる。上述したように、既存の車検場で車検完了の証明書を発行する中央集権型から個人あるいは民間業者のサービスとして車検証明に準じた点検証明を発行可能な分散型にすることで、従来よりも車両の異常を短周期に実行でき、かつ正常な車両（例えば、自動運転車両）であることの証明が可能となる。
【０１１９】
また、車両３１〜３ｍのそれぞれは、点検の対象となる少なくとも１つのセンサをさらに有する。制御部４０は、点検に関するトランザクションとして、所定の走行ルートの走行中にセンサによる周辺の外部環境情報の測定結果を受け取る。これにより、車両３１〜３ｍのそれぞれは、対象車両あるいは周辺車両のいずれにおいても同一の走行ルートで同様な周囲の外部環境情報の測定を行うので、対象車両の点検を容易に実現可能となる。
【０１２０】
（第２ユースケース）
図１４は、分散型トランザクション証明システム１００の第２ユースケースの動作概要例を示す説明図である。図１５は、第２ユースケースに対応したサーバの動作手順例を時系列に示すフローチャートである。図１６は、地図データの更新例を示す説明図である。
【０１２１】
第２ユースケースでは、例えば第１ユースケースにおける対象車両の選定のために、分散型トランザクション証明システム１００に参加しているいずれかの車両がイベントを検知したことを契機に、他の周辺車両に同様なイベントの検知ができるか否かが問い合わせされる。イベントの一例として、地図データに存在していない（つまり、データとして登録されていない）障害物が検知されることであるが、これに限定されない。過半数の周辺車両が同様なイベントを検知したことが判明した場合に、その障害物に関する情報が地図データ上に追加して登録されるとともに、第１ユースケースと同様に一連のトランザクション情報がブロックチェーンＢＫＣ１，ＢＫＣ２に登録される。なお、第２ユースケースにおいて、分散型トランザクション証明システム１００に参加している車両３１〜３ｍのそれぞれは、上述した地図データをメモリ４６に記録して保持している。
【０１２２】
図１４において、先ず、車両ＣＲ１は、地図データに存在していない（つまり、データとして登録されていない）障害物（例えば、道路上に発生した穴ＯＢ１）を検知する（Ｓｔ７１）。車両ＣＲ１は、他の車両ＣＲ２，ＣＲ３，ＣＲ４よりも先行して走行しており、車両ＣＲ１〜ＣＲ４の走行状態はサーバ１において認識されている。車両ＣＲ１は、障害物（例えば穴ＯＢ１）を検知した旨をサーバ１に報告する。分散型トランザクション証明システム１００において、サーバ１は、車両ＣＲ１からの報告に基づいて、車両ＣＲ１の後続車両（つまり、車両ＣＲ２〜ＣＲ４）に、車両ＣＲ１からの障害物の検知報告の信憑性を問い合わせる（Ｓｔ７２）。車両ＣＲ２〜ＣＲ４のそれぞれは、サーバ１からの問い合わせ要求に応じて、障害物（例えば穴ＯＢ１）の有無を検知し、検知結果をサーバ１に報告する。例えば、車両ＣＲ２，ＣＲ４は、穴ＯＢ１を検知でき、一方で、車両ＣＲ３は、穴ＯＢ１を検知できなかったとする。
【０１２３】
サーバ１は、車両ＣＲ１〜ＣＲ４のそれぞれの報告に基づいて、過半数の正常検知結果を得た場合（言い換えると、車両ＣＲ１の検知結果と一致する検知結果を得た車両が過半数であった場合）、車両ＣＲ１の検知報告の有効性を担保するために、ブロックチェーンＢＫＣ１，ＢＫＣ２に登録するとともに（Ｓｔ７４）、障害物（例えば穴ＯＢ１）に関する情報を新しく追加するための地図データの更新を車両ＣＲ１〜ＣＲ４のそれぞれに指示する（Ｓｔ７３）。例えば図１６に示すように、更新前の地図データＭＰＤ１は地図上に存在している障害物の障害物データＭＰ１，ＭＰ２を保持しているが、ステップＳｔ７３により、ステップＳｔ７１において新しく検知された障害物（例えば穴ＯＢ１）に関する障害物データＭＰ３が新しく追加される。更新後の地図データＭＰＤ１ａに追加された障害物データＭＰ３は、例えば、穴ＯＢ１の地点情報（つまり、位置情報）と、障害物の種別と、障害物の大きさを示す面積情報とを有する。
【０１２４】
なお、サーバ１は、車両ＣＲ１の検知結果と一致する検知結果を得ることができなかった車両ＣＲ３に対し、地図データの更新（上述参照）を一時的に保留してもよい。サーバ１は、車両ＣＲ３に搭載されているセンサに不具合（例えば故障）が生じている可能性を認識する（Ｓｔ７３）。
【０１２５】
サーバ１あるいは端末２１〜２ｎのそれぞれは、上述したように、車両ＣＲ１〜ＣＲ４のそれぞれのトランザクション（つまり、地図データに存在しない穴ＯＢ１の検知確認）に対応するトランザクション情報を作成してブロックチェーンＢＫＣ１，ＢＫＣ２に登録する（Ｓｔ７４）。サーバ１は、障害物（例えば穴ＯＢ１）を検知できた車両（具体的には、車両ＣＲ２，ＣＲ４）には所定の報酬を支払う（Ｓｔ７４）。サーバ１は、車両ＣＲ３に搭載されているセンサに不具合（例えば故障）が生じている可能性を認識した後、その車両ＣＲ３の使用を控えるための制御制限命令を車両ＣＲ３に送るとともに、第１ユースケースと同様に車両ＣＲ３を点検の対象車両として選定する（Ｓｔ７４）。車両ＣＲ３は、サーバ１からの制御制限命令を受信すると、点検依頼を作成してサーバ１に送る。なお、車両ＣＲ３が点検の対象車両として選定された場合の処理については、上述した第１ユースケースと同様であるため、説明を省略する。
【０１２６】
次に、第２ユースケースに係る分散型トランザクション証明システム１００のサーバ１の動作手順について、図１５をそれぞれ参照して説明する。図１５に示す各処理は、サーバ１のプロセッサ１５により実行される。第２ユースケースに係る対象車両、周辺車両および端末２１〜２ｎのそれぞれの動作に説明において、第１のユースケースと同一の内容の説明は簡略化あるいは省略し、異なる内容について説明する。また、図１５の説明において、第１ユースケースに係るサーバ１の動作と同一の処理については同一のステップ番号を付与して説明を簡略化あるいは省略し、異なる内容について説明する。
【０１２７】
図１５において、サーバ１は、分散型トランザクション証明システム１００に参加している複数台の車両３１〜３ｍの中から、車両の点検依頼を受信したか否かを判断する（Ｓｔ８１）。図１４に示す例では、穴ＯＢ１を検知できなかった車両ＣＲ３からサーバ１に対し、点検依頼が送られる。サーバ１は、車両の点検依頼を受信しなかった場合（Ｓｔ８１、ＮＯ）、第１ユースケースと同様にブロックチェーンＢＫＣ１，ＢＫＣ２に基づいて、点検の対象車両を選定する（Ｓｔ１１）。
【０１２８】
一方、サーバ１は、車両の点検依頼を受信した場合（Ｓｔ８１、ＹＥＳ）、点検依頼をした対象車両（図１４の例では車両ＣＲ３）およびその他の周辺車両（図１４の例では車両ＣＲ１，ＣＲ２，ＣＲ４）に対応するブロックを新たに作成してブロックチェーンＢＫＣ１，ＢＫＣ２に追加（登録）する。サーバ１は、ブロックチェーンＢＫＣ１，ＢＫＣ２上に追加されたブロックに、点検の対象となるセンサ等の依頼内容を含む事前定義情報ＤＦ１、対象車両情報ＴＲＧ１および周辺車両情報ＡＳＳ１を記載し、または、事前定義情報ＤＦ１、対象車両情報ＴＲＧ１および周辺車両情報ＡＳＳ１の記載を端末２１〜２ｎのうちいずれかを選定して指示する（Ｓｔ８２）。ステップＳｔ８２の後、サーバ１の処理はステップＳｔ１３に進む。
【０１２９】
また図１５では、サーバ１は、ステップＳｔ１３において起動していないことが判定された対象車両に対応するブロックの保持数が許容値情報に対応する許容値まで満たない場合（Ｓｔ１４、ＹＥＳ）、他の車両から点検依頼を受信したか否かを判断する（Ｓｔ８１）。
【０１３０】
以上により、実施の形態１に係る第２ユースケースでは、分散型トランザクション証明システム１００では、サーバ１のプロセッサ１５は、複数の車両のうちいずれかの車両によるイベントの検知に基づいて、いずれかの車両以外の周辺車両にイベントの検知の可否を、通信回路１４を介して問い合わせる。プロセッサ１５は、過半数のイベントの正常検知通知に基づいて、イベントに対応するデータの登録指示を、通信回路１４を介して複数の車両のそれぞれに送る。これにより、分散型トランザクション証明システム１００によれば、イベントの検知を契機としてその検知結果の信憑性を身近な複数台の車両を用いて確認でき、信憑性の存在が得られた場合に、イベントの検知前まで知られていない未登録データを適正に登録できる。また、対象車両における点検に関するトランザクションの実行結果の改ざん防止が可能となるので、対象車両における点検結果の有効性が担保される。
【０１３１】
また、サーバ１のプロセッサ１５は、イベントの検知が不可な車両を、対象車両として選定する。これにより、イベントの検知ができなかった車両はセンサの不具合（例えば故障）が発生している可能性があるので、サーバ１は、故障の疑いが生じた車両を点検の対象車両として早期に設定できる。
【０１３２】
また、イベントは、複数の車両のそれぞれが保持する地図データに存在していない障害物を検知することである。サーバ１のプロセッサ１５は、地図データに存在していない障害物に関する情報を受け取り、障害物に関する情報の地図データへの更新指示を、通信回路１４を介して複数の車両のそれぞれに送る。これにより、分散型トランザクション証明システム１００によれば、地図データに存在していない障害物が発見された場合に、迅速にその障害物に関する情報が登録されるようになるので、車両３１〜３ｍのそれぞれが自動運転している際に、安全に道路の形状等を把握でき、交通事故あるいは交通違反の発生確率を適応的に低減可能となる。
【０１３３】
以上、図面を参照しながら各種の実施の形態について説明したが、本開示はかかる例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例、修正例、置換例、付加例、削除例、均等例に想到し得ることは明らかであり、それらについても当然に本開示の技術的範囲に属するものと了解される。また、発明の趣旨を逸脱しない範囲において、上述した各種の実施の形態における各構成要素を任意に組み合わせてもよい。
【０１３４】
なお、上述した実施の形態１では、分散型トランザクション証明システム１００を構成するサーバ１、端末２１〜２ｎのそれぞれで役割を異なるように説明したが、サーバ１も端末２１〜２ｎのそれぞれも同様な構成を有するので、例えばサーバ１を端末２１〜２ｎと同様な端末として動作させ、かつ端末２１〜２ｎのうちいずれかをサーバ１と同様に動作させてもよい。これにより、サーバ１のように特別な権限（役割）を持つ装置が存在しなく、分散型トランザクション証明システム１００を構成するサーバ１および端末２１〜２ｎのそれぞれが同様な権限を有することで、平等な分散型トランザクション証明システム１００を構成できる。
【産業上の利用可能性】
【０１３５】
本開示は、身近な複数の車両のそれぞれに搭載されたセンサの不具合の点検に関するトランザクションの実行結果およびセンサの不具合の有無の検出結果をブロックチェーンで管理し、それぞれの車両で実行されたトランザクションの有効性を的確に担保するサーバ、車両、分散型トランザクション証明システムおよび分散型トランザクション証明方法として有用である。
【符号の説明】
【０１３６】
１  サーバ
１１  操作部
１２、４６  メモリ
１３  データ蓄積部
１４、４５  通信回路
１５  プロセッサ
２１、２ｎ  端末
３１、３ｍ  車両
４０  制御部
４１  カメラ
４２  ＬｉＤＡＲ
４３  ミリ波レーダ
４４  その他センサ群
１００  分散型トランザクション証明システム
ＢＫＣ１，ＢＫＣ２  ブロックチェーン
ＮＷ１  ネットワーク網
【図１】
2020030596.tif 000003
【図２】
2020030596.tif 000004
【図３】
2020030596.tif 000005
【図４】
2020030596.tif 000006
【図５】
2020030596.tif 000007
【図６】
2020030596.tif 000008
【図７】
2020030596.tif 000009
【図８】
2020030596.tif 000010
【図９】
2020030596.tif 000011
【図１０】
2020030596.tif 000012
【図１１】
2020030596.tif 000013
【図１２】
2020030596.tif 000014
【図１３】
2020030596.tif 000015
【図１４】
2020030596.tif 000016
【図１５】
2020030596.tif 000017
【図１６】
2020030596.tif 000018