非接触ICカード認証システム
【課題】
クライアント端末とサーバ間で相互認証を行う場合,ネットワークを経由した相互認証が行われるので処理時間がかかる。クライアント側の秘密情報の保持デバイスとして非接触ICカードを採用する場合,非接触ICカードを近づけている短時間の間に処理が完了しないという問題が生じる。
【解決手段】
非接触ICカードを端末装置に近づけることにより,ネットワークの通信時間を待つことなく,ネットワークに接続された端末装置と複数のサーバとの間で相互認証を行い,適切なユーザにサービスを提供するシステムを提供する。具体的には,クライアント認証時には,非接触ICカード内の秘密鍵を用いて認証情報を生成し,サーバ認証時には,非接触ICカードと連携して動く端末装置がサーバを認証する。
クライアント端末とサーバ間で相互認証を行う場合,ネットワークを経由した相互認証が行われるので処理時間がかかる。クライアント側の秘密情報の保持デバイスとして非接触ICカードを採用する場合,非接触ICカードを近づけている短時間の間に処理が完了しないという問題が生じる。
【解決手段】
非接触ICカードを端末装置に近づけることにより,ネットワークの通信時間を待つことなく,ネットワークに接続された端末装置と複数のサーバとの間で相互認証を行い,適切なユーザにサービスを提供するシステムを提供する。具体的には,クライアント認証時には,非接触ICカード内の秘密鍵を用いて認証情報を生成し,サーバ認証時には,非接触ICカードと連携して動く端末装置がサーバを認証する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は,非接触ICカード認証システムに関し,さらに詳しくは,非接触ICカードを用いて公開鍵暗号に基づく認証を行う非接触ICカード認証システムおよびその方法に関する。
【背景技術】
【0002】
クライアントが複数のサーバに接続しサービスを受ける場合,クライアントとサーバで適切に相互に認証を行わなければならない。クライアントとサーバの間で相互認証を行う技術が知られている。(例えば,非特許文献1参照)。
【0003】
また,そのためには,相互認証に必要な秘密情報を適切に保護しなければならない。秘密情報の保護方法としてICカードを用いて,端末装置と連携しサーバからサービスを受ける技術として,ICカードの認証情報を他の携帯デバイスに委譲し,以降はICカードの権限でサーバと認証を行う技術が示されている(例えば特許文献1参照)。また,非接触ICカードと端末装置を用いてネットワークを経由してサーバからサービスを受ける技術が知られている(例えば特許文献2参照)。
【0004】
【特許文献1】特開2005-123996号公報
【特許文献2】WO2005/027035A1号公報
【非特許文献1】T. Dierks and C. Allen, “RFC 2246 - The TLS Protocol”, The Internet Engineering Task Force, 2002/4, [2007年11月1日検索], インターネット<URL: http://www.ietf.org/rfc/rfc2246.txt>
【発明の開示】
【発明が解決しようとする課題】
【0005】
上記非特許文献1の技術では,クライアント端末とサーバ間で相互認証を行う場合,ネットワークを経由した相互認証が行われるので処理時間がかかる。クライアント側の秘密情報の保持デバイスとして非接触ICカードを採用する場合,端末装置を経由してサーバと相互認証を行うことになるので,非接触ICカードを近づけている短時間の間に処理が完了しないという問題が生じる。
【0006】
上記特許文献2の技術では,非接触ICカードと端末装置とサーバを用いたサービス提供システムが開示されているが,非接触ICカード内の情報をサーバが確認する単方向の認証しか開示していない。
【0007】
また,特許文献1の技術では,端末装置(携帯電話やカーナビゲーション機器)に権限を委譲してしまうので,毎回認証が必要な場合などには委譲のためのオーバーヘッドが大きくなり,また端末装置側にもICカードと同等のセキュリティが要求されことになる。
【課題を解決するための手段】
【0008】
本発明は,上記事情に鑑みてなされたものであり,より改善された非接触ICカード認証システムおよびその方法を提供する。
【0009】
本発明では,ユーザの使い勝手を良くするために,非接触ICカードを端末装置にかざすなど,近づけることにより,近接通信を行い,ネットワークの通信時間を待つことなく,ネットワークに接続された端末装置と複数のサーバとの間で相互認証を行い,適切なユーザにサービスを提供するシステムを提供する。
【0010】
本発明が提供するICカードシステムは,より具体的には,
サービスの提供を行うサービス提供者装置と,サービスを受ける端末装置と,端末装置と近接通信することによりコマンドデータを送受信し処理を行う非接触ICカードと,端末装置と,サービス提供者装置と,が接続するネットワークと,からなり,非接触ICカードは,コマンドデータを送受信する端末アクセス部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書とを保管する鍵保管部と,鍵保管部に保管された秘密鍵を用いて,端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部と,を備え,サービス提供者装置は,ネットワークに接続されデータの送受信を行う通信部と,端末装置に対してサービスを提供するサービス提供部と,非接触ICカードの署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書と非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,鍵保管部に保管された秘密鍵を用いて,通信部から渡された署名対象データに対する署名値を計算する署名値演算部と,を備え,端末装置は,ネットワークに接続されデータの送受信を行う通信部と,非接触ICカードへコマンドデータを送受信するICカードアクセス部と,サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,サービス提供者装置から提供されたサービスを利用するサービス利用部と,を備えることを特徴とする。
【0011】
あるいは,本発明が提供するICカードシステムは,より具体的には,
サービスの提供を行うサービス提供者装置と,サービスを受ける端末装置と,端末装置と近接通信することによりコマンドデータを送受信し処理を行う非接触ICカードと,端末装置と,サービス提供者装置と,が接続するネットワークと,からなり,非接触ICカードは,
コマンドデータを送受信する端末アクセス部と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,鍵保管部に保管された秘密鍵を用いて,端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部と,を備え,サービス提供者装置は,ネットワークに接続されデータの送受信を行う通信部と,端末装置に対してサービスを提供するサービス提供部と,非接触ICカードの署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書と非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,鍵保管部に保管された秘密鍵を用いて,通信部から渡された署名対象データに対する署名値を計算する署名値演算部と,を備え,端末装置は,ネットワークに接続されデータの送受信を行う通信部と,非接触ICカードへコマンドデータを送受信するICカードアクセス部と,サービス提供者装置から提供されたサービスを利用するサービス利用部と,を備えることを特徴とする。
【0012】
さらに,サービス提供者装置は,サービスの提供状況を保持するサービス提供状況保持部を備えてもよい。
【0013】
さらに,本発明が提供するICカードシステムにおいて,
端末装置は,起動し,サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1を,サービス提供者装置へ送信し,
サービス提供者装置は,通信部を経由して,乱数1を受信し,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,乱数1に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,自身が生成した乱数2と,を通信部を経由して,端末装置に送信し,
端末装置の署名値・証明書検証部は,自らが生成した乱数1と,サービス提供者装置から受信した署名値とサーバ証明書と,から署名値の正当性を確認し,サーバ証明書と,鍵保管部に保管されているサービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書の正当性を確認し,確認が失敗であればサービス享受を終了し,成功であれば,非接触ICカードとの近接通信の開始を待ち,非接触ICカードとの近接通信の開始を検知した場合には,サービス提供者装置から受信した乱数2を,ICカードアクセス部を経由して,非接触ICカードへ送信し,
非接触ICカードは,端末アクセス部を経由して,乱数2を受信し,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,乱数2に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を端末アクセス部を経由して,端末装置に送信し,
端末装置は,ICカードアクセス部を経由して受信した,署名値と証明書を,通信部を経由して,サービス提供者装置に送信し,
サービス提供者装置は,
自らが生成した乱数2と,端末装置から受信した署名値と証明書と,から署名値の正当性を確認し,
証明書と,鍵保管部に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書の正当性を確認し,
確認が失敗であればサービス提供を終了し,
成功であれば,端末装置に対するサービスを提供し,
端末装置は,サービス提供者装置が提供するサービスを利用してもよい。
【0014】
さらに,本発明が提供するICカードシステムにおいて,
端末装置は,起動し,非接触ICカードとの近接通信の開始を待ち,非接触ICカードとの近接通信の開始を検知した場合には,自らが生成した使用する毎に増加するカウンタ値を,ICカードアクセス部を経由して,非接触ICカードへ送信し,
非接触ICカードは,
端末アクセス部を経由して,カウンタ値を受信し,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,カウンタ値に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を端末アクセス部を経由して,端末装置に送信し,
端末装置は,
サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1と,非接触ICカードから受信した署名値と,証明書と,カウンタ値と,をサービス提供者装置へ送信し,
サービス提供者装置は,
端末装置から受信したカウンタ値と,署名値と証明書と,から署名値の正当性を確認し,証明書と,鍵保管部に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書の正当性を確認し,
確認が失敗であればサービス提供を終了し,
成功であれば,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,乱数1に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,を通信部を経由して,端末装置に送信し,
端末装置の署名値・証明書検証部は,
自身が生成した乱数1と,サービス提供者装置から受信した署名値とサーバ証明書と,から署名値の正当性を確認し,
サーバ証明書と,鍵保管部に保管されているサービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書の正当性を確認し,
確認が失敗であればサービス享受を終了し,
成功であれば,サービス提供者装置へ,成功を知らせる応答を返信し,
サービス提供者装置は,
端末装置に対するサービスを提供し,
端末装置は,サービス提供者装置が提供するサービスを利用してもよい。
【0015】
さらに,本発明が提供するICカードシステムにおいて,
端末装置は,
起動し,サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1を,サービス提供者装置へ送信し,
サービス提供者装置は,
通信部を経由して,乱数1を受信し,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,乱数1に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,自身が生成した乱数2と,を通信部を経由して,端末装置に送信し,
端末装置は,
非接触ICカードとの近接通信の開始を待ち,非接触ICカードとの近接通信の開始を検知した場合には,サービス提供者装置から受信した署名値と,サーバ証明書と,乱数2と,自身が生成した乱数1と,を,ICカードアクセス部を経由して,非接触ICカードへ送信し,
非接触ICカードの署名値・証明書検証部は,
端末装置から受信した乱数1と,署名値とサーバ証明書と,から署名値の正当性を確認し,サーバ証明書と,鍵保管部に保管されているサービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書の正当性を確認し,
確認が失敗であれば,端末装置に,失敗を通知しサービス享受を終了し,成功であれば,
非接触ICカードの署名値演算部は,
鍵保管部に保存されている自身の秘密鍵で,乱数2に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を端末アクセス部を経由して,端末装置に送信し,
端末装置は,ICカードアクセス部を経由して受信した,署名値と証明書を,通信部を経由して,サービス提供者装置に送信し,
サービス提供者装置は,
自らが生成した乱数2と,端末装置から受信した署名値と証明書と,から署名値の正当性を確認し,
証明書と,鍵保管部に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書の正当性を確認し,
確認が失敗であればサービス提供を終了し,成功であれば,
端末装置に対するサービスを提供し,
端末装置は,サービス提供者装置が提供するサービスを利用してもよい。
【0016】
さらに,本発明が提供するICカードシステムにおいて,
端末装置は,
起動し,非接触ICカードとの近接通信の開始を待ち,非接触ICカードとの近接通信の開始を検知した場合には,自らが生成した使用する毎に増加するカウンタ値を,ICカードアクセス部を経由して,非接触ICカードへ送信し,
非接触ICカードは,
端末アクセス部を経由して,カウンタ値を受信し,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,カウンタ値に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を端末アクセス部を経由して,端末装置に送信し,
端末装置は,
サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1と,非接触ICカードから受信した署名値と,証明書と,カウンタ値と,をサービス提供者装置へ送信し,
サービス提供者装置は,
端末装置から受信したカウンタ値と,署名値と証明書と,から署名値の正当性を確認し,
証明書と,鍵保管部に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書の正当性を確認し,
確認が失敗であればサービス提供を終了し,成功であれば,
署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,乱数1に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,を通信部を経由して,端末装置に送信し,
端末装置は,
非接触ICカードとの近接通信の開始を待ち,非接触ICカードとの近接通信の開始を検知した場合には,サービス提供者装置から受信した署名値と,サーバ証明書と,自身が生成した乱数1と,をICカードアクセス部を経由して,非接触ICカードへ送信し,
非接触ICカードの署名値・証明書検証部は,
端末装置から受信した乱数1と,署名値とサーバ証明書と,から署名値の正当性を確認し,
サーバ証明書と,鍵保管部に保管されているサービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書の正当性を確認し,
確認の結果を端末装置へ通知し,
端末装置は,
非接触ICカードから送信された確認が失敗であれば,サービス享受を終了し,成功であれば,
サービス提供者装置へ,成功を知らせる応答を返信し,
サービス提供者装置は,
端末装置に対するサービスを提供し,
端末装置は,サービス提供者装置が提供するサービスを利用してもよい。
【0017】
さらに,本発明が提供するICカードシステムにおいて,
サービス提供者装置の,サービス提供状況保持部は,端末装置に対してサービスを提供開始した後,サービスの提供情報を保持し,
同一ユーザの再接続の際には,サービス提供状況保持部で保持している情報に引き続くサービスを提供してもよい。
【0018】
さらに,本発明が提供するICカードシステムにおいて,
端末装置から,サービス提供者装置へ,サービス終了要求を送信し,
サービス提供者装置のサービス提供状況保持部は,サービス提供状況をクリアしてもよい。
【0019】
さらに,本発明が提供するICカードシステムにおいて,
サービス提供者装置で認証される非接触ICカードごとに,該非接触ICカードのユーザに適したサービスを提供してもよい。
【発明の効果】
【0020】
本発明によれば,非接触ICカードを用いて,複数のサービス提供者装置と,オープンなネットワークを経由して,公開鍵暗号に基づく認証を行い,サービスを提供するシステムを実現することが可能になる。
【発明を実施するための最良の形態】
【0021】
本発明の一実施形態について説明する。なお,これにより本発明が限定されるものではない。
【0022】
図1は,本発明の一実施形態が適用された非接触ICカード認証システムの構成図である。
【0023】
本実施形態の非接触ICカード認証システムは,図1に示すように,複数のサービス提供者装置401〜40n(以下,単にサービス提供者装置40とも称する)と,端末装置20と,がインターネットなどのネットワーク30を介して,互いに接続されて構成されている。また端末装置20は,非接触ICカード10が非接触(近接通信)で接続される。
【0024】
サービス提供者装置40は,自身を認証してもらうための署名生成を行い,また,非接触ICカードを認証するための署名値の検証および証明書の検証を行う。その後,端末装置20に対してサービスを提供する。
【0025】
サービス提供者装置40は,ネットワーク30に接続されデータの送受信を行う通信部404と,端末装置に対してサービスを提供するサービス提供部405と,非接触ICカードの署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部402と,秘密鍵と該秘密鍵と対をなす公開鍵証明書と非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部401と,鍵保管部に保管された秘密鍵を用いて,通信部から渡された署名対象データに対する署名値を計算する署名値演算部403と,を含む。
【0026】
非接触ICカード10は,署名対象データを受信し,自身で保持している秘密鍵を使って署名対象データに対する署名を生成し,端末装置に返信する。
【0027】
非接触ICカードは,
コマンドデータを送受信する端末アクセス部103と,秘密鍵と該秘密鍵と対をなす公開鍵証明書とを保管する鍵保管部101と,鍵保管部に保管された秘密鍵を用いて,端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部102と,を含む。
【0028】
端末装置20は,サービス提供装置40を認証するための署名値の検証および証明書の検証を行う。
【0029】
端末装置20は,ネットワーク30に接続されデータの送受信を行う通信部204と,非接触ICカードへコマンドデータを送受信するICカードアクセス部203と,サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部202と,サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部201と,サービス提供者装置から提供されたサービスを利用するサービス利用部205と,を含む。
【0030】
図2は,本発明の第二の実施形態が適用された非接触ICカード認証システムの構成図である。
【0031】
本実施形態の非接触ICカード認証システムは,図1で示した第一の実施形態と同様に,図2に示すように,複数のサービス提供者装置401〜40n(以下,単にサービス提供者装置40とも称する)と,端末装置20と,がインターネットなどのネットワーク30を介して,互いに接続されて構成されている。また端末装置20は,非接触ICカード10が非接触(近接通信)で接続される。
【0032】
サービス提供者装置40の構成は,第一の実施形態のサービス提供者装置と同様である。
【0033】
非接触ICカード10は,署名対象データを受信し,自身で保持している秘密鍵を使って署名対象データに対する署名を生成し,端末装置に返信する。また,サービス提供装置40を認証するための署名値の検証および証明書の検証を行う。
【0034】
非接触ICカード10は,コマンドデータを送受信する端末アクセス部103と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部104と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部101と,鍵保管部に保管された秘密鍵を用いて,端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部102と,を含む。
【0035】
端末装置20は,非接触ICカード10とサービス提供者装置40とを仲介し,相互認証が完了後,サービス提供装置40からサービスを受ける。
【0036】
端末装置20は,ネットワーク30に接続されデータの送受信を行う通信部204と,非接触ICカードへコマンドデータを送受信するICカードアクセス部203と,サービス提供者装置から提供されたサービスを利用するサービス利用部205と,を含む。
【0037】
図3は端末装置20のハードウェア構成図である。端末装置20は,通信装置21と,入出力装置22と,ICカード入出力装置23と,補助記憶装置24と,CPU25と主記憶装置26と,読取装置27とがバスなどの内部通信線29で連結され,記憶媒体28を含めて構成されている。また,端末装置20はICカード入出力装置23を経由して,ICカード10とつながる。
【0038】
サービス提供者装置40のハードウェア構成は端末装置20のハードウェア構成と同様である。ただし,サービス提供者装置40が,直接ICカード10へのアクセスを行わない場合は,ICカード入出力装置23は備えなくても良い。
【0039】
図4は非接触ICカード10のハードウェア構成図である。非接触ICカード10は,入出力部11と,CPU12と,耐タンパ補助記憶装置13と,耐タンパ主記憶装置14と,がバスなどの内部通信線15で連結されて構成されている。
【0040】
本実施形態の非接触ICカード認証システムにおける処理フローについて説明する。各装置の補助記憶装置13または24に格納されたプログラムが主記憶装置14または26にロードされ,CPUにより実行されることにより,非接触ICカード認証システムを構成する各装置,非接触ICカード上に以下説明する各処理部が具現化され,それら各処理部により,以下に述べる処理フローが実行される。また,各プログラムは予め補助記憶装置13または24に格納されても良いし,他の記憶媒体または通信媒体(ネットワーク,またはネットワークを伝搬する搬送波またはディジタル信号)を介して,必要なときに導入されても良い。また,非接触ICカード認証システムのプログラムはあらかじめ耐タンパメモリ14に格納されていても良い。
【0041】
図5は,第一の実施形態である図1のシステム構成において,端末装置20がサービス提供者装置40の認証を行った後,非接触ICカードの接続を待ち,その後,非接触ICカード内で署名値を生成し,その後,サービス提供者装置で,非接触ICカードの認証を行い,サービスを提供するフロー図である。
【0042】
まず,端末装置20が起動し(ステップS201),その後,サービス利用部205が,サービスを受けたいサービス提供者装置を選択する(ステップS202)。端末装置20の署名値・証明書検証部202は,乱数1(A201)を生成し,該乱数1(A201)を,サービス提供者装置40へ送信する。
【0043】
サービス提供者装置40は,通信部404を経由して,乱数1(A201)を受信し,署名値演算部403は,鍵保管部401に保存されている自身の秘密鍵で,乱数1(A201)に対する署名値(A402)を生成し(ステップS401),該署名値(A402)と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書(A403)と,自身が生成した乱数2(A401)と,を通信部404を経由して,端末装置20に送信する。
【0044】
端末装置20の署名値・証明書検証部202は,自らが生成した乱数1(A201)と,サービス提供者装置40から受信した署名値(A402)とサーバ証明書(A403)と,から署名値(A402)の正当性を確認し(ステップS203),サーバ証明書(A403)と,鍵保管部201に保管されているサービス提供者装置40の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書(A403)の正当性を確認する(ステップS203)。
【0045】
確認(ステップS204)が失敗であればサービス享受せずに,処理を終了する(ステップS205)。成功であれば,ICカードアクセス部203は,非接触ICカード10との近接通信の開始を待ち(ステップS206),非接触ICカードとの近接通信の開始を検知した場合には,サービス提供者装置40から受信した乱数2(A401)を,ICカードアクセス部203を経由して,非接触ICカード10へ送信する。
【0046】
非接触ICカード10は,端末アクセス部103を経由して,乱数2(A401)を受信し,署名値演算部102は,鍵保管部101に保存されている自身の秘密鍵で,乱数2(A401)に対する署名値(A101)を生成し(ステップS101),該署名値(A101)と,該署名値を生成するときに用いた秘密鍵と対を成す証明書(A102)と,を端末アクセス部103を経由して,端末装置20に送信する。
【0047】
端末装置20の署名値・証明書検証部202は,ICカードアクセス部203を経由して受信した,署名値(A101)と証明書(A102)を,通信部204を経由して,サービス提供者装置40に送信する。
【0048】
サービス提供者装置40において,署名値・証明書検証部202は,自らが生成した乱数2(A401)と,端末装置20から受信した署名値(A101)と証明書(A102)と,から署名値(A101)の正当性を確認し(ステップS402),証明書(A102)と,鍵保管部401に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書(A102)の正当性を確認する(ステップS402)。
【0049】
確認(ステップS403)が失敗であればサービス提供を終了する(ステップS404)。成功であれば,サービス提供部405は,端末装置20に対するサービスを提供する(ステップS420)。
【0050】
端末装置20のサービス利用部205は,サービス提供者装置40が提供するサービス(A420)を利用する(ステップS220)。
【0051】
図6は,第一の実施形態である図1のシステム構成において,まず非接触ICカード10内で署名値を生成し,その後,端末装置20がサービス提供者装置40に接続し,サービス提供者装置40で非接触ICカードの認証を行い,その後に,端末装置20がサービス提供者装置40の認証を行った後,サービスを提供するフロー図である。
【0052】
端末装置20は,起動し(ステップS201),ICカードアクセス部203が,非接触ICカード10との近接通信の開始を待つ(ステップS206)。非接触ICカード10との近接通信の開始を検知した場合には,サービス利用部205は,自らが生成した使用する毎に増加するカウンタ値(A202)を,ICカードアクセス部203を経由して,非接触ICカード10へ送信する。
【0053】
非接触ICカード10は,端末アクセス部103を経由して,カウンタ値(A202)を受信し,署名値演算部102は,鍵保管部に保存されている自身の秘密鍵で,カウンタ値(A202)に対する署名値(A101)を生成し(ステップS101),該署名値(A101)と,該署名値を生成するときに用いた秘密鍵と対を成す証明書(A102)と,を端末アクセス部103を経由して,端末装置20に送信する。
【0054】
端末装置20は,サービスを受けるサービス提供者装置40を選択し(ステップS202),通信部204を経由して,自身が生成した乱数1(A203)と,非接触ICカードから受信した署名値(A101)と,証明書(A102)と,カウンタ値(A202)と,をサービス提供者装置40へ送信する。
【0055】
サービス提供者装置40において,署名値・証明書検証部402は,端末装置20から受信したカウンタ値(A202)と,署名値(A101)と証明書(A102)と,から署名値の正当性を確認し(ステップS402),証明書(A102)と,鍵保管部401に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書(A102)の正当性を確認する(ステップS402)。
【0056】
確認(ステップS403)が失敗であればサービス提供を終了し(ステップS404),成功であれば,署名値演算部403は,鍵保管部401に保存されている自身の秘密鍵で,乱数1(A203)に対する署名値(A402)を生成し,該署名値(A402)と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書(A403)と,を通信部404を経由して,端末装置20に送信する。
【0057】
端末装置20の署名値・証明書検証部202は,自身が生成した乱数1(A203)と,サービス提供者装置40から受信した署名値(A402)とサーバ証明書(A403)と,から署名値(A402)の正当性を確認し(ステップS203),サーバ証明書(A403)と,鍵保管部201に保管されているサービス提供者装置40の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書の正当性を確認する(ステップS203)。
【0058】
確認(ステップS204)が失敗であればサービス享受を終了し(ステップS205),成功であれば,サービス提供者装置40へ,成功を知らせる応答(A204)を返信する。
【0059】
サービス提供者装置40のサービス提供部405は,端末装置20に対するサービスを提供し(ステップS420),
端末装置20のサービス利用部205は,サービス提供者装置40が提供するサービス(A420)を利用する(ステップS220)。
【0060】
図7は,第二の実施形態である図2のシステム構成において,端末装置20がサービス提供者装置40へ接続を行った後,非接触ICカードの接続を待ち,その後,非接触ICカード内でサーバの認証を行い,かつ,署名値を生成し,その後,サービス提供者装置で,非接触ICカードの認証を行い,サービスを提供するフロー図である。
【0061】
端末装置20は,起動し(ステップS201),サービス利用部205が,サービスを受けるサービス提供者装置40を選択し(ステップS202),通信部204を経由して,サービス利用部205が生成した乱数1(A201)を,サービス提供者装置40へ送信する。
【0062】
サービス提供者装置40は,通信部404を経由して,乱数1(A201)を受信し,署名値演算部403は,鍵保管部401に保存されている自身の秘密鍵で,乱数1(A201)に対する署名値を生成し(ステップS401),該署名値(A402)と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書(A403)と,自身が生成した乱数2(A401)と,を通信部404を経由して,端末装置20に送信する。
【0063】
端末装置20のICカードアクセス部203は,非接触ICカード10との近接通信の開始を待ち(ステップS206),非接触ICカード10との近接通信の開始を検知した場合には,サービス提供者装置40から受信した署名値(A402)と,サーバ証明書(A403)と,乱数2(A401)と,サービス利用部205が生成した乱数1(A201)と,を,ICカードアクセス部203を経由して,非接触ICカード10へ送信する。
【0064】
非接触ICカード10の署名値・証明書検証部104は,端末装置20から受信した乱数1(A201)と,署名値(A402)とサーバ証明書(403)と,から署名値(A402)の正当性を確認し(ステップS102),サーバ証明書(A403)と,鍵保管部101に保管されているサービス提供者装置40の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書(A403)の正当性を確認する(ステップS102)。
【0065】
確認(S103)が失敗であれば,署名値・証明書検証部104は,端末アクセス部103を介して,端末装置20に,失敗通知(A103)を送信し,サービス享受を終了する(ステップS205)。成功であれば,非接触ICカード10の署名値演算部102は,鍵保管部101に保存されている自身の秘密鍵で,乱数2(A401)に対する署名値(A101)を生成し(ステップS101),該署名値(A101)と,該署名値を生成するときに用いた秘密鍵と対を成す証明書(A102)と,を端末アクセス部103を経由して,端末装置20に送信する。
【0066】
端末装置20は,ICカードアクセス部203を経由して受信した,署名値(A101)と証明書(A102)を,通信部204を経由して,サービス提供者装置40に送信する。
【0067】
サービス提供者装置40は,署名値・証明書検証部402が生成した乱数2(A401)と,端末装置20から受信した署名値(A101)と証明書(A102)と,から署名値(A101)の正当性を確認し(ステップS402),証明書(A102)と,鍵保管部401に保管されている非接触ICカード10の公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書の正当性を確認する(ステップS402)。
【0068】
確認(ステップS403)が失敗であればサービス提供を終了し(ステップS404),成功であれば,サービス提供部405が, 端末装置20に対するサービスを提供し(ステップS420),端末装置20のサービス利用部205は,サービス提供者装置40が提供するサービス(A420)を利用する(ステップS220)。
【0069】
図8は,第二の実施形態である図2のシステム構成において,まず非接触ICカード10内で署名値を生成し,その後,端末装置20がサービス提供者装置40に接続し,サービス提供者装置40で非接触ICカードの認証を行い,その後に,再び非接触ICカード10において,サービス提供者装置40の認証を行った後,サービスを提供するフロー図である。
【0070】
端末装置20は,起動し(ステップS201),ICカードアクセス部203は,非接触ICカード10との近接通信の開始を待ち(ステップS206),非接触ICカード10との近接通信の開始を検知した場合には,サービス利用部205が生成した使用する毎に増加するカウンタ値(A202)を,ICカードアクセス部203を経由して,非接触ICカード10へ送信する。
【0071】
非接触ICカード10は,端末アクセス部103を経由して,カウンタ値(A202)を受信し,署名値演算部102は,鍵保管部に保存されている自身の秘密鍵で,カウンタ値に対する署名値(A101)を生成し(ステップS101),該署名値(A101)と,該署名値を生成するときに用いた秘密鍵と対を成す証明書(A102)と,を端末アクセス部103を経由して,端末装置20に送信する。
【0072】
端末装置20のサービス利用部205は,サービスを受けるサービス提供者装置40を選択し(ステップS202),通信部204を経由して,サービス利用部205が生成した乱数1(A203)と,非接触ICカードから受信した署名値(A101)と,証明書(A102)と,カウンタ値(A202)と,をサービス提供者装置40へ送信する。
【0073】
サービス提供者装置40の署名値・証明書検証部404は,端末装置20から受信したカウンタ値(A202)と,署名値(A101)と証明書(A102)と,から署名値(A101)の正当性を確認し(ステップS402),証明書(A102)と,鍵保管部401に保管されている非接触ICカード10の公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書(A102)の正当性を確認する(ステップS402)。
【0074】
確認(ステップS403)が失敗であればサービス提供を終了し(ステップS404),成功であれば,署名値演算部403は,鍵保管部401に保存されている自身の秘密鍵で,乱数1(A203)に対する署名値(A402)を生成し(ステップS401),該署名値(A402)と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書(A403)と,を通信部404を経由して,端末装置20に送信する。
【0075】
端末装置20のICカードアクセス部203は,非接触ICカード10との近接通信の開始を待ち(ステップS206),非接触ICカード10との近接通信の開始を検知した場合には,サービス提供者装置40から受信した署名値(A402)と,サーバ証明書(A403)と,サービス利用部205が生成した乱数1(A203)と,をICカードアクセス部203を経由して,非接触ICカード10へ送信する。
【0076】
非接触ICカード10の署名値・証明書検証部104は,端末装置20から受信した乱数1(A203)と,署名値(A402)と,サーバ証明書(A403)と,から署名値(A402)の正当性を確認し(ステップS102),サーバ証明書(A403)と,鍵保管部101に保管されているサービス提供者装置40の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書(A403)の正当性を確認し(ステップS102),確認の結果(A104)を端末装置20へ通知する。
【0077】
端末装置20のサービス利用部205は,非接触ICカード10から送信された確認が失敗であれば(ステップS210),サービス享受を終了し(ステップS211),成功であれば,サービス提供者装置40へ,成功を知らせる応答(A204)を返信する。
【0078】
サービス提供者装置40のサービス提供部405は,端末装置20に対するサービスを提供し(S420),端末装置20のサービス利用部205は,サービス提供者40が提供するサービス(A420)を利用する(ステップS220)。
【0079】
図9は,端末装置20がカーナビゲーションシステムを想定した場合に,端末装置20が,非接触ICカード10の接続を待つ(ステップS206,S210)ときのイメージ図である。
【0080】
図10は,端末装置20がカーナビゲーションシステムを想定した場合に,端末装置20に,非接触ICカード10を近づけた後に,相互認証が完了したときのイメージ図である。
【0081】
なお,本発明は,上記の各実施形態に限定されるものではなく,その要旨の範囲内で様々な変形が可能である。
【0082】
たとえば,図5〜図8の処理において,サービス提供者装置の選択(ステップS202)を行っているが,事前に端末装置10に登録されていれば,必ずしも,サービス提供者装置の選択(ステップS202)を行う必要はない。
【0083】
また,図6と図8のように非接触ICカードを近づけた後で,サービス提供者装置40に接続する場合は,近づける非接触ICカードの利用者ごとに接続先を切り替えても良い。
【0084】
また,図5〜図8の処理において,サーバ証明書(A403)や証明書(A102)を送受信しているが,一度以上使用された場合には,受信側でキャッシュして二度目からは送受信しないようにしても良い。
【0085】
また,図5〜図8の処理において,証明書を検証する場合(ステップS402,S203,S102)に,外部の証明書検証機関(証明書検証サーバ)を利用しても良い。
【0086】
また,図5〜図8の処理において,サービスを提供する際には,端末装置20とサービス提供者装置40との間でセッション鍵を共有して暗号通信を行っても良い。
【0087】
また,図1,図2の構成において,サービス提供者装置は,サービス提供状況保持部を備えて良く,サービスを提供開始した後,サービスの提供情報を保持し,同一ユーザの再接続の際には,サービス提供状況保持部で保持している情報に引き続くサービスを提供するようにしても良い。
【0088】
さらに,端末装置20からサービス終了要求を受信した際には,サービス提供者装置40のサービス提供状況保持部は,サービス提供状況をクリアするようにしても良い。運用によっては,端末装置20との接続が切れた際に,サービス提供状況をクリアするようにしても良い。
【0089】
端末装置が携帯電話端末であっても良いし,カーナビゲーションシステムであっても良い。その他の携帯デバイスでも良いし,据え置き型の端末装置でも良い。
【0090】
また,非接触ICカードは,非接触ICチップを搭載したデバイスであれば良く,カード型でなくても,携帯電話端末に非接触ICチップが内蔵されたデバイスでも良いし,キーホルダ型のデバイスでも良い。その他の形のデバイスでも良い。
【0091】
また,サービス提供者装置は,該サービス提供者装置で認証される非接触ICカードごとに,該非接触ICカードのユーザに適したサービスを提供しても良い。
【図面の簡単な説明】
【0092】
【図1】第一の実施形態が適用された非接触ICカード認証システムの構成を例示する図である。
【図2】第二の実施形態が適用された非接触ICカード認証システムの構成を例示する図である。
【図3】図1,図2に示す端末装置のハードウェア構成を例示する図である。
【図4】図1,図2に示すICカードのハードウェア構成を例示する図である。
【図5】第一の実施形態が適用された非接触ICカード認証システムの第一の処理フローを例示する図である。
【図6】第一の実施形態が適用された非接触ICカード認証システムの第二の処理フローを例示する図である。
【図7】第二の実施形態が適用された非接触ICカード認証システムの第一の処理フローを例示する図である。
【図8】の第二の実施形態が適用された非接触ICカード認証システムの第二の処理フローを例示する図である。
【図9】非接触ICカードの接続を待つときのイメージ図である。
【図10】非接触ICカード10を近づけた後に,相互認証が完了したときのイメージ図である。
【符号の説明】
【0093】
10:非接触ICカード,11:入出力装置,12:CPU,13:耐タンパ補助記憶装置,14:耐タンパ主記憶装置,15:内部通信線,20:端末装置,21:通信装置,22:入出力装置,23:ICカード入出力装置,24:補助記憶装置,25:CPU,26:主記憶装置,27:読取装置,28:記憶媒体,29:内部通信線,30:ネットワーク,401〜40n:サービス提供者装置,101:鍵保管部,102:署名値演算部,103:端末アクセス部,201:鍵保管部,202:署名値・証明書検証部,203:ICカードアクセス部,204:通信部,205:サービス利用部,401:鍵保管部,402:署名値・証明書検証部,403:署名値演算部,404:通信部,405サービス提供部,A101:署名値,A102:証明書,A103:失敗通知,A104:結果通知,A201:乱数1,A202:カウンタ値,A203:乱数1,A204:応答,A401:乱数2,A402:署名値,A403:サーバ証明書,A420:サービス
【技術分野】
【0001】
本発明は,非接触ICカード認証システムに関し,さらに詳しくは,非接触ICカードを用いて公開鍵暗号に基づく認証を行う非接触ICカード認証システムおよびその方法に関する。
【背景技術】
【0002】
クライアントが複数のサーバに接続しサービスを受ける場合,クライアントとサーバで適切に相互に認証を行わなければならない。クライアントとサーバの間で相互認証を行う技術が知られている。(例えば,非特許文献1参照)。
【0003】
また,そのためには,相互認証に必要な秘密情報を適切に保護しなければならない。秘密情報の保護方法としてICカードを用いて,端末装置と連携しサーバからサービスを受ける技術として,ICカードの認証情報を他の携帯デバイスに委譲し,以降はICカードの権限でサーバと認証を行う技術が示されている(例えば特許文献1参照)。また,非接触ICカードと端末装置を用いてネットワークを経由してサーバからサービスを受ける技術が知られている(例えば特許文献2参照)。
【0004】
【特許文献1】特開2005-123996号公報
【特許文献2】WO2005/027035A1号公報
【非特許文献1】T. Dierks and C. Allen, “RFC 2246 - The TLS Protocol”, The Internet Engineering Task Force, 2002/4, [2007年11月1日検索], インターネット<URL: http://www.ietf.org/rfc/rfc2246.txt>
【発明の開示】
【発明が解決しようとする課題】
【0005】
上記非特許文献1の技術では,クライアント端末とサーバ間で相互認証を行う場合,ネットワークを経由した相互認証が行われるので処理時間がかかる。クライアント側の秘密情報の保持デバイスとして非接触ICカードを採用する場合,端末装置を経由してサーバと相互認証を行うことになるので,非接触ICカードを近づけている短時間の間に処理が完了しないという問題が生じる。
【0006】
上記特許文献2の技術では,非接触ICカードと端末装置とサーバを用いたサービス提供システムが開示されているが,非接触ICカード内の情報をサーバが確認する単方向の認証しか開示していない。
【0007】
また,特許文献1の技術では,端末装置(携帯電話やカーナビゲーション機器)に権限を委譲してしまうので,毎回認証が必要な場合などには委譲のためのオーバーヘッドが大きくなり,また端末装置側にもICカードと同等のセキュリティが要求されことになる。
【課題を解決するための手段】
【0008】
本発明は,上記事情に鑑みてなされたものであり,より改善された非接触ICカード認証システムおよびその方法を提供する。
【0009】
本発明では,ユーザの使い勝手を良くするために,非接触ICカードを端末装置にかざすなど,近づけることにより,近接通信を行い,ネットワークの通信時間を待つことなく,ネットワークに接続された端末装置と複数のサーバとの間で相互認証を行い,適切なユーザにサービスを提供するシステムを提供する。
【0010】
本発明が提供するICカードシステムは,より具体的には,
サービスの提供を行うサービス提供者装置と,サービスを受ける端末装置と,端末装置と近接通信することによりコマンドデータを送受信し処理を行う非接触ICカードと,端末装置と,サービス提供者装置と,が接続するネットワークと,からなり,非接触ICカードは,コマンドデータを送受信する端末アクセス部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書とを保管する鍵保管部と,鍵保管部に保管された秘密鍵を用いて,端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部と,を備え,サービス提供者装置は,ネットワークに接続されデータの送受信を行う通信部と,端末装置に対してサービスを提供するサービス提供部と,非接触ICカードの署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書と非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,鍵保管部に保管された秘密鍵を用いて,通信部から渡された署名対象データに対する署名値を計算する署名値演算部と,を備え,端末装置は,ネットワークに接続されデータの送受信を行う通信部と,非接触ICカードへコマンドデータを送受信するICカードアクセス部と,サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,サービス提供者装置から提供されたサービスを利用するサービス利用部と,を備えることを特徴とする。
【0011】
あるいは,本発明が提供するICカードシステムは,より具体的には,
サービスの提供を行うサービス提供者装置と,サービスを受ける端末装置と,端末装置と近接通信することによりコマンドデータを送受信し処理を行う非接触ICカードと,端末装置と,サービス提供者装置と,が接続するネットワークと,からなり,非接触ICカードは,
コマンドデータを送受信する端末アクセス部と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,鍵保管部に保管された秘密鍵を用いて,端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部と,を備え,サービス提供者装置は,ネットワークに接続されデータの送受信を行う通信部と,端末装置に対してサービスを提供するサービス提供部と,非接触ICカードの署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書と非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,鍵保管部に保管された秘密鍵を用いて,通信部から渡された署名対象データに対する署名値を計算する署名値演算部と,を備え,端末装置は,ネットワークに接続されデータの送受信を行う通信部と,非接触ICカードへコマンドデータを送受信するICカードアクセス部と,サービス提供者装置から提供されたサービスを利用するサービス利用部と,を備えることを特徴とする。
【0012】
さらに,サービス提供者装置は,サービスの提供状況を保持するサービス提供状況保持部を備えてもよい。
【0013】
さらに,本発明が提供するICカードシステムにおいて,
端末装置は,起動し,サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1を,サービス提供者装置へ送信し,
サービス提供者装置は,通信部を経由して,乱数1を受信し,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,乱数1に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,自身が生成した乱数2と,を通信部を経由して,端末装置に送信し,
端末装置の署名値・証明書検証部は,自らが生成した乱数1と,サービス提供者装置から受信した署名値とサーバ証明書と,から署名値の正当性を確認し,サーバ証明書と,鍵保管部に保管されているサービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書の正当性を確認し,確認が失敗であればサービス享受を終了し,成功であれば,非接触ICカードとの近接通信の開始を待ち,非接触ICカードとの近接通信の開始を検知した場合には,サービス提供者装置から受信した乱数2を,ICカードアクセス部を経由して,非接触ICカードへ送信し,
非接触ICカードは,端末アクセス部を経由して,乱数2を受信し,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,乱数2に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を端末アクセス部を経由して,端末装置に送信し,
端末装置は,ICカードアクセス部を経由して受信した,署名値と証明書を,通信部を経由して,サービス提供者装置に送信し,
サービス提供者装置は,
自らが生成した乱数2と,端末装置から受信した署名値と証明書と,から署名値の正当性を確認し,
証明書と,鍵保管部に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書の正当性を確認し,
確認が失敗であればサービス提供を終了し,
成功であれば,端末装置に対するサービスを提供し,
端末装置は,サービス提供者装置が提供するサービスを利用してもよい。
【0014】
さらに,本発明が提供するICカードシステムにおいて,
端末装置は,起動し,非接触ICカードとの近接通信の開始を待ち,非接触ICカードとの近接通信の開始を検知した場合には,自らが生成した使用する毎に増加するカウンタ値を,ICカードアクセス部を経由して,非接触ICカードへ送信し,
非接触ICカードは,
端末アクセス部を経由して,カウンタ値を受信し,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,カウンタ値に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を端末アクセス部を経由して,端末装置に送信し,
端末装置は,
サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1と,非接触ICカードから受信した署名値と,証明書と,カウンタ値と,をサービス提供者装置へ送信し,
サービス提供者装置は,
端末装置から受信したカウンタ値と,署名値と証明書と,から署名値の正当性を確認し,証明書と,鍵保管部に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書の正当性を確認し,
確認が失敗であればサービス提供を終了し,
成功であれば,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,乱数1に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,を通信部を経由して,端末装置に送信し,
端末装置の署名値・証明書検証部は,
自身が生成した乱数1と,サービス提供者装置から受信した署名値とサーバ証明書と,から署名値の正当性を確認し,
サーバ証明書と,鍵保管部に保管されているサービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書の正当性を確認し,
確認が失敗であればサービス享受を終了し,
成功であれば,サービス提供者装置へ,成功を知らせる応答を返信し,
サービス提供者装置は,
端末装置に対するサービスを提供し,
端末装置は,サービス提供者装置が提供するサービスを利用してもよい。
【0015】
さらに,本発明が提供するICカードシステムにおいて,
端末装置は,
起動し,サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1を,サービス提供者装置へ送信し,
サービス提供者装置は,
通信部を経由して,乱数1を受信し,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,乱数1に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,自身が生成した乱数2と,を通信部を経由して,端末装置に送信し,
端末装置は,
非接触ICカードとの近接通信の開始を待ち,非接触ICカードとの近接通信の開始を検知した場合には,サービス提供者装置から受信した署名値と,サーバ証明書と,乱数2と,自身が生成した乱数1と,を,ICカードアクセス部を経由して,非接触ICカードへ送信し,
非接触ICカードの署名値・証明書検証部は,
端末装置から受信した乱数1と,署名値とサーバ証明書と,から署名値の正当性を確認し,サーバ証明書と,鍵保管部に保管されているサービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書の正当性を確認し,
確認が失敗であれば,端末装置に,失敗を通知しサービス享受を終了し,成功であれば,
非接触ICカードの署名値演算部は,
鍵保管部に保存されている自身の秘密鍵で,乱数2に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を端末アクセス部を経由して,端末装置に送信し,
端末装置は,ICカードアクセス部を経由して受信した,署名値と証明書を,通信部を経由して,サービス提供者装置に送信し,
サービス提供者装置は,
自らが生成した乱数2と,端末装置から受信した署名値と証明書と,から署名値の正当性を確認し,
証明書と,鍵保管部に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書の正当性を確認し,
確認が失敗であればサービス提供を終了し,成功であれば,
端末装置に対するサービスを提供し,
端末装置は,サービス提供者装置が提供するサービスを利用してもよい。
【0016】
さらに,本発明が提供するICカードシステムにおいて,
端末装置は,
起動し,非接触ICカードとの近接通信の開始を待ち,非接触ICカードとの近接通信の開始を検知した場合には,自らが生成した使用する毎に増加するカウンタ値を,ICカードアクセス部を経由して,非接触ICカードへ送信し,
非接触ICカードは,
端末アクセス部を経由して,カウンタ値を受信し,署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,カウンタ値に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を端末アクセス部を経由して,端末装置に送信し,
端末装置は,
サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1と,非接触ICカードから受信した署名値と,証明書と,カウンタ値と,をサービス提供者装置へ送信し,
サービス提供者装置は,
端末装置から受信したカウンタ値と,署名値と証明書と,から署名値の正当性を確認し,
証明書と,鍵保管部に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書の正当性を確認し,
確認が失敗であればサービス提供を終了し,成功であれば,
署名値演算部は,鍵保管部に保存されている自身の秘密鍵で,乱数1に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,を通信部を経由して,端末装置に送信し,
端末装置は,
非接触ICカードとの近接通信の開始を待ち,非接触ICカードとの近接通信の開始を検知した場合には,サービス提供者装置から受信した署名値と,サーバ証明書と,自身が生成した乱数1と,をICカードアクセス部を経由して,非接触ICカードへ送信し,
非接触ICカードの署名値・証明書検証部は,
端末装置から受信した乱数1と,署名値とサーバ証明書と,から署名値の正当性を確認し,
サーバ証明書と,鍵保管部に保管されているサービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書の正当性を確認し,
確認の結果を端末装置へ通知し,
端末装置は,
非接触ICカードから送信された確認が失敗であれば,サービス享受を終了し,成功であれば,
サービス提供者装置へ,成功を知らせる応答を返信し,
サービス提供者装置は,
端末装置に対するサービスを提供し,
端末装置は,サービス提供者装置が提供するサービスを利用してもよい。
【0017】
さらに,本発明が提供するICカードシステムにおいて,
サービス提供者装置の,サービス提供状況保持部は,端末装置に対してサービスを提供開始した後,サービスの提供情報を保持し,
同一ユーザの再接続の際には,サービス提供状況保持部で保持している情報に引き続くサービスを提供してもよい。
【0018】
さらに,本発明が提供するICカードシステムにおいて,
端末装置から,サービス提供者装置へ,サービス終了要求を送信し,
サービス提供者装置のサービス提供状況保持部は,サービス提供状況をクリアしてもよい。
【0019】
さらに,本発明が提供するICカードシステムにおいて,
サービス提供者装置で認証される非接触ICカードごとに,該非接触ICカードのユーザに適したサービスを提供してもよい。
【発明の効果】
【0020】
本発明によれば,非接触ICカードを用いて,複数のサービス提供者装置と,オープンなネットワークを経由して,公開鍵暗号に基づく認証を行い,サービスを提供するシステムを実現することが可能になる。
【発明を実施するための最良の形態】
【0021】
本発明の一実施形態について説明する。なお,これにより本発明が限定されるものではない。
【0022】
図1は,本発明の一実施形態が適用された非接触ICカード認証システムの構成図である。
【0023】
本実施形態の非接触ICカード認証システムは,図1に示すように,複数のサービス提供者装置401〜40n(以下,単にサービス提供者装置40とも称する)と,端末装置20と,がインターネットなどのネットワーク30を介して,互いに接続されて構成されている。また端末装置20は,非接触ICカード10が非接触(近接通信)で接続される。
【0024】
サービス提供者装置40は,自身を認証してもらうための署名生成を行い,また,非接触ICカードを認証するための署名値の検証および証明書の検証を行う。その後,端末装置20に対してサービスを提供する。
【0025】
サービス提供者装置40は,ネットワーク30に接続されデータの送受信を行う通信部404と,端末装置に対してサービスを提供するサービス提供部405と,非接触ICカードの署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部402と,秘密鍵と該秘密鍵と対をなす公開鍵証明書と非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部401と,鍵保管部に保管された秘密鍵を用いて,通信部から渡された署名対象データに対する署名値を計算する署名値演算部403と,を含む。
【0026】
非接触ICカード10は,署名対象データを受信し,自身で保持している秘密鍵を使って署名対象データに対する署名を生成し,端末装置に返信する。
【0027】
非接触ICカードは,
コマンドデータを送受信する端末アクセス部103と,秘密鍵と該秘密鍵と対をなす公開鍵証明書とを保管する鍵保管部101と,鍵保管部に保管された秘密鍵を用いて,端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部102と,を含む。
【0028】
端末装置20は,サービス提供装置40を認証するための署名値の検証および証明書の検証を行う。
【0029】
端末装置20は,ネットワーク30に接続されデータの送受信を行う通信部204と,非接触ICカードへコマンドデータを送受信するICカードアクセス部203と,サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部202と,サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部201と,サービス提供者装置から提供されたサービスを利用するサービス利用部205と,を含む。
【0030】
図2は,本発明の第二の実施形態が適用された非接触ICカード認証システムの構成図である。
【0031】
本実施形態の非接触ICカード認証システムは,図1で示した第一の実施形態と同様に,図2に示すように,複数のサービス提供者装置401〜40n(以下,単にサービス提供者装置40とも称する)と,端末装置20と,がインターネットなどのネットワーク30を介して,互いに接続されて構成されている。また端末装置20は,非接触ICカード10が非接触(近接通信)で接続される。
【0032】
サービス提供者装置40の構成は,第一の実施形態のサービス提供者装置と同様である。
【0033】
非接触ICカード10は,署名対象データを受信し,自身で保持している秘密鍵を使って署名対象データに対する署名を生成し,端末装置に返信する。また,サービス提供装置40を認証するための署名値の検証および証明書の検証を行う。
【0034】
非接触ICカード10は,コマンドデータを送受信する端末アクセス部103と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部104と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部101と,鍵保管部に保管された秘密鍵を用いて,端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部102と,を含む。
【0035】
端末装置20は,非接触ICカード10とサービス提供者装置40とを仲介し,相互認証が完了後,サービス提供装置40からサービスを受ける。
【0036】
端末装置20は,ネットワーク30に接続されデータの送受信を行う通信部204と,非接触ICカードへコマンドデータを送受信するICカードアクセス部203と,サービス提供者装置から提供されたサービスを利用するサービス利用部205と,を含む。
【0037】
図3は端末装置20のハードウェア構成図である。端末装置20は,通信装置21と,入出力装置22と,ICカード入出力装置23と,補助記憶装置24と,CPU25と主記憶装置26と,読取装置27とがバスなどの内部通信線29で連結され,記憶媒体28を含めて構成されている。また,端末装置20はICカード入出力装置23を経由して,ICカード10とつながる。
【0038】
サービス提供者装置40のハードウェア構成は端末装置20のハードウェア構成と同様である。ただし,サービス提供者装置40が,直接ICカード10へのアクセスを行わない場合は,ICカード入出力装置23は備えなくても良い。
【0039】
図4は非接触ICカード10のハードウェア構成図である。非接触ICカード10は,入出力部11と,CPU12と,耐タンパ補助記憶装置13と,耐タンパ主記憶装置14と,がバスなどの内部通信線15で連結されて構成されている。
【0040】
本実施形態の非接触ICカード認証システムにおける処理フローについて説明する。各装置の補助記憶装置13または24に格納されたプログラムが主記憶装置14または26にロードされ,CPUにより実行されることにより,非接触ICカード認証システムを構成する各装置,非接触ICカード上に以下説明する各処理部が具現化され,それら各処理部により,以下に述べる処理フローが実行される。また,各プログラムは予め補助記憶装置13または24に格納されても良いし,他の記憶媒体または通信媒体(ネットワーク,またはネットワークを伝搬する搬送波またはディジタル信号)を介して,必要なときに導入されても良い。また,非接触ICカード認証システムのプログラムはあらかじめ耐タンパメモリ14に格納されていても良い。
【0041】
図5は,第一の実施形態である図1のシステム構成において,端末装置20がサービス提供者装置40の認証を行った後,非接触ICカードの接続を待ち,その後,非接触ICカード内で署名値を生成し,その後,サービス提供者装置で,非接触ICカードの認証を行い,サービスを提供するフロー図である。
【0042】
まず,端末装置20が起動し(ステップS201),その後,サービス利用部205が,サービスを受けたいサービス提供者装置を選択する(ステップS202)。端末装置20の署名値・証明書検証部202は,乱数1(A201)を生成し,該乱数1(A201)を,サービス提供者装置40へ送信する。
【0043】
サービス提供者装置40は,通信部404を経由して,乱数1(A201)を受信し,署名値演算部403は,鍵保管部401に保存されている自身の秘密鍵で,乱数1(A201)に対する署名値(A402)を生成し(ステップS401),該署名値(A402)と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書(A403)と,自身が生成した乱数2(A401)と,を通信部404を経由して,端末装置20に送信する。
【0044】
端末装置20の署名値・証明書検証部202は,自らが生成した乱数1(A201)と,サービス提供者装置40から受信した署名値(A402)とサーバ証明書(A403)と,から署名値(A402)の正当性を確認し(ステップS203),サーバ証明書(A403)と,鍵保管部201に保管されているサービス提供者装置40の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書(A403)の正当性を確認する(ステップS203)。
【0045】
確認(ステップS204)が失敗であればサービス享受せずに,処理を終了する(ステップS205)。成功であれば,ICカードアクセス部203は,非接触ICカード10との近接通信の開始を待ち(ステップS206),非接触ICカードとの近接通信の開始を検知した場合には,サービス提供者装置40から受信した乱数2(A401)を,ICカードアクセス部203を経由して,非接触ICカード10へ送信する。
【0046】
非接触ICカード10は,端末アクセス部103を経由して,乱数2(A401)を受信し,署名値演算部102は,鍵保管部101に保存されている自身の秘密鍵で,乱数2(A401)に対する署名値(A101)を生成し(ステップS101),該署名値(A101)と,該署名値を生成するときに用いた秘密鍵と対を成す証明書(A102)と,を端末アクセス部103を経由して,端末装置20に送信する。
【0047】
端末装置20の署名値・証明書検証部202は,ICカードアクセス部203を経由して受信した,署名値(A101)と証明書(A102)を,通信部204を経由して,サービス提供者装置40に送信する。
【0048】
サービス提供者装置40において,署名値・証明書検証部202は,自らが生成した乱数2(A401)と,端末装置20から受信した署名値(A101)と証明書(A102)と,から署名値(A101)の正当性を確認し(ステップS402),証明書(A102)と,鍵保管部401に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書(A102)の正当性を確認する(ステップS402)。
【0049】
確認(ステップS403)が失敗であればサービス提供を終了する(ステップS404)。成功であれば,サービス提供部405は,端末装置20に対するサービスを提供する(ステップS420)。
【0050】
端末装置20のサービス利用部205は,サービス提供者装置40が提供するサービス(A420)を利用する(ステップS220)。
【0051】
図6は,第一の実施形態である図1のシステム構成において,まず非接触ICカード10内で署名値を生成し,その後,端末装置20がサービス提供者装置40に接続し,サービス提供者装置40で非接触ICカードの認証を行い,その後に,端末装置20がサービス提供者装置40の認証を行った後,サービスを提供するフロー図である。
【0052】
端末装置20は,起動し(ステップS201),ICカードアクセス部203が,非接触ICカード10との近接通信の開始を待つ(ステップS206)。非接触ICカード10との近接通信の開始を検知した場合には,サービス利用部205は,自らが生成した使用する毎に増加するカウンタ値(A202)を,ICカードアクセス部203を経由して,非接触ICカード10へ送信する。
【0053】
非接触ICカード10は,端末アクセス部103を経由して,カウンタ値(A202)を受信し,署名値演算部102は,鍵保管部に保存されている自身の秘密鍵で,カウンタ値(A202)に対する署名値(A101)を生成し(ステップS101),該署名値(A101)と,該署名値を生成するときに用いた秘密鍵と対を成す証明書(A102)と,を端末アクセス部103を経由して,端末装置20に送信する。
【0054】
端末装置20は,サービスを受けるサービス提供者装置40を選択し(ステップS202),通信部204を経由して,自身が生成した乱数1(A203)と,非接触ICカードから受信した署名値(A101)と,証明書(A102)と,カウンタ値(A202)と,をサービス提供者装置40へ送信する。
【0055】
サービス提供者装置40において,署名値・証明書検証部402は,端末装置20から受信したカウンタ値(A202)と,署名値(A101)と証明書(A102)と,から署名値の正当性を確認し(ステップS402),証明書(A102)と,鍵保管部401に保管されている非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書(A102)の正当性を確認する(ステップS402)。
【0056】
確認(ステップS403)が失敗であればサービス提供を終了し(ステップS404),成功であれば,署名値演算部403は,鍵保管部401に保存されている自身の秘密鍵で,乱数1(A203)に対する署名値(A402)を生成し,該署名値(A402)と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書(A403)と,を通信部404を経由して,端末装置20に送信する。
【0057】
端末装置20の署名値・証明書検証部202は,自身が生成した乱数1(A203)と,サービス提供者装置40から受信した署名値(A402)とサーバ証明書(A403)と,から署名値(A402)の正当性を確認し(ステップS203),サーバ証明書(A403)と,鍵保管部201に保管されているサービス提供者装置40の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書の正当性を確認する(ステップS203)。
【0058】
確認(ステップS204)が失敗であればサービス享受を終了し(ステップS205),成功であれば,サービス提供者装置40へ,成功を知らせる応答(A204)を返信する。
【0059】
サービス提供者装置40のサービス提供部405は,端末装置20に対するサービスを提供し(ステップS420),
端末装置20のサービス利用部205は,サービス提供者装置40が提供するサービス(A420)を利用する(ステップS220)。
【0060】
図7は,第二の実施形態である図2のシステム構成において,端末装置20がサービス提供者装置40へ接続を行った後,非接触ICカードの接続を待ち,その後,非接触ICカード内でサーバの認証を行い,かつ,署名値を生成し,その後,サービス提供者装置で,非接触ICカードの認証を行い,サービスを提供するフロー図である。
【0061】
端末装置20は,起動し(ステップS201),サービス利用部205が,サービスを受けるサービス提供者装置40を選択し(ステップS202),通信部204を経由して,サービス利用部205が生成した乱数1(A201)を,サービス提供者装置40へ送信する。
【0062】
サービス提供者装置40は,通信部404を経由して,乱数1(A201)を受信し,署名値演算部403は,鍵保管部401に保存されている自身の秘密鍵で,乱数1(A201)に対する署名値を生成し(ステップS401),該署名値(A402)と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書(A403)と,自身が生成した乱数2(A401)と,を通信部404を経由して,端末装置20に送信する。
【0063】
端末装置20のICカードアクセス部203は,非接触ICカード10との近接通信の開始を待ち(ステップS206),非接触ICカード10との近接通信の開始を検知した場合には,サービス提供者装置40から受信した署名値(A402)と,サーバ証明書(A403)と,乱数2(A401)と,サービス利用部205が生成した乱数1(A201)と,を,ICカードアクセス部203を経由して,非接触ICカード10へ送信する。
【0064】
非接触ICカード10の署名値・証明書検証部104は,端末装置20から受信した乱数1(A201)と,署名値(A402)とサーバ証明書(403)と,から署名値(A402)の正当性を確認し(ステップS102),サーバ証明書(A403)と,鍵保管部101に保管されているサービス提供者装置40の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書(A403)の正当性を確認する(ステップS102)。
【0065】
確認(S103)が失敗であれば,署名値・証明書検証部104は,端末アクセス部103を介して,端末装置20に,失敗通知(A103)を送信し,サービス享受を終了する(ステップS205)。成功であれば,非接触ICカード10の署名値演算部102は,鍵保管部101に保存されている自身の秘密鍵で,乱数2(A401)に対する署名値(A101)を生成し(ステップS101),該署名値(A101)と,該署名値を生成するときに用いた秘密鍵と対を成す証明書(A102)と,を端末アクセス部103を経由して,端末装置20に送信する。
【0066】
端末装置20は,ICカードアクセス部203を経由して受信した,署名値(A101)と証明書(A102)を,通信部204を経由して,サービス提供者装置40に送信する。
【0067】
サービス提供者装置40は,署名値・証明書検証部402が生成した乱数2(A401)と,端末装置20から受信した署名値(A101)と証明書(A102)と,から署名値(A101)の正当性を確認し(ステップS402),証明書(A102)と,鍵保管部401に保管されている非接触ICカード10の公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書の正当性を確認する(ステップS402)。
【0068】
確認(ステップS403)が失敗であればサービス提供を終了し(ステップS404),成功であれば,サービス提供部405が, 端末装置20に対するサービスを提供し(ステップS420),端末装置20のサービス利用部205は,サービス提供者装置40が提供するサービス(A420)を利用する(ステップS220)。
【0069】
図8は,第二の実施形態である図2のシステム構成において,まず非接触ICカード10内で署名値を生成し,その後,端末装置20がサービス提供者装置40に接続し,サービス提供者装置40で非接触ICカードの認証を行い,その後に,再び非接触ICカード10において,サービス提供者装置40の認証を行った後,サービスを提供するフロー図である。
【0070】
端末装置20は,起動し(ステップS201),ICカードアクセス部203は,非接触ICカード10との近接通信の開始を待ち(ステップS206),非接触ICカード10との近接通信の開始を検知した場合には,サービス利用部205が生成した使用する毎に増加するカウンタ値(A202)を,ICカードアクセス部203を経由して,非接触ICカード10へ送信する。
【0071】
非接触ICカード10は,端末アクセス部103を経由して,カウンタ値(A202)を受信し,署名値演算部102は,鍵保管部に保存されている自身の秘密鍵で,カウンタ値に対する署名値(A101)を生成し(ステップS101),該署名値(A101)と,該署名値を生成するときに用いた秘密鍵と対を成す証明書(A102)と,を端末アクセス部103を経由して,端末装置20に送信する。
【0072】
端末装置20のサービス利用部205は,サービスを受けるサービス提供者装置40を選択し(ステップS202),通信部204を経由して,サービス利用部205が生成した乱数1(A203)と,非接触ICカードから受信した署名値(A101)と,証明書(A102)と,カウンタ値(A202)と,をサービス提供者装置40へ送信する。
【0073】
サービス提供者装置40の署名値・証明書検証部404は,端末装置20から受信したカウンタ値(A202)と,署名値(A101)と証明書(A102)と,から署名値(A101)の正当性を確認し(ステップS402),証明書(A102)と,鍵保管部401に保管されている非接触ICカード10の公開鍵証明書の正当性を検証するための上位認証局証明書と,から証明書(A102)の正当性を確認する(ステップS402)。
【0074】
確認(ステップS403)が失敗であればサービス提供を終了し(ステップS404),成功であれば,署名値演算部403は,鍵保管部401に保存されている自身の秘密鍵で,乱数1(A203)に対する署名値(A402)を生成し(ステップS401),該署名値(A402)と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書(A403)と,を通信部404を経由して,端末装置20に送信する。
【0075】
端末装置20のICカードアクセス部203は,非接触ICカード10との近接通信の開始を待ち(ステップS206),非接触ICカード10との近接通信の開始を検知した場合には,サービス提供者装置40から受信した署名値(A402)と,サーバ証明書(A403)と,サービス利用部205が生成した乱数1(A203)と,をICカードアクセス部203を経由して,非接触ICカード10へ送信する。
【0076】
非接触ICカード10の署名値・証明書検証部104は,端末装置20から受信した乱数1(A203)と,署名値(A402)と,サーバ証明書(A403)と,から署名値(A402)の正当性を確認し(ステップS102),サーバ証明書(A403)と,鍵保管部101に保管されているサービス提供者装置40の公開鍵証明書の正当性を検証するための上位認証局証明書と,からサーバ証明書(A403)の正当性を確認し(ステップS102),確認の結果(A104)を端末装置20へ通知する。
【0077】
端末装置20のサービス利用部205は,非接触ICカード10から送信された確認が失敗であれば(ステップS210),サービス享受を終了し(ステップS211),成功であれば,サービス提供者装置40へ,成功を知らせる応答(A204)を返信する。
【0078】
サービス提供者装置40のサービス提供部405は,端末装置20に対するサービスを提供し(S420),端末装置20のサービス利用部205は,サービス提供者40が提供するサービス(A420)を利用する(ステップS220)。
【0079】
図9は,端末装置20がカーナビゲーションシステムを想定した場合に,端末装置20が,非接触ICカード10の接続を待つ(ステップS206,S210)ときのイメージ図である。
【0080】
図10は,端末装置20がカーナビゲーションシステムを想定した場合に,端末装置20に,非接触ICカード10を近づけた後に,相互認証が完了したときのイメージ図である。
【0081】
なお,本発明は,上記の各実施形態に限定されるものではなく,その要旨の範囲内で様々な変形が可能である。
【0082】
たとえば,図5〜図8の処理において,サービス提供者装置の選択(ステップS202)を行っているが,事前に端末装置10に登録されていれば,必ずしも,サービス提供者装置の選択(ステップS202)を行う必要はない。
【0083】
また,図6と図8のように非接触ICカードを近づけた後で,サービス提供者装置40に接続する場合は,近づける非接触ICカードの利用者ごとに接続先を切り替えても良い。
【0084】
また,図5〜図8の処理において,サーバ証明書(A403)や証明書(A102)を送受信しているが,一度以上使用された場合には,受信側でキャッシュして二度目からは送受信しないようにしても良い。
【0085】
また,図5〜図8の処理において,証明書を検証する場合(ステップS402,S203,S102)に,外部の証明書検証機関(証明書検証サーバ)を利用しても良い。
【0086】
また,図5〜図8の処理において,サービスを提供する際には,端末装置20とサービス提供者装置40との間でセッション鍵を共有して暗号通信を行っても良い。
【0087】
また,図1,図2の構成において,サービス提供者装置は,サービス提供状況保持部を備えて良く,サービスを提供開始した後,サービスの提供情報を保持し,同一ユーザの再接続の際には,サービス提供状況保持部で保持している情報に引き続くサービスを提供するようにしても良い。
【0088】
さらに,端末装置20からサービス終了要求を受信した際には,サービス提供者装置40のサービス提供状況保持部は,サービス提供状況をクリアするようにしても良い。運用によっては,端末装置20との接続が切れた際に,サービス提供状況をクリアするようにしても良い。
【0089】
端末装置が携帯電話端末であっても良いし,カーナビゲーションシステムであっても良い。その他の携帯デバイスでも良いし,据え置き型の端末装置でも良い。
【0090】
また,非接触ICカードは,非接触ICチップを搭載したデバイスであれば良く,カード型でなくても,携帯電話端末に非接触ICチップが内蔵されたデバイスでも良いし,キーホルダ型のデバイスでも良い。その他の形のデバイスでも良い。
【0091】
また,サービス提供者装置は,該サービス提供者装置で認証される非接触ICカードごとに,該非接触ICカードのユーザに適したサービスを提供しても良い。
【図面の簡単な説明】
【0092】
【図1】第一の実施形態が適用された非接触ICカード認証システムの構成を例示する図である。
【図2】第二の実施形態が適用された非接触ICカード認証システムの構成を例示する図である。
【図3】図1,図2に示す端末装置のハードウェア構成を例示する図である。
【図4】図1,図2に示すICカードのハードウェア構成を例示する図である。
【図5】第一の実施形態が適用された非接触ICカード認証システムの第一の処理フローを例示する図である。
【図6】第一の実施形態が適用された非接触ICカード認証システムの第二の処理フローを例示する図である。
【図7】第二の実施形態が適用された非接触ICカード認証システムの第一の処理フローを例示する図である。
【図8】の第二の実施形態が適用された非接触ICカード認証システムの第二の処理フローを例示する図である。
【図9】非接触ICカードの接続を待つときのイメージ図である。
【図10】非接触ICカード10を近づけた後に,相互認証が完了したときのイメージ図である。
【符号の説明】
【0093】
10:非接触ICカード,11:入出力装置,12:CPU,13:耐タンパ補助記憶装置,14:耐タンパ主記憶装置,15:内部通信線,20:端末装置,21:通信装置,22:入出力装置,23:ICカード入出力装置,24:補助記憶装置,25:CPU,26:主記憶装置,27:読取装置,28:記憶媒体,29:内部通信線,30:ネットワーク,401〜40n:サービス提供者装置,101:鍵保管部,102:署名値演算部,103:端末アクセス部,201:鍵保管部,202:署名値・証明書検証部,203:ICカードアクセス部,204:通信部,205:サービス利用部,401:鍵保管部,402:署名値・証明書検証部,403:署名値演算部,404:通信部,405サービス提供部,A101:署名値,A102:証明書,A103:失敗通知,A104:結果通知,A201:乱数1,A202:カウンタ値,A203:乱数1,A204:応答,A401:乱数2,A402:署名値,A403:サーバ証明書,A420:サービス
【特許請求の範囲】
【請求項1】
非接触ICカード認証システムであって,
サービスの提供を行うサービス提供者装置と,サービスを受ける端末装置と,前記端末装置と近接通信することによりコマンドデータを送受信し処理を行う非接触ICカードと,前記端末装置と,前記サービス提供者装置と,が接続するネットワークと,からなり,
前記非接触ICカードは,
コマンドデータを送受信する端末アクセス部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書とを保管する鍵保管部と,前記鍵保管部に保管された秘密鍵を用いて,前記端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部と,を備え,
前記サービス提供者装置は,
前記ネットワークに接続されデータの送受信を行う通信部と,前記端末装置に対してサービスを提供するサービス提供部と,前記非接触ICカードの署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書と前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,前記鍵保管部に保管された秘密鍵を用いて,前記通信部から渡された署名対象データに対する署名値を計算する署名値演算部と,を備え,
前記端末装置は,
前記ネットワークに接続されデータの送受信を行う通信部と,前記非接触ICカードへ前記コマンドデータを送受信するICカードアクセス部と,前記サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,前記サービス提供者装置から提供されたサービスを利用するサービス利用部と,を備える
ことを特徴とする非接触ICカード認証システム。
【請求項2】
非接触ICカード認証システムであって,
サービスの提供を行うサービス提供者装置と,サービスを受ける端末装置と,前記端末装置近接通信することによりコマンドデータを送受信し処理を行う非接触ICカードと,前記端末装置と,前記サービス提供者装置と,が接続するネットワークと,からなり,
前記非接触ICカードは,
コマンドデータを送受信する端末アクセス部と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,前記サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,前記鍵保管部に保管された秘密鍵を用いて,前記端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部と,を備え,
前記サービス提供者装置は,
前記ネットワークに接続されデータの送受信を行う通信部と,前記端末装置に対してサービスを提供するサービス提供部と,前記非接触ICカードの署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書と前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,前記鍵保管部に保管された秘密鍵を用いて,前記通信部から渡された署名対象データに対する署名値を計算する署名値演算部と,を備え,
前記端末装置は,
前記ネットワークに接続されデータの送受信を行う通信部と,前記非接触ICカードへ前記コマンドデータを送受信するICカードアクセス部と,前記サービス提供者装置から提供されたサービスを利用するサービス利用部と,を備える
ことを特徴とする非接触ICカード認証システム。
【請求項3】
請求項1または請求項2に記載の非接触ICカード認証システムであって,
前記サービス提供者装置は,サービスの提供状況を保持するサービス提供状況保持部を備える
ことを特徴とする非接触ICカード認証システム。
【請求項4】
請求項1に記載の非接触ICカード認証システムであって,
前記端末装置は,
起動し,サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1を,サービス提供者装置へ送信し,
サービス提供者装置は,
通信部を経由して,前記乱数1を受信し,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記乱数1に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,自身が生成した乱数2と,を通信部を経由して,前記端末装置に送信し,
前記端末装置の署名値・証明書検証部は,
前記自らが生成した乱数1と,前記サービス提供者装置から受信した署名値とサーバ証明書と,から前記署名値の正当性を確認し,前記サーバ証明書と,前記鍵保管部に保管されている前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記サーバ証明書の正当性を確認し,
前記確認が失敗であればサービス享受を終了し,
成功であれば,前記非接触ICカードとの近接通信の開始を待ち,前記非接触ICカードとの近接通信の開始を検知した場合には,前記サービス提供者装置から受信した前記乱数2を,前記ICカードアクセス部を経由して,前記非接触ICカードへ送信し,
非接触ICカードは,
端末アクセス部を経由して,前記乱数2を受信し,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記乱数2に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を前記端末アクセス部を経由して,前記端末装置に送信し,
前記端末装置は,ICカードアクセス部を経由して受信した,前記署名値と証明書を,通信部を経由して,サービス提供者装置に送信し,
前記サービス提供者装置は,
前記自らが生成した乱数2と,前記端末装置から受信した署名値と証明書と,から前記署名値の正当性を確認し,
前記証明書と,前記鍵保管部に保管されている前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記証明書の正当性を確認し,
前記確認が失敗であればサービス提供を終了し,
成功であれば,前記端末装置に対するサービスを提供し,
前記端末装置は,前記サービス提供者装置が提供するサービスを利用する
ことを特徴とする非接触ICカード認証システム。
【請求項5】
請求項1に記載の非接触ICカード認証システムであって,
前記端末装置は,
起動し,前記非接触ICカードとの近接通信の開始を待ち,前記非接触ICカードとの近接通信の開始を検知した場合には,自らが生成した使用する毎に増加するカウンタ値を,前記ICカードアクセス部を経由して,前記非接触ICカードへ送信し,
前記非接触ICカードは,
端末アクセス部を経由して,前記カウンタ値を受信し,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記カウンタ値に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を前記端末アクセス部を経由して,前記端末装置に送信し,
前記端末装置は,
サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1と,前記非接触ICカードから受信した署名値と,証明書と,前記カウンタ値と,をサービス提供者装置へ送信し,
サービス提供者装置は,
前記端末装置から受信したカウンタ値と,署名値と証明書と,から前記署名値の正当性を確認し,前記証明書と,前記鍵保管部に保管されている前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記証明書の正当性を確認し,
前記確認が失敗であればサービス提供を終了し,
成功であれば,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記乱数1に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,を通信部を経由して,前記端末装置に送信し,
前記端末装置の署名値・証明書検証部は,
前記自身が生成した乱数1と,前記サービス提供者装置から受信した署名値とサーバ証明書と,から前記署名値の正当性を確認し,
前記サーバ証明書と,前記鍵保管部に保管されている前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記サーバ証明書の正当性を確認し,
前記確認が失敗であればサービス享受を終了し,
成功であれば,前記サービス提供者装置へ,成功を知らせる応答を返信し,
前記サービス提供者装置は,
前記端末装置に対するサービスを提供し,
前記端末装置は,前記サービス提供者装置が提供するサービスを利用する
ことを特徴とする非接触ICカード認証システム。
【請求項6】
請求項2に記載の非接触ICカード認証システムであって,
前記端末装置は,
起動し,サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1を,サービス提供者装置へ送信し,
サービス提供者装置は,
通信部を経由して,前記乱数1を受信し,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記乱数1に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,自身が生成した乱数2と,を通信部を経由して,前記端末装置に送信し,
前記端末装置は,
前記非接触ICカードとの近接通信の開始を待ち,前記非接触ICカードとの近接通信の開始を検知した場合には,前記サービス提供者装置から受信した前記署名値と,前記サーバ証明書と,前記乱数2と,前記自身が生成した乱数1と,を,前記ICカードアクセス部を経由して,前記非接触ICカードへ送信し,
前記非接触ICカードの署名値・証明書検証部は,
前記端末装置から受信した乱数1と,前記署名値と前記サーバ証明書と,から前記署名値の正当性を確認し,前記サーバ証明書と,前記鍵保管部に保管されている前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記サーバ証明書の正当性を確認し,
前記確認が失敗であれば,前記端末装置に,失敗を通知しサービス享受を終了し,成功であれば,
前記非接触ICカードの前記署名値演算部は,
前記鍵保管部に保存されている自身の秘密鍵で,前記乱数2に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を前記端末アクセス部を経由して,前記端末装置に送信し,
前記端末装置は,ICカードアクセス部を経由して受信した,前記署名値と証明書を,通信部を経由して,サービス提供者装置に送信し,
前記サービス提供者装置は,
前記自らが生成した乱数2と,前記端末装置から受信した署名値と証明書と,から前記署名値の正当性を確認し,
前記証明書と,前記鍵保管部に保管されている前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記証明書の正当性を確認し,
前記確認が失敗であればサービス提供を終了し,成功であれば,
前記端末装置に対するサービスを提供し,
前記端末装置は,前記サービス提供者装置が提供するサービスを利用する
ことを特徴とする非接触ICカード認証システム。
【請求項7】
請求項2に記載の非接触ICカード認証システムであって,
前記端末装置は,
起動し,前記非接触ICカードとの近接通信の開始を待ち,前記非接触ICカードとの近接通信の開始を検知した場合には,自らが生成した使用する毎に増加するカウンタ値を,前記ICカードアクセス部を経由して,前記非接触ICカードへ送信し,
前記非接触ICカードは,
端末アクセス部を経由して,前記カウンタ値を受信し,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記カウンタ値に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を前記端末アクセス部を経由して,前記端末装置に送信し,
前記端末装置は,
サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1と,前記非接触ICカードから受信した署名値と,証明書と,前記カウンタ値と,をサービス提供者装置へ送信し,
サービス提供者装置は,
前記端末装置から受信したカウンタ値と,署名値と証明書と,から前記署名値の正当性を確認し,
前記証明書と,前記鍵保管部に保管されている前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記証明書の正当性を確認し,
前記確認が失敗であればサービス提供を終了し,成功であれば,
前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記乱数1に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,を通信部を経由して,前記端末装置に送信し,
前記端末装置は,
前記非接触ICカードとの近接通信の開始を待ち,前記非接触ICカードとの近接通信の開始を検知した場合には,前記サービス提供者装置から受信した前記署名値と,前記サーバ証明書と,前記自身が生成した乱数1と,を前記ICカードアクセス部を経由して,前記非接触ICカードへ送信し,
前記非接触ICカードの署名値・証明書検証部は,
前記端末装置から受信した乱数1と,前記署名値と前記サーバ証明書と,から前記署名値の正当性を確認し,
前記サーバ証明書と,前記鍵保管部に保管されている前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記サーバ証明書の正当性を確認し,
前記確認の結果を前記端末装置へ通知し,
前記端末装置は,
前記非接触ICカードから送信された前記確認が失敗であれば,サービス享受を終了し,成功であれば,
前記サービス提供者装置へ,成功を知らせる応答を返信し,
前記サービス提供者装置は,
前記端末装置に対するサービスを提供し,
前記端末装置は,前記サービス提供者装置が提供するサービスを利用する
ことを特徴とする非接触ICカード認証システム。
【請求項8】
請求項3に記載の非接触ICカード認証システムであって,
前記サービス提供者装置の,サービス提供状況保持部は,前記端末装置に対してサービスを提供開始した後,サービスの提供情報を保持し,
同一ユーザの再接続の際には,前記サービス提供状況保持部で保持している情報に引き続くサービスを提供する
ことを特徴とする非接触ICカード認証システム。
【請求項9】
請求項8に記載の非接触ICカード認証システムであって,
前記端末装置から,前記サービス提供者装置へ,サービス終了要求を送信し,
前記サービス提供者装置のサービス提供状況保持部は,サービス提供状況をクリアする
ことを特徴とする非接触ICカード認証システム。
【請求項10】
請求項1に記載の非接触ICカード認証システムであって,
前記サービス提供者装置で認証される非接触ICカードごとに,該非接触ICカードのユーザに適したサービスを提供する
ことを特徴とする非接触ICカード認証システム。
【請求項1】
非接触ICカード認証システムであって,
サービスの提供を行うサービス提供者装置と,サービスを受ける端末装置と,前記端末装置と近接通信することによりコマンドデータを送受信し処理を行う非接触ICカードと,前記端末装置と,前記サービス提供者装置と,が接続するネットワークと,からなり,
前記非接触ICカードは,
コマンドデータを送受信する端末アクセス部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書とを保管する鍵保管部と,前記鍵保管部に保管された秘密鍵を用いて,前記端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部と,を備え,
前記サービス提供者装置は,
前記ネットワークに接続されデータの送受信を行う通信部と,前記端末装置に対してサービスを提供するサービス提供部と,前記非接触ICカードの署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書と前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,前記鍵保管部に保管された秘密鍵を用いて,前記通信部から渡された署名対象データに対する署名値を計算する署名値演算部と,を備え,
前記端末装置は,
前記ネットワークに接続されデータの送受信を行う通信部と,前記非接触ICカードへ前記コマンドデータを送受信するICカードアクセス部と,前記サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,前記サービス提供者装置から提供されたサービスを利用するサービス利用部と,を備える
ことを特徴とする非接触ICカード認証システム。
【請求項2】
非接触ICカード認証システムであって,
サービスの提供を行うサービス提供者装置と,サービスを受ける端末装置と,前記端末装置近接通信することによりコマンドデータを送受信し処理を行う非接触ICカードと,前記端末装置と,前記サービス提供者装置と,が接続するネットワークと,からなり,
前記非接触ICカードは,
コマンドデータを送受信する端末アクセス部と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,前記サービス提供者装置の署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と,該秘密鍵と対をなす公開鍵証明書と,前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,前記鍵保管部に保管された秘密鍵を用いて,前記端末アクセス部から渡された署名対象データに対する署名値を生成する署名値演算部と,を備え,
前記サービス提供者装置は,
前記ネットワークに接続されデータの送受信を行う通信部と,前記端末装置に対してサービスを提供するサービス提供部と,前記非接触ICカードの署名値演算部で生成された署名値と該署名値を生成するときに用いた秘密鍵と対をなす公開鍵証明書を検証する署名値・証明書検証部と,秘密鍵と該秘密鍵と対をなす公開鍵証明書と前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書を保管する鍵保管部と,前記鍵保管部に保管された秘密鍵を用いて,前記通信部から渡された署名対象データに対する署名値を計算する署名値演算部と,を備え,
前記端末装置は,
前記ネットワークに接続されデータの送受信を行う通信部と,前記非接触ICカードへ前記コマンドデータを送受信するICカードアクセス部と,前記サービス提供者装置から提供されたサービスを利用するサービス利用部と,を備える
ことを特徴とする非接触ICカード認証システム。
【請求項3】
請求項1または請求項2に記載の非接触ICカード認証システムであって,
前記サービス提供者装置は,サービスの提供状況を保持するサービス提供状況保持部を備える
ことを特徴とする非接触ICカード認証システム。
【請求項4】
請求項1に記載の非接触ICカード認証システムであって,
前記端末装置は,
起動し,サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1を,サービス提供者装置へ送信し,
サービス提供者装置は,
通信部を経由して,前記乱数1を受信し,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記乱数1に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,自身が生成した乱数2と,を通信部を経由して,前記端末装置に送信し,
前記端末装置の署名値・証明書検証部は,
前記自らが生成した乱数1と,前記サービス提供者装置から受信した署名値とサーバ証明書と,から前記署名値の正当性を確認し,前記サーバ証明書と,前記鍵保管部に保管されている前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記サーバ証明書の正当性を確認し,
前記確認が失敗であればサービス享受を終了し,
成功であれば,前記非接触ICカードとの近接通信の開始を待ち,前記非接触ICカードとの近接通信の開始を検知した場合には,前記サービス提供者装置から受信した前記乱数2を,前記ICカードアクセス部を経由して,前記非接触ICカードへ送信し,
非接触ICカードは,
端末アクセス部を経由して,前記乱数2を受信し,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記乱数2に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を前記端末アクセス部を経由して,前記端末装置に送信し,
前記端末装置は,ICカードアクセス部を経由して受信した,前記署名値と証明書を,通信部を経由して,サービス提供者装置に送信し,
前記サービス提供者装置は,
前記自らが生成した乱数2と,前記端末装置から受信した署名値と証明書と,から前記署名値の正当性を確認し,
前記証明書と,前記鍵保管部に保管されている前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記証明書の正当性を確認し,
前記確認が失敗であればサービス提供を終了し,
成功であれば,前記端末装置に対するサービスを提供し,
前記端末装置は,前記サービス提供者装置が提供するサービスを利用する
ことを特徴とする非接触ICカード認証システム。
【請求項5】
請求項1に記載の非接触ICカード認証システムであって,
前記端末装置は,
起動し,前記非接触ICカードとの近接通信の開始を待ち,前記非接触ICカードとの近接通信の開始を検知した場合には,自らが生成した使用する毎に増加するカウンタ値を,前記ICカードアクセス部を経由して,前記非接触ICカードへ送信し,
前記非接触ICカードは,
端末アクセス部を経由して,前記カウンタ値を受信し,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記カウンタ値に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を前記端末アクセス部を経由して,前記端末装置に送信し,
前記端末装置は,
サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1と,前記非接触ICカードから受信した署名値と,証明書と,前記カウンタ値と,をサービス提供者装置へ送信し,
サービス提供者装置は,
前記端末装置から受信したカウンタ値と,署名値と証明書と,から前記署名値の正当性を確認し,前記証明書と,前記鍵保管部に保管されている前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記証明書の正当性を確認し,
前記確認が失敗であればサービス提供を終了し,
成功であれば,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記乱数1に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,を通信部を経由して,前記端末装置に送信し,
前記端末装置の署名値・証明書検証部は,
前記自身が生成した乱数1と,前記サービス提供者装置から受信した署名値とサーバ証明書と,から前記署名値の正当性を確認し,
前記サーバ証明書と,前記鍵保管部に保管されている前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記サーバ証明書の正当性を確認し,
前記確認が失敗であればサービス享受を終了し,
成功であれば,前記サービス提供者装置へ,成功を知らせる応答を返信し,
前記サービス提供者装置は,
前記端末装置に対するサービスを提供し,
前記端末装置は,前記サービス提供者装置が提供するサービスを利用する
ことを特徴とする非接触ICカード認証システム。
【請求項6】
請求項2に記載の非接触ICカード認証システムであって,
前記端末装置は,
起動し,サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1を,サービス提供者装置へ送信し,
サービス提供者装置は,
通信部を経由して,前記乱数1を受信し,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記乱数1に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,自身が生成した乱数2と,を通信部を経由して,前記端末装置に送信し,
前記端末装置は,
前記非接触ICカードとの近接通信の開始を待ち,前記非接触ICカードとの近接通信の開始を検知した場合には,前記サービス提供者装置から受信した前記署名値と,前記サーバ証明書と,前記乱数2と,前記自身が生成した乱数1と,を,前記ICカードアクセス部を経由して,前記非接触ICカードへ送信し,
前記非接触ICカードの署名値・証明書検証部は,
前記端末装置から受信した乱数1と,前記署名値と前記サーバ証明書と,から前記署名値の正当性を確認し,前記サーバ証明書と,前記鍵保管部に保管されている前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記サーバ証明書の正当性を確認し,
前記確認が失敗であれば,前記端末装置に,失敗を通知しサービス享受を終了し,成功であれば,
前記非接触ICカードの前記署名値演算部は,
前記鍵保管部に保存されている自身の秘密鍵で,前記乱数2に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を前記端末アクセス部を経由して,前記端末装置に送信し,
前記端末装置は,ICカードアクセス部を経由して受信した,前記署名値と証明書を,通信部を経由して,サービス提供者装置に送信し,
前記サービス提供者装置は,
前記自らが生成した乱数2と,前記端末装置から受信した署名値と証明書と,から前記署名値の正当性を確認し,
前記証明書と,前記鍵保管部に保管されている前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記証明書の正当性を確認し,
前記確認が失敗であればサービス提供を終了し,成功であれば,
前記端末装置に対するサービスを提供し,
前記端末装置は,前記サービス提供者装置が提供するサービスを利用する
ことを特徴とする非接触ICカード認証システム。
【請求項7】
請求項2に記載の非接触ICカード認証システムであって,
前記端末装置は,
起動し,前記非接触ICカードとの近接通信の開始を待ち,前記非接触ICカードとの近接通信の開始を検知した場合には,自らが生成した使用する毎に増加するカウンタ値を,前記ICカードアクセス部を経由して,前記非接触ICカードへ送信し,
前記非接触ICカードは,
端末アクセス部を経由して,前記カウンタ値を受信し,前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記カウンタ値に対する署名値を生成し,該署名値と,該署名値を生成するときに用いた秘密鍵と対を成す証明書と,を前記端末アクセス部を経由して,前記端末装置に送信し,
前記端末装置は,
サービスを受けるサービス提供者装置を選択し,通信部を経由して,自身が生成した乱数1と,前記非接触ICカードから受信した署名値と,証明書と,前記カウンタ値と,をサービス提供者装置へ送信し,
サービス提供者装置は,
前記端末装置から受信したカウンタ値と,署名値と証明書と,から前記署名値の正当性を確認し,
前記証明書と,前記鍵保管部に保管されている前記非接触ICカードの公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記証明書の正当性を確認し,
前記確認が失敗であればサービス提供を終了し,成功であれば,
前記署名値演算部は,前記鍵保管部に保存されている自身の秘密鍵で,前記乱数1に対する署名値を生成し,
該署名値と,該署名値を生成するときに用いた秘密鍵と対を成すサーバ証明書と,を通信部を経由して,前記端末装置に送信し,
前記端末装置は,
前記非接触ICカードとの近接通信の開始を待ち,前記非接触ICカードとの近接通信の開始を検知した場合には,前記サービス提供者装置から受信した前記署名値と,前記サーバ証明書と,前記自身が生成した乱数1と,を前記ICカードアクセス部を経由して,前記非接触ICカードへ送信し,
前記非接触ICカードの署名値・証明書検証部は,
前記端末装置から受信した乱数1と,前記署名値と前記サーバ証明書と,から前記署名値の正当性を確認し,
前記サーバ証明書と,前記鍵保管部に保管されている前記サービス提供者装置の公開鍵証明書の正当性を検証するための上位認証局証明書と,から前記サーバ証明書の正当性を確認し,
前記確認の結果を前記端末装置へ通知し,
前記端末装置は,
前記非接触ICカードから送信された前記確認が失敗であれば,サービス享受を終了し,成功であれば,
前記サービス提供者装置へ,成功を知らせる応答を返信し,
前記サービス提供者装置は,
前記端末装置に対するサービスを提供し,
前記端末装置は,前記サービス提供者装置が提供するサービスを利用する
ことを特徴とする非接触ICカード認証システム。
【請求項8】
請求項3に記載の非接触ICカード認証システムであって,
前記サービス提供者装置の,サービス提供状況保持部は,前記端末装置に対してサービスを提供開始した後,サービスの提供情報を保持し,
同一ユーザの再接続の際には,前記サービス提供状況保持部で保持している情報に引き続くサービスを提供する
ことを特徴とする非接触ICカード認証システム。
【請求項9】
請求項8に記載の非接触ICカード認証システムであって,
前記端末装置から,前記サービス提供者装置へ,サービス終了要求を送信し,
前記サービス提供者装置のサービス提供状況保持部は,サービス提供状況をクリアする
ことを特徴とする非接触ICカード認証システム。
【請求項10】
請求項1に記載の非接触ICカード認証システムであって,
前記サービス提供者装置で認証される非接触ICカードごとに,該非接触ICカードのユーザに適したサービスを提供する
ことを特徴とする非接触ICカード認証システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2009−140275(P2009−140275A)
【公開日】平成21年6月25日(2009.6.25)
【国際特許分類】
【出願番号】特願2007−316526(P2007−316526)
【出願日】平成19年12月7日(2007.12.7)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
【公開日】平成21年6月25日(2009.6.25)
【国際特許分類】
【出願日】平成19年12月7日(2007.12.7)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
[ Back to top ]