(57)【特許請求の範囲】
【請求項１】
リーダライタとの間で信号の送受信を行なう通信部と，
制御部と，
セッション鍵生成情報生成部と，を有し，
前記制御部は，前記リーダライタとの間で共有された共通鍵を用いて，前記リーダライタが生成した乱数にもとづいて生成されるセッション鍵を，前記リーダライタとの間で共有し，
前記リーダライタから読み出し対象を指定する情報を含むデータをReadコマンドにより受信すると，前記セッション鍵と前記読み出し対象データとに基づいて暗号化された暗号化データを生成し，前記通信部を介して前記リーダライタに送信し，
前記制御部は更に，前記リーダライタとの間で共有された共通鍵を用いて，前記セッション鍵生成情報生成部が生成した情報にもとづいて生成されるセッション鍵を，前記リーダライタとの間で共有し，
前記リーダライタから，書き込み対象を指定する情報を含み，前記セッション鍵と前記書き込み対象データとに基づいて暗号化された暗号化データを，Writeコマンドにより受信すると，前記書き込み対象データの書き込みを行なう，
通信装置。
【請求項２】
前記セッション鍵生成情報生成部が生成した情報は乱数である、
請求項１に記載の通信装置。
【請求項３】
リーダライタとの間で信号の送受信を行なう通信部と，制御部と，セッション鍵生成情報生成部と，を有する，通信装置における前記制御部が，
前記リーダライタとの間で共有された共通鍵を用いて，前記リーダライタが生成した乱数にもとづいて生成されるセッション鍵を，前記リーダライタとの間で共有し，
前記リーダライタから読み出し対象を指定する情報を含むデータをReadコマンドにより受信すると，前記セッション鍵と前記読み出し対象データとに基づいて暗号化された暗号化データを生成し，前記通信部を介して前記リーダライタに送信し，
前記リーダライタとの間で共有された共通鍵を用いて，前記セッション鍵生成情報生成部が生成した情報にもとづいて生成されるセッション鍵を，前記リーダライタとの間で共有し，
前記リーダライタから，書き込み対象を指定する情報を含み，前記セッション鍵と前記書き込み対象データとに基づいて暗号化された暗号化データを，Writeコマンドにより受信すると，前記書き込み対象データの書き込みを行なう，
通信方法。
【請求項４】
前記セッション鍵生成情報生成部が生成した情報は乱数である、
請求項３に記載の通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置に関する。詳しくは、リーダライタから通信装置に対するデータの読み出し又は書き込みを行う技術に関する。
【背景技術】
【０００２】
従来のＩＣカードシステム等の通信システムにおいては、リーダライタが暗号通信を行ってセキュアに通信装置のデータの読み出し／書き込みを行うために、通信セッションごとに相互認証を行って暗号鍵を生成していた（例えば、特許文献１及び特許文献２参照）。この方式によると、第１／第２の各々の情報処理装置の乱数生成手段によって乱数を生成し、事前に設定された鍵を用いてこの乱数を暗号化したものを交換し、これを正しく復号できるか否かで認証を行っていた。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２７３３８号公報
【特許文献２】特開平１０−２０７８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、この相互認証を前提とした方式は、第３の情報処理装置による盗聴やなりすましを防止するために用いられているが、用途によらず第１／第２の各々の情報処理装置の乱数生成と乱数の暗号化と伝送を前提としている。そのため、効率が悪く、処理時間を要していた。
【０００５】
本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、リーダライタが、通信装置が有するデータに対して、安全性を保ちつつ、高速に読み出し又は書き込みを行うことが可能な、新規かつ改良された技術を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明のある観点によれば、リーダライタとの間で信号の送受信を行う通信部と、データが記録されるとともに、リーダライタとの間で共通に使用される鍵である共通鍵が記録された記録部と、リーダライタが記録部に記録された共通鍵と同一の鍵によって暗号化した暗号鍵を含んだ暗号鍵更新要求信号を、リーダライタから通信部を介して受信すると、暗号鍵更新要求信号に含まれた暗号化した暗号鍵を、記録部に記録された共通鍵によって復号し、復号して得た暗号鍵を記録部に記録し、リーダライタが暗号鍵と同一の暗号鍵によって暗号化した、記録部におけるデータ読み出し元の領域を指定する読み出し対象アドレスを含んだ読み出し要求信号を、リーダライタから通信部を介して受信すると、読み出し要求信号に含まれた暗号化した読み出し対象アドレスを、記録部に記録した暗号鍵によって復号し、記録部の領域のうち、復号して得た読み出し対象アドレスで指定される領域に記録されたデータを、通信部を介してリーダライタに送信する制御部と、を備える、通信装置が提供される。
【０００７】
また、上記課題を解決するために、本発明の別の観点によれば、リーダライタとの間で信号の送受信を行う通信部と、データが記録されるとともに、リーダライタとの間で共通に使用される鍵である共通鍵が記録された記録部と、暗号鍵の生成を要求する旨を示す暗号鍵生成要求信号を、リーダライタから通信部を介して受信すると、所定の手順で暗号鍵を生成し、生成した暗号鍵を、記録部に記録された共通鍵によって暗号化し、暗号化した暗号鍵を含んだ暗号鍵生成応答信号を、通信部を介してリーダライタに送信し、リーダライタが暗号化した書き込み対象データと暗号化した記録部における書き込み対象データの書き込み先の領域を指定する書き込み対象アドレスとを含んだ書き込み要求信号を、通信部を介して受信すると、暗号化した書き込み対象データ及び暗号化した書き込み対象アドレスを、記録部に記録した暗号鍵によって復号し、記録部の領域のうち、復号して得た書き込み対象アドレスで指定される領域に、復号して得た書き込み対象データを記録する制御部と、を備える、通信装置が提供される。
【発明の効果】
【０００８】
本発明によれば、リーダライタが、通信装置が有するデータに対して、安全性を保ちつつ、高速に読み出し又は書き込みを行うことが可能な技術を提供することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】一般的な通信システムにおけるデータ読み出し時の認証プロセスを示すシーケンス図である。
【図２】一般的な通信システムにおけるデータ書き込み時の認証プロセスを示すシーケンス図である。
【図３】本発明の実施形態に係る通信システムの構成を示す図である。
【図４】本発明の実施形態に係るリーダライタの機能の構成を示すブロック図である。
【図５】本発明の実施形態に係る通信装置の機能の構成を示すブロック図である。
【図６】本発明の実施形態に係る通信システムがデータ読み出しをする際に使用するデータの構成を示すブロック図である。
【図７】本発明の実施形態に係る通信システムによるデータ読み出し時の処理の流れを示すシーケンス図である。
【図８】本発明の実施形態に係る通信システムがデータ書き込みをする際に使用するデータの構成を示すブロック図である。
【図９】本発明の実施形態に係る通信システムによるデータ書き込み時の処理の流れを示すシーケンス図である。
【発明を実施するための形態】
【００１０】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１１】
図１は、一般的な通信システムにおけるデータ読み出し時の認証プロセスを示すシーケンス図である。図１を参照して、一般的な通信システムにおけるデータ読み出し時の認証プロセスについて説明する。
【００１２】
認証プロセスは、ＩＳＯ／ＩＥＣ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｏｒｇａｎｉｚａｔｉｏｎ  ｆｏｒ  Ｓｔａｎｄａｒｄｉｚａｔｉｏｎ／Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｅｌｅｃｔｒｏｔｅｃｈｎｉｃａｌ  Ｃｏｍｍｉｓｓｉｏｎ）９７９８−２及びＪＩＳ（Ｊａｐａｎｅｓｅ  Ｉｎｄｕｓｔｒｉａｌ  Ｓｔａｎｄａｒｄｓ）  Ｘ５０５６−２において定義されている、対称暗号アルゴリズムを用いた方式により、行われることが一般的である。
【００１３】
ここでは、まずステップＳ１１において、リーダライタ１１Ａは、第一の乱数Ａを生成し、認証鍵としての共通鍵Ｂを用いて所定の手順でこれを暗号化し、暗号化データＭ１を得る。Ｍ１は、Ａｕｔｈ１＿Ｒｅｑのパラメータとして、通信装置１２Ａあてに送信する。Ａｕｔｈ１＿Ｒｅｑを受信した通信装置１２Ａは、ステップＳ２１において、Ａｕｔｈ１＿ＲｅｑのパラメータのＭ１を、共通鍵Ｂを用いて所定の手順で復号し、乱数Ａを得る。続いて、乱数Ａを、共通鍵Ａを用いて所定の手順で暗号化し、暗号化データＭ２を得る。
【００１４】
さらに、ステップＳ２２において、第二の乱数Ｂを生成し、共通鍵Ａを用いて所定の手順で暗号化し、暗号化データＭ３を得る。Ｍ２及びＭ３はＡｕｔｈ１＿Ｒｅｓのパラメータとして通信装置１２Ａからリーダライタ１１Ａへ返送される。
【００１５】
Ａｕｔｈ１＿Ｒｅｓを受信したリーダライタ１１Ａは、ステップＳ１２において、Ａｕｔｈ１＿ＲｅｓのパラメータのＭ２を、共通鍵Ａを用いて所定の手順で復号し、得られた値がステップＳ１１で生成した乱数Ａと同値であることを比較、確認する。確認ができれば、リーダライタ１１Ａは、自己と同じ共通鍵Ａ及びＢを通信装置１２Ａが保有していることが分かる。
【００１６】
続いて、リーダライタ１１Ａは、ステップＳ１３において、Ａｕｔｈ１＿ＲｅｓのパラメータのＭ３を、共通鍵Ａを用いて所定の手順で復号し、乱数Ｂを得る。続いて、乱数Ｂを、共通鍵Ｂを用いて所定の手順で暗号化し、暗号化データＭ４を得る。Ｍ４は、Ａｕｔｈ２＿Ｒｅｑのパラメータとして、通信装置１２Ａあてに送信する。
【００１７】
Ａｕｔｈ２＿Ｒｅｑを受信した通信装置１２Ａは、ステップＳ２３において、Ａｕｔｈ２＿ＲｅｑのパラメータのＭ４を、共通鍵Ｂを用いて所定の手順で復号し、得られた値がステップＳ２２で生成した乱数Ｂと同値であることを比較、確認する。確認ができれば、通信装置１２Ａは、自己と同じ共通鍵Ａ及びＢをリーダライタ１１Ａが保有していることが分かる。
【００１８】
その後、通信装置１２Ａは、得られた乱数Ａ，Ｂから所定の手順により、通信路を暗号化・復号するための暗号鍵（ＳＫ）と相互認証プロセスを識別するセッションＩＤ（ＳＩＤ）を生成する。そして、セッションＩＤ及び相互認証が成功した旨を表すコードを、暗号鍵ＳＫを用いて所定の手順で暗号化し、暗号化データＭ５を得る。Ｍ５はＡｕｔｈ２＿Ｒｅｓのパラメータとして、通信装置１２Ａからリーダライタ１１Ａへ返送される。
【００１９】
Ａｕｔｈ２＿Ｒｅｓを受信したリーダライタ１１Ａは、ステップＳ１４において、これまでに得られた乱数Ａ，Ｂから所定の手順により、通信路を暗号化・復号するための暗号鍵ＳＫと相互認証プロセスを識別するセッションＩＤ（ＳＩＤ）を生成する。次に、Ａｕｔｈ２＿ＲｅｓのパラメータのＭ５を、暗号鍵ＳＫを用いて所定の手順で復号し、同一セッションＩＤと相互認証が成功した旨を表すコードが得られることを確認することで認証プロセスが完了する。
【００２０】
認証プロセスを終えると、暗号通信プロセスを実行できる。図１においては、認証プロセスの後に、通信装置１２Ａからのデータ読み出し要求Ｒｅａｄ＿Ｒｅｑを暗号化して伝送している。Ｒｅａｄ＿Ｒｅｑは、例えば、要求識別子及び読み出し対象アドレスを含む構成として定義されている（図６（ａ）参照）。ステップＳ１５において、Ｒｅａｄ＿Ｒｅｑの要求識別子を除く、すべてのフィールドを相互認証プロセスで共有した暗号鍵ＳＫによって所定の手順で暗号化し、通信装置１２Ａあてに送信する。
【００２１】
Ｒｅａｄ＿Ｒｅｑを受信した通信装置１２Ａは、ステップＳ２４において、Ｓ１５と同様に、Ｒｅａｄ＿Ｒｅｑの要求識別子を除く、すべてのフィールドを相互認証プロセスで共有した暗号鍵ＳＫによって所定の手順で復号し、平文のＲｅａｄ＿Ｒｅｑを得る。通信装置１２Ａは、平文のＲｅａｄ＿Ｒｅｑにしたがって、指定されたアドレスからデータを読み出し、Ｒｅａｄ＿Ｒｅｓのパラメータとする。Ｒｅａｄ＿Ｒｅｓは、例えば、応答識別子、結果コード及び読み出し対象データを含む構成として定義されている（図６（ｂ）参照）。Ｒｅａｄ＿ＲｅｓもＲｅａｄ＿Ｒｅｑと同様に、通信装置１２Ａによって、応答識別子を除く、すべてのフィールドを相互認証プロセスで共有した暗号鍵ＳＫによって所定の手順で暗号化し、通信装置１２Ａからリーダライタ１１Ａへ返送される。
【００２２】
図２は、一般的な通信システムにおけるデータ書き込み時の認証プロセスを示すシーケンス図である。図２を参照して、一般的な通信システムにおけるデータ書き込み時の認証プロセスについて説明する。
【００２３】
図２においては、図１と同等の認証プロセスの後に、通信装置１２Ａへのデータ書き込み要求Ｗｒｉｔｅ＿Ｒｅｑを暗号化して伝送している。Ｗｒｉｔｅ＿Ｒｅｑは、例えば、要求識別子、書き込み対象アドレス及び書き込み対象データを含む構成として定義されている（図８（ａ）参照）。
【００２４】
ステップＳ３５において、Ｗｒｉｔｅ＿Ｒｅｑの要求識別子を除く、すべてのフィールドを相互認証プロセスで共有した暗号鍵ＳＫによって所定の手順で暗号化し、通信装置１２Ａあてに送信する。
【００２５】
Ｗｒｉｔｅ＿Ｒｅｑを受信した通信装置１２Ａは、ステップＳ４４において、Ｓ３５と同様に、Ｗｒｉｔｅ＿Ｒｅｑの要求識別子を除く、すべてのフィールドを相互認証プロセスで共有した暗号鍵ＳＫによって所定の手順で復号し、平文のＷｒｉｔｅ＿Ｒｅｑを得る。通信装置１２Ａは、平文のＷｒｉｔｅ＿Ｒｅｑにしたがって、指定されたアドレスへ指定されたデータを書き込み、その結果コードをＷｒｉｔｅ＿Ｒｅｓのパラメータとする。Ｗｒｉｔｅ＿Ｒｅｓは、例えば、応答識別子及び結果コードを含む構成として定義されている（図８（ｂ）参照）。Ｗｒｉｔｅ＿ＲｅｓもＷｒｉｔｅ＿Ｒｅｑと同様に、通信装置１２Ａによって、応答識別子を除く、すべてのフィールドを相互認証プロセスで共有した暗号鍵ＳＫによって所定の手順で暗号化し、通信装置１２Ａからリーダライタ１１Ａへ返送される。
【００２６】
図３は、本発明の実施形態に係る通信システムの構成を示す図である。図３を参照して、本発明の実施形態に係る通信システムについて説明する。
【００２７】
図３に示すように、通信システム１０は、無線通信するリーダライタ１１及び通信装置１２から構成され、リーダライタ１１と通信装置１２との間では、電磁波を利用して非接触でのデータの送受信が行われる。ここで想定する一般的な無線通信システムは、以下の手順によって暗号化通信を行っている。
【００２８】
リーダライタ１１は、電波（電磁波）を放射し、例えば、ポーリングなどの処理を行うことによって、通信装置１２を検出する。通信装置１２がリーダライタ１１に近接し、リーダライタ１１によって、通信装置１２が検出されると、リーダライタ１１及び通信装置１２は、所定のデータを送受信することによって、認証プロセスを行う。そして、認証プロセス中に生成・共有される暗号鍵、セッションＩＤを用いて、リーダライタ１１は、通信装置１２に対する要求信号を暗号化して送信する。要求信号には、例えば、所定のデータの上書きを要求する旨の要求信号、所定のデータの送信を要求する旨の要求信号等がある。
【００２９】
通信装置１２は、リーダライタ１１から送信された要求信号を受信した場合、共有している暗号鍵を用いてそれを復号し、共有しているセッションＩＤとの整合性を確認した後に、要求される処理を行い、その成功可否を表すコードを返送する。
【００３０】
本実施形態では、セキュリティデバイスである通信装置１２に対するセキュアなデータの読み出し／書き込みにおいて、各々の認証プロセスを分離独立することで、コマンドシーケンスを利用方法に最適化する。セキュリティデバイスから読み出し処理を行う場合は、読み出し要求を行う側が暗号鍵（セッション鍵）を生成し、読み出される側に対して伝送する。続いて、読み出される側は、この暗号鍵（セッション鍵）を用いて、読み出しデータを暗号化して伝送する。セキュリティデバイスから書き込み処理を行う場合は、書き込まれる側から暗号鍵（セッション鍵）を生成し、書き込み要求を行う側に伝送する。続いて、書き込む側は、暗号鍵（セッション鍵）を用いて、書き込みデータを暗号化して伝送する。これによって、セキュリティデバイスである通信装置１２に対する認証の更新またはセッション鍵の更新を、より高速に行うことができる。
【００３１】
また、この方式において、暗号鍵（セッション鍵）を秘匿に伝送するために、セキュリティデバイス間（リーダライタ１１と通信装置１２との間）で共有する共通鍵を用いて、暗号鍵（セッション鍵）を暗号化する。
【００３２】
通信装置１２のデータ領域に対して、読み出し処理と書き込み処理とで異なるセッション鍵または共通鍵を用いることで、アクセス権限を分離したシステムを実現できる。
【００３３】
図４は、本発明の実施形態に係るリーダライタの機能の構成を示すブロック図である。図４を参照して、本発明の実施形態に係るリーダライタについて説明する。
【００３４】
リーダライタ１１は、制御部３１、記録部（第２記録部）３２、ＳＰＵ（Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３３、変調部３４、発振回路３５、通信部の一例としてのアンテナ３６、復調部３７、及びドライブ３８を含むように構成される。
【００３５】
制御部３１は、所定のデータを含む、データの上書きを要求する旨の要求信号を生成する。また、制御部３１は、所定のデータの送信を要求する旨の要求信号を生成する。
【００３６】
制御部３１は、データの上書きを要求する旨の要求信号に格納するデータを生成する。制御部３１は、データを読み出す際には、所定の手順で暗号鍵を生成する。制御部３１は、生成した暗号鍵を、記録部３２に記録された読み出し用共通鍵によって暗号化し、暗号化した暗号鍵を含んだ暗号鍵更新要求信号（図６（ｃ）参照）を、ＳＰＵ３３に供給する。暗号鍵更新要求信号は、アンテナ３６を介して通信装置１２に送信される。制御部３１は、生成した暗号鍵によって不揮発性メモリ１０６（図５参照）におけるデータ読み出し元の領域を指定する読み出し対象アドレスを暗号化し、暗号化した読み出し対象アドレスを含んだ読み出し要求信号（図６（ａ）参照）を、ＳＰＵ３３に供給する。読み出し要求信号は、アンテナ３６を介して通信装置１２に送信される。
【００３７】
制御部３１は、データを書き込む際には、暗号鍵の生成を要求する旨を示す暗号鍵生成要求信号（図８（ｃ）参照）を、ＳＰＵ３３に供給する。暗号鍵生成要求信号は、アンテナ３６を介して通信装置１２に送信される。制御部３１は、通信装置１２が記録部３２に記録された書き込み用共通鍵と同一の鍵によって暗号化した暗号鍵を含んだ暗号鍵生成応答信号（図８（ｄ）参照）が、通信装置１２からアンテナ３６を介して受信され、ＳＰＵ３３から供給されると、制御部３１は、暗号鍵生成応答信号に含まれた暗号化した暗号鍵を、記録部３２に記録された書き込み用共通鍵によって復号し、復号して得た暗号鍵を記録部３２に記録し、書き込み対象データと不揮発性メモリ１０６における書き込み対象データの書き込み先の領域を指定する書き込み対象アドレスとを、記録部３２に記録した暗号鍵によって暗号化し、暗号化した書き込み対象データ及び暗号化した書き込み対象アドレスを含んだ書き込み要求信号（図８（ａ）参照）を、ＳＰＵ３３に供給する。書き込み要求信号は、アンテナ３６を介して通信装置１２に送信される。
【００３８】
制御部３１は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等により構成され、必要に応じて装着された、ドライブ３８から供給されたプログラムを読み込んで、読み込んだプログラムを実行する。また、制御部３１は、ドライブ３８からプログラムやデータが供給された場合、供給されたプログラムやデータを必要に応じて、記録部３２に供給し、記録部３２に記録されたプログラムを読み込み、読み込んだプログラムを実行する。
【００３９】
記録部３２は、書き換え可能で、電源が遮断されても記録内容を保持できる、いわゆる不揮発性の記憶媒体または記録媒体からなり、例えば、ハードディスクまたはフラッシュメモリなどにより構成される。記録部３２は、各種のデータを記録している。また、記録部３２は、記録しているデータを、必要に応じて制御部３１に供給する。
【００４０】
記録部３２には、通信装置１２との間で共通に使用される鍵として読み出し用共通鍵及び書き込み用共通鍵のうち、少なくとも一方が記録されている。記録部３２は、記録されている共通鍵を制御部３１に供給する。また、記録部３２には、制御部３１から供給されたデータが記録される。
【００４１】
ＳＰＵ３３は、制御部３１から供給された要求信号を、所定の方式により符号化し、符号化した要求信号を変調部３４に供給する。また、ＳＰＵ３３は、復調部３７から供給された応答信号を、応答信号の符号化方式に対応する方式により復号し、復号した応答信号を制御部３１に供給する。
【００４２】
例えば、ＳＰＵ３３は、通信装置１２あてに送信する要求信号が、制御部３１から供給されてきた場合、その要求信号に、例えば、マンチェスターコードへのコーディングなどの符号化処理を施し、これにより得られた信号を変調部３４に出力する。また、ＳＰＵ３３は、通信装置１２からの応答信号が復調部３７から供給されてきた場合、そのデータに対して、例えば、マンチェスターコードのデコードなどの復号処理を施し、これにより得られた信号を、制御部３１に供給する。
【００４３】
変調部３４は、発振回路３５から供給された所定の周波数のクロック信号を基に、搬送波を生成する。変調部３４は、搬送波に基づいて、ＳＰＵ３３から供給された要求信号を所定の方式により変調することにより要求信号を生成し、変調した要求信号をアンテナ３６に供給する。例えば、変調部３４は、ＳＰＵ３３から供給された要求信号に基づいて、搬送波の位相、振幅、周波数などを変化させることにより変調した要求信号を生成する。
【００４４】
より具体的には、例えば、変調部３４は、発振回路３５から供給される１３．５６ＭＨｚの周波数のクロック信号を搬送波として、ＳＰＵ３３より供給されるデータをＡＳＫ（Ａｍｐｌｉｔｕｄｅ  Ｓｈｉｆｔ  Ｋｅｙｉｎｇ）変調し、生成された変調波を、電磁波としてアンテナ３６から出力させる。
【００４５】
発振回路３５は、所定の周波数の、基準となるクロック信号を生成し、生成したクロック信号を変調部３４に供給する。
【００４６】
アンテナ３６は、変調部３４から供給された要求信号を、無線通信により通信装置１２あてに送信する。すなわち、例えば、アンテナ３６は、変調部３４から供給された要求信号を伝送するための電波を輻射（放射）する。また、アンテナ３６は、通信装置１２から送信されてきた応答信号を受信し、受信した応答信号を復調部３７に供給する。
【００４７】
復調部３７は、アンテナ３６から供給された応答信号を、変調部１０９（図３）の変調方式に対応する復調方式により復調し、復調した応答信号をＳＰＵ３３に供給する。例えば、復調部３７は、アンテナ３６を介して取得した変調波（ＡＳＫ変調波）を復調し、復調した応答信号をＳＰＵ３３に出力する。
【００４８】
ドライブ３８は、磁気ディスク７１、光ディスク７２、光磁気ディスク７３、或いは半導体メモリ７４などが装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、制御部３１または通信装置１２に転送される。また、通信装置１２に転送（送信）されたプログラムは、通信装置１２により、必要に応じて、記録されるか、または実行される。
【００４９】
図５は、本発明の実施形態に係る通信装置の機能の構成を示すブロック図である。図５を参照して、本発明の実施形態に係る通信装置について説明する。
【００５０】
通信装置１２は、通信部の一例としてのアンテナ１０１、復調部１０２、ＳＰＵ１０３、制御部１０４、記録部（第１記録部）１０６、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０７、発振回路１０８、変調部１０９、及び電力発生部１１０を含むように構成される。
【００５１】
アンテナ１０１は、リーダライタ１１から送信されてきた要求信号を受信し、受信した要求信号を復調部１０２に供給する。また、アンテナ１０１は、変調部１０９から供給された応答信号を、無線通信により、リーダライタ１１あてに送信する。すなわち、例えば、アンテナ１０１は、変調部１０９から供給された応答信号を伝送するための電波を放射する。また、アンテナ１０１においては、リーダライタ１１から放射される所定の周波数の電波により、共振が生じ、起電力が発生する。
【００５２】
復調部１０２は、アンテナ１０１から供給された要求信号を、変調部３４（図２）の変調方式に対応する復調方式により復調し、復調した要求信号をＳＰＵ１０３に供給する。例えば、復調部１０２は、アンテナ１０１を介して受信したＡＳＫ変調波である要求信号を包絡線検波して復調し、復調した要求信号をＳＰＵ１０３に出力する。
【００５３】
ＳＰＵ１０３は、復調部１０２から供給された要求信号を所定の方式により復号し、復号した要求信号を制御部１０４に供給する。ＳＰＵ１０３は、制御部１０４から供給された応答信号を、所定の符号化方式により符号化し、符号化した応答信号を変調部１０９に供給する。例えば、ＳＰＵ１０３は、復調部１０２において復調されたデータがマンチェスター方式で符号化されている場合、図示せぬＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）回路から供給されるクロック信号に基づいて、そのデータの復号（マンチェスターコードのデコード）を行い、復号したデータを制御部１０４に供給する。例えば、ＳＰＵ１０３は、制御部１０４から供給された応答信号を、マンチェスター方式で符号化し、符号化した応答信号を変調部１０９に供給する。
【００５４】
制御部１０４は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等により構成され、ＲＡＭ１０７に記憶されたプログラムを実行することによってその機能を実現する。リーダライタ１１が不揮発性メモリ１０６に記録された読み出し用共通鍵と同一の鍵によって暗号化した暗号鍵を含んだ暗号鍵更新要求信号（図６（ｃ）参照）が、リーダライタ１１からアンテナ１０１を介して受信され、ＳＰＵ１０３から供給される。暗号鍵更新要求信号が供給されると、制御部１０４は、暗号鍵更新要求信号に含まれた暗号化した暗号鍵を、不揮発性メモリ１０６に記録された読み出し用共通鍵によって復号し、復号して得た暗号鍵をＲＡＭ１０７に記録する。なお、ここでは、復号して得た暗号鍵をＲＡＭ１０７に記録することとするが、不揮発性メモリ１０６に記録することとしてもよい。
【００５５】
制御部１０４は、書き込み要求信号が供給された場合に、この書き込み要求信号に含まれる暗号鍵更新要求フラグを判定することとしてもよい。暗号鍵更新要求フラグに暗号鍵更新を要求する旨の値が設定されていると判定した場合には、この書き込み要求信号が暗号鍵更新要求信号であると認識する。これによって、既存の書き込み要求信号を暗号鍵更新要求信号として利用することができるので、開発効率が向上する等の利点がある。
【００５６】
制御部１０４には、リーダライタ１１がこの暗号鍵と同一の暗号鍵によって暗号化した、不揮発性メモリ１０６におけるデータ読み出し元の領域を指定する読み出し対象アドレスを含んだ読み出し要求信号が、リーダライタ１１からアンテナ１０１を介して受信され、ＳＰＵ１０３から供給される。読み出し要求信号が供給されると、制御部１０４は、読み出し要求信号に含まれた暗号化した読み出し対象アドレスを、ＲＡＭ１０７に記録した暗号鍵によって復号し、不揮発性メモリ１０６の領域のうち、復号して得た読み出し対象アドレスで指定される領域に記録されたデータを、ＳＰＵ１０３に供給する。このデータは、アンテナ１０１を介してリーダライタ１１に送信される。
【００５７】
制御部１０４には、暗号鍵の生成を要求する旨を示す暗号鍵生成要求信号（図８（ｃ）参照）が、リーダライタ１１からアンテナ１０１を介して受信され、ＳＰＵ１０３から供給される。暗号鍵生成要求信号が供給されると、制御部１０４は、所定の手順で暗号鍵を生成し、生成した暗号鍵を、不揮発性メモリ１０６に記録された書き込み用共通鍵によって暗号化する。制御部１０４は、暗号化した暗号鍵を含んだ暗号鍵生成応答信号（図８（ｄ）参照）を、ＳＰＵ１０３に供給する。この信号は、アンテナ１０１を介してリーダライタ１１に送信される。
【００５８】
制御部１０４は、読み出し要求信号が供給された場合に、この読み出し要求信号に含まれる暗号鍵生成要求フラグを判定することとしてもよい。暗号鍵生成要求フラグに暗号鍵更新を要求する旨の値が設定されていると判定した場合には、この読み出し要求信号が暗号鍵生成要求信号であると認識する。これによって、既存の読み出し要求信号を暗号鍵生成要求信号として利用することができるので、開発効率が向上する等の利点がある。
【００５９】
制御部１０４には、リーダライタ１１が暗号化した書き込み対象データと暗号化した不揮発性メモリ１０６における書き込み対象データの書き込み先の領域を指定する書き込み対象アドレスとを含んだ書き込み要求信号（図８（ａ）参照）が、アンテナ１０１を介して受信され、ＳＰＵ１０３から供給される。書き込み要求信号が供給されると、制御部１０４は、暗号化した書き込み対象データ及び暗号化した書き込み対象アドレスを、ＲＡＭ１０７に記録した暗号鍵によって復号する。なお、ここでは、暗号鍵がＲＡＭ１０７に記録されていることとするが、不揮発性メモリ１０６に記録されていることとしてもよい。制御部１０４は、不揮発性メモリ１０６の領域のうち、復号して得た書き込み対象アドレスで指定される領域に、復号して得た書き込み対象データを記録する。
【００６０】
記録部１０５は、不揮発性メモリ１０６、ＲＡＭ１０７等を含んで構成されている。不揮発性メモリ１０６は、例えば、フラッシュメモリ、ＥＥＰＲＯＭ、ＭＲＡＭ、またはＦｅＲＡＭなどの不揮発性メモリなどにより構成されている。不揮発性メモリ１０６には、リーダライタ１１に送信される秘匿すべきデータ、プログラムの実行に必要なデータなどの各種データが記録されている。また、不揮発性メモリ１０６には、リーダライタ１１との間で共通に使用される鍵として読み出し用共通鍵及び書き込み用共通鍵のうち、少なくとも一方が記録されている。
【００６１】
ＲＡＭ１０７は、プログラムの実行に必要なデータなどを適宜記憶する。ＲＡＭ１０７は、記憶しているデータを制御部１０４に供給する。
【００６２】
発振回路１０８は、アンテナ１０１が受信する要求信号の周波数と同じ周波数のクロック信号を生成し、生成したクロック信号を変調部１０９に供給する。例えば、発振回路１０８は、ＰＬＬ回路を内蔵し、要求信号のクロック周波数と同一の周波数のクロック信号を発生する。
【００６３】
変調部１０９は、発振回路１０８から供給された所定の周波数のクロック信号を基に、搬送波を生成する。変調部１０９は、搬送波に基づいて、ＳＰＵ１０３から供給された応答信号を、所定の方式によって変調することにより、応答信号を生成し、変調した応答信号をアンテナ１０１に供給する。例えば、変調部１０９は、ＳＰＵ１０３から供給された、マンチェスター方式により符号化された応答信号を、さらにＡＳＫ変調し、変調した応答信号を、アンテナ１０１を介して、リーダライタ１１に送信する。
【００６４】
また、例えば、変調部１０９は、ＳＰＵ１０３から供給される応答信号に対して、所定のスイッチング素子（図示せず）をオン、オフさせ、スイッチング素子がオン状態であるときだけ、所定の負荷をアンテナ１０１に並列に接続させることにより、アンテナ１０１の負荷を変動させる。ＡＳＫ変調された応答信号は、アンテナ１０１の負荷の変動により、アンテナ１０１を介して、リーダライタ１１に送信される（リーダライタ１１のアンテナ３６の端子電圧を変動させる）。
【００６５】
電力発生部１１０は、アンテナ１０１に生じた交流の起電力を基に、直流電力を発生させ、発生させた直流電力を通信装置１２の各部に供給する。
【００６６】
本発明はこのようなシステムの認証プロセスを用途に合わせて簡略化し、暗号強度はそのままに処理を高速化することを目的としている。すなわち、用途とは、ある共通鍵を利用して生成した暗号鍵を用いた暗号あり読み出し要求と暗号あり書き込み要求の２通りに大別される。
【００６７】
暗号あり読み出し要求（Ｒｅａｄ＿Ｒｅｑ）を行う場合は、リーダライタ１１が生成した乱数を暗号鍵として用いる。リーダライタ１１はＲｅａｄ＿Ｒｅｑを伝送するより事前に、認証プロセスとして暗号鍵の更新要求をするためのＷｒｉｔｅ＿ＳＫ＿Ｒｅｑを通信装置１２に対して伝送する。
【００６８】
図６は、本発明の実施形態に係る通信システムがデータ読み出しをする際に使用するデータの構成を示すブロック図である。図６を参照して、本発明の実施形態に係る通信システムがデータ読み出しをする際に使用するデータの構成について説明する。
【００６９】
図６（ａ）に示すように、読み出し要求（Ｒｅａｄ＿Ｒｅｑ）は、要求を識別する要求識別子、セッションを識別するセッションＩＤ（ＳＩＤ）、不揮発性メモリ１０６（図５参照）におけるデータ読み出し元の領域を指定する読み出し対象アドレス（ＡＤＤＲ）を含んでいる。また、図６（ａ）に示すように、セッションＩＤ（ＳＩＤ）、読み出し対象データ（ＤＡＴＡ）が暗号化対象となる。
【００７０】
図６（ｂ）に示すように、読み出し応答（Ｒｅａｄ＿Ｒｅｓ）は、応答を識別する応答識別子、セッションを識別するセッションＩＤ（ＳＩＤ）、要求に対する処理結果を示す結果コード（ＳＦ）、不揮発性メモリ１０６（図５参照）から読み出した読み出し対象データ（ＤＡＴＡ）を含んでいる。また、図６（ｂ）に示すように、セッションＩＤ（ＳＩＤ）、結果コード（ＳＦ）、読み出し対象データ（ＤＡＴＡ）が暗号化対象となる。
【００７１】
図６（ｃ）に示すように、暗号鍵更新要求（Ｗｒｉｔｅ＿ＳＫ＿Ｒｅｑ）は、要求を識別する要求識別子、通信装置１２（図２参照）を識別する装置識別子（ＩＤｍ）、共通鍵を識別する共通鍵識別子（ＰＫＩＤ）、暗号鍵（ＳＫ）を含んでいる。また、図６（ｃ）に示すように、暗号鍵（ＳＫ）が暗号化対象となる。
【００７２】
図６（ｄ）に示すように、暗号鍵更新応答（Ｗｒｉｔｅ＿ＳＫ＿Ｒｅｓ）は、応答を識別する応答識別子、通信装置１２（図２参照）を識別する装置識別子（ＩＤｍ）、要求に対する処理結果を示す結果コード（ＳＦ）を含んでいる。
【００７３】
図７は、本発明の実施形態に係る通信システムによるデータ読み出し時の処理の流れを示すシーケンス図である。図７を参照して、本発明の実施形態に係る通信システムによるデータ読み出し時の処理について説明する。
【００７４】
リーダライタ１１は、ステップＳ１１１において暗号鍵（ＳＫ）を生成する。すなわち、リーダライタ１１は、乱数を生成し、暗号鍵（ＳＫ）として保持する。次に、認証鍵としての共通鍵（ＰＫ）を用いて所定の手順でこれを暗号化し、暗号化データＥｎｃ（ＰＫ，ＳＫ）を得る。Ｅｎｃ（ＰＫ，ＳＫ）は、Ｗｒｉｔｅ＿ＳＫ＿Ｒｅｑのパラメータとして、通信装置１２あてに送信する。
【００７５】
Ｗｒｉｔｅ＿ＳＫ＿Ｒｅｑを受信した通信装置１２は、ステップＳ２２１において、Ｗｒｉｔｅ＿ＳＫ＿ＲｅｑのパラメータのＥｎｃ（ＰＫ，ＳＫ）を、共通鍵識別子（ＰＫＩＤ）に対応する共通鍵（ＰＫ）を用いて所定の手順で復号し、暗号鍵（ＳＫ）を得る。これにより、暗号鍵（ＳＫ）をリーダライタ１１及び通信装置１２間で共有することができる。一実施形態として、Ｗｒｉｔｅ＿ＳＫ＿Ｒｅｓは、パラメータとして、成功可否判定コード（ＳＦ）を含んでおり、これを返送している。以降の暗号通信プロセスについては、図１に示した例と同等のため割愛する。
【００７６】
以上説明したデータ読み出し時の処理によって、セキュリティデバイス（通信装置１２）からセキュアに読み出しだけを行うシステムにおいて、セッション鍵（暗号鍵）を共有する、高速な暗号通信を実現することが可能である。
【００７７】
具体的には、リーダライタ１１と通信装置１２との通信が２往復分行われることでデータ読み出しが可能であるので、高速に暗号通信を実現することが可能である。また、通信装置１２が乱数を生成する処理（鍵を生成する処理）を行う必要がないので、高速に暗号通信を実現することが可能である。また、リーダライタ１１と通信装置１２との間を送受信されるデータは暗号化されているので、安全性を保つことができる。
【００７８】
図８は、本発明の実施形態に係る通信システムがデータ書き込みをする際に使用するデータの構成を示すブロック図である。図８を参照して、本発明の実施形態に係る通信システムがデータ書き込みをする際に使用するデータの構成について説明する。
【００７９】
図８（ａ）に示すように、書き込み要求（Ｗｒｉｔｅ＿Ｒｅｑ）は、要求を識別する要求識別子、セッションを識別するセッションＩＤ（ＳＩＤ）、不揮発性メモリ１０６（図５参照）におけるデータ書き込み先の領域を指定する書き込み対象アドレス（ＡＤＤＲ）、書き込み対象データ（ＤＡＴＡ）を含んでいる。また、図８（ａ）に示すように、セッションＩＤ（ＳＩＤ）、書き込み対象アドレス（ＡＤＤＲ）、不揮発性メモリ１０６（図５参照）に書き込む書き込み対象データ（ＤＡＴＡ）が暗号化対象となる。
【００８０】
図８（ｂ）に示すように、書き込み応答（Ｗｒｉｔｅ＿Ｒｅｓ）は、応答を識別する応答識別子、セッションを識別するセッションＩＤ（ＳＩＤ）、要求に対する処理結果を示す結果コード（ＳＦ）を含んでいる。また、図８（ｂ）に示すように、セッションＩＤ（ＳＩＤ）、結果コード（ＳＦ）が暗号化対象となる。
【００８１】
図８（ｃ）に示すように、暗号鍵生成要求（Ｒｅａｄ＿ＳＫ＿Ｒｅｑ）は、要求を識別する要求識別子、通信装置１２（図２参照）を識別する装置識別子（ＩＤｍ）、共通鍵を識別する共通鍵識別子（ＰＫＩＤ）を含んでいる。
【００８２】
図８（ｄ）に示すように、暗号鍵生成応答（Ｒｅａｄ＿ＳＫ＿Ｒｅｓ）は、応答を識別する応答識別子、通信装置１２（図２参照）を識別する装置識別子（ＩＤｍ）、要求に対する処理結果を示す結果コード（ＳＦ）、暗号鍵（ＳＫ）を含んでいる。図８（ｄ）に示すように、暗号鍵（ＳＫ）が暗号化対象となる。
【００８３】
図９は、本発明の実施形態に係る通信システムによるデータ書き込み時の処理の流れを示すシーケンス図である。図９を参照して、本発明の実施形態に係る通信システムによるデータ書き込み時の処理について説明する。
【００８４】
リーダライタ１１は、まず通信装置１２に対してＲｅａｄ＿ＳＫ＿Ｒｅｑを伝送する。このときパラメータとして共通鍵（ＰＫ）の識別子（ＰＫＩＤ）を同時に送信している。
Ｒｅａｄ＿ＳＫ＿Ｒｅｑを受信した通信装置１２は、ステップＳ２３１において、暗号鍵（ＳＫ）を生成する。すなわち、通信装置１２は、乱数を生成し、暗号鍵（ＳＫ）として保持する。次に共通鍵識別子（ＰＫＩＤ）に対応する共通鍵（ＰＫ）を用いて所定の手順で暗号鍵（ＳＫ）を暗号化し、暗号化データＥｎｃ（ＰＫ，ＳＫ）を得る。Ｅｎｃ（ＰＫ，ＳＫ）は、Ｒｅａｄ＿ＳＫ＿Ｒｅｓのパラメータとして、リーダライタ１１あてに返送される。
【００８５】
Ｒｅａｄ＿ＳＫ＿Ｒｅｓを受信したリーダライタ１１は、ステップＳ１３１において、Ｒｅａｄ＿ＳＫ＿ＲｅｓのパラメータのＥｎｃ（ＰＫ，ＳＫ）を、共通鍵（ＰＫ）を用いて所定の手順で復号し、暗号鍵（ＳＫ）を得る。これにより、暗号鍵（ＳＫ）をリーダライタ１１及び通信装置１２間で共有することができる。以降の暗号通信プロセスについては、図２の例と同等のため割愛する。
【００８６】
以上説明したデータ書き込み時の処理によって、セキュリティデバイス（通信装置１２）にセキュアに書き込みだけを行うシステムにおいて、セッション鍵（暗号鍵）を共有する、高速な暗号通信を実現することが可能である。具体的には、リーダライタ１１と通信装置１２との通信が２往復分行われることでデー書き込みが可能であるので、高速に暗号通信を実現することが可能である。また、リーダライタ１１が乱数を生成する処理（鍵を生成する処理）を行う必要がないので、高速に暗号通信を実現することが可能である。また、リーダライタ１１と通信装置１２との間を送受信されるデータは暗号化されているので、安全性を保つことができる。
【００８７】
また、通信システム１０は、以上説明したデータ読み込み時の処理とデータ書き込み時の処理とを両方行うこととしてもよい。その場合、セキュリティデバイス（通信装置１２）のデータ領域に対して、読み出し処理と書き込み処理で異なる鍵値を用いた認証または暗号化通信を実現できる。また、この場合には、データ読み込み時に使用する鍵値と、データ書き込み時に使用する鍵値が異なるので、データ読み込み、データ書き込みの双方に対する攻撃への安全性は向上する。
【００８８】
本発明は、有線または無線の通信網を介して、データを送受信する情報処理システム、ＩＣカードを利用した電子マネーシステム、セキュリティシステムなどに適用できる。
【００８９】
上記では、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【００９０】
１０    通信システム
１１    リーダライタ
１２    通信装置
３１    制御部
３２    記録部
３３    ＳＰＵ
３４    変調部
３５    発振回路
３６    アンテナ（通信部）
３７    復調部
３８    ドライブ
７１    磁気ディスク
７２    光ディスク
７３    光磁気ディスク
７４    半導体メモリ
１０１  アンテナ
１０２  復調部
１０３  ＳＰＵ
１０４  制御部
１０５  記録部
１０６  不揮発性メモリ
１０７  ＲＡＭ
１０８  発振回路
１０９  変調部
１１０  電力発生部
１１２  記録部
【図１】
0005908869.tif 000002
【図２】
0005908869.tif 000003
【図３】
0005908869.tif 000004
【図４】
0005908869.tif 000005
【図５】
0005908869.tif 000006
【図６】
0005908869.tif 000007
【図７】
0005908869.tif 000008
【図８】
0005908869.tif 000009
【図９】
0005908869.tif 000010