(57)【要約】【課題】本発明は本人認証方法とシステム及び計算装置と記憶媒体を開示する。【解決手段】本人認証方法は、秘密鍵がユーザに所有されることを認証局に証明するのに用いられ、前記ユーザにおいて、該方法は、前記ユーザの秘密鍵セットから一定数の秘密鍵を選択することと、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値を前記認証局に送信することと、前記認証局が第１ハッシュ値サブセットに関する通知を受信した後、前記第１ハッシュ値サブセットに対応する秘密鍵を第１秘密鍵サブセットとして前記認証局に送信することと、を含み、前記第１ハッシュ値サブセットは前記認証局が前記取得したハッシュ値から選択したものである。本開示の内容の技術的解決手段を採用することによりゼロ知識証明を実現することができる。【選択図】図１
2020537860.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが秘密鍵を所有していることを認証局に証明するための本人認証方法であって、
前記ユーザにおいて、該方法は、
前記ユーザの秘密鍵セットから一定数の秘密鍵を選択することと、
前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値を前記認証局に送信することと、
前記認証局から第１ハッシュ値サブセットに関する通知を受信した後、前記第１ハッシュ値サブセットに対応する秘密鍵を第１秘密鍵サブセットとして前記認証局に送信することと、
を含み、
前記第１ハッシュ値サブセットは前記認証局が前記取得したハッシュ値から選択したものである、
ことを特徴とする本人認証方法。
【請求項２】
さらに、前記認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、前記認証局により署名されたハッシュ値に対応する秘密鍵を用いてファイルに署名することを含む、ことを特徴とする請求項１に記載の本人認証方法。
【請求項３】
前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求めることは、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との組合せに対してハッシュを求めることをさらに含む、ことを特徴とする請求項１に記載の本人認証方法。
【請求項４】
前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求めることは、前記一定数の秘密鍵における各秘密鍵、前記ユーザのユーザ識別名と前記各秘密鍵の公開時間の組合せに対してハッシュを求めることをさらに含む、ことを特徴とする請求項１に記載の本人認証方法。
【請求項５】
前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択することと、
前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名と前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求めることと、
取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値を、自身に公開された情報が改竄されないように確保可能な公共メディアに載せることと、
前記認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、かつ前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値が前記公共メディアに存在してから、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を解除することと、
をさらに含む、
ことを特徴とする請求項１に記載の本人認証方法。
【請求項６】
前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択することと、
前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名、及び前記第１秘密鍵の公開時間と前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求めることと、
取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値を、自身に公開された情報が改竄されないように確保可能な公共メディアに載せることと、
前記認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、かつ前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値が前記公共メディアに存在してから、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を解除することと、
をさらに含む、
ことを特徴とする請求項１に記載の本人認証方法。
【請求項７】
前記公共メディアはブロックチェーンである、ことを特徴とする請求項５又は６に記載の本人認証方法。
【請求項８】
前記公共メディアは信頼できる第三者により操作される電子掲示板である、ことを特徴とする請求項５又は６に記載の本人認証方法。
【請求項９】
前記公共メディアは書き込み専用データベースであり、前記書き込み専用データベースに書き込まれる各データブロックは撤回できなく、全てのユーザの間で合意されている、ことを特徴とする請求項５又は６に記載の本人認証方法。
【請求項１０】
前記第１ハッシュ値サブセットに含まれたハッシュ値の数は前記一定数の秘密鍵に含まれた秘密鍵の数の半分である、ことを特徴とする請求項１に記載の本人認証方法。
【請求項１１】
ユーザが秘密鍵を所有していることを認証局に証明するための本人認証方法であって、
前記認証局において、該方法は、
前記ユーザから一定数の秘密鍵に対応するハッシュ値を受信することと、
前記ハッシュ値から第１ハッシュ値サブセットを選択し前記ユーザに通知することと、
前記ユーザから受信した第１秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値と前記第１ハッシュ値サブセットに前記秘密鍵に対応するハッシュ値とを比較することと、
全ての取得したハッシュ値がいずれも前記第１ハッシュ値サブセットにおけるハッシュ値と一致する場合、前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名することと、
を含む、
ことを特徴とする本人認証方法。
【請求項１２】
前記ユーザから受信した第２秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値と前記ユーザから受信したハッシュ値における前記秘密鍵に対応するハッシュ値とを比較することと、
前記第２秘密鍵サブセットにおける全ての秘密鍵に対して求めた全てのハッシュ値がいずれも前記ユーザから受信したハッシュ値と一致する場合、第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名することと、
をさらに含み、
前記第２秘密鍵サブセットは、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を含む、
ことを特徴とする請求項１１に記載の本人認証方法。
【請求項１３】
前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵と前記ユーザのユーザ識別名との組合せを含み、前記第１秘密鍵と前記ユーザ識別名との対応関係は、前記第１秘密鍵と前記ユーザのユーザ識別名との組合せを含む、ことを特徴とする請求項１２に記載の本人認証方法。
【請求項１４】
前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵、前記ユーザのユーザ識別名、及び前記秘密鍵の公開時間の組合せを含み、前記第１秘密鍵と前記ユーザ識別名との対応関係は、前記第１秘密鍵、前記ユーザのユーザ識別名、及び前記第１秘密鍵の公開時間の組合せを含む、ことを特徴とする請求項１２に記載の本人認証方法。
【請求項１５】
クライアントと認証局とを含む本人認証システムであって、
ユーザは前記クライアントを介して秘密鍵が前記ユーザに所有されることを前記認証局に証明し、
前記クライアントは前記ユーザの秘密鍵セットから一定数の秘密鍵を選択し、
前記クライアントは、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値を前記認証局に送信し、
前記認証局は、取得したハッシュ値から第１ハッシュ値サブセットを選択するとともに前記クライアントに通知し、
前記クライアントは、前記第１ハッシュ値サブセットに対応する秘密鍵を第１秘密鍵サブセットとして前記認証局に送信し、
前記認証局は、前記第１秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と第１ハッシュ値サブセットにおけるハッシュ値とを比較し、
全ての取得したハッシュ値がいずれも前記第１ハッシュ値サブセットにおけるハッシュ値と一致する場合、前記認証局は前記クライアントから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名する、
ことを特徴とする本人認証システム。
【請求項１６】
前記ユーザは、前記クライアントを介して前記認証局により署名されたハッシュ値に対応する秘密鍵を用いてファイルに署名する、ことを特徴とする請求項１５に記載の本人認証システム。
【請求項１７】
前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵と前記ユーザのユーザ識別名との組合せをさらに含む、ことを特徴とする請求項１５に記載の本人認証システム。
【請求項１８】
前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵、前記ユーザのユーザ識別名、及び前記秘密鍵の公開時間の組合せをさらに含む、ことを特徴とする請求項１５に記載の本人認証システム。
【請求項１９】
自身に公開された情報が改竄されないように確保可能な公共メディアをさらに含み、
前記クライアントはさらに前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択し、
前記クライアントは前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名及び前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求め、
前記クライアントは取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値を前記公共メディアに載せ、
前記クライアントは前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を第２秘密鍵サブセットとして解除し、
前記認証局は前記第２秘密鍵サブセットにおける各秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と前記クライアントから受信した前記秘密鍵に対応するハッシュ値とを比較し、
前記第２秘密鍵サブセットにおける全ての秘密鍵に対して求めた全てのハッシュ値がいずれも前記クライアントから受信したハッシュ値と一致する場合、前記認証局は前記第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名する、
ことを特徴とする請求項１５に記載の本人認証システム。
【請求項２０】
自身に公開された情報が改竄されないように確保可能な公共メディアをさらに含み、
前記クライアントはさらに前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択し、
前記クライアントは前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名、前記第１秘密鍵の公開時間及び前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求め、
前記クライアントは取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値を前記公共メディアに載せ、
前記クライアントは前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を第２秘密鍵サブセットとして解除し、
前記認証局は前記第２秘密鍵サブセットにおける各秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と前記クライアントから受信した前記秘密鍵に対応するハッシュ値とを比較し、
前記第２秘密鍵サブセットにおける全ての秘密鍵に対して求めた全てのハッシュ値がいずれも前記クライアントから受信したハッシュ値と一致する場合、前記認証局は前記第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名する、
ことを特徴とする請求項１５に記載の本人認証システム。
【請求項２１】
前記公共メディアはブロックチェーンである、ことを特徴とする請求項１９又は２０に記載の本人認証システム。
【請求項２２】
前記公共メディアは信頼できる第三者により操作される電子掲示板である、ことを特徴とする請求項１９又は２０に記載の本人認証システム。
【請求項２３】
前記公共メディアは書き込み専用データベースであり、前記書き込み専用データベースに書き込まれた各データブロックは撤回できなく、全てのユーザの間で合意されている、ことを特徴とする請求項１９又は２０に記載の本人認証システム。
【請求項２４】
前記第１ハッシュ値サブセットに含まれたハッシュ値の数は前記一定数の秘密鍵に含まれた秘密鍵の数の半分である、ことを特徴とする請求項１５に記載の本人認証システム。
【請求項２５】
プロセッサとメモリとを含む計算装置であって、
前記メモリにコンピュータプログラムが記憶され、前記コンピュータプログラムが前記プロセッサにより実行される時、請求項１乃至１０及び／又は請求項１１乃至１４の何れか１項に記載の本人認証方法を実現する、
ことを特徴とする計算装置。
【請求項２６】
コンピュータプログラムが記憶されている機器の読み取り可能な記憶媒体であって、
前記コンピュータプログラムがプロセッサにより実行される時、請求項１乃至１０及び／又は請求項１１乃至１４の何れか１項に記載の本人認証方法を実現する、
ことを特徴とする機器の読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は暗号化技術分野に関し、特に本人認証方法とシステム及び計算装置と記憶媒体に関する。
【背景技術】
【０００２】
公開鍵基盤（ＰＫＩ、Ｐｕｂｌｉｃ  Ｋｅｙ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ）は、公開鍵管理をサポートし、認証、暗号化、インテグリティ及び追及可能サービスをサポートすることができる基盤である。１つの簡単なＰＫＩシステムは、認証局（ＣＡ、Ｃｅｒｔｉｆｉｃａｔｅ  Ａｕｔｈｏｒｉｔｙ）、登録局（ＲＡ、Ｒｅｇｉｓｔｅｒ  Ａｕｔｈｏｒｉｔｙ）及び対応するＰＫＩリポジトリを含み、ＣＡは証書を署名し管理するのに用いられ、ＲＡはＣＡの一部としてもよく、独立して存在してもよいが、その主な機能は、本人審査確認、証明書失効リスト（ＣＲＬ、Ｃｅｒｔｉｆｉｃａｔｅ  Ｒｅｖｏｃａｔｉｏｎ  Ｌｉｓｔ）管理、秘密鍵作成及び秘密鍵ペアのバックアップ等を含み、ＰＫＩリポジトリはＬＤＡＰ（Ｌｉｇｈｔｗｅｉｇｈｔ  Ｄｉｒｅｃｔｏｒｙ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ、ライトウェイトディレクトリアクセスプロトコル）ディレクトリサーバと普通のデータベースを含むことができ、ユーザの申請、証書、秘密鍵、ＣＲＬ及びログ等の情報を記憶し管理するのに用いられ、また一定の照会機能を提供する。
【０００３】
時刻付き鍵基盤（ＴＫＩ、Ｔｉｍｅｄ  Ｋｅｙ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ）はＰＫＩと比べて、コア原理に時刻がより多く作成され、同様に公開鍵管理をサポートし、さらに認証、暗号化、インテグリティ及び追及可能サービスをサポートすることができる。ＴＫＩにおいて、ブロックチェーン等のような公共メディアはＰＫＩにおけるＣＡの役割を果たすことができ、前記公共メディアはその上に公開された情報が改竄されないように確保することができる。
【０００４】
ＰＫＩやＴＫＩに関わらず、ユーザがデジタル証明書を申請しなければならない場合、ＣＡ等にその真実性を証明し、即ち本人認証をしなければならない。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記技術的問題に鑑みて、本開示の内容は、ゼロ知識証明を実現することができる本人認証方法とシステム及び計算装置と記憶媒体を提供する。
【課題を解決するための手段】
【０００６】
本開示の内容の一態様によれば、秘密鍵がユーザに所有されることを認証局に証明するための本人認証方法を提供し、前記ユーザにおいて、該方法は、前記ユーザの秘密鍵セットから一定数の秘密鍵を選択することと、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値を前記認証局に送信することと、前記認証局から第１ハッシュ値サブセットに関する通知を受信した後、前記第１ハッシュ値サブセットに対応する秘密鍵を第１秘密鍵サブセットとして前記認証局に送信することと、を含み、前記第１ハッシュ値サブセットは前記認証局が前記取得したハッシュ値から選択したものである。
【０００７】
いくつかの実施形態において、該本人認証方法は、前記認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、前記認証局により署名されたハッシュ値に対応する秘密鍵を用いてファイルに署名することをさらに含むことができる。
【０００８】
いくつかの実施形態において、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求めることは、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との組合せに対してハッシュを求めることをさらに含むことができる。
【０００９】
いくつかの実施形態において、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求めることは、前記一定数の秘密鍵における各秘密鍵、前記ユーザのユーザ識別名と前記各秘密鍵の公開時間の組合せとに対してハッシュを求めることをさらに含むことができる。
【００１０】
いくつかの実施形態において、該本人認証方法は、前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択することと、前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名と前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求めることと、取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値とを、自身に公開された情報が改竄されないように確保可能な公共メディアに載せることと、前記認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、かつ前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値が前記公共メディアに存在してから、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を解除することと、をさらに含むことができる。
【００１１】
いくつかの実施形態において、該本人認証方法は、前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択することと、前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名、前記第１秘密鍵の公開時間と前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求めることと、取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値とを、自身に公開された情報が改竄されないように確保可能な公共メディアに載せることと、前記認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、かつ前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値とが前記公共メディアに存在してから、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を解除することと、をさらに含むことがでる。
【００１２】
いくつかの実施形態において、前記公共メディアはブロックチェーンであることができる。
【００１３】
いくつかの実施形態において、前記公共メディアは信頼できる第三者により操作される電子掲示板であることができる。
【００１４】
いくつかの実施形態において、前記公共メディアは書き込み専用データベースであることができ、前記書き込み専用データベースに書き込まれた各データブロックは撤回できなく、全てのユーザの間で合意されている。
【００１５】
いくつかの実施形態において、前記第１ハッシュ値サブセットに含まれたハッシュ値の数は前記一定数の秘密鍵に含まれた秘密鍵の数の半分であることができる。
【００１６】
本開示の内容の別の態様によれば、さらに、秘密鍵がユーザに所有されることを認証局に証明するための本人認証方法を提供し、前記認証局において、該方法は、前記ユーザから一定数の秘密鍵に対応するハッシュ値を受信することと、前記ハッシュ値から第１ハッシュ値サブセットを選択し前記ユーザに通知することと、前記ユーザから受信した第１秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値と前記第１ハッシュ値サブセットにおける前記秘密鍵に対応するハッシュ値とを比較することと、全ての取得したハッシュ値がいずれも前記第１ハッシュ値サブセットにおけるハッシュ値と一致する場合、前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名することと、を含む。
【００１７】
いくつかの実施形態において、該本人認証方法は、さらに、前記ユーザから受信した第２秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値と前記ユーザから受信したハッシュ値における前記秘密鍵に対応するハッシュ値とを比較することと、前記第２秘密鍵サブセットにおける全ての秘密鍵に対して求めた全てのハッシュ値がいずれも前記ユーザから受信したハッシュ値と一致する場合、第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名することと、を含み、前記第２秘密鍵サブセットは、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を含む。
【００１８】
いくつかの実施形態において、前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵と前記ユーザのユーザ識別名との組合せを含むことができ、前記第１秘密鍵と前記ユーザ識別名との対応関係は、前記第１秘密鍵と前記ユーザのユーザ識別名との組合せを含むことができる。
【００１９】
いくつかの実施形態において、前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵、前記ユーザのユーザ識別名及び前記秘密鍵の公開時間の組合せを含むことができ、前記第１秘密鍵と前記ユーザ識別名との対応関係は、前記第１秘密鍵、前記ユーザのユーザ識別名、及び前記第１秘密鍵の公開時間の組合せを含むことができる。
【００２０】
本開示の内容の別の態様によれば、さらに、クライアントと認証局とを含む本人認証システムを提供し、ユーザは前記クライアントを介して秘密鍵が前記ユーザに所有されていることを前記認証局に証明し、前記クライアントは前記ユーザの秘密鍵セットから一定数の秘密鍵を選択し、前記クライアントは前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値を前記認証局に送信し、前記認証局は取得したハッシュ値から第１ハッシュ値サブセットを選択し前記クライアントに通知し、前記クライアントは前記第１ハッシュ値サブセットに対応する秘密鍵を第１秘密鍵サブセットとして前記認証局に送信し、前記認証局は前記第１秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と前記第１ハッシュ値サブセットにおけるハッシュ値とを比較し、全ての取得したハッシュ値がいずれも前記第１ハッシュ値サブセットにおけるハッシュ値と一致する場合、前記認証局は前記クライアントから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名する。
【００２１】
いくつかの実施形態において、前記ユーザは前記クライアントを介し前記認証局により署名されたハッシュ値に対応する秘密鍵を用いてファイルに署名することができる。
【００２２】
いくつかの実施形態において、前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵と前記ユーザのユーザ識別名との組合せをさらに含むことができる。
【００２３】
いくつかの実施形態において、前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵、前記ユーザのユーザ識別名、及び前記秘密鍵の公開時間の組合せをさらに含むことができる。
【００２４】
いくつかの実施形態において、該本人認証システムは、自身に公開された情報が改竄されないように確保可能な公共メディアをさらに含むことができ、前記クライアントは、さらに前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択し、前記クライアントは前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名と前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求め、前記クライアントは取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値とを前記公共メディアに載せ、前記クライアントは前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を第２秘密鍵サブセットとして解除し、前記認証局は前記第２秘密鍵サブセットにおける各秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と前記クライアントから受信した前記秘密鍵に対応するハッシュ値とを比較し、前記第２秘密鍵サブセットにおける全ての秘密鍵に対して求めた全てのハッシュ値がいずれも前記クライアントから受信したハッシュ値と一致する場合、前記認証局は前記第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名する。
【００２５】
いくつかの実施形態において、該本人認証システムは、自身に公開された情報が改竄されないように確保可能な公共メディアをさらに含むことができ、前記クライアントは、さらに前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択し、前記クライアントは前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名、前記第１秘密鍵の公開時間と前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求め、前記クライアントは取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値を前記公共メディアに載せ、前記クライアントは前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を第２秘密鍵サブセットとして解除し、前記認証局は前記第２秘密鍵サブセットにおける各秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と前記クライアントから受信した前記秘密鍵に対応するハッシュ値とを比較し、前記第２秘密鍵サブセットにおける全ての秘密鍵に対して求めた全てのハッシュ値がいずれも前記クライアントから受信したハッシュ値と一致する場合、前記認証局は、前記第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名する。
【００２６】
いくつかの実施形態において、前記公共メディアはブロックチェーンであることができる。
【００２７】
いくつかの実施形態において、前記公共メディアは信頼できる第三者により操作する電子掲示板であることができる。
【００２８】
いくつかの実施形態において、前記公共メディアは書き込み専用データベースであることができ、前記書き込み専用データベースに書き込まれた各データブロックは撤回できなく、全てのユーザの間で合意されている。
【００２９】
いくつかの実施形態において、前記第１ハッシュ値サブセットに含まれたハッシュ値の数は前記一定数の秘密鍵に含まれた秘密鍵の数の半分であることができる。
【００３０】
本開示の内容の別の態様によれば、プロセッサとメモリとを含む計算装置をさらに提供し、前記メモリにはコンピュータプログラムが記憶され、前記コンピュータプログラムが前記プロセッサにより実行される時、上記の本人認証方法を実現する。
【００３１】
本開示の内容の別の態様によれば、さらにコンピュータプログラムが記憶されている機器の読み取り可能な記憶媒体を提供し、前記コンピュータプログラムがプロセッサにより実行される時、上記の本人認証方法を実現する。
【発明の効果】
【００３２】
従来技術に比べて、本開示の内容の好適な効果は以下の通りである。
【００３３】
まず、ユーザは本開示の内容の技術的解決手段を採用し自分が秘密鍵の本当の所有者であることを認証局に証明することができ、具体的に、ユーザはいくつかの秘密鍵（例えば第１秘密鍵サブセット）を犠牲することにより、該ユーザが別の部分の秘密鍵（例えば第２秘密鍵サブセット）の本当の所有者であることを認証局に証明する。証明過程において、ユーザは認証局に前記別の部分の秘密鍵を提供することなく、ゼロ知識証明を実現している。
【００３４】
次に、認証局は受信したＭ個のハッシュ値からＮ個選択し、攻撃者にとって、このＮ個のハッシュ値に対応する秘密鍵の組合せを当てることができる概率はｍａｘ｛２−ｎＮ、２−ｍＮ｝であり、ただし、ｎは各ハッシュ値のビット数であり、ｍは各秘密鍵のビット数であり、よって本開示の内容の技術的解決手段を採用することにより量子計算による攻撃に耐えることができる。
【図面の簡単な説明】
【００３５】
添付の特許請求の範囲に本発明の新しい特徴が具体的に記載されている。本発明の原理を利用した例示的な実施形態について行った以下の詳細な説明及び図面を参照することにより、本発明の特徴及び利点がさらに理解しやすくなる。図面は実施形態の目的を示すためのものに過ぎず、本発明を限定するためのものと理解されてはならない。全ての図面において、同じ図面記号により同じ要素を表示し、図面において、
【００３６】
【図１】本開示の内容の例示的な実施形態による本人認証方法のユーザにおけるフローチャートを示す。
【００３７】
【図２】本開示の内容の例示的な実施形態による本人認証方法のユーザにおける更なるフローチャートを示す。
【００３８】
【図３】本開示の内容の例示的な実施形態による本人認証方法のユーザにおけるもう一つの更なるフローチャートを示す。
【００３９】
【図４】本開示の内容の例示的な実施形態による本人認証方法の認証局におけるフローチャートを示す。
【００４０】
【図５】本開示の内容の例示的な実施形態による本人認証システムを示す図である。
【００４１】
【図６】図５に示されたクライアント、認証局と公共メディアの間の相互作用図を示す。
【００４２】
【図７】本開示の内容の例示的な実施形態による計算装置を示す図である。
【発明を実施するための形態】
【００４３】
以下、図面を参照して本開示の内容の例示的な実施形態をより詳細に説明する。図面に本開示の内容の例示的な実施形態を示したが、本開示の内容はここに記載の実施形態により限定されず、様々な形態で実現することができることを理解すべきである。逆に、これらの実施形態を提供する目的は、より明白に本開示の内容を理解させるとともに、本開示の内容の範囲を当業者に完全に伝達することができるようにするためである。以下の詳細な説明において、いずれの内容も如何なる特定のコンポーネント、特徴、又はステップが本発明にとって不可欠なものであることを示すためのものではない。当業者であれば、本開示の内容から逸脱しない範囲内で様々な特徴又はステップが互いに代替又は結合されることを理解できるだろう。
【００４４】
ゼロ知識証明（ｚｅｒｏ−ｋｎｏｗｌｅｄｇｅ  ｐｒｏｏｆ）はＳ．Ｇｏｌｄｗａｓｓｅｒらが２０世紀８０年代に初めて提出したものである。ゼロ知識証明は、実質的には、両者又は両者以上に関するプロトコルであり、即ち、両者又は両者以上が１つのタスクを遂行するために必要な一連のステップである。証明者は検証者に対し、自分があるメッセージを知り又は所有していることを証明して信じらせるが、証明過程に検証者に証明されるメッセージに関する如何なる情報を漏らしてはならない。ゼロ知識証明が暗号化において非常に有用であることは大量の事実により証明されている。
【００４５】
図１に示すように、本開示の内容の例示的な実施形態による本人認証方法のユーザにおけるフローチャートを示し、該本人認証方法は、該ユーザが秘密鍵を所有し、即ち該ユーザが秘密鍵の本当の所有者であることを認証局に証明する。図１において、本人認証方法は以下のステップを含むことができる。
【００４６】
Ｓ１０１において、前記ユーザの秘密鍵セットから一定数の秘密鍵を選択する。
【００４７】
Ｓ１０２において、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値を前記認証局に送信する。
【００４８】
Ｓ１０３において、前記認証局が第１ハッシュ値サブセットに関する通知を受信した後、前記第１ハッシュ値サブセットに対応する秘密鍵を第１秘密鍵サブセットとして前記認証局に送信する。ただし、前記第１ハッシュ値サブセットは前記認証局が取得した前記ハッシュ値から選択したものである。
【００４９】
上記から分かるように、ユーザが認証局に該ユーザが秘密鍵を所有することを証明しようとする場合、まずは秘密鍵セットから一定数の秘密鍵を選択し、その後、そのうちの各秘密鍵と該ユーザのユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値を認証局に送信し、即ち、認証局に送信したものは秘密鍵自体ではなく、ハッシュ値である。認証局が第１ハッシュ値サブセットに関する通知を受信した後、第１ハッシュ値サブセットに対応する秘密鍵を第１秘密鍵サブセットとして認証局に送信するが、第１ハッシュ値サブセットは認証局がその受信したハッシュ値から選択したものであるため、第１秘密鍵サブセットは前記一定数の秘密鍵のサブセットである。認証局は第１秘密鍵サブセットにおける全ての秘密鍵を受信した後、そのうちの各秘密鍵と該ユーザのユーザ識別名との対応関係に対してハッシュを求め、その後、取得したハッシュ値と第１ハッシュ値サブセットにおけるハッシュ値とを比較し、等しい場合、即ち一致する場合、該ユーザが前記一定数の秘密鍵の本当の所有者であることが明らかとなる。認証局はユーザから受信した第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名することができ、このように、ユーザは前記一定数の秘密鍵における第１秘密鍵サブセット以外の全ての秘密鍵を使用することができる。本開示の内容の例示的な実施形態による本人認証方法において、ユーザは前記一定数の秘密鍵における第１秘密鍵サブセット以外の全ての秘密鍵を認証局に提供していないが、前記一定数の秘密鍵における第１秘密鍵サブセット以外の全ての秘密鍵がいずれも該ユーザの所有するものであることを認証局に証明したため、前記一定数の秘密鍵における第１秘密鍵サブセット以外の全ての秘密鍵に対してゼロ知識証明を実現した。この場合、ユーザが第１ハッシュ値サブセットに対応するこれらの秘密鍵、即ち第１秘密鍵サブセットを犠牲したことに相当する。ここで、ユーザは証明者に相当し、認証局は検証者に相当する。
【００５０】
また、図１に示すように、本開示の内容の例示的な実施形態による本人認証方法は、さらに、認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、前記認証局により署名されたハッシュ値に対応する秘密鍵を用いてファイルに署名するステップＳ１０４を含むことができる。言い換えれば、認証局はユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名し、即ち認証局はユーザの真実性を確認したことが明らかとなる。よってユーザは認証局により署名されたハッシュ値に対応する秘密鍵を使用することができる。
【００５１】
いくつかの実施形態において、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求めることは、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との組合せに対してハッシュを求めることをさらに含むことができる。別のいくつかの実施形態において、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求めることは、前記一定数の秘密鍵における各秘密鍵、前記ユーザのユーザ識別名と前記各秘密鍵の公開時間の組合せに対してハッシュを求めることをさらに含むことができる。ここでの公開時間は前記各秘密鍵が公開された時間又は解除された時間を指す。秘密鍵とユーザのユーザ識別名との対応関係が秘密鍵の公開時間に関わるか否かに対しては、実際の状況によって決定することができ、秘密鍵に公開時間が付されている場合、該対応関係は公開時間に関わる。当業者であれば該分野の既知又は将来的に知りえる如何なる方式で秘密鍵とユーザのユーザ識別名との対応関係を実現することができ、本発明はそれを限定しないことを理解できるだろう。また、秘密鍵とユーザ識別名との組合せ及び／又は秘密鍵、ユーザ識別名と秘密鍵の公開時間の組合せに対して、それらを様々な順番で連結して実現してもよく、該分野の既知又は将来的に知りえる如何なる方式で実現してもよく、本発明はそれを限定しないことを理解できるだろう。
【００５２】
図２に示すように、本開示の内容の例示的な実施形態による本人認証方法のユーザにおける更なるフローチャートを示す。図２において、本開示の内容の例示的な実施形態による本人認証方法は、さらに以下のステップを含むことができる。
【００５３】
Ｓ２０１において、前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択する。
【００５４】
Ｓ２０２において、前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名と前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求める。
【００５５】
Ｓ２０３において、取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値を公共メディアに載せる。ただし、前記公共メディアはその上に公開された情報が改竄されないように確保することができる。
【００５６】
Ｓ２０４において、前記認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、かつ前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値とが前記公共メディアに存在してから、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を解除する。
【００５７】
上記より分かるように、秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択し、第１秘密鍵は任意に選択することができる該第１秘密鍵は、ユーザの秘密鍵セットにあるものであるが、一定数の秘密鍵にあるものではない。これは、ユーザが自分が第１秘密鍵を所有していることを認証局に証明しようとすることが明らかとなる。次に、第１秘密鍵とユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値、ユーザ識別名、及び前記一定数の秘密鍵における第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求めた後、取得した前記組合せのハッシュ値を公共メディアに載せる。認証局に直接送信しても当然よい。公共メディアは、その上に公開された情報が改竄されないように保証することができるため、前記組合せのハッシュ値の真実性を保証することができる。認証局は前記ユーザから受信した第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、かつ前記組合せのハッシュ値が公共メディアに存在してから、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を解除する。これらの秘密鍵を解除する目的は、これらの秘密鍵を用いてユーザの真実性を認証局にさらに証明することにより、本当の第１秘密鍵を認証局に提供することなく該ユーザが第１秘密鍵の本当の所有者であることを認証局に証明できるようにするためである。第１秘密鍵は秘密鍵セットにおける前記一定数の秘密鍵以外の全ての秘密鍵のうちの１つであり、秘密鍵セットにおける前記一定数の秘密鍵以外のその他の秘密鍵はいずれも第１秘密鍵と類似する方式によって該ユーザがこれらのその他の秘密鍵を知り、即ちこれらのその他の秘密鍵の本当の所有者であることを認証局に証明することができることを理解できるだろう。
【００５８】
図３に示すように、本開示の内容の例示的な実施形態による本人認証方法のユーザにおけるもう一つの更なるフローチャートを示す。図３において、本開示の内容の例示的な実施形態による本人認証方法は、さらに以下のステップを含む。
【００５９】
Ｓ３０１において、前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択する。
【００６０】
Ｓ３０２において、前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名、前記第１秘密鍵の公開時間と前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求める。
【００６１】
Ｓ３０３において、取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値とを公共メディアに載せる。ただし、前記公共メディアはその上に公開された情報が改竄されないように確保することができる。
【００６２】
Ｓ３０４において、前記認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、かつ前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値とが前記公共メディアに存在してから、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を解除する。
【００６３】
該例示的な実施形態も第１秘密鍵が該ユーザに所有されることを認証局に証明するのに用いられる。図２に記載の例示的な実施形態との相違点は、第１秘密鍵の公開時間を導入したことであり、これは秘密鍵の明確な公開時間がある場合に対することである。簡潔にするために、該例示的な実施形態と図２に記載の例示的な実施形態との共通点についてはここでその説明を省略する。公開時間を導入するか否か及び／又はその他の要素を導入するか否かは実際の状況によって決定することができ、本発明はそれを限定しない。
【００６４】
いくつかの実施形態において、公共メディアはブロックチェーンであることができる。周知のように、ブロックチェーンはデータを一連のブロック方式で時系列順に接続して形成されたチェーン式データ構造であり、さらに、暗号化方式でデータの改竄できないことと偽造できないこととを保証する分散型台帳である。ブロックチェーンは、ハッシュと署名等のような暗号化技術及びコンセンサスアルゴリズムを利用して信頼メカニズムを構築することにより、否認、改竄及び詐欺行為のコストを極大化し、データが改竄できないことと偽造できないこととを保証する。ブロックチェーンは、例えば、ビットコイン（ｂｉｔｃｏｉｎ）、イーサリアム（Ｅｔｈｅｒｅｕｍ）等の該分野に既知又は将来的に知りえる如何なる方式で実現できることを認識することができる。
【００６５】
別のいくつかの実施形態において、公共メディアは、信頼できる第三者（ＴＴＰ、ｔｒｕｓｔｅｄ  ｔｈｉｒｄ  ｐａｒｔｙ）によって操作される電子掲示板システム（ＢＢＳ、ｂｕｌｌｅｔｉｎ  ｂｏａｒｄ  ｓｙｓｔｅｍ）であることができ、つまり、信頼できる第三者によってＢＢＳに載せられたデータが改竄されないことを保証する。ただし、ＴＴＰは法律、行政、商業等のルートにより信頼できる資格を取得し、関連国家管理機関の監督を受け、様々なシステムのために維持管理サービスを提供する機構である。またいくつかの実施形態において、公共メディアは書き込み専用データベースであることができ、該書き込み専用データベースに書き込まれた各データブロックは撤回できなく、全てのユーザの間で合意されている。該書き込み専用データベースは、その中にデータを書き込むことのみできるデータベースである。合意されていることは、全てのユーザが書き込まれたデータの真実性を認め、そのデータが改竄されていないことを示す。公共メディアは該分野の既知の如何なる方式で実現することができ、改竄できないことを保証できればよく、本発明はそれを限定しないことを理解できるだろう。
【００６６】
いくつかの実施形態において、第１ハッシュ値サブセットに含まれたハッシュ値の数は前記一定数の秘密鍵に含まれた秘密鍵の数の半分である。仮に、ユーザがその秘密鍵セットからＭ個の秘密鍵を選択した場合、即ち一定数の秘密鍵にＭ個の秘密鍵が含まれる。認証局はユーザに送信されたハッシュ値からＭ／２個を選択し、言い換えると、認証局はこのＭ個の秘密鍵からＭ／２個の秘密鍵を選択し、ユーザにこのＭ／２個の秘密鍵を認証局に送信することを要求する。Ｍ個の秘密鍵からＭ／２個の秘密鍵を選択し、即ちＣ（Ｍ、Ｍ／２）であり、約（２Ｍ√２）／√（πＭ）種類の組合せである。ユーザにとって、認証局が選択した第１ハッシュ値サブセットに対応する秘密鍵の組合せを当てる確率は約１／（（２Ｍ√２）／√（πＭ））である。例えば、Ｍ＝１６であり、認証局がＭ／２＝８個の秘密鍵を選択した場合、ユーザがこの８個の秘密鍵の組合せを当てる確率は約１／１２８７０である。また、例えば、Ｍ＝３２であり、認証局がＭ／２＝１６個の秘密鍵を選択した場合、ユーザがこの１６個の秘密鍵の組合せを当てる確率は約１／６０１０８０３９０である。注意すべきことは、Ｍ／２が整数でない場合、Ｍ／２の整数を取る操作を用いるだけでよい。従って、ユーザが認証局の選択したハッシュ値組合せを当てられる確率は非常に低く、侵入者にとって、ハッシュ値に対応する秘密鍵の組合せを当てられる確率はさらに低い。従って、本開示の内容の技術的解決手段を採用することにより量子計算による攻撃に耐えることもできる。
【００６７】
別のいくつかの実施形態において、第１ハッシュ値サブセットに含まれたハッシュ値の数は前記一定数の秘密鍵に含まれた秘密鍵の数の１／３である。仮に、ユーザがその秘密鍵セットからＭ個の秘密鍵を選択し、即ち一定数の秘密鍵にＭ個の秘密鍵が含まれる場合、認証局はユーザに送信されたハッシュ値からＭ／３個を選択し、言い換えると、認証局はこのＭ個の秘密鍵からＭ／３個の秘密鍵を選択し、ユーザにこのＭ／３個の秘密鍵を認証局に送信することを要求する。Ｍ個の秘密鍵からＭ／３個の秘密鍵を選択し、即ちＣ（Ｍ、Ｍ／３）である。ユーザにとって、認証局が選択した第１サブセットに対応する秘密鍵の組合せを当てる確率は１／Ｃ（Ｍ、Ｍ／３）である。例えば、Ｍ＝１８であり、認証局がＭ／３＝６個の秘密鍵を選択した場合、ユーザがこの６個の秘密鍵の組合せを当てる確率は約１／２２２７６８である。また、例えば、Ｍ＝３０であり、認証局がＭ／３＝１０個の秘密鍵を選択する場合、ユーザがこの１０個の秘密鍵の組合せを当てる確率は約１／３００４５０１５である。注意すべきことは、Ｍ／３が整数でない場合、Ｍ／３の整数を取る操作を用いるだけでよい。第１ハッシュ値サブセットに含まれたハッシュ値の数が多いほど、ユーザがこれらのハッシュ値に対応する秘密鍵の組合せを当てる確率は低い。そのため、第１ハッシュ値サブセットに含まれたハッシュ値の数は実際の需要に応じて決定することができ、本発明はそれを限定しないことを理解できるだろう。
【００６８】
図４に示すように、本開示の内容の例示的な実施形態による本人認証方法の認証局におけるフローチャートを示し、ユーザが秘密鍵を所有していることを認証局に証明するのに用いられる。図４において、本開示の内容の例示的な実施形態による本人認証方法は、以下のステップを含むことができる。
【００６９】
Ｓ４０１において、前記ユーザから一定数の秘密鍵に対応するハッシュ値を受信する。
【００７０】
Ｓ４０２において、前記ハッシュ値から第１ハッシュ値サブセットを選択し前記ユーザに通知する。
【００７１】
Ｓ４０３において、前記ユーザから受信した第１秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値と前記第１ハッシュ値サブセットにおける前記秘密鍵に対応するハッシュ値とを比較する。
【００７２】
Ｓ４０４において、全ての取得したハッシュ値がいずれも前記第１ハッシュ値サブセットにおけるハッシュ値と一致する場合、前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名する。
【００７３】
上記から分かるように、認証局はユーザが一定数の秘密鍵に対応するハッシュ値を受信した後、その中から第１ハッシュ値サブセットを選択しユーザに通知することができる。一実施例において、認証局は第１ハッシュ値サブセットに含まれた各ハッシュ値のシーケンス番号をユーザに通知することができる。該シーケンス番号はハッシュ値が認証局により受信された順番によって確定でき、又はハッシュ値のインデックス等であり、本発明はそれを限定しない。別の実施例において、認証局は第１ハッシュ値サブセットに含まれた各ハッシュ値をユーザに通知することができる。当業者は如何なる通知形式を取ることができ、ユーザに認証局の選択を通知できればよいことを理解できるだろう。認証局は、ユーザが第１ハッシュ値サブセットに対応する第１秘密鍵サブセットを受信した後、第１秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と前記第１ハッシュ値サブセットにおける前記秘密鍵に対応するハッシュ値とを比較することができ、即ち、ユーザに送信された秘密鍵が前に送信された該秘密鍵に関するハッシュ値と対応するか否かを検証する。認証局がユーザの第１秘密鍵サブセットにおける全ての秘密鍵に対する計算によって取得した全てのハッシュ値がいずれも第１ハッシュ値サブセットにおけるハッシュ値と等しく又は一致する場合、前記一定数の秘密鍵が確実に前記ユーザに所有され、即ちユーザは本当であることが明らかとなる。この時、認証局はユーザから受信した第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名することができる。このように、該ユーザは一定数の秘密鍵における第１ハッシュ値サブセット以外の全てのハッシュ値に対応する秘密鍵を使用することができる。
【００７４】
また、図４に示すように、本開示の内容の例示的な実施形態による本人認証方法は、さらに以下のステップを含むことができる。
【００７５】
Ｓ４０５において、前記ユーザから受信した第２秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値と前記ユーザから受信したハッシュ値における前記秘密鍵に対応するハッシュ値とを比較し、前記第２秘密鍵サブセットは前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を含むことができる。
【００７６】
Ｓ４０６において、前記第２秘密鍵サブセットにおける全ての秘密鍵に対して求めた全てのハッシュ値がいずれも前記ユーザから受信したハッシュ値と一致する場合、第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名する。
【００７７】
本実施形態において、ユーザは該ユーザが第１秘密鍵を知っていることを認証局に証明し、即ち、該ユーザが第１秘密鍵の本当の所有者であることを証明し、ただし、第１秘密鍵はユーザがその秘密鍵セットから選択した前記一定数の秘密鍵以外の秘密鍵である。ユーザは第１秘密鍵とユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値、ユーザ識別名、及び前記一定数の秘密鍵における第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求め、その後、取得した前記組合せのハッシュ値を公共メディアに載せることができ、認証局に直接送信しても当然よい。認証局が前記ユーザから受信した第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、ユーザは前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を第２秘密鍵サブセットとして解除することができる。認証局は第２秘密鍵サブセットにおけるこれらの秘密鍵を見た後、以前ユーザから受信した第２秘密鍵サブセットにおけるこれらの秘密鍵に対応するハッシュ値が真実であるか否かを検証することができ、ただし、ハッシュ値が真実であるか否かを検証する方式はユーザがこれらのハッシュ値を求める方式と同じである。真実であることが検証された場合、認証局はユーザが確かに全ての前記一定数の秘密鍵を知っていることを確信することができ、又、前記一定数の秘密鍵は秘密鍵セットから任意に選択したものであるため、ユーザが第１秘密鍵を知っていることを確信でき、即ち該ユーザは第１秘密鍵の本当の所有者であることを確信できる。
【００７８】
いくつかの実施形態において、秘密鍵とユーザのユーザ識別名との対応関係は、前記秘密鍵と前記ユーザのユーザ識別名との組合せを含むことができ、第１秘密鍵とユーザ識別名との対応関係は、第１秘密鍵とユーザのユーザ識別名との組合せを含むことができる。別のいくつかの実施形態において、秘密鍵とユーザのユーザ識別名との対応関係は、秘密鍵、ユーザのユーザ識別名と秘密鍵の公開時間の組合せを含むことができ、第１秘密鍵とユーザ識別名との対応関係は、第１秘密鍵、ユーザのユーザ識別名と第１秘密鍵の公開時間の組合せを含むことができる。ここでの公開時間とは、秘密鍵が公開される時間又は解除される時間を指す。対応関係が公開時間に関わるか否かは、実際の状況によって決定する必要があり、本発明はそれを限定しない。
【００７９】
図５に示すように、本開示の内容の例示的な実施形態による本人認証システムを示す図である。図５において、該本人認証システムはクライアント５０１と認証局５０２とを含んでもよく、ユーザはクライアント５０１を介して秘密鍵が該ユーザに所有されることを認証局５０２に証明することができ、クライアント５０１はユーザの秘密鍵セットから一定数の秘密鍵を選択することができ、前記クライアント５０１は前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値を前記認証局５０２に送信し、前記認証局５０２は受信したハッシュ値から第１ハッシュ値サブセットを選択し前記クライアント５０１に通知することができ、前記クライアント５０１は前記第１ハッシュ値サブセットに対応する秘密鍵を第１秘密鍵サブセットとして前記証明書局５０２に送信することができ、前記認証局５０２は前記第１秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と前記第１ハッシュ値サブセットにおけるハッシュ値とを比較することができ、取得したハッシュ値の全てがいずれも第１ハッシュ値サブセットにおけるハッシュ値と一致する場合、認証局５０２はクライアント５０１から受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名することができる。本実施形態において、取得した全てのハッシュ値がいずれも第１ハッシュ値サブセットにおけるハッシュ値と一致し又は等しい場合、ユーザが前記一定数の秘密鍵を知り、即ちユーザはこの一定数の秘密鍵の本当の所有者であることが明らかとなる。さらに、ユーザが認証局５０２に証明する過程において、ユーザは認証局５０２に一定数の秘密鍵における第１秘密鍵サブセット以外の全ての秘密鍵、即ち第２秘密鍵サブセットを提供しておらず、提供したのは第１秘密鍵サブセットにおける秘密鍵であり、即ちユーザは第１秘密鍵サブセットにおける秘密鍵を犠牲することによって認証局５０２に該ユーザが一定数の秘密鍵における第１秘密鍵サブセットの秘密鍵以外の全ての秘密鍵（第２秘密鍵サブセット）の本当の所有者であることを証明し、よって前記一定数の秘密鍵における第１秘密鍵サブセット以外の全ての秘密鍵にとってゼロ知識証明を実現した。
【００８０】
いくつかの実施形態において、ユーザはクライアント５０１を介して認証局５０２により署名されたハッシュ値に対応する秘密鍵を用いてファイルに署名することができ、即ちユーザはこれらの秘密鍵を使用することができる。
【００８１】
いくつかの実施形態において、秘密鍵とユーザのユーザ識別名との対応関係は、前記秘密鍵と前記ユーザのユーザ識別名との組合せをさらに含むことができる。別のいくつかの実施形態において、秘密鍵とユーザのユーザ識別名との対応関係は、秘密鍵、前記ユーザのユーザ識別名、及び前記秘密鍵の公開時間の組合せをさらに含むことができる。ここでの公開時間とは、秘密鍵が公開された時間又は解除された時間を指す。対応関係が公開時間に関わるか否かは実際の状況によって決定する必要があり、本発明はそれを限定しない。
【００８２】
また、図５に示すように、本開示の内容の例示的な実施形態による本人認証システムは、その上に公開された情報が改竄されないように確保できる公共メディア５０３をさらに含むことができる。いくつかの実施形態において、秘密鍵セットにおける前記一定数の秘密鍵以外の秘密鍵がユーザに所有されることを認証局５０２に証明するために、ユーザはクライアント５０１を介して前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択することができ、その後、クライアント５０１は第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した第１秘密鍵に関するハッシュ値、前記ユーザ識別名、及び前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求め、取得した前記組合せのハッシュ値と第１秘密鍵に関するハッシュ値を公共メディア５０３に載せた後、クライアント５０１は前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を第２秘密鍵サブセットとして解除することができる。認証局５０２は、第２秘密鍵サブセットにおける各秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と前記クライアントから受信した前記秘密鍵に対応するハッシュ値とを比較し、前記第２秘密鍵サブセットにおける全ての秘密鍵に対して求めたハッシュ値がいずれもクライアント５０１から受信したハッシュ値と一致する場合、認証局５０２は第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名することができる。第１秘密鍵は秘密鍵セットにおける前記一定数の秘密鍵以外の全ての秘密鍵のうちの１つであり、秘密鍵セットにおける前記一定数の秘密鍵以外のその他の秘密鍵に対しても第１秘密鍵と類似する方式によって該ユーザがこれらのその他の秘密鍵を知り、即ちこれらのその他の秘密鍵の本当の所有者であることを認証局に証明可能であることを理解できるだろう。
【００８３】
別のいくつかの実施形態において、秘密鍵セットにおける前記一定数の秘密鍵以外の秘密鍵がユーザに所有されることを認証局５０２に証明するために、クライアント５０１は、さらに前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択し、前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した第１秘密鍵に関するハッシュ値、前記ユーザ識別名、及び前記第１秘密鍵の公開時間と前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求め、その後、取得した前記組合せのハッシュ値と第１秘密鍵に関するハッシュ値を公共メディア５０３に載せることができ、その後、クライアント５０１は前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を第２秘密鍵サブセットとして解除する。認証局５０２は、第２秘密鍵サブセットにおける各秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と前記クライアント５０１から受信した前記秘密鍵に対応するハッシュ値とを比較することができ、第２秘密鍵サブセットにおける全ての秘密鍵に対して求めたハッシュ値がいずれも前記クライアント５０１から受信したハッシュ値と一致する場合、前記第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名する。ここでの公開時間とは、秘密鍵が公開された時間又は解除された時間を指す。対応関係が公開時間に関わるか否かは、実際の状況によって決定する必要があり、本発明はそれを限定しない。
【００８４】
いくつかの実施形態において、公共メディア５０３はブロックチェーンであることができる。周知のように、ブロックチェーンはデータを一連のブロック方式で時系列順に接続して形成されたチェーンデータ構造であり、さらに、暗号化の方式でデータの改竄できないことと偽造できないことを保証する分散型台帳である。ブロックチェーンは、ハッシュと署名等のような暗号化技術及びコンセンサスアルゴリズムを利用して信頼メカニズムを構築し、否認、改竄及び詐欺行為のコストを極大化し、データが改竄できないことと偽造できないことを保証している。ブロックチェーンは、ビットコイン、イーサリアム等の該分野に既知又は将来的に知りえる如何なる方法で実現できることを認識することができる。
【００８５】
別のいくつかの実施形態において、公共メディア５０３は、信頼できる第三者（ＴＴＰ、ｔｒｕｓｔｅｄ  ｔｈｉｒｄ  ｐａｒｔｙ）によって操作される電子掲示板システム（ＢＢＳ、ｂｕｌｌｅｔｉｎ  ｂｏａｒｄ  ｓｙｓｔｅｍ）であることができ、つまり、信頼できる第三者によってＢＢＳに載せられたデータが改竄できないように保証し、ただし、ＴＴＰは法律、行政、商業等のルートにより信頼できる資格を取得し、関連国家管理機関の監督を受け、様々なシステムに維持管理サービスを提供する機構である。また、別のいくつかの実施形態において、公共メディア５０３は書き込み専用データベースであることができ、該書き込み専用データベースに書き込まれた各データブロックは撤回できなく、全てのユーザの間で合意されている。該書き込み専用データベースは、その中にデータしか書き込むことができないデータベースである。合意されていることは、全てのユーザの間に書き込まれたデータの真実性が認められ、そのデータが改竄されていないことを示す。公共メディアは該分野の既知の如何なる方式で実現することができ、改竄されないことを保証できればよく、本発明はそれを限定しないことを理解できるだろう。
【００８６】
いくつかの実施形態において、第１ハッシュ値サブセットに含まれたハッシュ値の数は前記一定数の秘密鍵に含まれた秘密鍵の数の半分である。仮に、ユーザがその秘密鍵セットからＭ個の秘密鍵を選択し、即ち一定数の秘密鍵にＭ個の秘密鍵が含まれている場合、認証局５０２はユーザに送信されたハッシュ値からＭ／２個を選択し、言い換えると、認証局５０２はこのＭ個の秘密鍵からＭ／２個の秘密鍵を選択し、ユーザにこのＭ／２個の秘密鍵を認証局５０２に送信することを要求する。Ｍ個の秘密鍵からＭ／２個の秘密鍵を選択し、即ちＣ（Ｍ、Ｍ／２）であり、約（２Ｍ√２）／√（πＭ）種類の組合せである。ユーザにとって、認証局５０２が選択した第１ハッシュ値サブセットに対応する秘密鍵の組合せを当てる確率は１／（（２Ｍ√２）／√（πＭ））である。例えば、Ｍ＝１６であり、認証局５０２がＭ／２＝８個の秘密鍵を選択する場合、ユーザがこの８個の秘密鍵の組合せを当てる確率は約１／１２８７０である。また、例えば、Ｍ＝３２であり、認証局５０２がＭ／２＝１６個の秘密鍵を選択する場合、ユーザがこの１６個の秘密鍵の組合せを当てる確率は約１／６０１０８０３９０である。従って、ユーザが認証局５０２の選択した組合せを当てられる確率は非常に低く、侵入者にとって、ハッシュ値に対応する秘密鍵の組合せを当てられる確率はさらに低い。従って、本開示の内容の技術的解決手段を採用することにより、量子計算による攻撃に耐えることがさらにできる。
【００８７】
別のいくつかの実施形態において、第１ハッシュ値サブセットに含まれたハッシュ値の数は前記一定数の秘密鍵に含まれた秘密鍵の数の１／３である。仮に、ユーザがその秘密鍵セットからＭ個の秘密鍵を選択し、即ち一定数の秘密鍵にＭ個の秘密鍵が含まれる場合、認証局はユーザに送信されたハッシュ値からＭ／３個を選択し、言い換えると、認証局はこのＭ個の秘密鍵からＭ／３個の秘密鍵を選択し、ユーザにこのＭ／３個の秘密鍵を認証局に送信することを要求する。Ｍ個の秘密鍵からＭ／３個の秘密鍵を選択し、即ちＣ（Ｍ、Ｍ／３）である。ユーザにとって、認証局が選択した第１サブセットに対応する秘密鍵の組合せを当てる確率は１／Ｃ（Ｍ、Ｍ／３）である。例えば、Ｍ＝１８であり、認証局がＭ／３＝６個の秘密鍵を選択する場合、ユーザがこの６個の秘密鍵の組合せを当てる確率は約１／２２２７６８である。また、例えば、Ｍ＝３０であり、認証局がＭ／３＝１０個の秘密鍵を選択する場合、ユーザがこの１０個の秘密鍵の組合せを当てる確率は約１／３００４５０１５である。注意すべきことは、Ｍ／３が整数でない場合、Ｍ／３の整数を取る操作を用いるだけでよい。第１ハッシュ値サブセットに含まれたハッシュ値の数が多いほど、ユーザがこれらのハッシュ値に対応する秘密鍵の組合せを当てる確率は低い。そのため、第１ハッシュ値サブセットに含まれたハッシュ値の数は実際の需要に応じて決定することができ、本発明はそれを限定しないことを理解できるだろう。
【００８８】
図６に示すように、図５に示されたクライアント５０１、認証局５０２と公共メディア５０３の間の相互作用図である。該実例において、仮にユーザであるアイリスがクライアント５０１を介して自分が秘密鍵の本当の所有者であることを認証局５０２に証明する場合、ユーザであるアイリスのユーザ識別名はＡであり、その秘密鍵セットはＳである。クライアント５０１は、秘密鍵セットＳからＭ個の秘密鍵を選択し、このＭ個の秘密鍵はそれぞれｋ１、ｋ２、…、ｋＭであり、その後、このＭ個の秘密鍵とユーザであるアイリスのユーザ識別名Ａとの対応関係に対してそれぞれハッシュを求め、例えばｈａｓｈ（Ａ、ｋｉ）又はｈａｓｈ（Ａ、ｋｉ、ｔ）であり、ただし、ｉ∈｛１、…、Ｍ｝である。図６に示すように、クライアント５０１はこのＭ個の秘密鍵に対応するｈａｓｈ（Ａ、ｋｉ）又はｈａｓｈ（Ａ、ｋｉ、ｔ）を認証局５０２に送信する。認証局５０２は、その中からＭ／２個を選択し第１ハッシュ値サブセットＣとし、本実例においてＭを偶数として仮定する。認証局５０２は、第１ハッシュ値サブセットＣにおけるハッシュ値のシーケンス番号をクライアント５０１に通知することができ、第１ハッシュ値サブセットＣにｈａｓｈ（Ａ、ｋｊ）又はｈａｓｈ（Ａ、ｋｊ、ｔ）が含まれると仮定する場合、ｊをクライアント５０１に通知することができる。上記から分かるように、第１ハッシュ値サブセットＣが決定された後、それに対応する第１秘密鍵サブセットＳ１も決定することができ、ただし、ｋｊ∈Ｓ１である。クライアント５０１がｋｊを認証局５０２に送信した後、認証局５０２は検証を行うことができ、即ち、当初のクライアント５０１がｋｊとユーザ識別名Ａとの対応関係のハッシュ値を計算する方式で計算する。最初にクライアント５０１が認証局５０２に送信したのがｈａｓｈ（Ａ、ｋｊ）である場合、認証局５０２はｈａｓｈ（Ａ、ｋｊ）を計算し、即ちＡとｋｊとの組合せに対してハッシュを求めるが、最初にクライアント５０１が認証局５０２に送信したのがｈａｓｈ（Ａ、ｋｊ、ｔ）である場合、認証局５０２はｈａｓｈ（Ａ、ｋｊ、ｔ）を計算し、その後、取得した結果とクライアント５０１から受信したｈａｓｈ（Ａ、ｋｊ）又はｈａｓｈ（Ａ、ｋｊ、ｔ）とを比較し、等しい場合、ユーザが確かに秘密鍵ｋｊを知ることが明らかとなる。第１ハッシュ値サブセットＣが認証局５０２により任意に選択したものであるため、ユーザがこのＭ個の秘密鍵の本当の所有者であることを証明することができる。この場合、認証局５０２は、クライアント５０１から受信した第１ハッシュ値サブセットＣ以外の全てのハッシュ値に対して署名することができ、即ち、ｈａｓｈ（Ａ、ｋｌ）又はｈａｓｈ（Ａ、ｋｌ、ｔ）に対して署名し、ただし、ｌ∈｛１、…、Ｍ｝であるがｌ∈＼Ｃである。認証局５０２の署名を取得した後、ユーザはこのＭ個の秘密鍵における第１秘密鍵サブセットＳ１以外の秘密鍵を使用することができる。また、秘密鍵セットＳにおけるこのＭ個の秘密鍵以外の秘密鍵ｋＡが該ユーザにより所有されることを認証局５０２に証明するために、ただし秘密鍵ｋＡ∈（Ｓ−Ｓ０）であり、Ｓ０はこのＭ個の秘密鍵の集合であり、図６に示すように、クライアント５０１はユーザ識別名Ａ、ｈａｓｈ（Ａ、ｋＡ）と全ての秘密鍵ｋｌとの組合せのハッシュ値とｈａｓｈ（Ａ、ｋＡ）（ただし、ｌ∈｛１、…、Ｍ｝であるがｌ∈＼Ｃである）、又はユーザ識別名Ａ、ｈａｓｈ（Ａ、ｋＡ、ｔ）、公開時間ｔと全ての秘密鍵ｋｌとの組合せのハッシュ値とｈａｓｈ（Ａ、ｋＡ、ｔ）（ただし、ｌ∈｛１、…、Ｍ｝であるがｌ∈＼Ｃであり、ｔは秘密鍵ｋＡの公開時間を表示する）、を公共メディア５０３に載せた後、全ての秘密鍵ｋｌを解除（ただし、ｌ∈｛１、…、Ｍ｝であるがｌ∈＼Ｃである）する。認証局５０２は秘密鍵ｋｌを取得した後、秘密鍵ｋｌに対する検証を行うことができる。全ての秘密鍵ｋｌとユーザ識別名Ａとの対応関係のハッシュ値がいずれも前にクライアント５０１から受信したハッシュ値と等しい又は一致する場合、ユーザであるアイリスが確かにこれらの秘密鍵ｋｌの本当の所有者であることが明らかとなる。よってユーザであるアイリスも秘密鍵ｋＡの本当の所有者となる。従って、認証局５０２はｈａｓｈ（Ａ、ｋＡ）又はｈａｓｈ（Ａ、ｋＡ、ｔ）に対して署名することができる。
（注：上記「ｌ∈＼Ｃ」において、「∈＼」は、集合の要素の否定を表す記号であり、斜め線「＼」は記号「∈」の全体に引かれる。）
【００８９】
本開示の内容の一態様によれば、さらに計算装置を提供し、図７に示すように、本開示の内容の例示的な実施形態による計算装置を示す図である。図７において、計算装置７００はメモリ０２とプロセッサ７０１とを含み、前記メモリ７０２にはコンピュータプログラム７０２０が記憶され、前記コンピュータプログラム７０２０は前記プロセッサ７０１により実行される時、上記の本人認証方法を実現する。前文において本人認証方法の技術的解決手段が詳細に記載されたため、ここでの説明を省略する。
【００９０】
本開示の内容の別の態様によれば、さらにコンピュータプログラムを記憶する機器の読み取り可能な記憶媒体を提供し、ただし、前記コンピュータプログラムがプロセッサにより実行される時、上記の本人認証方法を実現する。本人認証方法の技術的解決手段に対し、前文において既に詳細に記述したため、ここでの説明を省略する。いくつかの実施形態において、機器の読み取り可能な記憶媒体はデジタル処理装置の有形コンポーネントである。別のいくつかの実施形態において、機器の読み取り可能な記憶媒体は、好ましく、デジタル処理装置から取り外すことができる。いくつかの実施形態において、非限定的例を挙げると、機器の読み取り可能な記憶媒体は、ＵＳＢ、ポータブルハードディスク、読み取り専用メモリ（ＲＯＭ、Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ランダムアクセスメモリ（ＲＡＭ、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、フラッシュメモリ、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、ソリッドステートドライブ、磁気ディスク、光ディスク、クラウドコンピューティングシステム又はサービス等を含むことができる。
【００９１】
理解すべきことは、本開示の内容の方法の実施形態に記載された各ステップは、異なる順序に実行されてもよく、及び／又は並行して実行されてもよい。また、方法の実施形態は、追加されたステップ及び／又は実行を省略して示したステップを含むことができる。本発明の範囲はそれを限定しない。
【００９２】
本文に提供される明細書において、大量の具体的な細部を説明しているが、理解すべきことは、本開示の内容の実施形態はこれらの具体的な細部がない状況において実践されることができる。いくつかの実施形態において、本明細書に対する理解を曖昧にしないために、周知の方法、構造と技術を詳細に示していない。
【００９３】
本明細書では本発明の例示的な実施形態を既に示し説明したが、当業者にとって、このような実施形態は例示的な形態により提供されるものに過ぎないことは当然である。当業者であれば、本発明を逸脱しない限り、様々な変更、変化及び代替を想到することができる。理解すべきことは、本発明を実施する過程において、本明細書に記載の本発明の実施形態に対する様々な代替的解決手段を採用することができる。以下の請求範囲は本発明の範囲を限定するためのものであり、そのため、これらの請求範囲内の方法と構造及びその同等項目を覆う。
【図１】
2020537860.tif 000003
【図２】
2020537860.tif 000004
【図３】
2020537860.tif 000005
【図４】
2020537860.tif 000006
【図５】
2020537860.tif 000007
【図６】
2020537860.tif 000008
【図７】
2020537860.tif 000009
【手続補正書】
【提出日】令和2年6月17日(2020.6.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザが秘密鍵を所有していることを認証局に証明するための本人認証方法であって、
前記ユーザにおいて、該方法は、
前記ユーザの秘密鍵セットから一定数の秘密鍵を選択することと、
前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値を前記認証局に送信することと、
前記認証局から第１ハッシュ値サブセットに関する通知を受信した後、前記第１ハッシュ値サブセットに対応する秘密鍵を第１秘密鍵サブセットとして前記認証局に送信することと、
を含み、
前記第１ハッシュ値サブセットは前記認証局が前記取得したハッシュ値から選択したものである、
ことを特徴とする本人認証方法。
【請求項２】
さらに、前記認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、前記認証局により署名されたハッシュ値に対応する秘密鍵を用いてファイルに署名することを含む、ことを特徴とする請求項１に記載の本人認証方法。
【請求項３】
前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求めることは、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との組合せに対してハッシュを求めることをさらに含む、ことを特徴とする請求項１に記載の本人認証方法。
【請求項４】
前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求めることは、前記一定数の秘密鍵における各秘密鍵、前記ユーザのユーザ識別名と前記各秘密鍵の公開時間の組合せに対してハッシュを求めることをさらに含む、ことを特徴とする請求項１に記載の本人認証方法。
【請求項５】
前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択することと、
前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名と前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求めることと、
取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値を、自身に公開された情報が改竄されないように確保可能な公共メディアに載せることと、
前記認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、かつ前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値が前記公共メディアに存在してから、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を解除することと、
をさらに含む、
ことを特徴とする請求項１に記載の本人認証方法。
【請求項６】
前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択することと、
前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名、及び前記第１秘密鍵の公開時間と前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求めることと、
取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値を、自身に公開された情報が改竄されないように確保可能な公共メディアに載せることと、
前記認証局が前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名した後、かつ前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値が前記公共メディアに存在してから、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を解除することと、
をさらに含む、
ことを特徴とする請求項１に記載の本人認証方法。
【請求項７】
前記第１ハッシュ値サブセットに含まれたハッシュ値の数は前記一定数の秘密鍵に含まれた秘密鍵の数の半分である、ことを特徴とする請求項１に記載の本人認証方法。
【請求項８】
ユーザが秘密鍵を所有していることを認証局に証明するための本人認証方法であって、
前記認証局において、該方法は、
前記ユーザから一定数の秘密鍵に対応するハッシュ値を受信することと、
前記ハッシュ値から第１ハッシュ値サブセットを選択し前記ユーザに通知することと、
前記ユーザから受信した第１秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値と前記第１ハッシュ値サブセットに前記秘密鍵に対応するハッシュ値とを比較することと、
全ての取得したハッシュ値がいずれも前記第１ハッシュ値サブセットにおけるハッシュ値と一致する場合、前記ユーザから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名することと、
を含む、
ことを特徴とする本人認証方法。
【請求項９】
前記ユーザから受信した第２秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してそれぞれハッシュを求め、取得したハッシュ値と前記ユーザから受信したハッシュ値における前記秘密鍵に対応するハッシュ値とを比較することと、
前記第２秘密鍵サブセットにおける全ての秘密鍵に対して求めた全てのハッシュ値がいずれも前記ユーザから受信したハッシュ値と一致する場合、第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名することと、
をさらに含み、
前記第２秘密鍵サブセットは、前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を含む、
ことを特徴とする請求項８に記載の本人認証方法。
【請求項１０】
前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵と前記ユーザのユーザ識別名との組合せを含み、前記第１秘密鍵と前記ユーザ識別名との対応関係は、前記第１秘密鍵と前記ユーザのユーザ識別名との組合せを含む、ことを特徴とする請求項９に記載の本人認証方法。
【請求項１１】
前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵、前記ユーザのユーザ識別名、及び前記秘密鍵の公開時間の組合せを含み、前記第１秘密鍵と前記ユーザ識別名との対応関係は、前記第１秘密鍵、前記ユーザのユーザ識別名、及び前記第１秘密鍵の公開時間の組合せを含む、ことを特徴とする請求項９に記載の本人認証方法。
【請求項１２】
クライアントと認証局とを含む本人認証システムであって、
ユーザは前記クライアントを介して秘密鍵が前記ユーザに所有されることを前記認証局に証明し、
前記クライアントは前記ユーザの秘密鍵セットから一定数の秘密鍵を選択し、
前記クライアントは、前記一定数の秘密鍵における各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値を前記認証局に送信し、
前記認証局は、取得したハッシュ値から第１ハッシュ値サブセットを選択するとともに前記クライアントに通知し、
前記クライアントは、前記第１ハッシュ値サブセットに対応する秘密鍵を第１秘密鍵サブセットとして前記認証局に送信し、
前記認証局は、前記第１秘密鍵サブセットにおける各秘密鍵と前記ユーザのユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と第１ハッシュ値サブセットにおけるハッシュ値とを比較し、
全ての取得したハッシュ値がいずれも前記第１ハッシュ値サブセットにおけるハッシュ値と一致する場合、前記認証局は前記クライアントから受信した前記第１ハッシュ値サブセット以外の全てのハッシュ値に対して署名する、
ことを特徴とする本人認証システム。
【請求項１３】
前記ユーザは、前記クライアントを介して前記認証局により署名されたハッシュ値に対応する秘密鍵を用いてファイルに署名する、ことを特徴とする請求項１２に記載の本人認証システム。
【請求項１４】
前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵と前記ユーザのユーザ識別名との組合せをさらに含む、ことを特徴とする請求項１２に記載の本人認証システム。
【請求項１５】
前記秘密鍵と前記ユーザのユーザ識別名との対応関係は、前記秘密鍵、前記ユーザのユーザ識別名、及び前記秘密鍵の公開時間の組合せをさらに含む、ことを特徴とする請求項１２に記載の本人認証システム。
【請求項１６】
自身に公開された情報が改竄されないように確保可能な公共メディアをさらに含み、
前記クライアントはさらに前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択し、
前記クライアントは前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名及び前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求め、
前記クライアントは取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値を前記公共メディアに載せ、
前記クライアントは前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を第２秘密鍵サブセットとして解除し、
前記認証局は前記第２秘密鍵サブセットにおける各秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と前記クライアントから受信した前記秘密鍵に対応するハッシュ値とを比較し、
前記第２秘密鍵サブセットにおける全ての秘密鍵に対して求めた全てのハッシュ値がいずれも前記クライアントから受信したハッシュ値と一致する場合、前記認証局は前記第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名する、
ことを特徴とする請求項１２に記載の本人認証システム。
【請求項１７】
自身に公開された情報が改竄されないように確保可能な公共メディアをさらに含み、
前記クライアントはさらに前記秘密鍵セットから前記一定数の秘密鍵以外の第１秘密鍵を選択し、
前記クライアントは前記第１秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得した前記第１秘密鍵に関するハッシュ値、前記ユーザ識別名、前記第１秘密鍵の公開時間及び前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵の組合せに対してハッシュを求め、
前記クライアントは取得した前記組合せのハッシュ値と前記第１秘密鍵に関するハッシュ値を前記公共メディアに載せ、
前記クライアントは前記一定数の秘密鍵における前記第１秘密鍵サブセット以外の全ての秘密鍵を第２秘密鍵サブセットとして解除し、
前記認証局は前記第２秘密鍵サブセットにおける各秘密鍵と前記ユーザ識別名との対応関係に対してハッシュを求め、取得したハッシュ値と前記クライアントから受信した前記秘密鍵に対応するハッシュ値とを比較し、
前記第２秘密鍵サブセットにおける全ての秘密鍵に対して求めた全てのハッシュ値がいずれも前記クライアントから受信したハッシュ値と一致する場合、前記認証局は前記第１秘密鍵と前記ユーザ識別名との対応関係のハッシュ値に対して署名する、
ことを特徴とする請求項１２に記載の本人認証システム。
【請求項１８】
前記第１ハッシュ値サブセットに含まれたハッシュ値の数は前記一定数の秘密鍵に含まれた秘密鍵の数の半分である、ことを特徴とする請求項１２に記載の本人認証システム。
【請求項１９】
プロセッサとメモリとを含む計算装置であって、
前記メモリにコンピュータプログラムが記憶され、前記コンピュータプログラムが前記プロセッサにより実行される時、請求項１乃至７及び／又は請求項８乃至１１の何れか１項に記載の本人認証方法を実現する、
ことを特徴とする計算装置。
【請求項２０】
コンピュータプログラムが記憶されている機器の読み取り可能な記憶媒体であって、
前記コンピュータプログラムがプロセッサにより実行される時、請求項１乃至７及び／又は請求項８乃至１１の何れか１項に記載の本人認証方法を実現する、
ことを特徴とする機器の読み取り可能な記憶媒体。
【国際調査報告】
2020537860.tif 000010
2020537860.tif 000011
2020537860.tif 000012
2020537860.tif 000013