(57)【要約】【課題】高度な秘匿性を確保すると共に演算負荷を軽減してコストを削減することができ、さらに種々の中間者攻撃を防御することができるようにする。【解決手段】認証データが、関数を特定する関数データなどからなる複数の分散データに分散して定められ、その分散データの一部を、被認証装置１と認証装置２との間で共有させ、被認証装置において、認証装置との間で共有しない分散データから検証データを求めて、その検証データを認証装置に送り、認証装置において、被認証装置から受け取った検証データなどに基づいて、被認証装置の正当性を検証するものであり、被認証装置において、所要の管理データが格納された分散データを生成すると共に、その分散データを認証装置に送り、認証装置において、管理データが格納された分散データから管理データを取り出して、その管理データに基づいて認証の可否を判定する。【選択図】図５
2009272737.tif 000002
【特許請求の範囲】
【請求項１】
被認証装置、またはユーザの正当性を示す認証データが、関数を特定する関数データとこの関数から認証データを特定する規則データとからなる複数の分散データに分散して定められ、
複数の分散データの一部を、前記被認証装置と認証装置との間で共有させ、
前記被認証装置において、前記認証装置との間で共有しない分散データに対して、少なくとも第３者にとって逆算が困難な演算処理を行って検証データを求めて、その検証データを前記認証装置に送り、
前記認証装置において、自装置に蓄積された被認証装置、またはユーザごとの認証データ及び分散データと、前記被認証装置から受け取った検証データとに基づいて、前記被認証装置の正当性を検証するものであり、
前記被認証装置において、所要の管理データが格納された分散データを生成して、その分散データを前記認証装置に送り、
前記認証装置において、前記管理データが格納された分散データから管理データを取り出して、その管理データに基づいて認証の可否を判定することを特徴とする秘匿認証システム。
【請求項２】
被認証装置において、自装置、またはユーザの正当性を示す認証データ及び鍵データのいずれか一方に所要の管理データを付加した統合データを生成し、この統合データを前記認証データ及び前記鍵データの他方に乗じて積データを求めるなど、この統合データを前記認証データ及び前記鍵データの他方を暗号鍵として暗号化して暗号データを求めて、この暗号データを認証装置に送り、
前記認証装置において、前記被認証装置から受け取った暗号データの復号化を行って前記管理データを抽出して、その管理データに基づいて認証の可否を判定することを特徴とする秘匿認証システム。
【請求項３】
前記管理データが、前記被認証装置において所定の処理動作が実行された時刻に関する情報を含むことを特徴とする請求項１若しくは請求項２に記載の秘匿認証システム。
【請求項４】
前記管理データが、前記被認証装置が前記認証装置を利用した回数に関する情報を含むことを特徴とする請求項１乃至請求項３のいずれかに記載の秘匿認証システム。
【請求項５】
前記管理データが、前記被認証装置が前記認証装置を利用する際の権限に関する情報を含むことを特徴とする請求項１乃至請求項４のいずれかに記載の秘匿認証システム。
【請求項６】
被認証装置、またはユーザの正当性を示す認証データが、関数を特定する関数データとこの関数から認証データを特定する規則データとからなる複数の分散データに分散して定められ、
複数の分散データの一部を、前記被認証装置と認証装置との間で共有させ、
前記被認証装置において、前記認証装置との間で共有しない分散データに対して、少なくとも第３者にとって逆算が困難な演算処理を行って検証データを求めて、その検証データを前記認証装置に送り、
前記認証装置において、自装置に蓄積された被認証装置、またはユーザごとの認証データ及び分散データと、前記被認証装置から受け取った検証データとに基づいて、前記被認証装置の正当性を検証するものであり、
分散データの生成においては、前記被認証装置において、自装置及び前記認証装置のいずれかの固有データから分散データの少なくとも１部を生成し、
前記認証装置においても、前記被認証装置及び自装置のいずれかの固有データから前記被認証装置と同じ分散データを生成することを特徴とする秘匿認証システム。
【請求項７】
被認証装置において、自装置、またはユーザの正当性を示す認証データ及び鍵データのいずれか一方に前記被認証装置及び認証装置のいずれかの固有データを付加した統合データを生成し、この統合データを前記認証データ及び前記鍵データの他方に乗じて積データを求めるなど、この統合データを前記認証データ及び前記鍵データの他方を暗号鍵として暗号化して暗号データを求めて、この暗号データを前記認証装置に送り、
前記認証装置において、前記被認証装置及び自装置のいずれかの固有データ、前記被認証装置から受け取った暗号データ、及び自装置が保持する認証データに基づいて、前記被認証装置の正当性を検証することを特徴とする秘匿認証システム。
【請求項８】
前記固有データが、前記認証装置の公開鍵に関する情報を含むことを特徴とする請求項６若しくは請求項７に記載の秘匿認証システム。
【請求項９】
前記固有データが、前記被認証装置または前記認証装置のネットワークアドレスに関する情報を含むことを特徴とする請求項６乃至請求項８のいずれかに記載の秘匿認証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、他人に知られることなく認証データを被認証装置から認証装置に通知して認証を行う秘匿認証システムに関するものである。
【背景技術】
【０００２】
インターネットバンキングやインターネットショッピングなどのインターネット商取引システムなど、近年、ネットワークを介して接続された端末に対してサーバから種々のサービスを提供するシステムが急速に普及しており、このようなシステムにおいては、ユーザが正規登録された者か否かを検証する認証システムが必要となるが、パスワードなどの認証データがネットワーク上に送出されるため、認証データを盗取して正規のユーザになりすまして不正に利益を受ける行為を阻止するための様々な技術が知られている（例えば特許文献１参照）。
【０００３】
また、近年、電子マネー機能を有する非接触型ＩＣカードが急速に普及しており、入退室管理システムや商品管理システムでも、非接触型ＩＣカードやＲＦＩＤタグが利用されるようになってきたが、この種のＲＦＩＤデバイスを用いたシステムでは、スキミングにより認証データを盗取してなりすましにより不正に利益を受ける行為を阻止する必要があり、このようなＲＦＩＤデバイスの安全性を高める技術としては、Randomized Hash Lock方式、ハッシュチェーン方式（特許文献２参照）、再暗号化方式（特許文献３参照）が知られている。
【特許文献１】特開２００７−２９３７８７号公報
【特許文献２】特再表２００５−０３１５７９号公報
【特許文献３】特開２００４−３１７７６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかるに、従来の様々な技術では、複雑な演算処理により認証データの秘匿性を高めることができる反面、高速な演算手段が必要になることから、コストが嵩み、低コスト化の要望を十分に満足することができないため、低コスト化と高度な秘匿性とを両立させることが可能な技術が望まれる。特に、被認証装置と認証装置との間の通信に介入する中間者による盗聴や改変などの種々の中間者攻撃が問題となっており、この種の中間者攻撃を確実に防御することができるシステムが望まれる。
【０００５】
本発明は、このような従来技術の問題点を解消するべく案出されたものであり、その主な目的は、高度な秘匿性を確保すると共に演算負荷を軽減してコストを削減することができ、さらに種々の中間者攻撃を防御することができるように構成された秘匿認証システムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明の秘匿認証システムは、被認証装置、またはユーザの正当性を示す認証データが、関数を特定する関数データとこの関数から認証データを特定する規則データとからなる複数の分散データに分散して定められ、複数の分散データの一部を、前記被認証装置と認証装置との間で共有させ、前記被認証装置において、前記認証装置との間で共有しない分散データに対して、少なくとも第３者にとって逆算が困難な演算処理を行って検証データを求めて、その検証データを前記認証装置に送り、前記認証装置において、自装置に蓄積された被認証装置、またはユーザごとの認証データ及び分散データと、前記被認証装置から受け取った検証データとに基づいて、前記被認証装置の正当性を検証するものであり、前記被認証装置において、所要の管理データが格納された分散データを生成して、その分散データを前記認証装置に送り、前記認証装置において、前記管理データが格納された分散データから管理データを取り出して、その管理データに基づいて認証の可否を判定する構成とする。
【０００７】
また、本発明の秘匿認証システムは、被認証装置において、自装置、またはユーザの正当性を示す認証データ及び鍵データのいずれか一方に所要の管理データを付加した統合データを生成し、この統合データを前記認証データ及び前記鍵データの他方に乗じて積データを求めるなど、この統合データを前記認証データ及び前記鍵データの他方を暗号鍵として暗号化して暗号データを求めて、この暗号データを認証装置に送り、前記認証装置において、前記被認証装置から受け取った暗号データの復号化を行って前記管理データを抽出して、その管理データに基づいて認証の可否を判定する構成とする。
【０００８】
また、本発明の秘匿認証システムは、被認証装置、またはユーザの正当性を示す認証データが、関数を特定する関数データとこの関数から認証データを特定する規則データとからなる複数の分散データに分散して定められ、複数の分散データの一部を、前記被認証装置と認証装置との間で共有させ、前記被認証装置において、前記認証装置との間で共有しない分散データに対して、少なくとも第３者にとって逆算が困難な演算処理を行って検証データを求めて、その検証データを前記認証装置に送り、前記認証装置において、自装置に蓄積された被認証装置、またはユーザごとの認証データ及び分散データと、前記被認証装置から受け取った検証データとに基づいて、前記被認証装置の正当性を検証するものであり、分散データの生成においては、前記被認証装置において、自装置及び認証装置のいずれかの固有データから分散データの少なくとも１部を生成し、前記認証装置においても、前記被認証装置及び自装置のいずれかの固有データから前記被認証装置と同じ分散データを生成する構成とする。
【０００９】
また、本発明の秘匿認証システムは、被認証装置において、自装置、またはユーザの正当性を示す認証データ及び鍵データのいずれか一方に前記被認証装置及び認証装置のいずれかの固有データを付加した統合データを生成し、この統合データを前記認証データ及び前記鍵データの他方に乗じて積データを求めるなど、この統合データを前記認証データ及び前記鍵データの他方を暗号鍵として暗号化して暗号データを求めて、この暗号データを前記認証装置に送り、前記認証装置において、前記被認証装置及び自装置のいずれかの固有データ、前記被認証装置から受け取った暗号データ、及び自装置が保持する認証データに基づいて、前記被認証装置の正当性を検証する構成とする。
【発明の効果】
【００１０】
本発明によれば、被認証装置と認証装置との通信に介入する中間者により、被認証装置から認証装置に送られるデータが盗み見されたとしても、中間者は、認証データを求めることができないため、高度な秘匿性を確保することができ、また、演算負荷を軽減することができるため、低速な演算手段で済み、コストを削減することができる。特に、時間の経過などの諸要因により管理データの内容が変化するのに応じて、認証装置と被認証装置との間で送受されるデータが変化するため、認証装置と被認証装置との間での遣り取りを真似してここで用いられたデータを使用して不正に認証を受けることができなくなり、リトライ攻撃を防御することができる。また、認証装置と被認証装置との間で遣り取りされるデータが、認証装置や被認証装置の固有データに基づいて生成されるため、認証装置と被認証装置との間の通信に介入する中間者が存在すると、固有データが異なることで中間者の介入が判明するため、中間者攻撃を軽減することができる。
【発明を実施するための最良の形態】
【００１１】
前記課題を解決するためになされた第１の発明による秘匿認証システムは、被認証装置、またはユーザの正当性を示す認証データが、関数を特定する関数データとこの関数から認証データを特定する規則データとからなる複数の分散データに分散して定められ、複数の分散データの一部を、前記被認証装置と認証装置との間で共有させ、前記被認証装置において、前記認証装置との間で共有しない分散データに対して、少なくとも第３者にとって逆算が困難な演算処理を行って検証データを求めて、その検証データを前記認証装置に送り、前記認証装置において、自装置に蓄積された被認証装置、またはユーザごとの認証データ及び分散データと、前記被認証装置から受け取った検証データとに基づいて、前記被認証装置の正当性を検証するものであり、前記被認証装置において、所要の管理データが格納された分散データを生成して、その分散データを前記認証装置に送り、前記認証装置において、前記管理データが格納された分散データから管理データを取り出して、その管理データに基づいて認証の可否を判定する構成とする。
【００１２】
これによると、被認証装置と認証装置との通信に介入する中間者により、被認証装置から認証装置に送られる分散データが盗み見されたとしても、中間者は、分散データが全て揃わないと認証データを求めることができないため、高度な秘匿性を確保することができ、また、１次関数のように次数の小さな関数を用いることで、演算負荷を軽減することができるため、低速な演算手段で済み、コストを削減することができる。
【００１３】
特に、時間の経過などの諸要因により管理データの内容が変化するのに応じて、認証装置と被認証装置との間で送受される分散データが変化するため、認証装置と被認証装置との間での遣り取りを真似してここで用いられた分散データを使用して不正に認証を受けることができなくなり、リトライ攻撃を防御することができる。
【００１４】
この場合、認証装置において、管理データに基づいて認証が可能と判定されると、被認証装置から受け取った分散データと、自装置に蓄積された被認証装置ごとの認証データから被認証装置の正当性を検証するものとすれば良い。
【００１５】
ここで、分散データのうちの関数データは、関数を一意に定めるものであり、例えば関数が示す１次直線あるいはｎ次曲線上の点の座標値、関数式の係数、傾き、及び切片などの値である。ここで、ｎ次関数の直線あるいは曲線上の点の座標値を関数データとした場合には、関数データはｎ＋１個の点のＸ値及びＹ値となり、これらの値により関数が一意に定められる。
【００１６】
また、分散データのうちの規則データは、関数から認証データを特定する取り決めであり、例えば関数が示す１次直線あるいはｎ次曲線上の点のＹ値を認証データとした場合には、その点のＸ値が規則データとなる。さらに、関数が示す１次直線あるいはｎ次曲線と別の１次直線あるいはｎ次曲線との交点の座標値を認証データとすることもでき、この場合、その交点を形成する別の１次直線あるいはｎ次曲線を示す関数を特定する値が規則データとなる。また、関数の式の係数を認証データとすることもでき、この場合、係数を認証データとする指定情報が規則データとなる。
【００１７】
また、認証データとは、被認証装置の正当性を示すものであり、被認証装置やこれを操作するユーザに与えられたパスワードや、被認証装置を操作するユーザに関するバイオメトリクス情報などである。
【００１８】
なお、この発明では、認証装置において分散データから管理データを抽出することができるように被認証装置において分散データを生成する必要があり、これには、所要の管理データをそのまま分散データとすれば良く、また適当なデータ（乱数データなど）に管理データを結合して分散データを生成するようにしても良い。
【００１９】
前記課題を解決するためになされた第２の発明による秘匿認証システムは、被認証装置において、自装置、またはユーザの正当性を示す認証データ及び鍵データのいずれか一方に所要の管理データを付加した統合データを生成し、この統合データを前記認証データ及び前記鍵データの他方に乗じて積データを求めるなど、この統合データを前記認証データ及び前記鍵データの他方を暗号鍵として暗号化して暗号データを求めて、この暗号データを認証装置に送り、前記認証装置において、前記被認証装置から受け取った暗号データの復号化を行って前記管理データを抽出して、その管理データに基づいて認証の可否を判定する構成とする。
【００２０】
これによると、被認証装置と認証装置との通信に介入する中間者により、被認証装置から認証装置に送られる暗号データが盗み見されたとしても、中間者は、鍵データを知らなければ、暗号データから認証データを求めることはできないため、高いに秘匿性を確保することができる。また、被認証装置及び認証装置での処理が積演算など簡単な暗号演算で済むため、演算負荷を軽減してコストを削減することができる。
【００２１】
特に、認証装置と被認証装置との間で送受される暗号データが変化するため、認証装置と被認証装置との間での遣り取りを真似してここで用いられた暗号データを中間者が使用して不正に認証を受けることができなくなり、リトライ攻撃を防御することができる。
【００２２】
なお、この発明では、認証装置において統合データから管理データを抽出することができるように被認証装置において統合データを生成する必要があり、例えば、これには、認証データや鍵データと管理データとをデータ結合により統合すれば良い。
【００２３】
前記課題を解決するためになされた第３の発明は、前記第１・第２の発明において、前記管理データが、前記被認証装置において所定の処理動作が実行された時刻に関する情報を含む構成とする。
【００２４】
これによると、時刻により認証を制限することができる。この場合、例えば、認証装置において、被認証装置から受け取った時刻情報と現在時刻とを比較して、決められた範囲外であれば、認証を拒否するか、一定の制限をかけるものとする。
【００２５】
前記課題を解決するためになされた第４の発明は、前記第１〜第３の発明において、前記管理データが、前記被認証装置が前記認証装置を利用した回数に関する情報を含む構成とする。
【００２６】
これによると、利用回数により認証を制限することができる。この場合、例えば、認証装置において、被認証装置から受け取った利用回数情報と現在の利用回数とを比較して、決められた範囲外であれば、認証を拒否するか、一定の制限をかけるものとする。ここで、利用回数とは、被認証装置が認証装置に対して行った認証の回数である。
【００２７】
前記課題を解決するためになされた第５の発明は、前記第１〜第４の発明において、前記管理データが、前記被認証装置が前記認証装置を利用する際の権限に関する情報を含む構成とする。
【００２８】
これによると、利用権限に基づいた認証を行うことができる。ここで、利用権限情報とは、利用を許可された期間、例えばサーバの利用権限を他人に一時的に譲渡した場合の利用期間などである。また、認証を受けた後の利用の制限、例えば、承認印の押印の可否、閲覧や編集の可否など、権限の範囲の設定する情報を付加して、認証成功後の利用の制限を行うものとしても良い。
【００２９】
前記課題を解決するためになされた第６の発明による秘匿認証システムは、被認証装置、またはユーザの正当性を示す認証データが、関数を特定する関数データとこの関数から認証データを特定する規則データとからなる複数の分散データに分散して定められ、複数の分散データの一部を、前記被認証装置と認証装置との間で共有させ、前記被認証装置において、前記認証装置との間で共有しない分散データに対して、少なくとも第３者にとって逆算が困難な演算処理を行って検証データを求めて、その検証データを前記認証装置に送り、前記認証装置において、自装置に蓄積された被認証装置、またはユーザごとの認証データ及び分散データと、前記被認証装置から受け取った検証データとに基づいて、前記被認証装置の正当性を検証するものであり、分散データの生成においては、前記被認証装置において、自装置及び前記認証装置のいずれかの固有データから分散データの少なくとも１部を生成し、前記認証装置においても、前記被認証装置及び自装置のいずれかの固有データから前記被認証装置と同じ分散データを生成する構成とする。
【００３０】
これによると、被認証装置と認証装置との通信に介入する中間者により、被認証装置から認証装置に送られる分散データが盗み見されたとしても、中間者は、分散データが全て揃わないと認証データを求めることができないため、高度な秘匿性を確保することができ、また、１次関数のように次数の小さな関数を用いることで、演算負荷を軽減することができるため、低速な演算手段で済み、コストを削減することができる。
【００３１】
特に、認証装置と被認証装置との間で利用される分散データが、認証装置や被認証装置の固有データに基づいて生成されるため、認証装置と被認証装置との間の通信に介入する中間者が存在すると、固有データが異なることで中間者の介入が判明するため、中間者攻撃を防御することができる。
【００３２】
なお、この発明では、認証装置において分散データから固有データを抽出することができるように被認証装置において分散データを生成する必要はなく、被認証装置及び認証装置において互いに同一の固有データから同一の分散データが生成するような適宜な処理方法を採用すれば良い。
【００３３】
前記課題を解決するためになされた第７の発明による秘匿認証システムは、被認証装置において、自装置、またはユーザの正当性を示す認証データ及び鍵データのいずれか一方に前記被認証装置及び認証装置のいずれかの固有データを付加した統合データを生成し、この統合データを前記認証データ及び前記鍵データの他方に乗じて積データを求めるなど、この統合データを前記認証データ及び前記鍵データの他方を暗号鍵として暗号化して暗号データを求めて、この暗号データを前記認証装置に送り、前記認証装置において、前記被認証装置及び自装置のいずれかの固有データ、前記被認証装置から受け取った暗号データ、及び自装置が保持する認証データに基づいて、前記被認証装置の正当性を検証する構成とする。
【００３４】
これによると、被認証装置と認証装置との通信に介入する中間者により、被認証装置から認証装置に送られる暗号データが盗み見されたとしても、中間者は、鍵データを知らなければ、暗号データから認証データを求めることはできないため、高いに秘匿性を確保することができる。また、被認証装置及び認証装置での処理が積演算など簡単な暗号演算で済むため、演算負荷を軽減してコストを削減することができる。
【００３５】
特に、認証装置と被認証装置との間で遣り取りされる暗号データが、認証装置や被認証装置の固有データに基づいて生成されるため、認証装置と被認証装置との間の通信に介入する中間者が存在すると、固有データが異なることで中間者の介入が判明するため、中間者攻撃を防御することができる。
【００３６】
なお、この発明では、認証装置において統合データから固有データを抽出することができるように被認証装置において統合データを生成する必要はなく、被認証装置及び認証装置において互いに同一の固有データから同一の統合データが生成するような適宜な処理方法を採用すれば良い。
【００３７】
前記課題を解決するためになされた第８の発明は、前記第６・第７の発明において、前記固有データが、サーバ証明書など、前記認証装置の公開鍵に関する情報を含む構成とする。
【００３８】
ここで、公開鍵に関する情報は、ＳＳＬ通信のネゴシエーションにおいてサーバ証明書に格納された状態で被認証装置に渡される。
【００３９】
前記課題を解決するためになされた第９の発明は、前記第６〜第８の発明において、前記固有データが、前記被認証装置または前記認証装置のネットワークアドレスに関する情報を含む構成とする。
【００４０】
ここで、ネットワークアドレスとは、ネットワーク上の装置を識別するＩＰアドレスやＭＡＣアドレスなどである。
【００４１】
以下、本発明の実施の形態を、図面を参照しながら説明する。
【００４２】
図１は、本発明による秘匿認証システムを示すシステム構成図である。ここでは、クライアント装置（被認証装置）１とサーバ装置（認証装置）２とがネットワーク接続され、サーバ装置２においてクライアント装置１の認証を行うための認証データ（パスワードなど）をクライアント装置１からサーバ装置２に通知するものである。このような認証システムでは、クライアント装置１とサーバ装置２との間の通信に介入した中間者装置３により認証データを盗取されたり、中間者装置３が正規のクライアント装置１になりすましてサーバ装置２で不正に認証を受けることを阻止するために、以下のような秘匿認証システムが採用される
【００４３】
≪秘密分散方式≫
図２・図３は、本発明における秘匿認証の要領を説明する図である。ここでは、認証データｍが、点Ｓ（ｘ２，ｓ）と点Ｋ（ｘ３，ｋ）とを通過する１次直線上でＸ値がｘ１となる点Ｍ（ｘ１，ｍ）のＹ値として与えられ、この直線の関数式は、関数データｘ２・ｘ３・ｓ・ｋにより一義的に定められ、これらの関数データと、直線の関数式から認証データｍを特定するための規則データｘ１とから認証データｍが求められる。
【００４４】
なおここでは、認証データｍを特定するものは、規則データｘ１としているが、これは関数データｘ２・ｘ３・ｓ・ｋにより一義的に定められる関数と、ｘ＝ｘ１との交点のことであり、これを別の任意の関数との交点とすることも可能である。
【００４５】
ここで、関数データｘ２・ｘ３・ｓ・ｋ及び規則データｘ１は、認証データｍを分散して規定する分散データとして位置付けられ、これらの分散データｘ１〜ｘ３・ｓ・ｋが全て揃わないと認証データｍを求めることができない。
【００４６】
分散データｘ１〜ｘ３・ｓ・ｋは、その一部が、認証時とは別の手順で事前にあるいは事後に、クライアント装置１とサーバ装置２との間で共有させ、クライアント装置１からサーバ装置２に対する認証要求時に、クライアント装置１において、認証データｍから、サーバ装置２との間で共有しない分散データを生成して、その分散データをサーバ装置２に送り、サーバ装置２において、自装置が保持する分散データとクライアント装置１から受け取った分散データとから認証データｍを求める。
【００４７】
図２（Ａ）に示す方式１では、１つの点ＳのＹ値である分散データｓのみをクライアント装置１からサーバ装置２に送り、残りの分散データｘ１〜ｘ３・ｋは、クライアント装置１とサーバ装置２との間で共有している。この残りの分散データｘ１〜ｘ３・ｋは固定値であり、少なくとも一部の情報は秘密に保持する。この場合、認証データｍに応じて分散データｓのみが変動する。
【００４８】
図２（Ｂ）に示す方式１の改良では、１つの点ＳのＸ値及びＹ値である分散データｓ・ｘ２を送り、残りの分散データｘ１・ｘ３・ｋは、クライアント装置１とサーバ装置２との間で共有している。この残りの分散データｘ１・ｘ３・ｋは固定値であり、少なくとも一部の情報は秘密に保持する。この場合、分散データｘ２は任意の値、例えば乱数で生成して、２つの点Ｍ・Ｋを通る直線上に点Ｓがくるように分散データｓが定められる。
【００４９】
図３（Ａ）に示す方式２では、２つの点Ｓ・ＫのＹ値である分散データｓ・ｋを送り、残りの分散データｘ１〜ｘ３は、クライアント装置１とサーバ装置２との間で共有している。この残りの分散データｘ１〜ｘ３は固定値であり、少なくとも一部の情報は秘密に保持する。この場合、分散データｓは任意の値、例えば乱数で生成して、２つの点Ｍ・Ｓを通る直線上でＸ値がｘ３となる点ＫのＹ値として分散データｋが定められる。
【００５０】
図３（Ｂ）に示す方式２の改良では、点ＳのＸ値及びＹ値と点ＫのＹ値である分散データｓ・ｘ２・ｋを送り、残りの分散データｘ１・ｘ３は、クライアント装置１とサーバ装置２との間で共有している。この残りの分散データｘ１・ｘ３は固定値であり、少なくとも一部の情報は秘密に保持する。この場合、分散データｓ・ｘ２は任意の値、例えば乱数で生成して、２つの点Ｍ・Ｓを通る直線上でＸ値がｘ３となる点ＫのＹ値として分散データｋが定められる。
【００５１】
ここで、図２（Ａ）の方式１では、同じ認証データｍでは、毎回同じ値が送られることになり、その値を用いて中間者はなりすましを簡単に行うことができる。図２（Ｂ）の方式１の改良では、複数回認証を行うと、同じクライアント装置１では点Ｓ（ｘ２，ｓ）が同一直線上に並ぶため、この直線上の任意の点で分散データｓ・ｘ２を決定すればなりすましが可能となる。
【００５２】
図３（Ａ）の方式２では、点Ｓ・Ｋを通る直線の傾きが認証のたびに変化するが、複数回認証を行うと、認証データｍを特定する点Ｍ（ｘ１，ｍ）が、点Ｓ・Ｋを通る直線の交点として現れるため、認証データｍが見破られる可能性がある。図３の方式２の改良でも同様である。
【００５３】
図４は、本発明による秘匿認証の別の例による要領を説明する図である。ここでは、認証データｍ１が、点Ｍ２（ｘ１，ｍ２）と点Ｋ（ｘ３，ｋ）と点Ｓ（ｘ４，ｓ）とを通過する２次曲線上でＸ値がｘ１となる点Ｍ１（ｘ１，ｍ１）のＹ値として与えられ、この曲線の関数式は、関数データｘ２〜ｘ４・ｍ２・ｓ・ｋにより一義的に定められ、これらの関数データと、曲線の関数式から認証データｍ１を特定するための規則データｘ１とから認証データｍが求められる。
【００５４】
ここで、関数データｘ２〜ｘ４・ｍ２・ｓ・ｋ及び規則データｘ１は、認証データｍ１を分散して規定する分散データとして位置付けられ、これらの分散データｘ１〜ｘ４・ｍ２・ｓ・ｋが全て揃わないと認証データｍ１を求めることができない。
【００５５】
分散データｘ１〜ｘ４・ｍ２・ｓ・ｋは、その一部が、認証時とは別の手順で事前にあるいは事後に、クライアント装置１とサーバ装置２との間で共有させ、認証要求時に、クライアント装置１において、認証データｍから、サーバ装置２との間で共有しない分散データを生成して、その分散データをサーバ装置２に送り、サーバ装置２において、自装置が保持する分散データとクライアント装置１から受け取った分散データとから認証データを求めることができる。
【００５６】
ここで、クライアント装置１とサーバ装置２との間で共有させる分散データと、認証時にクライアント装置１からサーバ装置２に送る分散データをどのように設定するかは、図２・図３の１次直線を用いた例と同様に、種々の組み合わせが考えられるが、この２次関数による方式でも、図２・図３の例と同様に、中間者によるなりすましや認証データの盗取の余地がある。
【００５７】
そこで、以下に示すように、クライアント装置１からサーバ装置２に分散データをそのまま送ることはせず、クライアント装置１において、分散データに所要の演算処理を行った検証データを生成して、その検証データをサーバ装置２に送り、サーバ装置２において、自身が保持する認証データと、クライアント装置１から受け取った検証データとに基づいて、クライアント装置１の正当性を検証する。
【００５８】
＜秘密分散方式で管理データの例＞
図５は、図１に示したクライアント装置及びサーバ装置の第１の例を示すブロック図である。ここでは、図４に示した２次関数による方式が採用され、分散データの一部ｘ１〜ｘ４が、クライアント装置１とサーバ装置２との間で共有されている。
【００５９】
クライアント装置（被認証装置）１は、認証データｍ１を秘密に記憶する認証データ記憶部１０１と、分散データｘ１〜ｘ４を秘密に記憶する分散データ記憶部１０２と、分散データｓを乱数で生成する乱数生成部１０３と、所要の管理データを格納した分散データｍ２を生成する分散データ生成部１０４と、認証データ記憶部１０１に記憶された認証データｍ１、分散データ記憶部１０２に記憶された分散データｘ１〜ｘ４、乱数生成部１０３で生成した分散データｓ、及び分散データ生成部１０４で得られた分散データｍ２から分散データｋを求める関数処理部１０５と、関数処理部１０５で算出された分散データｋを一方向性関数を用いて変換して検証データＦ（ｋ）を求める検証データ生成部１０６とを有しており、クライアント装置１からサーバ装置２に対する認証要求時に、検証データ生成部１０６で得られた検証データＦ（ｋ）、乱数生成部１０３で生成した分散データｓ、及び分散データ生成部１０４で得られた分散データｍ２がサーバ装置２に送られる。
【００６０】
関数処理部１０５では、分散データｘ１・ｘ２・ｘ４・ｍ２・ｓと認証データｍ１から関数が特定され、この関数と分散データｘ３から分散データｋが求められる。
【００６１】
管理データは、クライアント装置１において所定の処理動作が実行された時刻に関する情報（時刻情報）、クライアント装置１がサーバ装置２を利用した回数、すなわちクライアント装置１がサーバ装置２に対して行った認証の回数に関する情報（利用回数情報）、及びクライアント装置１がサーバ装置２を利用する際の権限に関する情報（利用権限情報）である。
【００６２】
ここで、利用権限情報とは、利用を許可された期間、例えばサーバの利用権限を他人に一時的に譲渡した場合の利用期間などである。また、認証を受けた後の利用の制限、例えば、承認印の押印の可否、閲覧や編集の可否など、権限の範囲の設定する情報を付加して、認証成功後の利用の制限を行うものとしても良い。
【００６３】
検証データ生成部１０６で用いられる一方向性関数としては、ハッシュ関数などの典型的な一方向性関数も可能であるが、実用上十分な一方向性が得られる２乗関数が好適であり、演算負荷が低いことから、低速の演算機能しか備えていない簡易な装置（ＲＦＩＤタグなど）にも適用することができる。
【００６４】
サーバ装置（認証装置）２は、複数のクライアント装置１ごとの認証データｍを蓄積する認証データ蓄積部２０１と、分散データｘ１〜ｘ４を記憶する分散データ記憶部２０２と、分散データ記憶部２０２に記憶された分散データｘ１〜ｘ４、認証データ蓄積部２０１に蓄積された認証データｍ１、及びクライアント装置１から受け取った分散データｓ・ｍ２から分散データｋを求める関数処理部２０３と、関数処理部２０３で算出された分散データｋをクライアント装置１の検証データ生成部１０６と同一の一方向性関数を用いて変換して検証データＦ（ｋ）を求める検証データ生成部２０４と、検証データ生成部２０４で算出された検証データＦ（ｋ）とクライアント装置１から受け取った検証データＦ（ｋ）とを比較してクライアント装置１の正当性を検証する照合部２０５とを有している。
【００６５】
関数処理部２０３では、分散データｘ１・ｘ２・ｘ４・ｍ２・ｓと認証データｍ１から関数が復元され、この関数と分散データｘ３から分散データｋが求められる。このとき、認証データ蓄積部２０１から認証データｍが順次読み出され、照合部２０５において、検証データ生成部２０４で算出された検証データＦ（ｋ）とクライアント装置１から受け取った検証データＦ（ｋ）とが一致すれば認証が成功したものとし、両者が一致しなければ、次の認証データｍ１を認証データ蓄積部２０１から読み出して同様の処理が行われ、一致するものがなければ認証が失敗したものとする。
【００６６】
さらにサーバ装置２は、クライアント装置１から受け取った分散データｍ２から管理データＴを抽出するデータ抽出部２０６と、データ抽出部２０６で得られた管理データＴに基づいて認証の可否を判定する認証判定部２０７とを有している。認証判定部２０７では、データ抽出部２０６で得られた管理データＴが認証に関わるデータであれば、自装置が保持する管理データＴとを比較する。両者に所定の許容範囲を超えた相違がある場合には、照合部２０５で照合できても、認証を拒否する。
【００６７】
また、照合部２０５で照合でき、かつ管理データＴが利用権限に関わるデータであれば、その制限内でアクセスを許可する。
【００６８】
ここでは、管理データＴ内の時刻情報に基づいて時刻により認証を制限する、例えば、クライアント装置１から受け取った管理データＴ内の時刻情報と現在時刻とを比較して、一定以上の時刻が経過していれば、認証を拒否する。また、管理データＴ内の利用回数情報に基づいて利用回数により認証を制限する、例えばクライアント装置１から受け取った管理データＴ内の利用回数情報と現在の利用回数とを比較して、決められた範囲外であれば、認証を拒否する。また、管理データ内の利用権限情報に基づいて利用権限により認証を制限することができる。
【００６９】
この構成では、中間者装置３が、分散データｘ１〜ｘ４を知っていて、かつ中間者装置３により、クライアント装置１からサーバ装置２に送られる分散データｍ２・ｓと検証データＦ（ｋ）を盗み見されたとしても、つまり、中間者装置３が、ｋ以外のすべての分散データとＦ（ｋ）を知りえたとしても、中間者装置３では、Ｆ（ｋ）からｋを求めることができないため、認証データｍを求めることはできない。
【００７０】
また管理データＴが時刻情報である場合には、時間の経過により管理データＴの内容が変化するのに応じて、クライアント装置１とサーバ装置２との間で送受される分散データが変化するため、クライアント装置１とサーバ装置２との間での遣り取りを真似してここで用いられた分散データを使用して不正に認証を受けることができなくなり、リトライ攻撃を防御することができる。なお、管理データを改ざんすると、他の分散データとの整合がとれなくなるため、中間者はこの値を改ざんすることができない。これは、管理データＴが利用回数情報である場合も同様である。
【００７１】
また管理データＴが利用権限情報である場合には、その内容によって、サーバのアクセスを制限可能となる。
【００７２】
管理データは、利用者が第３者から不正を受けないために重要であるが、これ以外にも、例えば、時間制限と利用制限をかけた分散データと検証データを渡すことで、他人に代理で作業させることが可能であるなど、非常に有効なパスワード管理が行える。
【００７３】
なお、クライアント装置１の認証データｍ１を識別するＩＤデータを、検証データＦ（ｋ）及び乱数データｍ２・ｓと共に、クライアント装置１からサーバ装置２に送るようにしても良い。このようにすると、クライアント装置１から受け取ったＩＤデータに対応する認証データｍ１を認証データ蓄積部２０１から読み出すことで、照合部２０５での比較処理が１回で済み、処理が簡便になる。
【００７４】
＜秘密分散方式で管理データの別の例＞
図６は、図１に示したクライアント装置及びサーバ装置の第２の例を示すブロック図である。ここでは、図３（Ａ）に示した１次関数による方式２が採用され、分散データの一部ｘ１〜ｘ３が、クライアント装置１とサーバ装置２との間で共有されている。
【００７５】
クライアント装置１では、分散データ記憶部１０２において分散データｘ１〜ｘ３が秘密に記憶され、所要の管理データＴを格納した分散データｓを生成する分散データ生成部１０７を有しており、検証データ生成部１０６で得られた検証データＦ（ｋ）と分散データ生成部１０７で得られた分散データｓがサーバ装置２に送られる。
【００７６】
サーバ装置２では、データ抽出部２０６において、クライアント装置１から受け取った分散データｓから管理データＴを抽出する処理が行われ、認証判定部２０７において、データ抽出部２０６で得られた管理データに基づいて認証の可否を判定する処理が行われる。
【００７７】
なお、分散データｓが固定値になる場合には、クライアント装置１の分散データ生成部１０７で、乱数生成部１０８で生成した乱数データに所要の管理データＴを付加して分散データｓを生成するものとすれば良い。
【００７８】
＜秘密分散方式で公開鍵データの例＞
図７は、図１に示したクライアント装置及びサーバ装置の第３の例を示すブロック図である。ここでは、図４に示した２次関数による方式が採用され、分散データの一部ｘ１〜ｘ４が、クライアント装置１とサーバ装置２との間で共有されている。また、クライアント装置１とサーバ装置２との間でＳＳＬ通信が行われ、ＳＳＬ通信のネゴシエーションにおいてサーバ装置２の公開鍵データＥが格納されたサーバ証明書がクライアント装置１に渡される。
【００７９】
クライアント装置１は、ＳＳＬ通信制御部１１１と、ＳＳＬ通信制御部１１１によりサーバ装置２から取得したサーバ装置２の公開鍵データＥに基づいて分散データｍ２を生成する分散データ生成部１１２とを有しており、ここで得られた分散データｍ２、認証データ記憶部１０１に記憶された認証データｍ１、分散データ記憶部１０２に記憶された分散データｘ１〜ｘ４、及び乱数生成部１０３で生成した分散データｓから分散データｋを求める処理が関数処理部１０５で行われる。
【００８０】
サーバ装置２は、ＳＳＬ通信制御部２１１と、このＳＳＬ通信制御部２１１によりクライアント装置１に送ったものと同じ自装置の公開鍵データＥに基づいて分散データｍ２を生成する分散データ生成部２１２とを有しており、分散データ生成部２１２で得られた分散データｍ２、分散データ記憶部２０２に記憶された分散データｘ１〜ｘ４、認証データ蓄積部２０１に蓄積された認証データｍ１、及びクライアント装置１から受け取った分散データｓから分散データｋを求める処理が関数処理部２０３にて行われる。
【００８１】
この構成では、クライアント装置１とサーバ装置２との間で送受される分散データが、サーバ装置２の公開鍵データＥに基づいて生成されるため、クライアント装置１とサーバ装置２との間の通信に介入する中間者装置３が存在すると、公開鍵データＥが異なることで中間者装置３の介入が判明するため、中間者攻撃を防御することができる。
【００８２】
すなわち、中間者装置３では、暗号通信データの復号化が可能なように自装置が保持する秘密鍵に対応する公開鍵が格納された偽のサーバ証明書を、クライアント装置１からのＳＳＬ通信の開始要求を受けた際にクライアント装置１に送る。クライアント装置１では偽のサーバ証明書に格納された偽の公開鍵データＥに基づいて検証データＦ（ｋ）を求める。
【００８３】
一方、サーバ装置２では、自装置の真正な公開鍵データＥに基づいて検証データＦ（ｋ）を求める。このため、照合部２０５にて、検証データ生成部２０４で算出された検証データＦ（ｋ）とクライアント装置１から受け取った検証データＦ（ｋ）とを比較してクライアント装置１の正当性を検証する際に、両者が一致する認証データｍ１が存在しないため、検証が失敗し、クライアント装置１とサーバ装置２との間に中間者が介入していることが判明する。
【００８４】
なおここでは、公開鍵データに基づいて分散データｓを生成するものとしたが、ＳＳＬ通信におけるネゴシエーション時に受け取るサーバ証明書のデータあるいは公開鍵データをハッシュ関数で変換したものなども可能である。これはこの他の例でも同様である。
【００８５】
＜秘密分散方式で応答データの例＞
図８は、図１に示したクライアント装置及びサーバ装置の第４の例を示すブロック図である。ここでは、サーバ装置２が、図７の例で示した各処理の後、照合部２０５でのクライアント装置１の正当性の検証が成功した場合に、関数処理部２０３で得られた分散データｋを、検証データ生成部２０４とは異なる一方向性関数を用いて変換して応答データＧ（ｋ）を求める応答データ生成部２１４を有しており、ここで得られた応答データＧ（ｋ）がクライアント装置１に送られる。
【００８６】
クライアント装置１は、関数処理部１０５で得られた分散データｋを、サーバ装置２の応答データ生成部２１４と同一の一方向性関数を用いて変換して応答データＧ（ｋ）を求める応答データ生成部１１３と、この応答データ生成部１１３で得られた応答データＧ（ｋ）とサーバ装置２から受け取った応答データＧ（ｋ）とを比較してサーバ装置２の正当性を検証する照合部１１４とを有している。
【００８７】
図７の構成では、クライアント装置１とサーバ装置２との間の通信に介入する中間者装置３は、クライアント装置１から受け取った検証データＦ（ｋ）をそのままサーバ装置２に転送することができなかったが、中間者装置３が、クライアント装置１とは異なる正規の認証データｍ１を保持している場合は、なりすましが可能である。中間者装置３は、自らの公開鍵をクライアント装置１に渡し、クライアント装置１から送られてきた検証データＦ（ｋ）を廃棄する。そして、自装置内で分散データｓを乱数で生成し、この分散データｓと、サーバ装置２から受け取った真正なサーバ証明書に格納された真正な公開鍵データＥに基づいて検証データＦ（ｋ）を求めて、この検証データＦ（ｋ）と分散データｓをサーバ装置２に送ると、サーバ装置２の照合部２０５にて、検証データ生成部２０４で算出された検証データＦ（ｋ）と中間者装置から受け取った検証データＦ（ｋ）とが一致する認証データｍ１が存在するため、検証が成功する。
【００８８】
ところがこの構成では、このようななりすましを防御できる。中間者装置３は、クライアント装置１の認証データｍ１を知らないため、サーバ装置２から送られる応答データＧ（ｋ）を作成できない。中間者装置３が応答データＧ（ｋ）を、そのままクライアント装置１に送ったとしてもクライアント装置１では、照合部１１４において、自装置で得られた応答データＧ（ｋ）とサーバ装置２から受け取った応答データＧ（ｋ）との比較を行った際に、これらの応答データＧ（ｋ）は、元になる認証データｍ１が異なっているため、両者は一致せず、検証が失敗し、クライアント装置１とサーバ装置２との間に中間者が介入していることが判明する。
【００８９】
ここで、応答データは、検証データと同様に、ハッシュ関数や２乗関数などの一方向性関数を用いて分散データｋを変換する演算処理により得られるものとすれば良いが、検証データを求める演算処理とは異なる演算方法により得られるものとすることが望ましい。また、応答データは、認証データｍ１に分散データｋを乗じた積データｍ１×ｋとすることも可能である。
【００９０】
＜秘密分散方式でネットワークアドレスの例＞
図９は、図１に示したクライアント装置及びサーバ装置の第５の例を示すブロック図である。ここでは、図７で公開鍵から分散データｍ２を生成していたものを、サーバ装置２のＩＰアドレス（ネットワークアドレス）から分散データｍ２を生成している。クライアント装置１が、ネットワーク通信制御部１２１によりサーバ装置２から取得したサーバ装置２のＩＰアドレス（ネットワークアドレス）に基づいて分散データｍ２を生成する分散データ生成部１２２を有しており、ここで得られた分散データｍ２が関数処理部１０５に送られる。サーバ装置２は、ネットワーク通信制御部２２１に保持された自装置のＩＰアドレスに基づいて分散データｍ２を生成する分散データ生成部２２２を有しており、ここで得られた分散データｍ２が関数処理部２０３に送られる。その他の構成は、図７の例と同様である。
【００９１】
なおここでは、ネットワークアドレスとしてＩＰアドレスを用いたが、ＭＡＣアドレスなどを利用することも可能である。
【００９２】
またこの例とは逆に、クライアント装置１において、自装置のネットワークアドレスに基づいて分散データｍ２を生成し、サーバ装置２において、クライアント装置１のネットワークアドレスに基づいて分散データｍ２を生成するものとしても良い。
【００９３】
＜秘密分散方式で１次関数の例＞
図１０は、図１に示したクライアント装置及びサーバ装置の第６の例を示すブロック図である。ここでは、図３（Ａ）の方式２が採用され、分散データの一部ｘ１〜ｘ３が、クライアント装置１とサーバ装置２との間で共有されている。
【００９４】
クライアント装置１では、関数処理部１０５において、認証データ記憶部１０１に記憶された認証データｍ、分散データ記憶部１０２に記憶された分散データｘ１〜ｘ３、及びサーバ装置２の公開鍵データＥに基づいて分散データ生成部１１２で得られた分散データｓから分散データｋを求める処理が行われ、検証データ生成部１０６で得られた検証データＦ（ｋ）のみがサーバ装置２に送られる。
【００９５】
サーバ装置２では、分散データ記憶部２０２に記憶された分散データｘ１〜ｘ３、認証データ蓄積部２０１に蓄積された認証データｍ１、及びサーバ装置２の公開鍵データＥに基づいて分散データ生成部２１２で得られた分散データｓから分散データｋを求める処理が関数処理部２０３で行われる。
【００９６】
なお、分散データｓには、乱数データを付加するのが望ましい。この場合、クライアント装置１は、サーバ装置２に分散データｓを送信しなければならない。
【００９７】
＜秘密分散方式で１次関数の別の例＞
図１１は、図１に示したクライアント装置及びサーバ装置の第７の例を示すブロック図である。ここでは、クライアント装置１が、認証データ記憶部１０１に記憶された認証データｍとＳＳＬ通信制御部１１１によりサーバ装置２から取得したサーバ装置２の公開鍵データＥとを統合するデータ統合部１３１を有しており、ここで得られた統合データｍ’、分散データ記憶部１０２に記憶された分散データｘ１〜ｘ３、及び乱数生成部１０３で得られた分散データｓから分散データｋを求める処理が関数処理部１０５で行われる。
【００９８】
サーバ装置２は、認証データ蓄積部２０１に蓄積された認証データｍと自装置の公開鍵データＥとを統合するデータ統合部２３１を有しており、ここで得られた統合データｍ’、分散データ記憶部２０２に記憶された分散データｘ１〜ｘ３、及びクライアント装置１から受け取った分散データｓから分散データｋを求める処理が関数処理部２０３で行われる。
【００９９】
＜秘密分散方式で管理データと固有データを組み合わせた例＞
図１２は、図１に示したクライアント装置及びサーバ装置の第８の例を示すブロック図である。ここでは、図７の例と同様に、クライアント装置１の分散データ生成部１１２において、ＳＳＬ通信制御部１１１によりサーバ装置２から取得したサーバ装置２の公開鍵データＥに基づいて分散データｍ２を生成する処理が行われ、また図６の例と同様に、分散データ生成部１０７において、所要の管理データＴを格納した分散データｓを生成する処理が行われ、分散データ生成部１０７で得られた分散データｓが検証データＦ（ｋ）と共にサーバ装置２に送られる。
【０１００】
サーバ装置２では、図７の例と同様に、分散データ生成部２１２にて、ＳＳＬ通信制御部２１１によりクライアント装置１に送ったものと同じ自装置の公開鍵データＥに基づいて分散データｍ２を生成する処理が行われ、また図６の例と同様に、データ抽出部２０６において、クライアント装置１から受け取った分散データｓから管理データＴを抽出する処理が行われ、認証判定部２０７において、データ抽出部２０６で得られた管理データに基づいて認証の可否を判定する処理が行われる。
【０１０１】
＜秘密分散方式で管理データと固有データを組み合わせた別の例＞
図１３は、図１に示したクライアント装置及びサーバ装置の第９の例を示すブロック図である。ここでは、３次関数による方式が採用され、分散データの一部ｘ１〜ｘ５が、クライアント装置１とサーバ装置２との間で共有されている。なお対応関係は、（ｘ１, ｍ１）,（ｘ２, ｍ２）,（ｘ３, ｋ）,（ｘ４, ｓ１）,（ｘ５, ｓ２）とする。
【０１０２】
クライアント装置１では、図７の例と同様に、分散データ生成部１１２において、ＳＳＬ通信制御部１１１によりサーバ装置２から取得したサーバ装置２の公開鍵データＥに基づいて分散データｍ２を生成する処理が行われ、また図５の例と同様に、乱数生成部１０３において、分散データｓ１を乱数で生成する処理が行われ、分散データ生成部１０４において、所要の管理データを格納した分散データｓ２を生成する処理が行われ、乱数生成部１０３で得られた分散データｓ１、及び分散データ生成部１０４で得られた分散データｓ２が検証データＦ（ｋ）と共にサーバ装置２に送られる。
【０１０３】
サーバ装置２では、図７の例と同様に、分散データ生成部２１２において、ＳＳＬ通信制御部２１１によりクライアント装置１に送ったものと同じ自装置の公開鍵データＥに基づいて分散データｍ２を生成する処理が行われ、また図５の例と同様に、データ抽出部２０６にて、クライアント装置１から受け取った分散データｍ２から管理データを抽出する処理が行われ、認証判定部２０７にて、データ抽出部２０６で得られた管理データに基づいて認証の可否を判定する処理が行われる。
【０１０４】
＜秘密分散方式で逆認証の例＞
図１４は、図１に示したクライアント装置及びサーバ装置の第１０の例を示すブロック図である。これは、図７の例とは逆に、クライアント装置１においてサーバ装置２の正当性を検証するものであり、クライアント装置が認証装置となり、サーバ装置２が被認証装置となっている。
【０１０５】
クライアント装置（認証装置）１は、自装置の認証データｍ１を識別するＩＤデータを記憶するＩＤデータ記憶部１４１を有しており、このＩＤデータと乱数生成部１０３で得られた分散データｓとがサーバ装置２に送られる。
【０１０６】
サーバ装置（被認証装置）２では、クライアント装置１から受け取ったＩＤデータに基づいてクライアント装置１の認証データｍ１を認証データ蓄積部２０１から取り出し、関数処理部２０３において、認証データ蓄積部２０１から取り出した認証データｍ１、分散データ記憶部２０２に記憶された分散データｘ１〜ｘ４、分散データ生成部２１２で得られた分散データｍ２、及びクライアント装置１から受け取った分散データｓから分散データｋを求める処理が行われ、検証データ生成部２０４において、関数処理部２０３で得られた分散データｋを一方向性関数を用いて変換して検証データＦ（ｋ）を求める処理が行われ、この検証データＦ（ｋ）がクライアント装置１に送られる。
【０１０７】
クライアント装置１は、サーバ装置２から受け取った検証データＦ（ｋ）と検証データ生成部１０５で算出された検証データＦ（ｋ）とを比較してサーバ装置２の正当性を検証する照合部１４２を有している。
【０１０８】
クライアント装置１とサーバ装置２との間の通信に中間者装置３が介入する場合、中間者装置３は、クライアント装置１からのＳＳＬ通信の開始要求に対して偽のサーバ証明書をクライアント装置１に送り、クライアント装置１では、分散データｓを乱数で生成し、その分散データｓとＩＤデータを中間者装置３に送る。
【０１０９】
中間者装置３では、クライアント装置１から取得したＩＤデータをそのまま、あるいは自己の認証データに対応するＩＤデータをサーバ装置２に送る。サーバ装置２では、中間者装置３から受け取ったＩＤデータに対応するクライアント装置１あるいは中間者装置の認証データｍ１と自装置の真正な公開鍵データＥに基づいて検証データＦ（ｋ）を求めて、その検証データＦ（ｋ）を中間者装置３に送る。中間者装置３は、クライアント装置１の認証データｍ１を知らないため、サーバ装置２から送られる検証データＦ（ｋ）をそのままクライアント装置１に送るしかない。
【０１１０】
クライアント装置１では、照合部１４２において、中間者装置３から受け取った検証データＦ（ｋ）と検証データ生成部１０６で算出された検証データＦ（ｋ）とを比較する処理が行われるが、クライアント装置１では、偽のサーバ証明書に格納された偽の公開鍵データＥに基づいて検証データＦ（ｋ）が求められるのに対して、サーバ装置２では、自装置の真正な公開鍵データＥに基づいて検証データＦ（ｋ）が求められるため、照合部１４２での検証は失敗し、クライアント装置１とサーバ装置２との間に中間者が介入していることが判明する。
【０１１１】
＜秘密分散方式で逆認証の別の例＞
図１５は、図１に示したクライアント装置及びサーバ装置の第１１の例を示すブロック図である。ここでは、図１４と異なり、サーバ装置（被認証装置）２が、乱数生成部２４１で生成した乱数データに所要の管理データＴを付加して分散データｓを生成する分散データ生成部２４２を有しており、ここで得られた分散データｓが検証データＦ（ｋ）と共にクライアント装置１に送られる。
【０１１２】
クライアント装置１は、サーバ装置２から受け取った分散データｓから管理データを抽出するデータ抽出部１４３と、データ抽出部１４３で得られた管理データＴに基づいて認証の可否を判定する認証判定部１４４とを有している。
【０１１３】
この構成では、図１４の例と比較して、分散データｓがサーバ装置２で生成されてクライアント装置１に送られるようになっており、中間者装置３が、クライアント装置１とサーバ装置２との間でのデータのやりとりを模倣して、同じ分散データｓと検証データＦ（ｋ）とをクライアント装置１に送ることで、クライアント装置１での検証を成功させることができ、リトライ攻撃を許すことになるが、分散データｓに格納される管理データに含まれる時刻情報、利用回数情報、及び利用権限情報により認証判定部１４４で認証が拒否されるため、リトライ攻撃を防御することができる。
【０１１４】
≪積（暗号）方式≫
＜積方式（鍵共有型）で管理データの例＞
図１６は、図１に示したクライアント装置及びサーバ装置の第１２の例を示すブロック図である。クライアント装置（被認証装置）１は、自装置の正当性を示す認証データＭを秘密に記憶する認証データ記憶部１５１と、鍵データＳを秘密に記憶する鍵データ記憶部１５２と、認証データＭに所要の管理データＴを付加するデータ統合部１５３と、ここで得られた統合データＭ＋Ｔに鍵データ記憶部１５２の鍵データＳを乗じて積データ（Ｍ＋Ｔ）×Ｓを求める積演算部１５４と、を有しており、クライアント装置１からサーバ装置２に対する認証要求時に、積データ（Ｍ＋Ｔ）×Ｓがサーバ装置２に送られる。
【０１１５】
サーバ装置（認証装置）２は、複数のクライアント装置１ごとの認証データＭを蓄積する認証データ蓄積部２５１と、鍵データＳを秘密に記憶する鍵データ記憶部２５２と、クライアント装置１から受け取った積データ（Ｍ＋Ｔ）×Ｓに鍵データ記憶部２５２の鍵データＳの逆数を乗じて統合データＭ＋Ｔを求める逆演算部２５３と、逆演算部２５３で得られた統合データＭ＋Ｔから認証データＭ及び管理データＴを取り出すデータ抽出部２５４と、データ抽出部２５４で得られた認証データＭを認証データ蓄積部２０１の認証データと比較してクライアント装置１の正当性を検証する照合部２５５と、データ抽出部２５４で得られた管理データＴに基づいて認証の可否を判定する認証判定部２５６とを有している。
【０１１６】
この構成では、クライアント装置１とサーバ装置２との間の通信に介入する中間者装置３により、クライアント装置１からサーバ装置２に送られる積データ（Ｍ＋Ｔ）×Ｓを盗み見されたとしても、中間者装置３では、鍵データＳを知らなければ、認証データｍを求めることはできない。また、時間の経過などの諸要因により管理データＴの内容が変化するのに応じて、クライアント装置１とサーバ装置２との間で送受される積データが変化するため、クライアント装置１とサーバ装置２との間での遣り取りを真似してここで用いられた積データを使用して不正に認証を受けることができなくなり、リトライ攻撃を防御することができる。
【０１１７】
＜積方式（鍵共有型）で管理データの別の例＞
図１７は、図１に示したクライアント装置及びサーバ装置の第１３の例を示すブロック図である。ここでは、クライアント装置１のデータ統合部１５３において、前記の例とは逆に、鍵データ記憶部１５２に記憶された鍵データＳに所要の管理データＴを付加する処理が行われ、積演算部１５４において、データ統合部１５３で得られた統合データＳ＋Ｔに認証データＭを乗じて積データＭ×（Ｓ＋Ｔ）を求める処理が行われ、ここで得られた積データＭ×（Ｓ＋Ｔ）がサーバ装置２に送られる。
【０１１８】
サーバ装置２では、逆演算部２５３において、クライアント装置１から受け取った積データＭ×（Ｓ＋Ｔ）に、認証データ蓄積部２５１に蓄積された認証データＭの逆数を乗じて統合データＳ＋Ｔを求める処理が行われ、データ抽出部２５４において、逆演算部２５３で得られた統合データＳ＋Ｔから鍵データＳ及び管理データＴが取り出され、照合部２５７において、データ抽出部２５４で得られた鍵データＳと鍵データ記憶部２５２に記憶された鍵データＳとを比較してクライアント装置１の正当性を検証する処理が行われる。
【０１１９】
このとき、認証データ蓄積部２５１から認証データＭが順次読み出され、照合部２５７において、データ抽出部２５４で得られた鍵データＳと鍵データ記憶部２５２に記憶された鍵データＳとが一致すれば認証が成功したものとし、両者が一致しなければ、次の認証データＭを認証データ蓄積部２５１から読み出して同様の処理が行われ、一致するものがなければ認証が失敗したものとする。
【０１２０】
＜積方式（鍵乱数型）で管理データの例＞
図１８は、図１に示したクライアント装置及びサーバ装置の第１４の例を示すブロック図である。ここでは、クライアント装置１が、鍵データＳを乱数で生成する乱数生成部１６１を有しており、データ統合部１５３において、乱数生成部１６１で生成した鍵データＳに所要の管理データＴを付加する処理が行われる。また、クライアント装置１は、乱数生成部１６１で得られた鍵データＳを一方向性関数を用いて変換して検証データＦ（Ｓ）を求める検証データ生成部１６２を有しており、ここで得られた検証データＦ（Ｓ）が、積データＭ×（Ｓ＋Ｔ）と共にサーバ装置２に送られる。
【０１２１】
サーバ装置２は、データ抽出部２５４で得られた鍵データＳをクライアント装置１の検証データ生成部１６２と同一の一方向性関数を用いて変換して検証データＦ（Ｓ）を求める検証データ生成部２６１と、検証データ生成部２６１で算出された検証データＦ（Ｓ）とクライアント装置１から受け取った検証データＦ（Ｓ）とを比較してクライアント装置１の正当性を検証する照合部２６２とを有している。
【０１２２】
このとき、逆演算部２５３では、認証データ蓄積部２５１から認証データＭが順次読み出され、照合部２６２にて、検証データ生成部２６１で得られた検証データＦ（Ｓ）とクライアント装置１から受け取った検証データＦ（Ｓ）とが一致すれば認証が成功したものとし、両者が一致しなければ、次の認証データＭを認証データ蓄積部２０１から読み出して同様の処理が行われ、一致するものがなければ認証が失敗したものとする。
【０１２３】
なお、クライアント装置１の検証データ生成部１６２及びサーバ装置２の検証データ生成部２６１では、統合データＳ＋Ｔを一方向性関数を用いて変換して検証データＦ（Ｓ＋Ｔ）を求める構成としても良い。
【０１２４】
＜積方式（鍵共有型）で固有データの例＞
図１９は、図１に示したクライアント装置及びサーバ装置の第１５の例を示すブロック図である。ここでは、クライアント装置１とサーバ装置２との間でＳＳＬ通信が行われ、ＳＳＬ通信のネゴシエーションにおいてサーバ装置２の公開鍵データＥが格納されたサーバ証明書がクライアント装置１に送られる。
【０１２５】
クライアント装置１は、ＳＳＬ通信制御部１７１を有し、データ統合部１５３において、ＳＳＬ通信制御部１７１によりサーバ装置２から取得したサーバ装置２の公開鍵データＥを、認証データＭに付加する処理が行われ、積演算部１５４において、データ統合部１５３で得られた統合データＭ＋Ｅに鍵データ記憶部１５２の鍵データＳを乗じて積データ（Ｍ＋Ｅ）×Ｓを求める処理が行われ、この積データ（Ｍ＋Ｅ）×Ｓがサーバ装置２に送られる。
【０１２６】
サーバ装置２では、逆演算部２５３において、クライアント装置１から受け取った積データ（Ｍ＋Ｅ）×Ｓに、鍵データ記憶部２５２の鍵データＳの逆数を乗じて統合データＭ＋Ｅを求める処理が行われ、データ抽出部２５４において、逆演算部２５３で得られた統合データＭ＋Ｅから認証データＭ及び公開鍵データＥを取り出す処理が行われる。
【０１２７】
またサーバ装置２は、ＳＳＬ通信制御部２７１によりクライアント装置１に送ったものと同じ自装置の公開鍵データＥとデータ抽出部２５４で得られた公開鍵データＥとを比較して公開鍵データＥの真正を検証する照合部２７２と、データ抽出部２５４で得られた認証データＭと認証データ蓄積部２５１に蓄積された認証データＭとを比較してクライアント装置１の正当性を検証する照合部２７３とを有しており、照合部２７２と照合部２７３との双方で行われる検証が共に成功した場合に認証が成功したものとする。
【０１２８】
この構成では、クライアント装置１とサーバ装置２との間で送受される積データが、サーバ装置２の公開鍵データＥに基づいて生成されるため、クライアント装置１とサーバ装置２との間の通信に介入する中間者装置３が存在すると、公開鍵データＥが異なることで中間者装置３の介入が判明するため、中間者攻撃を防御することができる。
【０１２９】
＜積方式（鍵共有型）で固有データの別の例＞
図２０は、図１に示したクライアント装置及びサーバ装置の第１６の例を示すブロック図である。ここでは、クライアント装置（被認証装置）１のデータ統合部１５３において、前記の例とは逆に、ＳＳＬ通信制御部１７１で取得したサーバ装置２の公開鍵データＥを、鍵データ記憶部１５２に記憶された鍵データＳに付加する処理が行われ、積演算部１５４において、データ統合部１５３で得られた統合データＳ＋Ｅに認証データＭを乗じて積データＭ×（Ｓ＋Ｅ）を求める処理が行われ、ここで得られた積データＭ×（Ｓ＋Ｅ）がサーバ装置２に送られる。
【０１３０】
サーバ装置２では、逆演算部２５３において、クライアント装置１から受け取った積データＭ×（Ｓ＋Ｔ）に、認証データ蓄積部２５１に蓄積された認証データＭの逆数を乗じて統合データＳ＋Ｔを求める処理が行われ、データ抽出部２５４において、逆演算部２５３で得られた統合データＳ＋Ｔから鍵データＳ及び管理データＴが取り出され、照合部２７２において、ＳＳＬ通信制御部２７１によりクライアント装置１に送ったものと同じ自装置の公開鍵データＥとデータ抽出部２５４で得られた公開鍵データＥとを比較して公開鍵データＥの真正を検証する処理が行われ、照合部２７３において、データ抽出部２５４で得られた鍵データＳと鍵データ記憶部２５２に記憶された鍵データＳとを比較して鍵データＳ真正を検証する処理が行われ、照合部２７２と照合部２７３との双方で行われる検証が共に成功した場合に認証が成功したものとする。
【０１３１】
なお、公開鍵データＥの代わりに、あるいはこれと併せて、図９の例と同様に、ＩＰアドレスやＭＡＣアドレスなどのネットワークアドレスに関するデータを、認証データＭや鍵データＳに付加することも可能である。
【０１３２】
＜積方式（鍵乱数型）で固有データの例＞
図２１は、図１に示したクライアント装置及びサーバ装置の第１７の例を示すブロック図である。ここでは、クライアント装置（被認証装置）１の乱数生成部１６１において、鍵データＳを乱数で生成する処理が行われ、データ統合部１５３において、ＳＳＬ通信制御部１７１によりサーバ装置２から取得したサーバ装置２の公開鍵データＥを、認証データＭに付加する処理が行われ、積演算部１５４において、データ統合部１５３で得られた統合データＭ＋Ｅに乱数生成部１６１で得られた鍵データＳを乗じて積データ（Ｍ＋Ｅ）×Ｓを求める処理が行われる。またクライアント装置１では、検証データ生成部１６２において、乱数生成部１６１で得られた鍵データＳを一方向性関数を用いて変換して検証データＦ（Ｓ）を求める処理が行われ、ここで得られた検証データＦ（Ｓ）が、積データ（Ｍ＋Ｅ）×Ｓと共にサーバ装置２に送られる。
【０１３３】
サーバ装置２は、認証データ蓄積部２５１に蓄積された認証データＭに、ＳＳＬ通信制御部２７１によりクライアント装置１に送ったものと同じ自装置の公開鍵データＥを付加するデータ統合部２８１を有しており、逆演算部２５３において、データ統合部２８１で得られた統合データＭ＋Ｅの逆数を、クライアント装置１から受け取った積データ（Ｍ＋Ｅ）×Ｓに乗じて鍵データＳを取り出す処理が行われ、検証データ生成部２６１において、逆演算部２５３で得られた鍵データＳをクライアント装置１の検証データ生成部１６２と同一の一方向性関数を用いて変換して検証データＦ（Ｓ）を求める処理が行われ、照合部２６２において、検証データ生成部２６１で得られた検証データＦ（Ｓ）とクライアント装置１から受け取った検証データＦ（Ｓ）とを比較してクライアント装置１の正当性を検証する処理が行われる。
【０１３４】
＜積方式（鍵乱数型）で固有データの別の例＞
図２２は、図１に示したクライアント装置及びサーバ装置の第１８の例を示すブロック図である。ここでは、クライアント装置１のデータ統合部１５３において、前記の例とは逆に、ＳＳＬ通信制御部１７１で取得したサーバ装置２の公開鍵データＥを、乱数生成部１６１で得られた鍵データＳに付加する処理が行われ、ここで得られた統合データＳ＋Ｅに認証データＭを乗じて積データＭ×（Ｓ＋Ｅ）を求める処理が積演算部１５４にて行われ、ここで得られた積データＭ×（Ｓ＋Ｅ）がサーバ装置２に送られる。
【０１３５】
サーバ装置２では、逆演算部２５３において、クライアント装置１から受け取った積データＭ×（Ｓ＋Ｅ）に、認証データ蓄積部２５１に蓄積された認証データＭの逆数を乗じて統合データＳ＋Ｅを求める処理が行われ、データ抽出部２５４において、逆演算部２５３で得られた統合データＳ＋Ｅから鍵データＳ及び公開鍵データＥを取り出す処理が行われ、照合部２７２において、ＳＳＬ通信制御部２７１によりクライアント装置１に送ったものと同じ自装置の公開鍵データＥとデータ抽出部２５４で得られた公開鍵データＥとを比較して公開鍵データＥの真正を検証する処理が行われる。
【０１３６】
またサーバ装置２の検証データ生成部２６１において、データ抽出部２５４で得られた鍵データＳをクライアント装置１の検証データ生成部１６２と同一の一方向性関数を用いて変換して検証データＦ（Ｓ）を求める処理が行われ、照合部２６２において、検証データ生成部２６１で得られた検証データＦ（Ｓ）とクライアント装置１から受け取った検証データＦ（Ｓ）とを比較してクライアント装置１の正当性を検証する処理が行われ、照合部２７２と照合部２６２との双方で行われる検証が共に成功した場合に認証が成功したものとする。
【０１３７】
＜積方式で逆認証の例＞
図２３は、図１に示したクライアント装置及びサーバ装置の第１９の例を示すブロック図である。これは、前記の例とは逆に、クライアント装置１においてサーバ装置２の正当性を検証するものであり、クライアント装置が認証装置となり、サーバ装置２が被認証装置となっている。
【０１３８】
クライアント装置（認証装置）１は、自装置の認証データＭを識別するＩＤデータを記憶するＩＤデータ記憶部１９１を有しており、このＩＤデータと乱数生成部１６１にて生成した鍵データＳとがサーバ装置２に送られる。
【０１３９】
サーバ装置（認証装置）２では、サーバ装置２から受け取った鍵データＳに、ＳＳＬ通信制御部２７１によりクライアント装置１に送ったものと同じ自装置の公開鍵データＥを付加する処理が行われ、積演算部２９１において、データ統合部２８１で得られた統合データＳ＋Ｅに、データ統合部２８１において、認証データ蓄積部２５１に蓄積された認証データＭを乗じて積データ（Ｓ＋Ｅ）×Ｍを求める処理が行われ、ここで得られた積データ（Ｓ＋Ｅ）×Ｍがクライアント装置１に送られる。
【０１４０】
クライアント装置１では、データ統合部１５３において、ＳＳＬ通信制御部１７１によりサーバ装置２から取得したサーバ装置２の公開鍵データＥを、乱数生成部１６１で得られた鍵データＳに付加する処理が行われ、積演算部１５４において、データ統合部１５３で得られた統合データＳ＋Ｅに認証データＭを乗じて積データ（Ｓ＋Ｅ）×Ｍを求める処理が行われ、照合部１９２において、積演算部１５４で得られた積データ（Ｓ＋Ｅ）×Ｍと、サーバ装置２から受け取った積データ（Ｓ＋Ｅ）×Ｍとを比較してサーバ装置２の正当性を検証する処理が行われる。
【０１４１】
＜積方式で逆認証の別の例＞
図２４は、図１に示したクライアント装置及びサーバ装置の第２０の例を示すブロック図である。ここでは、サーバ装置２が、鍵データＳを乱数で生成する乱数生成部２９３と、乱数生成部２９３で得られた鍵データＳを一方向性関数を用いて変換して検証データＦ（Ｓ）を求める検証データ生成部２９４とを有しており、ここで得られた検証データＦ（Ｓ）と、前記の例と同様に、積演算部２９１で得られた積データ（Ｍ＋Ｅ）×Ｓとがクライアント装置１に送られる。
【０１４２】
クライアント装置１は、クライアント装置１から受け取った積データ（Ｍ＋Ｅ）×Ｓに、データ統合部１５３で得られた統合データＭ＋Ｅの逆数を乗じて鍵データＳを求める逆演算部１９３と、逆演算部１９３で得られた鍵データＳをサーバ装置２の検証データ生成部２９４と同一の一方向性関数を用いて変換して検証データＦ（Ｓ）を求める検証データ生成部２９４と、検証データ生成部１９４で得られた検証データＦ（Ｓ）とサーバ装置２から受け取った検証データＦ（Ｓ）とを比較してサーバ装置２の正当性を検証する照合部１９５とを有している。
【産業上の利用可能性】
【０１４３】
本発明にかかる秘匿認証システムは、高度な秘匿性を確保すると共に演算負荷を軽減してコストを削減することができ、さらに種々の中間者攻撃を防御することができる効果を有し、他人に知られることなく認証データを被認証装置から認証装置に通知して認証を行う秘匿認証システムなどとして有用である。
【図面の簡単な説明】
【０１４４】
【図１】本発明による秘匿認証システムを示すシステム構成図
【図２】本発明における秘匿認証の要領を説明する図
【図３】本発明における秘匿認証の要領を説明する図
【図４】本発明による秘匿認証の別の例による要領を説明する図
【図５】図１に示したクライアント装置及びサーバ装置の第１の例を示すブロック図
【図６】図１に示したクライアント装置及びサーバ装置の第２の例を示すブロック図
【図７】図１に示したクライアント装置及びサーバ装置の第３の例を示すブロック図
【図８】図１に示したクライアント装置及びサーバ装置の第４の例を示すブロック図
【図９】図１に示したクライアント装置及びサーバ装置の第５の例を示すブロック図
【図１０】図１に示したクライアント装置及びサーバ装置の第６の例を示すブロック図
【図１１】図１に示したクライアント装置及びサーバ装置の第７の例を示すブロック図
【図１２】図１に示したクライアント装置及びサーバ装置の第８の例を示すブロック図
【図１３】図１に示したクライアント装置及びサーバ装置の第９の例を示すブロック図
【図１４】図１に示したクライアント装置及びサーバ装置の第１０の例を示すブロック図
【図１５】図１に示したクライアント装置及びサーバ装置の第１１の例を示すブロック図
【図１６】図１に示したクライアント装置及びサーバ装置の第１２の例を示すブロック図
【図１７】図１に示したクライアント装置及びサーバ装置の第１３の例を示すブロック図
【図１８】図１に示したクライアント装置及びサーバ装置の第１４の例を示すブロック図
【図１９】図１に示したクライアント装置及びサーバ装置の第１５の例を示すブロック図
【図２０】図１に示したクライアント装置及びサーバ装置の第１６の例を示すブロック図
【図２１】図１に示したクライアント装置及びサーバ装置の第１７の例を示すブロック図
【図２２】図１に示したクライアント装置及びサーバ装置の第１８の例を示すブロック図
【図２３】図１に示したクライアント装置及びサーバ装置の第１９の例を示すブロック図
【図２４】図１に示したクライアント装置及びサーバ装置の第２０の例を示すブロック図
【符号の説明】
【０１４５】
１  クライアント装置
２  サーバ装置
３  中間者装置
１０１  認証データ記憶部、１０２  分散データ記憶部、１０３  乱数生成部、１０４  分散データ生成部、１０５  関数処理部、１０６  検証データ生成部、１０７  分散データ生成部、１０８  乱数生成部、１１１  通信制御部、１１２  分散データ生成部、１１３  応答データ生成部、１１４  照合部、１２１  ネットワーク通信制御部、１２２  分散データ生成部、１３１  データ統合部、１４１  データ記憶部、１４２  照合部、１４３  データ抽出部、１４４  認証判定部、１５１  認証データ記憶部、１５２  鍵データ記憶部、１５３  データ統合部、１５４  積演算部、１６１  乱数生成部、１６２  検証データ生成部、１７１  通信制御部、１９１  データ記憶部、１９２  照合部、１９３  逆演算部、１９４  検証データ生成部、１９５  照合部
２０１  認証データ蓄積部、２０２  分散データ記憶部、２０３  関数処理部、２０４  検証データ生成部、２０５  照合部、２０６  データ抽出部、２０７  認証判定部、２０８  照合部、２１１  通信制御部、２１２  分散データ生成部、２１４  応答データ生成部、２２１  ネットワーク通信制御部、２２２  分散データ生成部、２３１  データ統合部、２４１  乱数生成部、２４２  分散データ生成部、２５１  認証データ蓄積部、２５２  鍵データ記憶部、２５３  逆演算部、２５４  データ抽出部、２５５  照合部、２５６  認証判定部、２５７  照合部、２６１  検証データ生成部、２６２  照合部、２７１  通信制御部、２７２  照合部、２７３  照合部、２８１  データ統合部、２９１  積演算部、２９３  乱数生成部、２９４  検証データ生成部
【図１】
2009272737.tif 000003
【図２】
2009272737.tif 000004
【図３】
2009272737.tif 000005
【図４】
2009272737.tif 000006
【図５】
2009272737.tif 000007
【図６】
2009272737.tif 000008
【図７】
2009272737.tif 000009
【図８】
2009272737.tif 000010
【図９】
2009272737.tif 000011
【図１０】
2009272737.tif 000012
【図１１】
2009272737.tif 000013
【図１２】
2009272737.tif 000014
【図１３】
2009272737.tif 000015
【図１４】
2009272737.tif 000016
【図１５】
2009272737.tif 000017
【図１６】
2009272737.tif 000018
【図１７】
2009272737.tif 000019
【図１８】
2009272737.tif 000020
【図１９】
2009272737.tif 000021
【図２０】
2009272737.tif 000022
【図２１】
2009272737.tif 000023
【図２２】
2009272737.tif 000024
【図２３】
2009272737.tif 000025
【図２４】
2009272737.tif 000026