(57)【特許請求の範囲】
【請求項１】
２つのＵＩＭカードあるいはＲＦＩＤから構成されるデバイスと認証局サーバとからなり、デバイス間の認証を行う認証システムであって、
第１のデバイスが、第２のデバイスから認証要求を受信する第１の受信手段と、
該第１のデバイスが、認証要求を受信したときに、前記認証局サーバにアクセスするアクセス手段と、
前記第１のデバイスが、前記認証局サーバにアクセスしたときに、前記認証局サーバが署名した使い捨てのワンタイム証明書を発行するワンタイム証明書発行手段と、
前記認証局サーバが、前記第１のデバイスとの間で共有している共通鍵を用いて、前記ワンタイム証明書を暗号化する暗号化手段と、
前記認証局サーバが、少なくとも暗号化したワンタイム証明書を前記第１のデバイスに送信する第１の送信手段と、
前記第１のデバイスが、前記第２のデバイスに少なくとも暗号化したワンタイム証明書を送信する第２の送信手段と、
前記第２のデバイスが受信したワンタイム証明書の署名を検証するとともに、ワンタイム証明書の発行時刻を検証する証明書検証手段と、
を備えたことを特徴とする認証システム。
【請求項２】
前記ワンタイム証明書発行手段が、前記ワンタイム証明書に対応する秘密鍵としての乱数Ｒを生成し、現在の時刻情報Ｔと前記第１のデバイスのＩＤと乱数Ｒとに排他的論理和演算の処理を行って得られたデータに前記認証局サーバの署名を行って、ワンタイム証明書を発行することを特徴とする請求項１に記載の認証システム。
【請求項３】
前記第１のデバイスのＩＤに、その正当性を検証するためのチェックコードを含めることを特徴とする請求項２に記載の認証システム。
【請求項４】
前記第１のデバイスのＩＤが、単純なインクリメントや予測可能なＩＤではないことを特徴とする請求項２に記載の認証システム。
【請求項５】
前記認証局サーバが、前記第１の送信手段が秘密鍵としての乱数Ｒを暗号化したワンタイム証明書とともに前記第１のデバイスに送信し、
前記第１のデバイスにおける前記第２の送信手段が前記暗号化したワンタイム証明書を送付した後に、前記秘密鍵としての乱数Ｒを前記第２のデバイスに送信することを特徴とする請求項２に記載の認証システム。
【請求項６】
前記認証局サーバが行う署名が復元型署名であることを特徴とする請求項１に記載の認証システム。
【請求項７】
前記第２のデバイスが予め決められた特定のデバイスである場合に、前記ワンタイム証明書発行手段が発行するワンタイム証明書に前記第２のデバイスのＩＤ情報を含めることを特徴とする請求項１に記載の認証システム。
【請求項８】
前記証明書検証手段が、前記証明書の発行時刻と現在時刻とを対比し、その時間差が、前記ワンタイム証明書の発行から前記第２のデバイスが受信するまでの処理時間と略一致したときに、前記ワンタイム証明書の正当性を認めることを特徴とする請求項１に記載の認証システム。
【請求項９】
前記認証局サーバが前記第１のデバイスと共有する前記共通鍵を破棄することにより、前記第１のデバイスを失効扱いとすることを特徴とする請求項１に記載の認証システム。
【請求項１０】
２つのＵＩＭカードあるいはＲＦＩＤから構成されるデバイスと認証局サーバとからなり、デバイス間の認証を行う認証システムにおける認証方法であって、
第１のデバイスが、第２のデバイスから認証要求を受信する第１のステップと、
該第１のデバイスが、認証要求を受信したときに、前記認証局サーバにアクセスする第２のステップと、
前記第１のデバイスが、前記認証局サーバにアクセスしたときに、前記認証局サーバが署名した使い捨てのワンタイム証明書を発行する第３のステップと、
前記認証局サーバが、前記第１のデバイスとの間で共有している共通鍵を用いて、前記ワンタイム証明書を暗号化する第４のステップと、
前記認証局サーバが、少なくとも暗号化したワンタイム証明書を前記第１のデバイスに送信する第５のステップと、
前記第１のデバイスが、前記第２のデバイスに少なくとも暗号化したワンタイム証明書を送信する第６のステップと、
前記第２のデバイスが受信したワンタイム証明書の署名を検証するとともに、ワンタイム証明書の発行時刻を検証する第７のステップと、
を備えたことを特徴とする認証方法。
【請求項１１】
２つのＵＩＭカードあるいはＲＦＩＤから構成されるデバイスと認証局サーバとからなり、デバイス間の認証を行う認証システムにおける認証方法をコンピュータに実行させるためのプログラムであって、
第１のデバイスが、第２のデバイスから認証要求を受信する第１のステップと、
該第１のデバイスが、認証要求を受信したときに、前記認証局サーバにアクセスする第２のステップと、
前記第１のデバイスが、前記認証局サーバにアクセスしたときに、前記認証局サーバが署名した使い捨てのワンタイム証明書を発行する第３のステップと、
前記認証局サーバが、前記第１のデバイスとの間で共有している共通鍵を用いて、前記ワンタイム証明書を暗号化する第４のステップと、
前記認証局サーバが、少なくとも暗号化したワンタイム証明書を前記第１のデバイスに送信する第５のステップと、
前記第１のデバイスが、前記第２のデバイスに少なくとも暗号化したワンタイム証明書を送信する第６のステップと、
前記第２のデバイスが受信したワンタイム証明書の署名を検証するとともに、ワンタイム証明書の発行時刻を検証する第７のステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認証システム、認証方法およびプログラムに関し、特に、認証処理の負荷を低減する認証システム、認証方法およびプログラムに関する。
【背景技術】
【０００２】
近年、様々なサービスがインターネットを通して電子的に提供されるようになってきている。そのようなサービスの提供を行う際には、利用者を認証することが不可欠となる。しかしながら、従来の認証処理には、多大な処理負荷を要するために、認証処理に多くの時間を要していた。
【０００３】
特に、ネットワークを介して、複数の端末（エンドエンティティ）や認証局に接続されたシステムにおいて、ある端末からの依頼に応じて、当該端末が信頼する認証局とは異なる認証局が発行した公開鍵証明書の有効性を確認するような場合には、認証処理に多くの時間を要していた。
【０００４】
こうした問題に対して、図７に示すようなシステムを構成し、任意の認証局を起点認証局とし、当該起点認証局が発行した公開鍵証明書の発行先を調べ、当該発行先に認証局が含まれる場合は当該認証局が発行した公開鍵証明書の発行先をさらに調べる処理を、当該公開鍵証明書の発行先が全て端末となるまで続けることにより、前記起点認証局から任意の端末に対して公開鍵証明書を発行した端末収容認証局までのパスを検索するパス検索ステップと、前記パス検索ステップにより検出されたパスについて、前記起点認証局を上流とし、当該パス上の端末収容認証局が発行した公開鍵証明書の署名を１つ上流側の認証局が発行した公開鍵証明書で検証し、検証が成立した場合は当該１つ上流側の認証局が発行した公開鍵証明書の署名をさらに１つ上流側の認証局が発行した公開鍵証明書で検証する処理を、当該１つ上流側の認証局が前記起点認証局となるまで続けることにより、当該パスを検証するパス検証ステップと、前記パス検証ステップにより検証が成立したパスをデータベースに登録するパス登録ステップとを、端末からの公開鍵証明書の有効性確認依頼とは無関係に、例えば定期的に行う。
【０００５】
そして、ある端末から、当該端末が信頼する認証局とは異なる端末収容認証局が発行した公開鍵証明書の有効性確認依頼があった場合に、前記端末が信頼する認証局と前記起点認証局との間のパス、および、前記異なる端末収容認証局と前記起点認証局との間のパスが、前記データベースに登録されているか否かを調べることで、前記公開鍵証明書の有効性を確認するという技術が開示されている（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００２−７２８７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、ＵＩＭ（ＵＳＩＭ）カードやＲＦＩＤといった小型デバイスにおいても認証の仕組みを導入する必要があるが、これらのデバイスは、処理能力が低いために、上記のような従来の技術を用いて、認証処理を行うことができない。
【０００９】
そこで、公開鍵暗号による認証方式の適用が検討されてきたが、公開鍵暗号による認証方式では、公開鍵証明書を交換し、検証する必要がある。また、検証処理の一環として、特に当該公開鍵証明書が失効していないことを確認する必要がある。しかしながら、公開鍵証明書の失効確認にはコストがかかるという問題点がある。
【００１０】
そこで、本発明は、上述の課題に鑑みてなされたものであり、認証処理において、認証する側のデバイスおよび認証される側のデバイスがともに軽量な演算処理のみで認証を行うことができる認証システム、認証方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、上記の課題を解決するために以下の事項を提案している。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。
【００１２】
（１）本発明は、２つのデバイス（例えば、図１の第１のデバイス１００および第２のデバイス２００に相当）と認証局サーバ（例えば、図１の認証局サーバ３００に相当）とからなり、デバイス間の認証を行う認証システムであって、第１のデバイスが、第２のデバイスから認証要求を受信する第１の受信手段（例えば、図２の受信部１０１に相当）と、該第１のデバイスが、認証要求を受信したときに、前記認証局サーバにアクセスするアクセス手段（例えば、図２のアクセス部１０２に相当）と、前記第１のデバイスが、前記認証局サーバにアクセスしたときに、前記認証局サーバが署名した使い捨てのワンタイム証明書を発行するワンタイム証明書発行手段（例えば、図４のワンタイム証明書発行部３１０に相当）と、前記認証局サーバが、前記第１のデバイスとの間で共有している共通鍵を用いて、前記ワンタイム証明書を暗号化する暗号化手段（例えば、図４の暗号化部３１１に相当）と、前記認証局サーバが、少なくとも暗号化したワンタイム証明書を前記第１のデバイスに送信する第１の送信手段（例えば、図４の送信部３１３に相当）と、前記第１のデバイスが、前記第２のデバイスに少なくとも暗号化したワンタイム証明書を送信する第２の送信手段（例えば、図２の送信部１０３に相当）と、前記第２のデバイスが受信したワンタイム証明書の署名を検証するとともに、ワンタイム証明書の発行時刻を検証する証明書検証手段（例えば、図３の検証部２０７に相当）と、を備えたことを特徴とする認証システムを提案している。
【００１３】
本発明によれば、第１のデバイスの第１の受信手段が、第２のデバイスから認証要求を受信する。アクセス手段が、認証要求を受信したときに、認証局サーバにアクセスする。認証局サーバのワンタイム証明書発行手段が、第１のデバイスから認証局サーバにアクセスしたときに、署名した使い捨てのワンタイム証明書を発行する。認証局サーバの暗号化手段が、第１のデバイスとの間で共有している共通鍵を用いて、ワンタイム証明書を暗号化する。認証局サーバの第１の送信手段が、少なくとも暗号化したワンタイム証明書を第１のデバイスに送信する。第１のデバイスの第２の送信手段が、第２のデバイスに少なくとも暗号化したワンタイム証明書を送信する。第２のデバイスの証明書検証手段が受信したワンタイム証明書の署名を検証するとともに、ワンタイム証明書の発行時刻を検証する。したがって、使い捨てのワンタイム証明書を用いることにより、従来、処理負荷が大きかった失効処理を省略できるため、各デバイスにおける認証処理の負荷を大幅に低減することができる。
【００１４】
（２）本発明は、（１）の認証システムについて、前記ワンタイム証明書発行手段が、前記ワンタイム証明書に対応する秘密鍵としての乱数Ｒを生成し、現在の時刻情報Ｔと前記第１のデバイスのＩＤと乱数Ｒとに排他的論理和演算の処理を行って得られたデータに前記認証局サーバの署名を行って、ワンタイム証明書を発行することを特徴とする認証システムを提案している。
【００１５】
本発明によれば、ワンタイム証明書発行手段が、ワンタイム証明書に対応する秘密鍵としての乱数Ｒを生成し、現在の時刻情報Ｔと第１のデバイスのＩＤと乱数Ｒとに排他的論理和演算の処理を行って得られたデータに認証局サーバの署名を行って、ワンタイム証明書を発行する。したがって、排他的論理和演算という演算負荷の小さい処理により、認証に必要な情報を網羅したワンタイム証明書を発行することができる。
【００１６】
（３）本発明は、（２）の認証システムについて、前記第１のデバイスのＩＤに、その正当性を検証するためのチェックコードを含めることを特徴とする認証システムを提案している。
【００１７】
本発明によれば、第１のデバイスのＩＤに、その正当性を検証するためのチェックコードを含める。これにより、不正なＩＤの検出を行うことができる。
【００１８】
（４）本発明は、（２）の認証システムについて、前記第１のデバイスのＩＤが、単純なインクリメントや予測可能なＩＤではないことを特徴とする認証システムを提案している。
【００１９】
本発明によれば、第１のデバイスのＩＤが、単純なインクリメントや予測可能なＩＤではない。これにより、本来のＩＤを知らなくても、何度かの試行によって、ＩＤを取得するような行為を防止することができる。
【００２０】
（５）本発明は、（２）の認証システムについて、前記認証局サーバが、前記第１の送信手段が秘密鍵としての乱数Ｒを暗号化したワンタイム証明書とともに前記第１のデバイスに送信し、前記第１のデバイスにおける前記第２の送信手段が前記暗号化したワンタイム証明書を送付した後に、前記秘密鍵としての乱数Ｒを前記第２のデバイスに送信することを特徴とする認証システムを提案している。
【００２１】
本発明によれば、認証局サーバが、第１の送信手段が秘密鍵としての乱数Ｒを暗号化したワンタイム証明書とともに第１のデバイスに送信し、第１のデバイスにおける第２の送信手段が暗号化したワンタイム証明書を送付した後に、秘密鍵としての乱数Ｒを第２のデバイスに送信する。すなわち、第１のデバイスが第２のデバイスに秘密鍵としての乱数Ｒを送信することにより、第１のデバイスが正当なデバイスであることを第２のデバイスに示すことができる。
【００２２】
（６）本発明は、（１）の認証システムについて、前記認証局サーバが行う署名が復元型署名であることを特徴とする認証システムを提案している。
【００２３】
本発明によれば、認証局サーバが行う署名が復元型署名である。これにより、署名のデータサイズを削減することができる。
【００２４】
（７）本発明は、（１）の認証システムについて、前記第２のデバイスが予め決められた特定のデバイスである場合に、前記ワンタイム証明書発行手段が発行するワンタイム証明書に前記第２のデバイスのＩＤ情報を含めることを特徴とする認証システムを提案している。
【００２５】
本発明によれば、第２のデバイスが予め決められた特定のデバイスである場合に、ワンタイム証明書発行手段が発行するワンタイム証明書に第２のデバイスのＩＤ情報を含める。これにより、ワンタイム証明書を他に転用することを防止することができる。
【００２６】
（８）本発明は、（１）の認証システムについて、前記証明書検証手段が、前記証明書の発行時刻と現在時刻とを対比し、その時間差が、前記ワンタイム証明書の発行から前記第２のデバイスが受信するまでの処理時間と略一致したときに、前記ワンタイム証明書の正当性を認めることを特徴とする認証システムを提案している。
【００２７】
本発明によれば、証明書検証手段が、証明書の発行時刻と現在時刻とを対比し、その時間差が、ワンタイム証明書の発行から第２のデバイスが受信するまでの処理時間と略一致したときに、ワンタイム証明書の正当性を認める。つまり、ワンタイム証明書は使い捨ての証明書であるため、時刻情報の比較を行うだけで、その正当性を検証することができる。
【００２８】
（９）本発明は、（１）の認証システムについて、前記認証局サーバと前記第１のデバイスとが予め共有鍵を共有し、前記認証局サーバが前記共有鍵を破棄することにより、前記第１のデバイスを失効扱いとすることを特徴とする認証システムを提案している。
【００２９】
本発明によれば、認証局サーバと第１のデバイスとが予め共有鍵を共有し、認証局サーバが共有鍵を破棄することにより、第１のデバイスを失効扱いとする。したがって、失効処理を簡便な方法で実行することができる。
【００３０】
（１０）本発明は、（１）の認証システムについて、前記第１のデバイスおよび第２のデバイスがＵＩＭカードであることを特徴とする認証システムを提案している。
【００３１】
本発明によれば、第１のデバイスおよび第２のデバイスがＵＩＭカードである。つまり、本発明の認証方法は、処理負荷が少ないため、ＵＩＭカードのような小型デバイスにも適用することができる。
【００３２】
（１１）本発明は、（１）の認証システムについて、前記第１のデバイスおよび第２のデバイスがＲＦＩＤであることを特徴とする認証システムを提案している。
【００３３】
本発明によれば、第１のデバイスおよび第２のデバイスがＲＦＩＤである。つまり、本発明の認証方法は、処理負荷が少ないため、ＲＦＩＤのような小型デバイスにも適用することができる。
【００３４】
（１２）本発明は、２つのデバイスと認証局サーバとからなり、デバイス間の認証を行う認証システムにおける認証方法であって、第１のデバイスが、第２のデバイスから認証要求を受信する第１のステップ（例えば、図５のステップＳ１０１に相当）と、該第１のデバイスが、認証要求を受信したときに、前記認証局サーバにアクセスする第２のステップ（例えば、図５のステップＳ１０２に相当）と、前記第１のデバイスが、前記認証局サーバにアクセスしたときに、前記認証局サーバが署名した使い捨てのワンタイム証明書を発行する第３のステップ（例えば、図５のステップＳ１０３に相当）と、前記認証局サーバが、前記第１のデバイスとの間で共有している共通鍵を用いて、前記ワンタイム証明書を暗号化する第４のステップ（例えば、図５のステップＳ１０４に相当）と、前記認証局サーバが、少なくとも暗号化したワンタイム証明書を前記第１のデバイスに送信する第５のステップ（例えば、図５のステップＳ１０５に相当）と、前記第１のデバイスが、前記第２のデバイスに少なくとも暗号化したワンタイム証明書を送信する第６のステップ（例えば、図５のステップＳ１０６に相当）と、前記第２のデバイスが受信したワンタイム証明書の署名を検証するとともに、ワンタイム証明書の発行時刻を検証する第７のステップ（例えば、図５のステップＳ１０７に相当）と、を備えたことを特徴とする認証方法を提案している。
【００３５】
本発明によれば、第１のデバイスが、第２のデバイスから認証要求を受信し、第１のデバイスが、認証要求を受信したときに、認証局サーバにアクセスする。そして、第１のデバイスが、認証局サーバにアクセスしたときに、認証局サーバが署名した使い捨てのワンタイム証明書を発行し、認証局サーバが、第１のデバイスとの間で共有している共通鍵を用いて、ワンタイム証明書を暗号化して、認証局サーバが、少なくとも暗号化したワンタイム証明書を第１のデバイスに送信する。第１のデバイスは、第２のデバイスに少なくとも暗号化したワンタイム証明書を送信し、第２のデバイスは、受信したワンタイム証明書の署名を検証するとともに、ワンタイム証明書の発行時刻を検証する。したがって、使い捨てのワンタイム証明書を用いることにより、従来、処理負荷が大きかった失効処理を省略できるため、各デバイスにおける認証処理の負荷を大幅に低減することができる。
【００３６】
（１３）本発明は、２つのデバイスと認証局サーバとからなり、デバイス間の認証を行う認証システムにおける認証方法をコンピュータに実行させるためのプログラムであって、第１のデバイスが、第２のデバイスから認証要求を受信する第１のステップ（例えば、図５のステップＳ１０１に相当）と、該第１のデバイスが、認証要求を受信したときに、前記認証局サーバにアクセスする第２のステップ（例えば、図５のステップＳ１０２に相当）と、前記第１のデバイスが、前記認証局サーバにアクセスしたときに、前記認証局サーバが署名した使い捨てのワンタイム証明書を発行する第３のステップ（例えば、図５のステップＳ１０３に相当）と、前記認証局サーバが、前記第１のデバイスとの間で共有している共通鍵を用いて、前記ワンタイム証明書を暗号化する第４のステップ（例えば、図５のステップＳ１０４に相当）と、前記認証局サーバが、少なくとも暗号化したワンタイム証明書を前記第１のデバイスに送信する第５のステップ（例えば、図５のステップＳ１０５に相当）と、前記第１のデバイスが、前記第２のデバイスに少なくとも暗号化したワンタイム証明書を送信する第６のステップ（例えば、図５のステップＳ１０６に相当）と、前記第２のデバイスが受信したワンタイム証明書の署名を検証するとともに、ワンタイム証明書の発行時刻を検証する第７のステップ（例えば、図５のステップＳ１０７に相当）と、をコンピュータに実行させるためのプログラムを提案している。
【００３７】
本発明によれば、第１のデバイスが、第２のデバイスから認証要求を受信し、第１のデバイスが、認証要求を受信したときに、認証局サーバにアクセスする。そして、第１のデバイスが、認証局サーバにアクセスしたときに、認証局サーバが署名した使い捨てのワンタイム証明書を発行し、認証局サーバが、第１のデバイスとの間で共有している共通鍵を用いて、ワンタイム証明書を暗号化して、認証局サーバが、少なくとも暗号化したワンタイム証明書を第１のデバイスに送信する。第１のデバイスは、第２のデバイスに少なくとも暗号化したワンタイム証明書を送信し、第２のデバイスは、受信したワンタイム証明書の署名を検証するとともに、ワンタイム証明書の発行時刻を検証する。したがって、使い捨てのワンタイム証明書を用いることにより、従来、処理負荷が大きかった失効処理を省略できるため、各デバイスにおける認証処理の負荷を大幅に低減することができる。
【発明の効果】
【００３８】
本発明によれば、使い捨てのワンタイム証明書を使うことにより失効処理を省略することにより、認証処理の負荷を大幅に低減できる。このため、認証する側のデバイスおよび認証される側のデバイスがともに軽量な演算のみで認証処理を実現できるという効果がある。また、本発明の方式においては、高度なレベルのセキュリティを用いる必要がないため、認証プロトコルについても軽量化できるという効果がある。
【図面の簡単な説明】
【００３９】
【図１】本実施形態に係る認証システムの構成図である。
【図２】本実施形態に係る第１のデバイスの機能ブロック図である。
【図３】本実施形態に係る第２のデバイスの機能ブロック図である。
【図４】本実施形態に係る認証局サーバの機能ブロック図である。
【図５】本実施形態に係る認証システムの処理フローである。
【図６】本実施形態の変形例に係る相互認証システムの構成図である。
【図７】従来例に係るシステム構成図である。
【発明を実施するための形態】
【００４０】
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【００４１】
以下、図１から図５を用いて、本発明の実施形態について説明する。
【００４２】
＜認証システムの構成＞
本実施形態に係る認証システムは、図１に示すように、第１のデバイス１００と、第２のデバイス２００と、認証局サーバ３００とから構成されている。本実施形態においては、第２のデバイス２００が第１のデバイス１００を認証する場合を例にとって説明する。
【００４３】
この場合、第１のデバイス１００は、認証局サーバ３００から証明書の発行を受け、これを第２のデバイス２００に送信し、第２のデバイス２００が第１のデバイス１００から受け取った証明書の正当性を確認することにより、認証処理が行われる。なお、本実施形態において、用いられる証明書は、使い捨てのワンタイム証明書である。このワンタイム証明書を用いることにより、従来の認証処理で行われていた失効確認処理が不要となるため、認証処理における負荷が大幅に軽減できる。また、第１のデバイスおよび第２のデバイスがＵＩＭカードやＲＦＩＤ等の小型デバイスであってもよい。つまり、本実施形態の認証方法は、処理負荷が少ないため、ＵＩＭカードのような小型デバイスにも適用することができる。
【００４４】
＜第１のデバイスの構成＞
本実施形態に係る第１のデバイスは、図２に示すように、受信部１０１と、アクセス部１０２と、送信部１０３とから構成されている。
【００４５】
受信部１０１は、第２のデバイス２００からの認証要求を受信する。また、認証局サーバ３００から暗号化されたワンタイム証明書を受信する。アクセス部１０２は、受信部１０１が、第２のデバイス２００からの認証要求を受信したときに、認証局サーバ３００に対してアクセスを行う。送信部１０３は、受信部１０１が認証局サーバ３００から受信した暗号化されたワンタイム証明書を第２のデバイス２００に送信する。
【００４６】
＜第２のデバイスの構成＞
本実施形態に係る第２のデバイスは、図３に示すように、送信部２０１と、受信部２０２と、復号化部２０３と、発行時刻抽出部２０４と、計時部２０５と、記憶部２０６と、検証部２０７とから構成されている。
【００４７】
送信部２０１は、第１のデバイス１００に対して、第１のデバイス１００を認証するための認証要求を送信する。受信部２０２は、第１のデバイス１００から暗号化されたワンタイム証明書を受信する。復号化部２０３は、受信部２０２が受信した暗号化されたワンタイム証明書を第１のデバイス１００との間で共有している共有鍵を用いて、復号化する。
【００４８】
発行時刻抽出部２０４は、復号されたワンタイム証明書の中からワンタイム証明書の発行時刻を抽出する。計時部２０５は、現在時刻を計時する。記憶部２０６は、認証局サーバ３００がワンタイム証明書を発行してから第２のデバイス２００が受信するまでの処理時間を記憶管理している。
【００４９】
検証部２０７は、発行時刻抽出部２０４が抽出したワンタイム証明書の発行時刻と計時部２０５が計時する現在時刻との時間差が記憶部２０６に格納されている認証局サーバ３００がワンタイム証明書を発行してから第２のデバイス２００が受信するまでの処理時間とおおむね一致するか否かを検証し、一致する場合には、ワンタイム証明書が正当なものであると判断する。つまり、ワンタイム証明書は使い捨ての証明書であるため、時刻情報の比較を行うだけで、その正当性を検証することができる。
【００５０】
＜認証局サーバの構成＞
本実施形態に係る認証局サーバは、図４に示すように、アクセス受付部３０１と、ワンタイム証明書発行部３１０をなす乱数生成部３０２と、計時部３０３と、ＩＤ格納部３０４と、排他的論理和演算部３０５と、署名部３０６と、暗号化部３１１と、鍵格納部３１２と、送信部３１３と、失効処理部３１４とから構成されている。
【００５１】
アクセス受付部３０１は、第１のデバイス１００からのアクセスを受信する。
【００５２】
ワンタイム証明書発行部３１０の構成要素である乱数生成部３０２は、秘密鍵としての乱数を生成する。ワンタイム証明書発行部３１０の構成要素である計時部３０３は、現在時刻を計時する。ワンタイム証明書発行部３１０の構成要素であるＩＤ格納部３０４は、予め取り交わしをしている第１のデバイス１００のＩＤを格納している。なお、予め第２のデバイス２００が特定されている場合には、第２のデバイス２００のＩＤも格納する。この場合、第２のデバイス２００のＩＤをワンタイム証明書に含めることによって、ワンタイム証明書を他に転用することを防止することができる。
【００５３】
ワンタイム証明書発行部３１０の構成要素である排他的論理和演算部３０５は、乱数生成部３０２が生成した乱数と計時部３０３が計時した発行時刻とＩＤ格納部３０４が格納する第１のデバイス１００のＩＤとの排他的論理和演算を行う。これにより、排他的論理和演算という演算負荷の小さい処理により、認証に必要な情報を網羅したワンタイム証明書を発行することができる。ワンタイム証明書発行部３１０の構成要素である署名部３０６は、排他的論理和演算部３０５において演算されたデータに認証局サーバ３００の署名を行い、ワンタイム証明書を生成する。なお、認証局サーバ３００が行う署名方式は、復元型署名である。この方式の署名を行うことにより、データの削減を行うことができる。
【００５４】
暗号化部３１１は、ワンタイム証明書発行部３１０が発行したワンタイム証明書および乱数生成部３０２が生成した秘密鍵としての乱数を予め第１のデバイス１００および第２のデバイス２００と取り交わし、鍵格納部３１２に格納した共通鍵で暗号化する。送信部３１３は、暗号化したワンタイム証明書を第２のデバイス２００に送信し、その後、暗号化した乱数を第２のデバイス２００に送信する。このように、暗号化した乱数を第２のデバイス２００に後から送信することにより、第１のデバイス１００が正当なデバイスであることを第２のデバイスに示すことができる。失効処理部３１４は、認証局サーバ３００が第１のデバイス１００と予め共有している共有鍵を破棄処理することにより、失効処理を行う。
【００５５】
＜認証システムの処理＞
図５を用いて、本実施形態に係る認証システムの処理について説明する。
まず、第１のデバイス１００が、第２のデバイス２００から認証要求を受信する（ステップ１０１）。第１のデバイス１００が、認証要求を受信すると、認証局サーバ３００にアクセスを行う（ステップ１０２）。
【００５６】
第１のデバイス１００からアクセス要求を受けた認証局サーバ３００は、署名した使い捨てのワンタイム証明書を発行する（ステップＳ１０３）。具体的には、秘密鍵としての乱数Ｒを生成し、現在時刻情報Ｔとアクセスリクエストしてきた第１のデバイス１００のＩＤと乱数Ｒを排他的論理和したデータに認証局サーバ３００自身の署名を行い、ワンタイム証明書を発行する。すなわち、ワンタイム証明書の中身は、Ｓｉｇ（Ｔ｜ＩＤ（＋）Ｒ）となる。ここで、署名方式は復元型署名である。また、上記において、「｜」は、データの結合を、（＋）は排他的論理和を表している。また、認証する相手方のデバイスが特定されているような場合には、上記ＩＤに通信相手のＩＤも含める。また、秘密鍵である乱数Ｒを排他的論理和する場合には、ＩＤについては、以下の規則を満たさなければならない。
１)ＩＤは単純なインクリメントや予測可能な値としない。
２)ＩＤには、正当性を検証するためのチェックコードを含める。
これにより、本来のＩＤを知らなくても、何度かの試行によって、ＩＤを取得するような行為を防止することができる。また、正当性を検証するためのチェックコードを含めることにより、不正なＩＤの検出を行うことができる。
【００５７】
認証局サーバ３００は、第１のデバイス１００および第２のデバイス２００との間で共有している共通鍵を用いて、ワンタイム証明書を暗号化する（ステップＳ１０４）。そして、認証局サーバ３００は、暗号化したワンタイム証明書と暗号化した乱数とを第１のデバイス１００に送信する（ステップＳ１０５）。
【００５８】
第１のデバイス１００は、認証局サーバ３００から受信した暗号化したワンタイム証明書を第２のデバイス２００に送信し、その後に、暗号化された乱数を第２のデバイス２００に送信する（ステップＳ１０６）。
【００５９】
第２のデバイス２００は、共有している共通鍵を用いて、ワンタイム証明書を復号化し、ワンタイム証明書の署名を検証するとともに、次に、乱数Ｒの排他的論理和演算を行うことにより、Ｔ｜ＩＤを取り出して、ワンタイム証明書の発行時刻を検証する（ステップＳ１０７）。
【００６０】
したがって、本実施形態によれば、使い捨てのワンタイム証明書を用いることにより、従来、処理負荷が大きかった失効処理を省略できるため、各デバイスにおける認証処理の負荷を大幅に低減することができる。
【００６１】
＜変形例＞
図６を用いて、本実施形態における変形例について説明する。本変形例は、上記実施形態における認証技術を用いて、相互認証を行う場合を例示している。上記の実施形態では、第１のデバイス１００のみが認証局サーバ３００にアクセスを行って、ワンタイム証明書を取得し、第２のデバイス２００がこのワンタイム証明書を検証することによって、第１のデバイス１００のみの認証を行っていたが、相互認証の場合には、第２のデバイス２００も第１のデバイス１００と同様の処理動作を実行して、第２のデバイス２００の検証を行えばよい。
【００６２】
このように、相互認証の場合でも、上記実施形態における技術を適用できる。すなわち、相互認証の場合でも、使い捨てのワンタイム証明書を用いることにより、従来、処理負荷が大きかった失効処理を省略できるため、各デバイスにおける認証処理の負荷を大幅に低減することができる。
【００６３】
なお、認証システムの処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムを認証システムを形成する第１のデバイス、第２のデバイス、認証局サーバに読み込ませ、実行することによって本発明の認証システムを実現することができる。ここでいうコンピュータシステムとは、ＯＳや周辺装置等のハードウェアを含む。
【００６４】
また、「コンピュータシステム」は、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）システムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
【００６５】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。更に、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００６６】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００６７】
１００；第１のデバイス
１０１；受信部
１０２；アクセス部
１０３；送信部
２００；第２のデバイス
２０１；送信部
２０２；受信部
２０３；復号化部
２０４；発行時刻抽出部
２０５；計時部
２０６；記憶部
２０７；検証部
３００；認証局サーバ
３０１；アクセス受付部
３０２；乱数生成部
３０３；計時部
３０４；ＩＤ格納部
３０５；排他的論理和演算部
３０６；署名部
３１０；ワンタイム証明書発行部
３１１；暗号化部
３１２；鍵格納部
３１３；送信部
３１４；失効処理部
【図１】
0005537129.tif 000002
【図２】
0005537129.tif 000003
【図３】
0005537129.tif 000004
【図４】
0005537129.tif 000005
【図５】
0005537129.tif 000006
【図６】
0005537129.tif 000007
【図７】
0005537129.tif 000008