(57)【要約】【課題】集合認証に基づく部分データの検証方法を提供する。【解決手段】送信側コンピュータ機器がデータ要求を受信し、指定されたデータクラスタを取得し（S101）、非要求部分に対してフィンガープリント処理を実行し、非要求データフィンガープリントを得るとともに、要求部分及び非要求データフィンガープリントを要求側コンピュータ機器へ送り返す（S103）。要求側コンピュータ機器が信頼できる集合フィンガープリントを取得し、要求部分に対してフィンガープリント処理を実行し(S105)、要求データフィンガープリントを得て、非要求データフィンガープリントと要求データフィンガープリントをマージしてマージ集合フィンガープリントとし、且つマージ集合フィンガープリントが信頼できる集合フィンガープリントと一致する場合、要求部分が正確であると判定する(S108)。【選択図】図２
2020198611.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）送信側コンピュータ機器が要求側コンピュータ機器からデータ要求を受信し、そのうち、前記データ要求は提供されるデータクラスタの要求部分を指定する；
（ｂ）前記データ要求が指定する前記データクラスタを取得する；
（ｃ）前記データクラスタの前記要求部分以外の非要求部分に対して第１フィンガープリント処理を実行し、非要求データフィンガープリントを得る；
（ｄ）前記データクラスタの前記要求部分及び前記非要求データフィンガープリントを前記要求側コンピュータ機器に送り返す；
（ｅ）前記要求側コンピュータ機器が前記データクラスタの信頼できる集合フィンガープリントを取得し、そのうち、前記信頼できる集合フィンガープリントは前記データクラスタ全体に基づき生成される；
（ｆ）前記要求部分に対して前記第１フィンガープリント処理を実行し、要求データフィンガープリントを得る；
（ｇ）前記非要求データフィンガープリント及び前記要求データフィンガープリントに対してマージ処理を実行し、マージ集合フィンガープリントを得る；
（ｈ）前記マージ集合フィンガープリントが前記信頼できる集合フィンガープリントと一致する場合、前記データクラスタの前記要求部分が正確であると判定する；
という工程を含む、集合認証に基づく部分データの検証方法。
【請求項２】
前記工程（ｄ）の前に、工程（ｉ）において外部機器又は前記送信側コンピュータ機器が前記データクラスタに対してデジタル署名生成処理を実行し、前記データクラスタ専属のデジタル署名を生成することをさらに含み、
前記工程（ｄ）は前記データクラスタの前記要求部分、前記非要求データフィンガープリント及び前記デジタル署名を前記要求側コンピュータ機器に送り返すものである、請求項１に記載の集合認証に基づく部分データの検証方法。
【請求項３】
前記工程（ｅ）は、
（ｅ１）公開鍵及び私有鍵のうちの１つを取得する；
（ｅ２）取得した前記公開鍵又は前記私有鍵を用いて前記デジタル署名の復号を行い、前記信頼できる集合フィンガープリントを取得する；という工程を含む、請求項２に記載の集合認証に基づく部分データの検証方法。
【請求項４】
前記デジタル署名生成処理は、
（ｊ１）前記公開鍵及び前記私有鍵の一方を取得し、そのうち、前記私有鍵は前記公開鍵とペアである；
（ｊ２）前記データクラスタに対して第２フィンガープリント処理を実行し、前記信頼できる集合フィンガープリントを得る；
（ｊ３）取得した前記公開鍵又は前記私有鍵を用いて前記信頼できる集合フィンガープリントの暗号化を行い、前記デジタル署名を得る；という工程を含む、請求項３に記載の集合認証に基づく部分データの検証方法。
【請求項５】
前記第１フィンガープリント処理、前記第２フィンガープリント処理及び前記マージ処理はハッシュ処理を含む、請求項４に記載の集合認証に基づく部分データの検証方法。
【請求項６】
前記工程（ｂ）の前に、
（ｋ１）身分証明書の演算ユニットからユーザーの身元データを取得して前記データクラスタとする；
（ｋ２）前記演算ユニットからデジタル署名を取得する；という工程をさらに含む、請求項１に記載の集合認証に基づく部分データの検証方法。
【請求項７】
前記工程（ｂ）の前に、
（ｌ１）身分証明書の身元情報ページを撮って身元画像を得る；
（ｌ２）前記身元画像に認識処理を実行し、身元データを得て前記データクラスタとする；
（ｌ３）前記身元証明書の演算ユニットからデジタル署名を取得する；という工程をさらに含む、請求項１に記載の集合認証に基づく部分データの検証方法。
【請求項８】
前記データクラスタは複数のサブデータを含み、前記工程（ｃ）は、
（ｃ１）前記非要求部分の各前記サブデータに対して第３フィンガープリント処理を実行し、前記非要求部分の複数の前記サブデータフィンガープリントを得る；
（ｃ２）前記非要求部分の複数の前記サブデータフィンガープリントを前記非要求データフィンガープリントとする；という工程を含む、請求項１に記載の集合認証に基づく部分データの検証方法。
【請求項９】
前記第１フィンガープリント処理及び前記マージ処理は不可逆暗号化処理であり、
前記工程（ｂ）の後、前記工程（ｄ）の前に、工程（ｍ）において前記データクラスタの前記要求部分に対して可逆暗号化処理を実行することをさらに含み、
前記工程（ｄ）は、可逆暗号化済みの前記データクラスタの前記要求部分及び不可逆暗号化済みの前記非要求データフィンガープリントを前記要求側コンピュータ機器に送り返すものである、請求項１に記載の集合認証に基づく部分データの検証方法。
【請求項１０】
前記工程（ａ）の後、前記工程（ｂ）の前に、工程（ｎ）において前記データ要求の要求側デジタル署名に対して要求側検証を行うことをさらに含み、
前記工程（ｂ）は、前記身元のアクセス要求が前記要求側検証をパスした場合に、前記データクラスタを取得するものである、請求項１に記載の集合認証に基づく部分データの検証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの検証及び伝送に関し、特に集合認証に基づく部分データの検証方法に関するものである。
【背景技術】
【０００２】
受信端が受信したデータが正確か否かを検証するために、現在では集合データ検証技術が既に提出されている。
【０００３】
具体的には、送信端（送信端末）は複数のオリジナルデータを保存しており、公正な第三者は各オリジナルデータのフィンガープリントを保存している。受信端（受信端末）は送信端からオリジナルデータを受信した後、第三者からそのオリジナルデータのフィンガープリントを取得し、且つフィンガープリントにより受信したオリジナルデータが正確且つ完全か否かを検証することができる。
【０００４】
これにより、従来の集合データ検証技術では、受信端がデータの正確性を検証できるようにしている。さらに、フィンガープリントはオリジナルデータを暗号化して生成したものであるため、第三者はフィンガープリントをオリジナルデータに復元することができず、安全性を高めることができる。
【０００５】
とはいえ、従来の集合データ検証技術には以下の問題が存在する。受信端がオリジナルデータの一部だけを要求した場合でも、送信端は受信端が受信したデータを検証できるようにするため、受信端に完全なオリジナルデータを送らなければならず、受信端が要求していない他の部分のオリジナルデータも取得できてしまうため、オリジナルデータの流出リスクが高くなる。
【０００６】
また、通常、各オリジナルデータには相当数のサブデータがあり、各オリジナルデータの各サブデータのフィンガープリントを第三者に保存する場合、大量のストレージスペースを消費する必要がある。
【０００７】
上述のように、従来の集合データ検証技術には、部分データを検証できないという問題が存在しており、より有効な方法の提出が望まれている。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、完全なデータのフィンガープリントを用いて部分データの検証を行うことができる、集合認証に基づく部分データの検証方法を提供することを主な目的としている。
【課題を解決するための手段】
【０００９】
上述の目的を達成するために、本発明は集合認証に基づく部分データの検証方法を提供するが、それには以下の工程を含む。送信側コンピュータ機器が要求側コンピュータ機器からのデータ要求を受信し、そのうち、データ要求は提供されるデータクラスタの要求部分を指定する。データ要求が指定されたデータクラスタを取得する。データクラスタの要求部分以外の非要求部分に対して第１フィンガープリント処理を実行し、非要求データフィンガープリントを得る。データクラスタの要求部分及び非要求データフィンガープリントを要求側コンピュータ機器へ送り返す。要求側コンピュータ機器がデータクラスタの信頼できる集合フィンガープリントを取得し、そのうち、信頼できる集合フィンガープリントはデータクラスタ全体に基づき生成される。要求部分に対して第１フィンガープリント処理を実行し、要求データフィンガープリントを得る。非要求データフィンガープリント及び要求データフィンガープリントに対してマージ処理を実行し、マージ集合フィンガープリントを得る。マージ集合フィンガープリントが信頼できる集合フィンガープリントと一致する場合、データクラスタの要求部分が正確であると判定する。
【発明の効果】
【００１０】
本発明は、要求した部分データの正確性を有効に検証することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施例におけるデータ検証システムのアーキテクチャ図である。
【図２】本発明の第１実施例における部分データ検証方法のフローチャートである。
【図３】本発明の実施例における部分データ検証の概念図である。
【図４】本発明の第２実施例におけるデータ取り込みのフローチャートである。
【図５】本発明の実施例におけるデータ取り込みの概念図である。
【図６Ａ】本発明の第３実施例における部分データ検証方法の第１フローチャートである。
【図６Ｂ】本発明の第３実施例における部分データ検証方法の第２フローチャートである。
【図７Ａ】本発明の実施例における部分データ検証の第１概念図である。
【図７Ｂ】本発明の実施例における部分データ検証の第２概念図である。
【発明を実施するための形態】
【００１２】
本発明における好ましい実施例について、図面に基づき詳細に説明する。
【００１３】
後続の説明において、「データクラスタ」は複数のサブデータの集合であり、各サブデータは独立にアクセス可能であり、且つ意義ある情報（例えば氏名情報、アドレス情報、アーカイブファイルなど）を有している。
【００１４】
「フィンガープリント」は、指定されたデータ（サブデータ又はデータクラスタを含む）に対してフィンガープリント処理を実行して生成されたものであり、指定されたデータの完全性及び／又は正確性を検証するのに用いることができる。実施例では、フィンガープリントはハッシュ値（ｈａｓｈ  ｖａｌｕｅ）でよく、またフィンガープリント処理はハッシュ関数（ｈａｓｈ  ｆｕｎｃｔｉｏｎ）の演算処理を含む。実施例では、サイズが異なるデータのフィンガープリント処理を実行した後に、同じサイズの内容が異なるフィンガープリントを得ることができる。
【００１５】
本発明の実施例におけるデータ検証システムのアーキテクチャ図である、図１を参照されたい。本発明が開示する集合認証に基づく部分データの検証方法は、データ検証システム１において用いられる。本発明は、データの要求側コンピュータ機器３２が信頼できる集合フィンガープリントを用いてデータクラスタの一部を検証できるようにするものであり、信頼できる集合フィンガープリントは集合認証に用いられ、即ち、完全なデータクラスタの検証を行うよう設計されており、そのままデータクラスタの一部を検証することはできない。
【００１６】
データ検証システム１は、送信側コンピュータ機器１０と要求側コンピュータ機器３２を含む。送信側コンピュータ機器１０と要求側コンピュータ機器３２（例えばスマートフォン、ウェアラブルデバイス、タブレット、ノートパソコン、サーバなど）はユーザーが所持するか又はネットワークサーバとし、且つネットワーク３０経由で相互接続してデータ伝送を行うことができる。
【００１７】
具体的には、要求側コンピュータ機器３２が指定するデータクラスタの全て又は一部を取得したい場合、データ要求を生成して、指定するデータクラスタの指定部分を提供するよう送信側コンピュータ機器１０に要求することができる。送信側コンピュータ機器１０は、データ要求に基づき、指定されたデータクラスタの全て又は一部を要求側コンピュータ機器３２に送り返すことができる。
【００１８】
送信側コンピュータ機器１０は主に、ネットワーク接続モジュール１０２、マンマシンインターフェイス１０４、ストレージモジュール１０５及び上述のモジュールと電気的に接続された処理モジュール１００を含む。
【００１９】
要求側コンピュータ機器３２は主に、ネットワーク３０に接続されたネットワーク接続モジュール３２２、ストレージモジュール３２５、マンマシンインターフェイス３２４及び上述の構成要素と電気的に接続された処理モジュール３２０を含む。
【００２０】
ネットワーク接続モジュール１０２とネットワーク接続モジュール３２２（モバイルネットワークモジュール、Ｗｉ−Ｆｉモジュール又はイーサネットネットワークモジュールなど）は、ネットワーク３０（インターネットなど）に接続してデータ通信を行なうためのものである。マンマシンインターフェイス１０４とマンマシンインターフェイス３２４（例えばキーモジュール、タッチ制御モジュールなどの入力モジュール及び／又はディスプレイモジュール、表示灯などの出力モジュール）は、ユーザーからの操作を受け、且つユーザーに情報を提供するためのものである。ストレージモジュール１０５とストレージモジュール３２５は、データを記憶するためのものである。処理モジュール１００は、送信側コンピュータ機器１０を制御するためのものである。処理モジュール３２０は、要求側コンピュータ機器３２を制御するためのものである。
【００２１】
実施例では、送信側コンピュータ機器１０のストレージモジュール１０５と要求側コンピュータ機器３２のストレージモジュール３２５は、非一過性の記録媒体を含むことができ、非一過性の記録媒体にはそれぞれコンピュータプログラム１０５０、３２５０（アプリケーションなど）が記憶されている。コンピュータプログラム１０５０、３２５０には、コンピュータが実行可能なプログラムコードが含まれている。送信側コンピュータ機器１０がコンピュータプログラム１０５０を実行し、且つ要求側コンピュータ機器３２がコンピュータプログラム３２５０を実行した場合、両者はネットワーク３０経由で対話することができ、本発明の各実施例の方法を実現することができる。
【００２２】
例を挙げると、送信側コンピュータ機器１０はユーザーが所持するコンピュータ機器でよく、要求側コンピュータ機器３２はネットワークサーバである（ショッピングサイト又は個人認証サイトなど）。送信側コンピュータ機器１０が要求側コンピュータ機器３２からデータ要求（要求部分の身元（身分）データを提供するよう求めるなど）を受信した場合、後述の部分データ検証方法に基づき、要求されたデータ及び関係する検証データを要求側コンピュータ機器３２に提供することができ、要求側コンピュータ機器３２が要求したデータの受信後にその完全性及び正確性を検証できるようにさせる。
【００２３】
別の例では、送信側コンピュータ機器１０はデータダウンロードサービスを提供するファイルサーバでよく、要求側コンピュータ機器３２はユーザーが所持するコンピュータ機器である。送信側コンピュータ機器１０が要求側コンピュータ機器３２からデータ要求（特定のデータクラスタの一部を提供するよう求めるなど）を受信した場合、後述の部分データ検証方法に基づき、要求されたデータ及び関係する検証データを要求側コンピュータ機器３２に提供して、要求側コンピュータ機器３２が要求したデータの受信後にその完全性及び正確性を検証できるようにする。
【００２４】
続けて図１、図２及び図３を共に参照されたい。図２は本発明の第１実施例における部分データ検証方法のフローチャートであり、図３は本発明の実施例における部分データ検証の概念図である。以下、図３を例として本実施例の部分データ検証方法を説明するが、これにより本発明の範囲を限定すべきではない。本実施例の部分データ検証方法は、以下の工程を含む。
【００２５】
工程Ｓ１００：送信側コンピュータ機器１０の処理モジュール１００が、要求側コンピュータ機器３２からのデータ要求を受信したか否かを判断する。データ要求は、提供されるデータクラスタ４０の部分（例えば要求部分４１）を指定する。
【００２６】
処理モジュール１００がデータ要求を受信した場合、工程Ｓ１０１を実行する。否ならば、処理モジュール１００が再び工程Ｓ１００を実行する。
【００２７】
工程Ｓ１０１：処理モジュール１００がデータ要求で指定されたデータクラスタ４０を取得する。
【００２８】
実施例では、ストレージモジュール１０５に複数のデータクラスタ４０が記憶されており、処理モジュール１００がデータ要求に基づき、指定されたデータクラスタ４０をストレージモジュール１０５から読み取る。
【００２９】
実施例では、複数のデータクラスタ４０は、外部機器（例えば身分証明書２０、クラウドサーバ３１又はブロックチェーン３３）に記憶されている。処理モジュール１００はデータ要求に基づき、指定されたデータクラスタ４０を外部機器から取得するが、例えばネットワーク３０経由でクラウドサーバ３１若しくはブロックチェーン３３からデータクラスタ４０を取得するか、又は通信モジュール１０１経由で身分証明書２０の演算ユニット２００からデータクラスタ４０を取得するなど、限定されない。
【００３０】
工程Ｓ１０２：処理モジュール１００がデータ要求に基づき、データクラスタ４０をグループ分けして、要求部分４１及び要求部分４１以外の非要求部分４２を取り込む。さらに、処理モジュール１００が非要求部分４２に対してフィンガープリント処理（第１フィンガープリント処理）を実行し、非要求データフィンガープリント４３を得る。
【００３１】
工程Ｓ１０３：処理モジュール１００がネットワーク３０経由でデータクラスタ４０の要求部分４１及び非要求データフィンガープリント４３を要求側コンピュータ機器３２へ送り返す。
【００３２】
実施例では、処理モジュール１００は要求部分４１及び非要求データフィンガープリント４３を返送データ４４に追加して、返送データ４４を要求側コンピュータ機器３２へ送ることができる。
【００３３】
次に、要求側コンピュータ機器３２は、返送データ４４の受信後に以下の工程を実行することができる。工程Ｓ１０４：処理モジュール３２０がデータクラスタ４０の信頼できる集合フィンガープリント５４を取得する。信頼できる集合フィンガープリントは、データクラスタの全てにより生成される。
【００３４】
実施例では、信頼できる集合フィンガープリントは、第三者のフィンガープリントライブラリから取得するか、送信側コンピュータ機器１０から取得するか、又は予め要求側コンピュータ機器３２のストレージモジュール３２５に記憶することができ、限定されない。
【００３５】
実施例では、信頼できる集合フィンガープリントは、ネットワーク中で伝達される（即ち、複数の要求側コンピュータ機器３２が同時に所有可能）ように設計され、且つ暗号化されていないか又は要求側コンピュータ機器３２が復号する能力を有する。
【００３６】
工程Ｓ１０５：処理モジュール３２０が受信した返送データ４４を解析し、要求部分５０及び非要求データフィンガープリント５２を取り込む。次に、処理モジュール３２０が要求部分５０に対して工程Ｓ１０２と同じか又は類似のフィンガープリント処理（第１フィンガープリント処理）を実行し、要求データフィンガープリント５１を得る。
【００３７】
工程Ｓ１０６：処理モジュール３２０が非要求データフィンガープリント５２及び要求データフィンガープリント５１に対してマージ処理を実行し、マージ集合フィンガープリント５３を得る。
【００３８】
なお、マージ処理は信頼できる集合フィンガープリントに対応させた生成方法である。例を挙げると、信頼できる集合フィンガープリントは、データクラスタに対してハッシュ処理を行って生成され、マージ処理にはハッシュ処理が含まれる。別の例では、信頼できる集合フィンガープリントは、データクラスタに対して部分サンプリング処理を行って生成され、マージ処理には部分サンプリング処理が含まれる。
【００３９】
実施例では、マージ処理にはハッシュ処理を含むことができ、例えば、非要求データフィンガープリント５２及び要求データフィンガープリント５１に対してハッシュ処理を行ってハッシュ値を得て、ハッシュ値をマージ集合フィンガープリント５３とする。
【００４０】
実施例では、マージ処理には組み合わせ処理を含むことができ、例えば、非要求データフィンガープリント５２及び要求データフィンガープリント５１を組み合わせて、組み合せ後のデータをマージ集合フィンガープリント５３とする。
【００４１】
工程Ｓ１０７：処理モジュール３２０が、マージ集合フィンガープリント５３が信頼できる集合フィンガープリント５４と一致するか否かを判断する。
【００４２】
マージ集合フィンガープリント５３が信頼できる集合フィンガープリント５４と一致する場合、工程Ｓ１０８を実行する。否ならば、処理モジュール３２０が工程Ｓ１０９を実行する。
【００４３】
工程Ｓ１０８：処理モジュール３２０が受信したデータクラスタ４０の要求部分５０を正確且つ完全であると判定し、さらにマンマシンインターフェイス３２４を介してデータコレクト指示を送信することができる。
【００４４】
工程Ｓ１０９：処理モジュール３２０が受信したデータクラスタ４０の要求部分５０を不正確且つ不完全であると判定し、さらにマンマシンインターフェイス３２４を介してデータエラー指示を送信することができる。
【００４５】
従って、本発明は、データクラスタの全ての信頼できる集合フィンガープリントを検証することにより、要求したデータクラスタの一部の正確性及び完全性を検証するのに使用することができる。さらに、本発明は余分なストレージ空間を消費することなく、データクラスタの各部分のフィンガープリントを保存することができる。
【００４６】
続けて図１、図２、図４及び図５を共に参照されたい。図４は本発明の第２実施例におけるデータ取り込みのフローチャートであり、図５は本発明の実施例におけるデータ取り込みの概念図である。本実施例では、送信側コンピュータ機器１０はユーザーが所持するコンピュータ機器であり、要求側コンピュータ機器３２はネットワークサーバである（ショッピングサイト又は個人認証サイトなど）。データ要求は、送信側コンピュータ機器１０にユーザーの身元データ（即ちデータクラスタ）の一部を提供することを要求する。
【００４７】
さらに本実施例では、送信側コンピュータ機器１０は処理モジュール１００と電気的に接続された通信モジュール１０１及び外部の映像を撮影するための映像キャプチャモジュール１０３（カメラなど）を含むことができる。
【００４８】
通信モジュール１０１は、身分証明書２０の演算ユニット２００（処理チップなど）と近距離（接触型を含む）通信を構築するためのものである。実施例では、通信モジュール１０１は、ＮＦＣモジュール、Ｂｌｕｅｔｏｏｔｈモジュール、超音波モジュールなどの近距離無線通信モジュールか、又は接触型ＩＣカードリーダなどの接触型の通信モジュールでよい。さらに、身分証明書２０は、演算ユニット２００と電気的に接続された通信インターフェイスを含むことができる。通信インターフェイスは、通信モジュール１０１と互換性がある通信技術を採用しており、通信モジュール１０１とデータ通信を行うことができる。
【００４９】
本実施例では、電子データ伝送技術（工程Ｓ２０）又は光学画像認識技術（工程Ｓ２１〜Ｓ２２）を用いてデータクラスタを得ることができる。本実施例の部分データ検証方法は、以下のデータクラスタ及びデジタル署名（その用途は図６Ａ及び図６Ｂの実施例中で詳述する）を得るための工程を含む。
【００５０】
工程Ｓ２０：送信側コンピュータ機器１０の処理モジュール１００が、身分証明書２０の演算ユニット２００からユーザーの身元データをデータクラスタとして取得する。
【００５１】
例を挙げると、図５に示す通り、通信モジュール１０１はＮＦＣモジュールであり、ユーザーは通信モジュール１０１が有効にされた後、身分証明書２０を通信モジュール１０１に近づけて、近距離誘導通信を行うことができる。これによって、処理モジュール１００が通信モジュール１０１及びＮＦＣ通信インターフェイスを介して演算ユニット２００へ身元データを要求することができ（且つ演算ユニット２００とＮＦＣ通信インターフェイスの作動に必要な電力を提供する）、且つ演算ユニット２００が身元データを送信側コンピュータ機器１０に送り返してデータクラスタとすることができる。
【００５２】
別の例では、通信モジュール１０１は接触型ＩＣカードリーダであり、ユーザーは身分証明書２０を通信モジュール１０１に挿入すれば、通信モジュール１０１を演算ユニット２００に接触させることができる。これによって、送信側コンピュータ機器１０が演算ユニット２００から身元データを取得してデータクラスタとすることができる。
【００５３】
工程Ｓ２１：処理モジュール１００が映像キャプチャモジュール１０３を介して身分証明書２０の身元情報ページを撮り、身元画像を得る。
【００５４】
実施例では、図５に示す通り、ユーザーが所有する身分証明書２０には印刷形式の身元情報ページがある。身元情報ページはユーザーの写真２０１、ユーザーの身元情報の複数のフィールドデータ２０２を含むことができる（図５の例では、氏名はＡｎｄｙ  Ｌｅｅ、発行地はＴａｉｐｅｉ  Ｃｉｃｙ、生年月日は１９８０年１月１日である）。ユーザーは送信側コンピュータ機器１０を操作し、映像キャプチャモジュール１０３を用いて身分証明書２０の身元情報ページを撮り、身元画像２１を得ることができる。さらに、送信側コンピュータ機器１０は、ディスプレイモジュール１０４０を介して撮った身元画像２１をすぐに表示し、ユーザーが画像品質を確認できるようにすることができる。
【００５５】
工程Ｓ２２：処理モジュール１００が身元画像２１に認識処理を実行し、身元データを得てデータクラスタとする。
【００５６】
実施例では、処理モジュール１００が得られた身元画像に対して光学文字認識処理を実行し、身元画像２１中の複数の文字とその配列方式を識別し、さらに識別した複数の文字とその配列方式に対して身元解析処理を実行し、複数の文字とその配列方式の分析を経ることにより身元データを得る。
【００５７】
工程Ｓ２３：処理モジュール１００が通信モジュール１０１経由で演算ユニット２００からデジタル署名を取得する。デジタル署名は予め演算ユニット２００に記憶され、且つ身元データ全体の正確性及び完全性を検証するのに用いられる。
【００５８】
実施例では、身分証明書２０の身元情報ページに１組の機械可読コード２０３をさらに記載することができる。処理モジュール１００は、身元画像２１から機械可読コード２０３を識別し、次に機械可読コード２０３により演算ユニット２００のロックを解除して、演算ユニット２００に身元データの提供を許可させる。
【００５９】
これによって、本発明は安全且つ容易にユーザーの身元データを取得することができる。
【００６０】
図１、図６Ａ〜図７Ｂを共に参照されたい。図６Ａは本発明の第３実施例における部分データ検証方法の第１フローチャートであり、図６Ｂは本発明の第３実施例における部分データ検証方法の第２フローチャートであり、図７Ａは本発明の実施例における部分データ検証の第１概念図であり、図７Ｂは本発明の実施例における部分データ検証の第２概念図である。
【００６１】
図２に示した部分データ検証方法と比較すると、本実施例の部分データ検証方法ではデジタル署名技術を組み合わせることで信頼できる集合フィンガープリントを伝達しており、また本実施例では、フィンガープリント処理を実施するための形態がさらに提供される。本実施例の部分データ検証方法は、以下の工程を含む。
【００６２】
工程Ｓ３００：送信側コンピュータ機器１０の処理モジュール１００が、要求側コンピュータ機器３２からのデータ要求６３を受信したか否かを判断する。データ要求は、提供されるデータクラスタ６２の要求部分６４（サブデータＡ１、サブデータＡ２…を含む）を指定する。
【００６３】
処理モジュール１００がデータ要求６３を受信した場合、工程Ｓ３０１を実行する。否ならば、処理モジュール１００が再び工程Ｓ３００を実行する。
【００６４】
工程Ｓ３０１：処理モジュール１００がデータ要求６３の要求側デジタル署名に対して要求側検証を行う。具体的には、データ要求６３は要求側デジタル署名を含むことができ、要求側デジタル署名は要求側コンピュータ機器３２の身元を検証するのに用いられる。
【００６５】
データ要求６３が要求側検証をパスしなかった場合（要求側デジタル署名のエラー又は非合法など）、処理モジュール１００が工程Ｓ３０２を実行する。処理モジュール１００がマンマシンインターフェイス１０４を介して非安全要求側指示を送り、且つデータ伝送を終了して、データ流出を防ぐ。
【００６６】
処理モジュール１００が、データ要求６３が要求側検証をパスしたと判断した場合（即ちデータ要求６３は合法且つ安全であるか又は既知の要求側コンピュータ機器３２が送ったものである）、工程Ｓ３０３を実行する。処理モジュール１００がデータクラスタ６２を取得する。データクラスタ６２は、複数のサブデータを含むことができる（例えばサブデータＡ１、Ａ２…及びサブデータＢ１、Ｂ２…など）。
【００６７】
実施例では、要求するデータクラスタ６２がユーザーの身元データである場合、処理モジュール１００が身分証明書６０から身元データを取り込んでデータクラスタ６２とすることができる。
【００６８】
工程Ｓ３０４：処理モジュール１００がデータクラスタ６２のデジタル署名６１を取得する。
【００６９】
実施例では、デジタル署名は、例えば外部コンピュータ機器（要求側コンピュータ機器３２、クラウドサーバ３１（第三者サーバ又はデータベースでよい）又はブロックチェーン３３など）又は外部記憶媒体（身分証明書２０、セキュリティトークン（Ｔｏｋｅｎ）又はフラッシュドライブなど）などの外部機器から取得する。例を挙げると、要求するデータクラスタ６２がユーザーの身元データである場合、処理モジュール１００が身分証明書６０から身元データのデジタル署名６１を取り込むことができる。
【００７０】
実施例では、送信側コンピュータ機器１０又は外部機器は事前に（データ要求が送られる前など）又は即座に（データ要求の受信時など）以下の工程Ｓ４０〜Ｓ４２に示すデジタル署名生成処理を実行することにより、データクラスタ６２専属のデジタル署名６１を生成することができる。
【００７１】
工程Ｓ４０：処理モジュール１００又は外部機器が私有鍵（秘密鍵）を取得する。私有鍵の取得方式は、情報セキュリティ技術分野において通常の知識を有する者が知り得るものであり、ここでは説明を省略する。
【００７２】
工程Ｓ４１：処理モジュール１００又は外部機器がデータクラスタ６２に対してフィンガープリント処理（第２フィンガープリント処理）を実行して、信頼できる集合フィンガープリントを得る。
【００７３】
工程Ｓ４２：処理モジュール１００又は外部機器が私有鍵を用いて信頼できる集合フィンガープリントを暗号化し、デジタル署名６１を得る。
【００７４】
これによって、本発明は如何なる形式のデータクラスタ６２に対してもデジタル署名６１を生成することができる。
【００７５】
工程Ｓ３０５：処理モジュール１００がデータ要求６３に基づき、データクラスタ６２をグループ分けして、要求部分６４（サブデータＡ１、サブデータＡ２…を含む）及び要求部分６４以外の非要求部分６５（サブデータＢ１、サブデータＢ２…を含む）を取り込む。さらに、処理モジュール１００が非要求部分６５に対してフィンガープリント処理（第１フィンガープリント処理）を実行し、非要求データフィンガープリント６６を得る。
【００７６】
実施例では、処理モジュール１００は以下の工程Ｓ５０〜Ｓ５１を実行して、非要求部分に対するフィンガープリント処理の実行を発生させることができる。
【００７７】
工程Ｓ５０：処理モジュール１００が非要求部分６５の各サブデータＢ１、Ｂ２…のそれぞれに対してフィンガープリント処理（第３フィンガープリント処理）を実行し、非要求部分６５の複数のサブデータフィンガープリントＢ１’、Ｂ２’…を得る。
【００７８】
工程Ｓ５１：処理モジュール１００が非要求部分６５の複数のサブデータフィンガープリントＢ１’、Ｂ２’を非要求データフィンガープリント６６とする。
【００７９】
工程Ｓ３０６：処理モジュール１００がデータクラスタ６２の要求部分６４のサブデータＡ１、Ａ２…に対して可逆暗号化処理を実行する。可逆暗号化処理のタイプ及び詳細な実施方式は、情報セキュリティ技術分野において通常の知識を有する者が知り得るものであり、ここでは説明を省略する。
【００８０】
実施例では、処理モジュール１００はデータクラスタ６２の要求部分６４に対して可逆暗号化処理を実行せず、平文方式で要求部分６４を伝達することもできる。
【００８１】
工程Ｓ３０７：処理モジュール１００が要求部分６４（可逆暗号化済み）、不可逆暗号化済みの非要求データフィンガープリント６６及びデジタル署名６１を要求側コンピュータ機器３２に送り返す。
【００８２】
実施例では、処理モジュール１００は上述のデータを返送データ６７に追加し（返送データ６７は可逆暗号化を実行してもよく、暗号化しなくてもよく、限定しない）、且つ返送データ６７を要求側コンピュータ機器３２に送る。
【００８３】
工程Ｓ３０８：要求側コンピュータ機器３２の処理モジュール３２０が公開鍵７６を取得する。
【００８４】
公開鍵の取得方式は、情報セキュリティ技術分野において通常の知識を有する者が知り得るものであり、ここでは説明を省略する。
【００８５】
なお、私有鍵と公開鍵はペアであり、且つそれぞれ暗号化と復号に用いられる。例を挙げると、私有鍵で暗号化されたデータは、公開鍵を用いて復号することができる。
【００８６】
工程Ｓ３０９：処理モジュール３２０が返送データ６７を解析（復号を含むことができる）して、要求部分７０の複数のサブデータＡ１、Ａ２…、非要求データフィンガープリント７２の複数のサブデータフィンガープリントＢ１’、Ｂ２’…及びデジタル署名７５を取り込む。さらに、処理モジュール３２０が公開鍵７６を用いてデジタル署名７５を復号し、信頼できる集合フィンガープリント７７を取得する。
【００８７】
工程Ｓ３１０：処理モジュール３２０が暗号化していない要求部分７０に対してフィンガープリント処理（第１フィンガープリント処理）を実行し、要求データフィンガープリント７１を得る。
【００８８】
具体的には、処理モジュール３２０は要求部分７０の複数のサブデータＡ１、Ａ２…のそれぞれに対してフィンガープリント処理（ハッシュ処理を含むことができる）を実行し、複数のサブデータフィンガープリントＡ１’、Ａ２’…（複数のハッシュ値など）を得て、且つ複数のサブデータフィンガープリントＡ１’、Ａ２’…を要求データフィンガープリント７１とする。
【００８９】
実施例では、要求部分７０は暗号化済みであり、先ず暗号化済みの要求部分７０に対して可逆暗号化処理に対応する復号処理を実行し、暗号化されていない要求部分７０を得てから、暗号化されていない要求部分７０に対してフィンガープリント処理を行うことができる。
【００９０】
工程Ｓ３１１：処理モジュール３２０が非要求データフィンガープリント７２及び要求データフィンガープリント７１に対してマージ処理を実行し、マージ集合フィンガープリント７４を得る。
【００９１】
実施例では、処理モジュール３２０が先ず要求データフィンガープリント７１の複数のサブデータフィンガープリントＡ１’、Ａ２’…及び非要求データフィンガープリント７２の複数のサブデータフィンガープリントＢ１’、Ｂ２’…を組み合わせて組み合わせデータ７３とし（全てのハッシュ値をマッチングするなど）、次に組み合わせデータ７３に対してマージ処理（ハッシュ処理を含むことができる）を実行し、マージ集合フィンガープリント７４を得る。マージ集合フィンガープリント７４は、組み合わせデータ７３を検証するのに用いられる。
【００９２】
なお、第１フィンガープリント処理、第２フィンガープリント処理、第３フィンガープリント処理及びマージ処理は、同じか又は異なる暗号化処理でよいが、不可逆暗号化処理でなければならない。
【００９３】
実施例では、第１フィンガープリント処理、第２フィンガープリント処理、第３フィンガープリント処理及びマージ処理は、ハッシュ処理を含む。
【００９４】
工程Ｓ３１２：処理モジュール３２０が、マージ集合フィンガープリント７４が信頼できる集合フィンガープリント７７と一致するか否かを判断する（例えば２組のハッシュ値が同じである）。
【００９５】
マージ集合フィンガープリント７４が信頼できる集合フィンガープリント７７と一致する場合、工程Ｓ３１３を実行する。否ならば、処理モジュール３２０が工程Ｓ３１４を実行する。
【００９６】
工程Ｓ３１３：処理モジュール３２０が受信したデータクラスタ４０の要求部分５０を正確且つ完全であると判定し、さらにマンマシンインターフェイス３２４を介してデータコレクト指示を送信することができる。
【００９７】
工程Ｓ３１４：処理モジュール３２０が受信したデータクラスタ４０の要求部分５０を不正確且つ不完全であると判定し、さらにマンマシンインターフェイス３２４を介してデータエラー指示を送信することができる。
【００９８】
なお、上述では私有鍵により暗号化を行ってデジタル署名を生成し、次に公開鍵を用いてデジタル署名を復号すると説明したが、これに限定されない。実施例では、公開鍵により暗号化を行ってデジタル署名を生成し、私有鍵を用いてデジタル署名を復号することもできる。
【００９９】
これによって、本発明は集合検証技術を用いて部分データの検証を達成することができる。
【０１００】
上述は本発明の好ましい具体的な実施例に過ぎず、本発明の特許請求の範囲を限定するものではなく、本発明の内容を応用した同等の効果が得られる改変は、いずれも同じ原理として本発明の範囲内に包含されることを理解されたい。
【符号の説明】
【０１０１】
１  データ検証システム、１０  送信側コンピュータ機器、１００  処理モジュール、１０１  通信モジュール、１０２  ネットワーク接続モジュール、１０３  映像キャプチャモジュール、１０４  マンマシンインターフェイス、１０５  ストレージモジュール、１０５０  コンピュータプログラム、２０  身分証明書、２００  演算ユニット、２０１  写真、２０２  フィールドデータ、２０３  機械可読コード、２１  画像、３０  ネットワーク、３１  クラウドサーバ、３２  要求側コンピュータ機器、３２０  処理モジュール、３２２  ネットワーク接続モジュール、３２４  マンマシンインターフェイス、３２５  ストレージモジュール、３２５０  コンピュータプログラム、３３  ブロックチェーン、４０〜４４，５０〜５４  データ、６０  身分証明書、６１〜６７，７０〜７７  データ、Ｓ１００〜Ｓ１０９  第１伝送及び検証工程、Ｓ２０〜Ｓ２３  取り込み工程、Ｓ３００〜Ｓ３１４  第２伝送及び検証工程、Ｓ４０〜Ｓ４２  デジタル署名取得工程、Ｓ５０〜Ｓ５１  フィンガープリント処理工程。
【図１】
2020198611.tif 000003
【図２】
2020198611.tif 000004
【図３】
2020198611.tif 000005
【図４】
2020198611.tif 000006
【図５】
2020198611.tif 000007
【図６Ａ】
2020198611.tif 000008
【図６Ｂ】
2020198611.tif 000009
【図７Ａ】
2020198611.tif 000010
【図７Ｂ】
2020198611.tif 000011
【外国語明細書】
2020198611.tif 000012
2020198611.tif 000013
2020198611.tif 000014
2020198611.tif 000015
2020198611.tif 000016
2020198611.tif 000017
2020198611.tif 000018
2020198611.tif 000019
2020198611.tif 000020
2020198611.tif 000021
2020198611.tif 000022
2020198611.tif 000023
2020198611.tif 000024
2020198611.tif 000025
2020198611.tif 000026
2020198611.tif 000027
2020198611.tif 000028
2020198611.tif 000029
2020198611.tif 000030
2020198611.tif 000031
2020198611.tif 000032
2020198611.tif 000033
2020198611.tif 000034
2020198611.tif 000035
2020198611.tif 000036
2020198611.tif 000037
2020198611.tif 000038
2020198611.tif 000039
2020198611.tif 000040