JP2008034971A - 通信システムおよび通信方法、情報処理装置および方法、デバイス、プログラム、並びに記録媒体 - Google Patents

通信システムおよび通信方法、情報処理装置および方法、デバイス、プログラム、並びに記録媒体 Download PDF

Info

Publication number
JP2008034971A
JP2008034971A JP2006203703A JP2006203703A JP2008034971A JP 2008034971 A JP2008034971 A JP 2008034971A JP 2006203703 A JP2006203703 A JP 2006203703A JP 2006203703 A JP2006203703 A JP 2006203703A JP 2008034971 A JP2008034971 A JP 2008034971A
Authority
JP
Japan
Prior art keywords
identifier
key
random number
polling
generating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006203703A
Other languages
English (en)
Other versions
JP4622951B2 (ja
Inventor
Katsuyuki Teruyama
勝幸 照山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to JP2006203703A priority Critical patent/JP4622951B2/ja
Application filed by Sony Corp filed Critical Sony Corp
Priority to PCT/JP2007/064633 priority patent/WO2008013212A1/ja
Priority to EP07791333A priority patent/EP2045956A1/en
Priority to CN2007800010321A priority patent/CN101351987B/zh
Priority to US12/088,017 priority patent/US8837725B2/en
Publication of JP2008034971A publication Critical patent/JP2008034971A/ja
Priority to KR1020087007210A priority patent/KR101472142B1/ko
Priority to HK09102391.2A priority patent/HK1125234A1/xx
Application granted granted Critical
Publication of JP4622951B2 publication Critical patent/JP4622951B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K17/00Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
    • H04B5/48
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor

Abstract

【課題】簡単な構成で安全且つ利便性の高い情報通信を行うことができるようにする。
【解決手段】リーダライタ100の秘密鍵記憶部101には、複数の秘密鍵が記憶されており、それらの秘密鍵を特定する識別子が、ICカード200に送信される。ICカード200は、受信した識別子に対応する秘密鍵を読み出し、乱数生成部202により生成された乱数を暗号化し、リーダライタ100に送信する。リーダライタ100は、秘密鍵記憶部101に記憶され、先にICカード200に送信した識別子に対応する秘密鍵を読み出し、受信した暗号化された乱数を復号する。本発明は、例えば、NFCIP方式で通信を行う装置に適用できる。
【選択図】図1

Description

本発明は、通信システムおよび通信方法、デバイス、情報処理装置および方法、プログラム、並びに記録媒体関し、特に、簡単な構成で安全かつ利便性の高い情報通信を行うことができるようにする通信システムおよび通信方法、デバイス、情報処理装置および方法、プログラム、並びに記録媒体に関する。
近接通信を行うシステムとしては、例えば、IC(Integrated Circuit)カードシステムが広く知られている。ICカードシステムにおいては、リーダライタが電磁波を発生することにより、いわゆるRF(Radio Frequency)フィールド(磁界)を形成する。そして、リーダライタに、ICカードが近づくと、ICカードは、電磁誘導によって、電源の供給を受けるとともに、リーダライタとの間でデータ伝送を行う。
ICカードシステムにおいて、1つのリーダライタに対して、複数のICカードが接近してきた場合には、リーダライタが、その複数のICカードそれぞれを識別し、通信相手を特定して、通信を行う必要がある。
複数のICカードを識別する方法としては、ICカードにユニークな識別番号としてのIDを割り当て、そのIDを、ICカードからリーダライタに報告させる方法が提案されている。このように、ICカードにユニークなIDを割り当てる場合には、ICカード同士でIDが重複することはない。
またICカードにおいて、乱数を発生し、その乱数を、自身のIDとして、一時的に使用する方法も提案されている。乱数をIDとして用いる場合には、複数のICカードにおいて、同一の乱数が、IDとして用いられることが生じうる。この場合、リーダライタが、そのID宛にデータを送信すると、複数のICカードが同時に応答することによって混信(コリジョン)が生じ、リーダライタが、ICカードからの応答を正常に取得することができないことになる。
そのようなことを防ぎつつも、複数の通信相手それぞれを確実に識別して、2以上の通信相手から同時に応答が返ってくることを防止することができるようにする提案もされている(例えば、特許文献1参照)。
特許第3695464号
ところで、1枚のICカードに1つのIDを割り当てるような場合、そのICカードを識別することは可能である。しかしながら、例えば、1枚のICカードを複数のサービスに用いることができるようにし、それらのサービス毎にIDを割り当てたいような場合には、IDの数が増大し、最適な方法であるとはいえない。
また、ICカードにIDを割り当てる場合、IDは、どのリーダライタでも読み出すことが可能となるので、例えば、ICカードを持っていると、そのIDによりカードの持ち主が特定され、その人のプライバシーが侵害されるといったようなプライバシーやセキュリティの問題があった。
リーダライタと通信可能な範囲にあるICカードやRFIDを識別するための方式であるNFCIP(Near Field Communication - Interface and Protocol)-1を標準化した規格としてISO/IEC18092 (NFCIP-1)が規定されている。この規格によれば、ICカードやRFIDに固有のIDがリーダライタに送信されることなく、衝突を防止することが可能となる。
しかしながら、NFCIP-1においては、ICカードやRFIDに固有のIDが送信されないので、このままでは個々のICカードやRFIDそのものを識別することができない。このため、個々のICカードやRFIDを個々に識別する必要がある場合、チップのデータ領域にICカードやRFIDに固有のIDを記憶させておき、必要に応じて固有のIDをリーダライタに送信することも考えられるが、この方式では、ICカードやRFIDに固有のIDを暗号化して安全に送信する必要がある。
本発明はこのような状況に鑑みてなされたものであり、簡単な構成で安全かつ利便性の高い情報通信を行うことができるようにするものである。
本発明の一側面の通信システムは、通信を行う情報処理装置およびデバイスにより構成される通信システムであって、前記情報処理装置は、1つ以上の鍵を記憶する第1の記憶手段と、前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成手段と、前記識別子で識別される前記鍵を前記第1の記憶手段から読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得手段とを備え、前記デバイスは、乱数を生成する乱数生成手段と、1つ以上の鍵を記憶する第2の記憶手段と、前記ポーリングリクエストに含まれる前記識別子に対応する鍵を、前記第2の記憶手段から読み出す読み出し手段と、前記読み出し手段により読み出された前記鍵で、前記乱数生成手段により生成された乱数を暗号化する暗号化手段と、前記暗号化手段により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成手段とを備える。
前記鍵は、第1の識別子と、前記第1の識別子に従属する第2の識別子により一意に識別され、前記第1の記憶手段と前記第2の記憶手段のそれぞれは、前記第1の識別子、前記第2の識別子、および前記鍵をそれぞれ関連付けて記憶するようにすることができる。
前記ポーリングリクエスト生成手段は、前記ポーリングリクエストに、前記識別子として、前記第1の識別子を含ませ、前記ポーリングレスポンス生成手段は、前記ポーリングレスポンスに、前記第2の識別子をさらに含ませ、前記取得手段は、前記ポーリングリクエストに含まれた第1の識別子と前記ポーリングレスポンスに含まれる前記第2の識別子から、前記鍵を特定し、前記第1の記憶手段から読み出すようにすることができる。
前記デバイスは、前記乱数生成手段により生成された前記乱数にハッシュ関数を適用した演算を行う第1のハッシュ演算手段をさらに備え、前記ポーリングレスポンス生成手段は、前記第1のハッシュ演算手段により演算された第1のハッシュ値を前記ポーリングレスポンスにさらに含ませ、前記情報処理装置は、前記取得手段により取得された前記乱数にハッシュ関数を適用した演算を行う第2のハッシュ演算手段と、前記第2のハッシュ演算手段により演算された第2のハッシュ値と、前記ポーリングレスポンスに含まれる第1のハッシュ値を照合する照合手段とをさらに備えるようにすることができる。
本発明の通信システムの一側面の通信方法は、通信を行う情報処理装置およびデバイスにより構成される通信システムの通信方法であって、前記情報処理装置は、1つ以上の鍵を記憶し、前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成し、前記識別子で識別される前記鍵を読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得するステップを含み、前記デバイスは、乱数を生成し、1つ以上の鍵を記憶し、前記ポーリングリクエストに含まれる前記識別子に対応する鍵を読み出し、読み出された前記鍵で、生成された乱数を暗号化し、暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するステップを含む。
本発明の一側面の通信システムおよび通信方法においては、通信を行う双方が、それぞれ1つ以上の鍵を記憶し、一方から、他方に、記憶されている1つ以上の鍵のうちのどの鍵を用いるかを示す識別子のデータを送信し、そのようなデータを受信した側は、その識別子に応じた鍵を用いて生成した乱数を暗号化し、データを送信してきた相手に返す。
本発明の一側面の情報処理装置は、デバイスと通信を行う情報処理装置であって、1つ以上の鍵を記憶する記憶手段と、前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成手段と、前記識別子で識別される前記鍵を前記記憶手段から読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得手段とを備える。
前記鍵は、第1の識別子と、前記第1の識別子に従属する第2の識別子により一意に識別され、前記記憶手段は、前記第1の識別子、前記第2の識別子、および前記鍵をそれぞれ関連付けて記憶するようにすることができる。
前記ポーリングリクエスト生成手段は、前記ポーリングリクエストに、前記識別子として、前記第1の識別子を含ませ、前記ポーリングレスポンスは、前記第2の識別子をさらに含み、前記取得手段は、前記ポーリングリクエストに含まれた第1の識別子と前記ポーリングレスポンスに含まれる前記第2の識別子から、前記鍵を特定し、前記記憶手段から読み出すようにすることができる。
前記取得手段により取得された前記乱数にハッシュ関数を適用した演算を行うハッシュ演算手段と、前記ハッシュ演算手段により演算されたハッシュ値と、前記ポーリングレスポンスに含まれるハッシュ値を照合する照合手段とをさらに備えるようにすることができる。
本発明の情報処理装置の一側面の通信方法は、デバイスと通信を行う情報処理装置の通信方法であって、記憶手段に記憶されている1つ以上の鍵のうちの1つの鍵の読み出しを制御する読み出し制御ステップと前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成ステップと、前記識別子で識別される前記鍵を前記記憶手段から、前記読み出し制御ステップの制御により読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得ステップとを含む。
本発明の情報処理装置を制御するコンピュータの一側面のプログラムは、デバイスと通信を行う情報処理装置を制御するコンピュータのプログラムであって、記憶手段に記憶されている1つ以上の鍵の1つの鍵の読み出しを制御する読み出し制御ステップと前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成ステップと、前記識別子で識別される前記鍵を前記記憶手段から、前記読み出し制御ステップの制御により読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得ステップとを含む。
本発明の情報処理装置を制御するコンピュータの一側面の記録媒体は、デバイスと通信を行う情報処理装置を制御するコンピュータに、記憶手段に記憶されている1つ以上の鍵の1つの鍵の読み出しを制御する読み出し制御ステップと前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成ステップと、前記識別子で識別される前記鍵を前記記憶手段から、前記読み出し制御ステップの制御により読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得ステップとを含む処理を実行させるプログラムを記録している。
本発明の一側面の情報処理装置および通信方法、並びにプログラムにおいては、1つ以上の鍵が記憶され、他の装置と通信を行うときに生成されるポーリングリクエストに、記憶している鍵を一意に識別するための情報が含まれる。
本発明の一側面のデバイスは、情報処理装置と通信を行うデバイスであって、乱数を生成する乱数生成手段と、1つ以上の鍵を記憶する記憶手段と、前記情報処理装置からのポーリングリクエストに含まれる前記鍵を識別するための識別子に対応する鍵を、前記記憶手段から読み出す読み出し手段と、前記読み出し手段により読み出された前記鍵で、前記乱数生成手段により生成された乱数を暗号化する暗号化手段と、前記暗号化手段により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成手段とを備える。
前記鍵は、第1の識別子と、前記第1の識別子に従属する第2の識別子により一意に識別され、前記記憶手段は、前記第1の識別子、前記第2の識別子、および前記鍵をそれぞれ関連付けて記憶するようにすることができる。
前記ポーリングレスポンス生成手段は、前記ポーリングレスポンスに、前記第2の識別子をさらに含ませるようにすることができる。
前記乱数生成手段により生成された前記乱数にハッシュ関数を適用した演算を行うハッシュ演算手段をさらに備え、前記ポーリングレスポンス生成手段は、前記ハッシュ演算手段により演算されたハッシュ値を前記ポーリングレスポンスにさらに含ませるようにすることができる。
本発明のデバイスの一側面の通信方法は、情報処理装置と通信を行うデバイスの通信方法であって、乱数を生成する乱数生成ステップと、前記情報処理装置からのポーリングリクエストに含まれる前記鍵を識別するための識別子に対応する鍵を、1つ以上の鍵が記憶されている記憶手段から読み出すための処理を制御する読み出し制御ステップと、前記読み出し制御ステップの処理により読み出しが制御された前記鍵で、前記乱数生成ステップの処理で生成された乱数を暗号化する暗号化ステップと、前記暗号化ステップの処理により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成ステップとを含む。
本発明のデバイスの一側面のプログラムは、情報処理装置と通信を行うデバイスを制御するコンピュータのプログラムであって、乱数を生成する乱数生成ステップと、前記情報処理装置からのポーリングリクエストに含まれる前記鍵を識別するための識別子に対応する鍵を、1つ以上の鍵が記憶されている記憶手段から読み出すための処理を制御する読み出し制御ステップと、前記読み出し制御ステップの処理により読み出しが制御された前記鍵で、前記乱数生成ステップの処理で生成された乱数を暗号化する暗号化ステップと、前記暗号化ステップの処理により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成ステップとを含む。
本発明のデバイスの一側面の記録媒体は、情報処理装置と通信を行うデバイスを制御するコンピュータに、乱数を生成する乱数生成ステップと、前記情報処理装置からのポーリングリクエストに含まれる前記鍵を識別するための識別子に対応する鍵を、1つ以上の鍵が記憶されている記憶手段から読み出すための処理を制御する読み出し制御ステップと、前記読み出し制御ステップの処理により読み出しが制御された前記鍵で、前記乱数生成ステップの処理で生成された乱数を暗号化する暗号化ステップと、前記暗号化ステップの処理により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成ステップとを含む処理を実行させるプログラムが記録されている。
本発明の一側面のデバイスおよび通信方法、並びにプログラムにおいては、他の装置から送信されてきたポーリングリクエストに含まれる1つ以上の鍵のうちから1つの鍵を識別するための情報から、自己が記憶している1つ以上の鍵のうち1つの鍵が読み出され、その鍵で、生成された乱数が暗号化される。
本発明の一側面によれば、複数の情報を取り扱い、それらの情報を通信するときに、安全性の高い状態で通信を行うことが可能となる。
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書または図面に記載されていることを確認するためのものである。従って、明細書または図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
本発明の一側面の通信システム(例えば、図1に示す通信システム50)は、通信を行う情報処理装置(例えば、図1のリーダライタ100)およびデバイス(例えば、ICカード200)により構成される通信システムであって、前記情報処理装置は、1つ以上の鍵を記憶する第1の記憶手段(例えば、図1の秘密鍵記憶部101)と、前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成手段(例えば、図2のステップS101の処理を実行する図1のCPU105)と、前記識別子で識別される前記鍵を前記第1の記憶手段から読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得手段(例えば、図2のステップS103の処理を実行する図1の暗号演算部106)とを備え、前記デバイスは、乱数を生成する乱数生成手段(例えば、図1の乱数生成部202)と、1つ以上の鍵を記憶する第2の記憶手段(例えば、図1の秘密鍵記憶部203)と、前記ポーリングリクエストに含まれる前記識別子に対応する鍵を、前記第2の記憶手段から読み出す読み出し手段(例えば、図4のステップS233の処理を実行する図1のCPU207)と、前記読み出し手段により読み出された前記鍵で、前記乱数生成手段により生成された乱数を暗号化する暗号化手段(例えば、図4のステップS234の処理を実行する図1の暗号演算部208)と、前記暗号化手段により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成手段(例えば、図4のステップS236の処理を実行する図1のCPU207)とを備える。
本発明の一側面の情報処理装置(例えば、図1のリーダライタ100)は、デバイスと通信を行う情報処理装置であって、1つ以上の鍵を記憶する記憶手段(例えば、図1の秘密鍵記憶部101)と、前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成手段(例えば、図2のステップS101の処理を実行する図1のCPU105)と、前記識別子で識別される前記鍵を前記記憶手段から読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得手段(例えば、図2のステップS103の処理を実行する図1の暗号演算部106)とを備える。
本発明の一側面のデバイス(例えば、ICカード200)は、情報処理装置と通信を行うデバイスであって、乱数を生成する乱数生成手段(例えば、図1の乱数生成部202)と、1つ以上の鍵を記憶する記憶手段(例えば、図1の秘密鍵記憶部203)と、前記情報処理装置からのポーリングリクエストに含まれる前記鍵を識別するための識別子に対応する鍵を、前記記憶手段から読み出す読み出し手段(例えば、図4のステップS233の処理を実行する図1のCPU207)と、前記読み出し手段により読み出された前記鍵で、前記乱数生成手段により生成された乱数を暗号化する暗号化手段(例えば、図4のステップS234の処理を実行する図1の暗号演算部208)と、前記暗号化手段により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成手段(例えば、図4のステップS236の処理を実行する図1のCPU207)とを備える。
以下に、本発明の実施の形態について図面を参照して説明する。
[システムの構成例]
図1は、本発明を適用した通信システム50の一実施形態における構成例を示すブロック図である。通信システム50は、リーダライタ100とICカード200により構成されており、リーダライタ100とICカード200は、例えば、それぞれが有するアンテナなどを介して無線による通信を行う。
リーダライタ100は、秘密鍵記憶部101、入出力部102、RAM(Random Access Memory)103、ROM(Read Only Memory)104、CPU(Central Processing Unit)105、および暗号演算部106を含む構成とされている。
ICカード200は、入出力部201、乱数生成部202、秘密鍵記憶部203、ID記憶部204、データ記憶部205、ROM206、CPU207、および、暗号演算部208を含む構成とされている。
リーダライタ100の入出力部102は、所定の電磁波を輻射し、それに対する負荷の変化に基づいて、ICカード200が近接されたか否かを検出するとともに、例えば、ICカード200が近接されたとき、ICカード200と各種のデータを送受信するアンテナ(不図示)を有する構成とされる。
入出力部102は、例えば、発振回路(OSC)から供給される所定の周波数の搬送波を、CPU105から供給されるデータに基づいて、ASK(Amplitude Shift Keying)変調し、生成された変調波を、電磁波としてアンテナから出力する。また、入出力部102は、アンテナを介して取得した変調波(ASK変調波)を復調し、復調したデータをCPU105に供給する。
リーダライタ100のCPU105は、ROM104に記憶されているプログラムを、RAM103にロードするなどして各種の処理を実行する。RAM103にはまた、CPU101が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU105は、暗号演算部106を制御することにより、予め定められた暗号アルゴリズムに基づく、データの暗号化と復号を行うことができるように構成されている。ここで、暗号演算部106の暗号アルゴリズムは、DES(Data Encryption Standard)、トリプルDES、AES(Advanced Encryption Standard)などの暗号アルゴリズムであって、いわゆる秘密鍵(共通鍵)暗号方式の暗号アルゴリズムを適用することができる。
リーダライタ100がデータの暗号化または復号を行う場合、例えば、CPU105が秘密鍵記憶部101に記憶された秘密鍵を、暗号化または復号すべきデータとともに、暗号演算部106に供給することにより、暗号演算部106による、供給された秘密鍵を用いた、供給されたデータの暗号化または復号が実行される。
後述するように、リーダライタ100とICカード200でそれぞれ記憶される秘密鍵は、基本的に同じ鍵であるが、本実施の形態においては、1つ以上の鍵を記憶することが可能とされており、記憶されている全ての鍵が、同じ鍵である必要はない。
ICカード200の入出力部201は、例えば、コイル状のアンテナとコンデンサにより構成されるLC回路を有する構成とされ、LC回路が近傍に配置されたリーダライタ100から輻射される所定の周波数の電磁波と共振するようになされている。また、入出力部201は、アンテナにおいて励起された交流磁界をASK復調により整流し、それを安定化し、各部に直流電源として供給する。リーダライタ100から輻射される電磁波の電力は、ICカード200に必要な電力をまかなう磁界を発生させるように調整されている。
また、入出力201は、アンテナを介して受信した変調波(ASK変調波)を包絡線検波して復調し、復調後のデータをBPSK(Binary Phase Shift Keying)復調してCPU207に供給するとともに、受信信号のクロック周波数と同一の周波数のクロック信号を発生してCPU207に供給する。
さらに、入出力部201は、所定の情報をリーダライタ100に送信する場合、CPU207から供給されBPSK変調されたデータを、例えばアンテナの負荷の変動に基づいてASK変調し、その変調成分を、アンテナを介してリーダライタ100に送信する。
ICカード200のCPU207は、ROM204に記憶されているプログラムを実行するなどして各種の処理を実行する。秘密鍵記憶部203、ID記憶部204、データ記憶部205は、例えば、EEPROM(Electrically Erasable Programmable Read-Only Memory)などで構成され、それぞれがEEPROMの記憶領域の一部とされる。
CPU207は、暗号演算部208を制御することにより、予め定められた暗号アルゴリズムに基づく、データの暗号化と復号を行うことができるように構成されている。ここで、暗号演算部208の暗号アルゴリズムは、リーダライタ100側の暗号演算部106の暗号アルゴリズムと同じアルゴリズムとされる。
ICカード200においてデータの暗号化または復号を行う場合、例えば、CPU207が秘密鍵記憶部203に記憶されている秘密鍵を、暗号化または復号すべきデータとともに、暗号演算部208に供給することにより、暗号演算部208による、供給された秘密鍵を用いた、供給されたデータの暗号化または復号が実行される。
乱数生成部202は、必要に応じて所定のけた数の乱数を発生する。詳細については後述するが、この乱数は、ICカード200とリーダライタ100との間で行われる通信において、両者が通信相手を相互に識別しあうためのセッションID、およびそのセッションにおいて送受信されるデータの暗号化または復号に用いられるセッション鍵(Session Key)として利用される。
ID記憶部204は、ICカード200に固有の識別情報であるカードIDを記憶する。
データ記憶部205は、ICカード200を用いて行われる各種サービスなどを提供するためのアプリケーションデータなどが必要に応じて記憶される。
なお、暗号演算部106と暗号演算部208は、それぞれソフトウェアとして構成されるようにすることも可能である。
上述したように、リーダライタ100とICカード200は、無線による通信を行うので、同時に二つ以上のICカードまたはリーダライタが電波を送出し、その結果、ICカードまたはリーダライタがどの対象から電波が発せられたものであるかを区別できなくなるという、いわゆる衝突が懸念されるが、通信システム50におけるリーダライタ100とICカード200のそれぞれは、リーダライタと通信可能な範囲にあるICカードやRFIDを識別することが可能な通信方式であるNFCIP(Near Field Communication - Interface and Protocol)-1に適合する通信を行う。
NFCIP-1には、他のNFCIP-1デバイスの通信ならびに同帯域で通信している他の装置による通信との両立を図るため、RF検知と衝突回避の仕組が盛り込まれており、NFC識別子(NFCID(NFC Identifier))と呼ばれるRF衝突回避の際及び単一デバイス探知処理に用いられる乱数を利用したNFCデバイスの識別子が用いられる。例えば、従来の通信システムにおいては、ICカードの固有のIDをリーダライタに送信し、リーダライタがそのIDに基づいて個々のICカードを識別することで衝突の防止を図るものも多いが、NFCIP-1ではICカードに固有のIDをリーダライタに送信する必要はない。
従って、通信システム50においては、ICカード200に固有のカードIDをリーダライタ100に送信しなくも、リーダライタ100とICカード200がそれぞれ通信相手を一意に識別し、衝突を防止することが可能となる。
なお、NFCIP-1については、ISO/IEC18092にその詳細が記述されている。
以降においては、リーダライタ100がNFCIP-1に規定されるイニシエータ(Initiator)として動作し、ICカード200がNFCIP-1に規定されるターゲット(Target)として動作する場合を例として説明する。
[システムの動作について]
次に、図1に示した通信システム50の動作について図2乃至図5のフローチャートを参照して説明する。
なお、以下の説明においては、例えば、リーダライタ100またはICカード200に記憶されているデータを、一方から他方にコピーするといったデータの授受が行われる前の段階(サービスが行われる前の段階)における情報の授受に関する処理について説明する。換言すれば、データの授受を行う前の段階で行われるセッションの確立時の処理について説明する。
また、図2のフローチャートを参照し、通信システム50の全体の動作の概略を説明し、その後、図3乃至図5を参照し、各ステップにおける処理の詳細を説明する。
リーダライタ100は、ステップS101において、ポーリングリクエスト(Polling Request)を生成し、ICカード200に送信する。ICカード200が、リーダライタ100の通信可能な距離内に位置していれば、ステップS121において、ICカード200は、リーダライタ100からのポーリングリクエストを受信する。
ICカード200は、ステップS122において、乱数を暗号化したセッション鍵を生成し、そのセッション鍵を含むポーリングレスポンス(Polling Response)をリーダライタ100に対して送信する。ステップS102において、リーダライタ100は、ICカード200からのポーリングレスポンスを受信し、ステップS103において、ICカード200側で暗号化された乱数を取得するための乱数取得処理を実行する。
このような処理がリーダライタ100とICカード200側との間で行われることにより、通信できる状態が確立された場合には、例えば、一方から他方へのデータの授受といった処理が、確立されたセッションにおいてセキュリティが保たれる状態で行われる。
また、例えば、ICカード200側で暗号化した乱数とリーダライタ100側で取得された乱数が一致しないような場合、通信できる状態が確率されていないので、その後の通信は行われないなどの処理が行われる。
次に、図2に示した各ステップで行われる処理の詳細について説明する。まず、図3のフローチャートを参照し、ステップS101において、リーダライタ100で行われるポーリングリクエストの生成、送信処理について説明する。
ステップS211において、リーダライタ100のCPU105(図1)は、秘密鍵記憶部101に記憶されている複数の秘密鍵(1つ以上の秘密鍵)から1つの秘密鍵を選択する。
ここで、図6を参照して、秘密鍵記憶部101に記憶されている秘密鍵について説明を加える。図6に示した例において秘密鍵記憶部101には、秘密鍵pk00乃至pkNというN個の秘密鍵が記憶されている。また、それぞれの秘密鍵を識別するために、識別子pksn0乃至pksnNというN個の識別子が、それぞれpk00乃至pkNと関連付けられて記憶されている。
ここで、pkとは、Pre-shared Keyの略であるとし、リーダライタ100とICカード200(イニシエータとターゲット)の両方で、事前に共有される秘密鍵を表すとする。pksnは、Pre-shared Key Slot Numberの略であるとし、Pre-shared Keyをそれぞれ識別するための番号を表すとする。
なお、以下の説明において、秘密鍵pk00乃至pkNを個々に区別する必要がない場合、単に秘密鍵pkと記述する。他の鍵や識別子などについても同様に記述する。
ステップS211においては、秘密鍵記憶部101に記憶されている秘密鍵pk00乃至pkNのうちの1つの秘密鍵pkが選択され、その選択された秘密鍵pkを識別するための識別子pksnが読み出される。なお、この段階では、秘密鍵pkを用いた処理は行われないため、秘密鍵pkが選択された後、その選択された秘密鍵pkに対応する識別子pksnが読み出されるのではなく、識別子pksn選択され、読み出されるようにしても良い。ここでは、秘密鍵pk00が選択され、その秘密鍵pk00に対応する識別子pksn0が読み出される(識別子pksn0が選択され、読み出される)として説明を続ける。
複数の秘密鍵pkのうち、どの秘密鍵pkを選択するかは、例えば、その時点で他のICカード200との通信で使われていない秘密鍵を選択する、通信相手となるICカード200に応じて選択するなど、所定の条件に基づいて選択される。
ステップS212において、ポーリングリクエストが生成される。生成されるポーリングリクエストには、ステップS211の処理で読み出された識別子pksnが含まれる。例えば図6に示したように、識別子pksn0が格納されたポーリングリクエストが生成される。
図7は、生成されるポーリングリクエストのデータ構成を示す図である。図7に示したポーリングリクエストは、リーダライタ100とICカード200が、NFCIP(Near Field Communication - Interface and Protocol)-1で規定される方式に基づいて通信を行う場合のデータ構成を示している。
Preamble(プリアンブル)は、6バイトで構成されるフィールドであり、全て論理“0”のデータが格納される。Syncは、2バイトで構成されるフィールドであり、同期用のデータであり、イニシエータとターゲットとの間の通信の同期に用いられるデータが格納される。CRC(Cyclic Redundancy Check)は、2バイトで構成されるフィールドであり、誤り検出に用いられるデータであって、予め定められた方式で計算されたデータが格納される。
TSNは、Time Slot Numberの略である。TSN(Time Slot Number)は、NECIP-1規格において、ポーリングリクエストを受信した側が、ポーリングレスポンスを送信する時間範囲を指定する番号を示すデータである。このTSNは、8ビットのフィールドである。
TSNは、8ビットのフィールドであるが、Time Slot Numberを表すだけなら、8ビットのうちの4ビットを用いることで表現することも可能である。そこで、本実施の形態においては、TSNの8ビットのフィールドのうちの4ビットをTime Slot Numberを表すデータに割り当て(図7においては、tsnと表記)、残りの4ビットを識別子pksnを表すデータに割り当てる(図7においては、pksnと表記)。
ステップS212においては、図7に示したようなデータ構造を有するポーリングリクエストが生成される。ポーリングリクエストが生成される際、秘密鍵記憶部101から読み出された識別子pksnが、ポーリングリクエストに格納されるが、識別子pksnは、ポーリングリクエストを構成するTSNのフィールドの4ビットの領域に格納される。
生成されたポーリングリクエストは、ステップS213において、ICカード200に対して送信される。
CPU105(図1)は、秘密鍵記憶部101から秘密鍵pkを識別する識別子pksnを読み出し、その識別子pksnを含むポーリングリクエストを生成し、入出力部102を制御することにより、ICカード200に送信する。また、CPU105は、適宜、ポーリングリクエストに含ませた識別子pksnを、RAM103に記憶させる。
このようにしてリーダライタ100により生成されたポーリングリクエストは、ステップS121(図2)において、通信範囲内にあるICカード200に受信される。ポーリングリクエストを受信したICカード200は、ステップS122において、ポーリングレスポンスの生成と送信処理を実行する。このステップS122において実行されるポーリングレスポンスの生成と送信処理について、図5のフローチャートを参照して説明する。
ステップS231において、乱数生成部202は、乱数Aを生成(発生)する。
ステップS232において、CPU207は、生成された乱数Aを、例えば、データ記憶部205の中の予め定められた所定の領域に記憶する。
ステップS233において、CPU207は、入出力部201により受信されたポーリングリクエストに含まれる識別子pksnを読み出し、その読み出した識別子pksnに対応する秘密鍵pkを、秘密鍵記憶部203から読み出す。
ここで、図8を参照して、秘密鍵記憶部203に記憶されている秘密鍵について説明を加える。図8に示した例において秘密鍵記憶部203には、秘密鍵pk00’乃至pkN’というN個の秘密鍵が記憶されている。また、それぞれの秘密鍵を識別するために、識別子pksn0’乃至pksnN’というN個の識別子が、それぞれpk00’乃至pkN’と関連付けられて記憶されている。
このように、ICカード200の秘密鍵記憶部203と、リーダライタ100の秘密鍵記憶部101には、基本的に、同じ秘密鍵と識別子の対が記憶されている。ここでは、ICカード200の秘密鍵記憶部203と、リーダライタ100の秘密鍵記憶部101に、それぞれ記憶されている秘密鍵および識別子を区別するために、ICカード200の秘密鍵記憶部203に記憶されている秘密鍵および識別子には、ダッシュ(’)を付して記述する。
なお、ICカード200の秘密鍵記憶部203と、リーダライタ100の秘密鍵記憶部101には、それぞれ同じ秘密鍵と識別子の対が記憶されているとしたが、記憶されている全ての秘密鍵や識別子が、同一である必要はない。換言すれば、どちらか一方にのみ記憶されている秘密鍵や識別子があっても良い。
どちらか一方にのみ記憶されている秘密鍵や識別子があり、そのような秘密鍵が用いられた場合、通信が確立することができなくなる。このことを利用すれば、秘密鍵を選択することにより通信相手を選択することができるようになる。すなわち、例えば、上記したように、リーダライタ100側の処理で、ステップ211(図3)で、秘密鍵の選択が行われるが、このとき、通信したい相手が記憶しているであろう秘密鍵を選択するようにすれば、通信相手を選択することが可能となる。
図4のフローチャートの説明に戻り、ステップS233において、受信したポーリングリクエストに含まれる識別子pksnが読み出され、その識別子pksnに対応する秘密鍵pk’が秘密鍵記憶部203から読み出されると、ステップS234において、読み出された秘密鍵pk’で、乱数Aが暗号化される。
図8を再度参照して説明するに、入出力部201(図1)により、識別子pksn0を含むポーリングリクエストが受信された場合、CPU207は、識別子pksn0’に関連付けられている秘密鍵pk00’を、秘密鍵記憶部203から読み出す。この読み出された秘密鍵pk00’を鍵とし、乱数生成部202により生成された乱数Aが暗号化される。
CPU207は、秘密鍵記憶部203から読み出した秘密鍵pk’を暗号演算部208に供給するとともに、乱数生成部202で生成された乱数Aも暗号演算部208に供給する。暗号演算部208は、供給された乱数Aを、秘密鍵pk’を鍵として暗号化する。暗号化された乱数Aをここでは、セッション鍵ESKと記述する。ESKとはここでは、Encrypted Session Keyの略であるとする。
ステップS235において、CPU207は、ステップS234の処理結果のデータ(すなわち、暗号化された乱数Aであるセッション鍵ESK)を、例えば、データ記憶部205の中の予め定められた所定の領域に記憶する。
ステップS236において、ポーリングレスポンスが生成される。生成されるポーリングレスポンスには、図8に示すように、ステップS234で生成されたセッション鍵ESKが含まれる。
図9は、生成されるポーリングリクエストのデータ構成を示す図である。図9に示したポーリングレスポンスは、リーダライタ100とICカード200が、NFCIP(Near Field Communication - Interface and Protocol)-1で規定される方式に基づいて通信を行う場合のデータ構成を示している。
Preamble(プリアンブル)は、6バイトで構成されるフィールドであり、全て論理“0”のデータが格納される。Syncは、2バイトで構成されるフィールドであり、同期用のデータであり、イニシエータとターゲットとの間の通信の同期に用いられるデータが格納される。CRC(Cyclic Redundancy Check)は、2バイトで構成されるフィールドであり、誤り検出に用いられるデータであって、予め定められた方式で計算されたデータが格納される。
ペイロードは、開始バイトが“01”とされ、8バイトのNFCID2および8バイトのPADを含んだデータが格納される。セッション鍵ESK(暗号化された乱数A)は、ESK1とESK2という2つのデータに分けられ、それぞれNFCID2のフィールドとPADのフィールドに格納される。
ここでは、セッション鍵ESKは、8バイトで構成されるとし、ESK1は6バイト、ESK2は2バイトであるとする。8バイトのセッション鍵ESKのうち、先頭の6バイトがESK1とされ、残りの2バイトがESK2とされる。
ステップS236において、図9に示したようなデータ構造を有するポーリングレスポンスが生成される。また、生成されるポーリングレスポンスには、上記したように、セッション鍵ESKが2つのデータに分けられ、ペイロードのそれぞれ異なる部分に格納される。
生成されたポーリングレスポンスは、ステップS237において、リーダライタ100に対して送信される。CPU207(図1)は、生成したポーリングレスポンスを、入出力部201を制御することにより、リーダライタ100に送信する。
このようにしてICカード200により生成されたポーリングレスポンスは、ステップS102(図2)において受信される。ポーリングレスポンスを受信したリーダライタ100は、ステップS103において、乱数取得処理を実行する。このステップS103において実行される乱数取得処理について、図5のフローチャートを参照して説明する。
ステップS251において、CPU105は、ICカード200からのポーリングレスポンスに含まれるセッション鍵ESK、すなわち、暗号化された乱数Aを取得する。
ステップS252において、CPU105は、例えば、RAM103の所定の領域に、ステップS251の処理で取得されたセッション鍵ESKを記憶する。
ステップS253において、暗号演算部106は、ステップS251の処理で取得されたセッション鍵ESKであって、暗号化された乱数Aを、秘密鍵記憶部101に記憶されている秘密鍵pkを用いて復号する。用いられる秘密鍵pkは、ポーリングリクエストに含ませた識別子pksnに対応する秘密鍵pkである。ここで、復号の結果取得される乱数は乱数Bと記述する。
ステップS254において、CPU105は、復号された乱数Bを、例えば、RAM103の所定の領域に記憶する。
図10を参照して図5のフローチャートの処理について再度説明する。リーダライタ100の入出力部101により、セッション鍵ESKを含むポーリングレスポンスが受信されると、CPU105は、そのポーリングリクエストに含まれるセッション鍵ESKを取得し、暗号演算部106に供給する。
CPU101は、秘密鍵記憶部101から、ポーリングリクエストに含めた識別子pksn00に対応する秘密鍵pk00を読み出し、暗号演算部106に供給する。このようにして、暗号演算部106には、セッション鍵ESKと秘密鍵pk00が供給される、暗号演算部106は、秘密鍵pk00を鍵として、セッション鍵ESKを復号し、乱数Bを取得する。
このようにしてリーダライタ100側で取得された乱数Bと、ICカード200側で生成された乱数Aが一致していれば、乱数A(乱数B)を用いた通信を行うことができる。例えば、リーダライタ100と、ICカード200は、乱数A(乱数B)を用いて生成されるセッション鍵ESKに基づいて互いを一意に識別し、また、乱数Aを鍵として必要に応じてデータの暗号化または復号を行うことが可能となる。
乱数Aと乱数Bが一致しなれば、乱数Aを用いて生成されるセッション鍵ESKと乱数Bを用いて生成されるセッション鍵ESKは、異なるセッション鍵ESKとなるため、互いに一意に識別することができないため、通信を行うことができない。
[システムの他の構成]
上記した実施の形態においては、例えば、図7を参照して説明したように、ポーリングリクエストのデータに含まれる識別子pksnのデータには、4ビットが割り当てられている。識別子pksnを4ビットで表した場合、16個の識別子を表現できることになる。よって、16個の秘密鍵pkと識別子pksnの対を、リーダライタ100やICカード200で、それぞれ取り扱うことが可能となる。
例えば、1つの秘密鍵pkを1つのサービスと関連付けて用いるようにした場合、16個のサービスを取り扱うことが可能となる。
しかしながら、16個以上の秘密鍵pkを取り扱いたい場合には、対応できないことになる。そこで、16個以上の秘密鍵pkを取り扱えるようにする場合の、通信システム50の構成について説明する。
なお、ここでは、ポーリングリクエストに含ませる識別子pksnを、4ビットで表現するとしたため、16個の秘密鍵pkを取り扱えるとして説明したが、本発明は、4ビットに限定されるわけではなく、4ビット以外でも勿論本発明を適用することは可能である。4ビット以外で表現するように設定した場合、その設定されたビット数に依存して、取り扱える秘密鍵pkの個数が決定される。
よって、例えば、4ビット以上のビット数で、識別子pksnを表現するようにした場合、16個以上のサービスを扱えることになり、そのようにして、扱える識別子pksnや秘密鍵pkを増やすようにしても良い。ここでは、ビット数を増やすことなく、扱える秘密鍵pkの個数を多くする方法について説明する。
図11は、通信システム50の他の構成を示す図である。図11に示した通信システム50と、図1に示した通信システム50の構成で、同一の部分には、同一の符号を付し、適宜、その説明を省略する。
上記したように、図11に示した通信システム50は、リーダライタ300とICカード400とから構成されている。リーダライタ300は、後述するような階層構造を有する秘密鍵pkを記憶している秘密鍵記憶部301を有する。同様に、ICカード400は、階層構造を有する秘密鍵pk’を記憶している秘密鍵記憶部401を有している。
リーダライタ300は、ハッシュ演算部302を有している構成とされている。また、ICカード400も、ハッシュ演算部402を有している構成とされている。詳細は後述するが、ハッシュ演算部302とハッシュ演算部402は、それぞれハッシュ関数を適用した演算を行う。その結果演算されたハッシュ値を照合することにより、データの信頼性、ここでは、後述するように、秘密鍵pkの確認が行われる。
その他の構成は、図1と同様であるので、その説明は省略する。
図12は、秘密鍵記憶部301に記憶されている秘密鍵pkについて説明するための図である。図12に示した例においては、識別子pksn0乃至pksnNというN個の識別子が記憶されている。識別子pksn0には、サブ識別子SSN0乃至SSN2という3個の識別子が関連付けられている。さらに、各サブ識別子SSN0乃至SSN2には、それぞれ秘密鍵pk00乃至pk02が関連付けられている。
すなわちこの場合、1つの識別子pksn0には、3個の秘密鍵pk00乃至02が関連付けられている。なおここでSSNは、Sub Slot Numberの略であるとする。
他の識別子pksnも同様に、1つの識別子pksnには、複数のサブ識別子SSNが従属して関連付けられ、1つのサブ識別子SSNには、1つの秘密鍵pkが関連付けられている。すなわち、1つの識別子pksnには、複数のサブ識別子SSNと複数の秘密鍵pkが関連付けられている。
なお、1つの識別子pksnに、幾つのサブ識別子SSN(秘密鍵pk)を関連付けるかの限定はない。図12に示した例は一例であり、例えば、識別子pksn0に3つのサブ識別子SSN0乃至2が関連付けられるといったことに限定されるわけではない。
このように、秘密鍵記憶部301には、1つの識別子pksn0に、複数の秘密鍵pkが関連付けられている。このように、サブ識別子SSNを設けることで、複数の秘密鍵pkを記憶(取り扱う)ことを可能とする。
ここでは、リーダライタ100の秘密鍵記憶部301に記憶されている階層構造の鍵の例しか示さないが、ICカード400の秘密鍵記憶部401も、同様の階層構造の鍵を記憶している。
次に、図11に示した通信システム50の動作について説明する。通信システム50の動作の概略は、図2に示したフローチャートを参照して説明した場合と同様であるのでその説明は省略する。
また、リーダライタ300の動作として、ステップS101(図2)で行われる、ポーリングリクエストの生成、送信処理は、図3に示したフローチャートを参照して説明した場合と同様に行われるため、その詳細な説明は省略するが、図13を参照して、簡便な説明を加える。
図13に示すように、リーダライタ300の秘密鍵記憶部301には、階層構造とされた秘密鍵pkが記憶されている。CPU105(図11)は、秘密鍵記憶部301から、例えば、識別子pksn0を読み出し、ポーリングリクエストに格納する。識別子pksn0が格納されたポーリングリクエストは、入出力部102によりICカード400に送信される。
この送信されるポーリングリクエストは、図7を参照して説明したデータ構成を有する。すなわち、秘密鍵記憶部301に記憶されている秘密鍵を、階層構造にした場合であっても、ポーリングリクエストに含まれるのは、識別子pksnである。
次に、ポーリングリクエストを受信したICカード400の処理について説明する。ICカード400は、ステップS122(図2)において、ポーリングレスポンスの生成、送信処理を実行する。このICカード400で実行されるポーリングレスポンスを生成、送信処理について、図14のフローチャートを参照して説明する。
ステップS331乃至S335で実行される各処理は、図4のステップS231乃至S235と同様であり、その説明は既にしたので、ここでは省略する。
ただし、ステップS333において秘密鍵記憶部401から秘密鍵pkを読み出す際の処理が異なるので、ここで説明を加える。上記したように、秘密鍵記憶部401には、1つの識別子pksn’に対して、複数の秘密鍵pk’が関連付けられている。ICカード400のCPU207は、受信したポーリングリクエストに含まれる識別子pksnと同一の識別子pksn’に関連付けられている1つの秘密鍵pk’を読み出す。
例えば、図15を参照して説明するに、受信されたポーリングリクエストに含まれる識別子pksnが、識別子pksn0であった場合、識別子pksn0’に関連付けられている秘密鍵pk00’乃至02’のうちの1つの秘密鍵pk’が読み出される。ここでは、秘密鍵pk00’が読み出されるとして説明を続ける。
例えば、1つの識別子pksn’に関連付けられている複数の秘密鍵pk’を、それぞれ異なるセキュリティレベルの鍵とし、通信するデータや通信相手により、適切な秘密鍵pk’が読み出されるようにすることが可能である。
また、例えば、1つの識別子pksn’に関連付けられている複数の秘密鍵pk’を、それぞれ異なるサービスに対応させ、実行するサービスに適した秘密鍵pk’が読み出されるようにすることが可能である。
この読み出された秘密鍵pk00’で、乱数生成部202により生成された乱数Aが暗号化され、セッション鍵ESKが生成される。
図14のフローチャートの説明に戻り、ステップS336において、サブ識別子SSNが読み出される。読み出されるサブ識別子SSNは、ステップS334において読み出された秘密鍵pkに関連付けられているサブ識別子SSNである。
なおここでは、秘密鍵pk’が読み出された後、その読み出された秘密鍵pk’を識別するサブ識別子SSN’が読み出されるとしたが、サブ識別子SSN’が読み出されてから、そのサブ識別子SSN’に対応する秘密鍵pk’が読み出されるようにしても良いし、同時に読み出されるようにしても良い。他のステップにおける処理も同様であるが、実行される順番は、適宜変更可能であり、本実施の形態に示した順番に限定されるわけではない。
ステップS337において、ハッシュ演算部402は、乱数生成部202により生成された乱数Aに対してハッシュ関数による演算を行う。ハッシュ関数は、送信するデータを入力とし、その入力されたデータを、所定のビット長のデータに圧縮し、ハッシュ値として出力する関数である。ハッシュ関数は、出力であるハッシュ値から入力データを復元することが難しく、また、同一の出力結果のハッシュ値を持つ入力データを探し出すことが困難である(一方向である)特徴を有する。
このようなハッシュ関数の特徴を利用し、送受信されたデータの信憑性などを確認することが行われる。ここでは、ICカード400側とリーダライタ300側で、それぞれ読み出した秘密鍵pk’(秘密鍵pk)が、一致しているか否かを確認するために、ハッシュ演算を行う。
ステップS337において、乱数Aに対してハッシュ関数が適用され、ハッシュ値Aが生成されると、ステップS338においてポーリングレスポンスが生成される。生成されるポーリングレスポンスは、図15に示すように、ハッシュ値A、セッション鍵ESK、および、サブ識別子SSN’を含む構成とされる。
すなわち、秘密鍵記憶部401に記憶されている鍵を階層構造にした場合、ポーリングレスポンスには、ハッシュ値A、セッション鍵ESK、および、サブ識別子SSNを含む構成とされる。
ポーリングレスポンスについてさらに図16を参照して説明する。図16に示したポーリングリクエストのデータ構成のうち、図9に示したポーリングリクエストのデータ構成と一致する部分に関する説明は省略する。
図16に示したポーリングリクエストのデータ構成においては、ペイロードのPADの領域に、ハッシュ値Aを格納する領域(図16においては、HSKと記載してある領域)と、サブ識別子SSN’を格納する領域(図16においては、SSNと記載してある領域)が設けられている。ハッシュ値Aを格納する領域は、2バイトで構成される。サブ識別子SSN’を格納する領域は、2バイトで構成される。
ステップS228においては、図16に示したようなデータ構成を有するポーリングレスポンスが生成される。そして、ステップS339において、生成されたポーリングレスポンスは、リーダライタ300に対して送信される。
次に、ポーリングレスポンスを受信したリーダライタ300の処理について説明する。リーダライタ300は、ステップS103(図2)において、乱数取得処理を実行する。このリーダライタ300で実行される乱数取得処理について、図17のフローチャートを参照して説明する。
ステップS351乃至S354で実行される各処理は、図5のステップS251乃至S254と同様であり、その説明は既にしたので、ここでは省略する。
ただし、ステップS353において秘密鍵記憶部301から秘密鍵pkを読み出す際の処理が異なるので、ここで説明を加える。リーダライタ300は、ICカード400に送信したポーリングリクエストに含めた識別子pksnから、識別子pksnを特定する。また、リーダライタ300は、ICカード400から受信したポーリングレスポンスに含まれるサブ識別子SSN’から、サブ識別子SSNを特定する。識別子pksnとサブ識別子SSNが特定されれば、1つの秘密鍵pkを特定することができる。
図18を参照してさらに説明を加える。図18に示した例では、ICカード400から受信されたポーリングレスポンスには、サブ識別子SSN’として、サブ識別子SSN0’が格納されているため、サブ識別子SSN0’からサブ識別子SSN0が特定される。
またリーダライタ300は、ICカード400に送信したポーリングリクエストに、識別子pksnとして識別子pksn0のデータを格納したことを記憶している。よって、識別子pksn0という情報と、サブ識別子SSN0という情報から、秘密鍵pk00が特定される。よってこの場合、秘密鍵pkとして、秘密鍵pk00が読み出される。
この読み出された秘密鍵pk00を鍵とし、ポーリングリクエストに含まれるセッション鍵ESKを復号することで、乱数Bが取得される。
図17のフローチャートの説明に戻り、ステップS351乃至S354の処理が行われることにより乱数Bが取得されると、ステップS355において、ハッシュ演算部302(図11)は、乱数Bに対してハッシュ関数を適用し、ハッシュ値Bを生成する。
ステップS356において、CPU105は、入出力部102により入力されたポーリングレスポンスに含まれるハッシュ値Aと、ハッシュ演算部302により生成されたハッシュ値Bを照合する。
図18を参照し、ハッシュ値Aとハッシュ値Bを照合する必要性について説明を加える。図18を参照した説明においては、上述したように、識別子pksn0という情報と、サブ識別子SSN0という情報から、秘密鍵pk00が特定された。仮に、この秘密鍵の特定が間違って行われた場合、ハッシュ値Aとハッシュ値Bは一致しないことになる。
識別子pksnは、リーダライタ300側で選択し、サブ識別子SSNは、ICカード400側で選択された。リーダライタ300に記憶されている識別子pksn、サブ識別子SSN、および秘密鍵pkとの関係が、ICカード400に記憶されている識別子pksn’、サブ識別子SSN’、および秘密鍵pk’との関係と同一であれば、間違って秘密鍵pkが特定される可能性は低いと考えられるが、同一でなければ、間違って秘密鍵pkが特定される可能性がある。
また、例えば、ICカード400側で選択したサブ識別子SSN’に対応する秘密鍵pkを、リーダライタ300側で保持していなかったような場合(例えば、リーダライタ300側とICカード400側で異なる秘密鍵を保持していたような場合)、一意に秘密鍵pkを特定することができないため、ハッシュ値Aとハッシュ値Bは一致しないことになる。
このようなことを考慮し、ハッシュ値の照合を行い、リーダライタ300側とICカード400側で選択した秘密鍵pk(暗号化や復号に用いる秘密鍵pk)が一致しているか否かを確認できる構成とする。
このように、ハッシュ値をポーリングレスポンスに格納することで、セッション鍵の正当性をリーダライタ300側で確認することが可能となる。
なお、図1に示した通信システム50では、換言すれば、階層構造とされていない秘密鍵の場合には、ハッシュ値の照合などの処理を行い、リーダライタ300側とICカード400側で選択した秘密鍵pkが一致しているか否かを確認するといった処理を行わない構成としたが、勿論、図1に示した通信システム50において、ハッシュ値の照合を行うなどの処理を実行し、秘密鍵pkを確認する構成とすることも可能である。
このように、リーダライタ300とICカード400で、複数の秘密鍵pkを管理することにより、複数のサービスを、異なる秘密鍵pkで暗号化、復号することができ、複数のサービスを扱うような場合であっても、サービス毎に秘密鍵pkを用いることが可能となる。また、このように通信のセッションを確立することで、通信の安全性を高めることが可能となる。
なお、上述した実施の形態においては、無線通信を例に挙げて説明したが、有線による通信に本発明を適用することは可能である。また、本発明は上記した実施の形態に限定されるわけではなく、2つの装置間で、何らかのデータを交換する際、互いの装置が保持する複数の鍵を用いた通信に適用することができる。
本明細書における情報処理装置、デバイスとの用語は、例えば、NFCIP-1の規格においては、イニシエータとターゲット、すなわち、それぞれ、RFフィールドを発生し、NFCIP-1通信を開始する装置と負荷変調または自ら発生したRFフィールドの変調を利用してイニシエータからの命令に応答する装置に対応する。また、これら装置は、それぞれの機能を有する1つ以上のICチップを搭載した通信装置であって、他の機能等を有した装置であっても良い。
[記録媒体について]
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、図1のCPU105またはCPU207により実行され、それらのプログラムは、リーダライタ100(300)またはICカード200(400)が読み取り可能な記録媒体などから読み込まれる。
本明細書において上述した一連の処理を実行するステップは、記載された順序に沿って時系列的に行われる処理は勿論、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
本発明を適用した通信システムの一実施の形態の構成を示す図である。 図1に示した通信システムの動作について説明するフローチャートである。 ステップS101において実行されるポーリングリクエスト生成、送信処理の詳細について説明するフローチャートである。 ステップS122において実行されるポーリングレスポンス生成、送信処理の詳細について説明するフローチャートである。 ステップS103において実行される乱数取得処理の詳細について説明するフローチャートである。 ポーリングリクエストの生成について説明するための図である。 ポーリングリクエストのデータ構成について説明するための図である。 ポーリングレスポンスの生成について説明するための図である。 ポーリングレスポンスのデータ構成について説明するための図である。 ポーリングレスポンスから乱数Bを取得する際の処理について説明するための図である。 本発明を適用した通信システムの他の構成を示す図である。 秘密鍵記憶部301に記憶されている秘密鍵について説明するための図である。 ポーリングリクエストの生成について説明するための図である。 ステップS122において実行されるポーリングレスポンス生成、送信に係わる他の処理の詳細について説明するフローチャートである。 ポーリングレスポンスの生成について説明するための図である。 ポーリングレスポンスのデータ構成について説明するための図である。 ステップS103において実行される乱数取得に係わる他の処理の詳細について説明するフローチャートである。 ポーリングレスポンスから乱数Bを取得する際の処理について説明するための図である。
符号の説明
50 通信システム, 100 リーダライタ, 101 秘密鍵記憶部, 102 入出力部, 103 RAM, 104 ROM, 105 CPU, 106 暗号演算部, 200 ICカード, 201 入出力部, 202 乱数生成部, 203 秘密鍵記憶部, 204 ID記憶部, 205 データ記憶部, 206 ROM, 207 CPU, 208 暗号演算部, 300 リーダライタ, 301 秘密鍵記憶部, 302 ハッシュ演算部, 400 ICカード, 401 秘密鍵記憶部, 402 ハッシュ演算部

Claims (19)

  1. 通信を行う情報処理装置およびデバイスにより構成される通信システムであって、
    前記情報処理装置は、
    1つ以上の鍵を記憶する第1の記憶手段と、
    前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成手段と、
    前記識別子で識別される前記鍵を前記第1の記憶手段から読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得手段と
    を備え、
    前記デバイスは、
    乱数を生成する乱数生成手段と、
    1つ以上の鍵を記憶する第2の記憶手段と、
    前記ポーリングリクエストに含まれる前記識別子に対応する鍵を、前記第2の記憶手段から読み出す読み出し手段と、
    前記読み出し手段により読み出された前記鍵で、前記乱数生成手段により生成された乱数を暗号化する暗号化手段と、
    前記暗号化手段により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成手段と
    を備える
    通信システム。
  2. 前記鍵は、第1の識別子と、前記第1の識別子に従属する第2の識別子により一意に識別され、
    前記第1の記憶手段と前記第2の記憶手段のそれぞれは、前記第1の識別子、前記第2の識別子、および前記鍵をそれぞれ関連付けて記憶する
    請求項1に記載の通信システム。
  3. 前記ポーリングリクエスト生成手段は、前記ポーリングリクエストに、前記識別子として、前記第1の識別子を含ませ、
    前記ポーリングレスポンス生成手段は、前記ポーリングレスポンスに、前記第2の識別子をさらに含ませ、
    前記取得手段は、前記ポーリングリクエストに含まれた第1の識別子と前記ポーリングレスポンスに含まれる前記第2の識別子から、前記鍵を特定し、前記第1の記憶手段から読み出す
    請求項2に記載の通信システム。
  4. 前記デバイスは、
    前記乱数生成手段により生成された前記乱数にハッシュ関数を適用した演算を行う第1のハッシュ演算手段をさらに備え、
    前記ポーリングレスポンス生成手段は、前記第1のハッシュ演算手段により演算された第1のハッシュ値を前記ポーリングレスポンスにさらに含ませ、
    前記情報処理装置は、
    前記取得手段により取得された前記乱数にハッシュ関数を適用した演算を行う第2のハッシュ演算手段と、
    前記第2のハッシュ演算手段により演算された第2のハッシュ値と、前記ポーリングレスポンスに含まれる第1のハッシュ値を照合する照合手段と
    をさらに備える
    請求項1に記載の通信システム。
  5. 通信を行う情報処理装置およびデバイスにより構成される通信システムの通信方法であって、
    前記情報処理装置は、
    1つ以上の鍵を記憶し、
    前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成し、
    前記識別子で識別される前記鍵を読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得する
    ステップを含み、
    前記デバイスは、
    乱数を生成し、
    1つ以上の鍵を記憶し、
    前記ポーリングリクエストに含まれる前記識別子に対応する鍵を読み出し、
    読み出された前記鍵で、生成された乱数を暗号化し、
    暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成する
    ステップを含む
    通信方法。
  6. デバイスと通信を行う情報処理装置であって、
    1つ以上の鍵を記憶する記憶手段と、
    前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成手段と、
    前記識別子で識別される前記鍵を前記記憶手段から読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得手段と
    を備える情報処理装置。
  7. 前記鍵は、第1の識別子と、前記第1の識別子に従属する第2の識別子により一意に識別され、
    前記記憶手段は、前記第1の識別子、前記第2の識別子、および前記鍵をそれぞれ関連付けて記憶する
    請求項6に記載の情報処理装置。
  8. 前記ポーリングリクエスト生成手段は、前記ポーリングリクエストに、前記識別子として、前記第1の識別子を含ませ、
    前記ポーリングレスポンスは、前記第2の識別子をさらに含み、
    前記取得手段は、前記ポーリングリクエストに含まれた第1の識別子と前記ポーリングレスポンスに含まれる前記第2の識別子から、前記鍵を特定し、前記記憶手段から読み出す
    請求項7に記載の情報処理装置。
  9. 前記取得手段により取得された前記乱数にハッシュ関数を適用した演算を行うハッシュ演算手段と、
    前記ハッシュ演算手段により演算されたハッシュ値と、前記ポーリングレスポンスに含まれるハッシュ値を照合する照合手段と
    をさらに備える
    請求項6に記載の情報処理装置。
  10. デバイスと通信を行う情報処理装置の通信方法であって、
    記憶手段に記憶されている1つ以上の鍵のうちから1つの鍵の読み出しを制御する読み出し制御ステップと
    前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成ステップと、
    前記識別子で識別される前記鍵を前記記憶手段から、前記読み出し制御ステップの制御により読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得ステップと
    を含む通信方法。
  11. デバイスと通信を行う情報処理装置を制御するコンピュータのプログラムであって、
    記憶手段に記憶されている1つ以上の鍵のうちから1つの鍵の読み出しを制御する読み出し制御ステップと
    前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成ステップと、
    前記識別子で識別される前記鍵を前記記憶手段から、前記読み出し制御ステップの制御により読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得ステップと
    を含むプログラム。
  12. デバイスと通信を行う情報処理装置を制御するコンピュータに、
    記憶手段に記憶されている1つ以上の鍵のうちから1つの鍵の読み出しを制御する読み出し制御ステップと
    前記鍵を識別する識別子を含めたポーリングリクエストを生成するポーリングリクエスト生成ステップと、
    前記識別子で識別される前記鍵を前記記憶手段から、前記読み出し制御ステップの制御により読み出し、その鍵で、前記ポーリングリクエストに対応して前記デバイスから供給されたポーリングレスポンスに含まれる暗号化されたデータを復号し、乱数を取得する取得ステップと
    を含む処理を実行させるプログラムを記録している記録媒体。
  13. 情報処理装置と通信を行うデバイスであって、
    乱数を生成する乱数生成手段と、
    1つ以上の鍵を記憶する記憶手段と、
    前記情報処理装置からのポーリングリクエストに含まれる前記鍵を識別するための識別子に対応する鍵を、前記記憶手段から読み出す読み出し手段と、
    前記読み出し手段により読み出された前記鍵で、前記乱数生成手段により生成された乱数を暗号化する暗号化手段と、
    前記暗号化手段により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成手段と
    を備えるデバイス。
  14. 前記鍵は、第1の識別子と、前記第1の識別子に従属する第2の識別子により一意に識別され、
    前記記憶手段は、前記第1の識別子、前記第2の識別子、および前記鍵をそれぞれ関連付けて記憶する
    請求項13に記載のデバイス。
  15. 前記ポーリングレスポンス生成手段は、前記ポーリングレスポンスに、前記第2の識別子をさらに含ませる
    請求項14に記載のデバイス。
  16. 前記乱数生成手段により生成された前記乱数にハッシュ関数を適用した演算を行うハッシュ演算手段をさらに備え、
    前記ポーリングレスポンス生成手段は、前記ハッシュ演算手段により演算されたハッシュ値を前記ポーリングレスポンスにさらに含ませる
    請求項13に記載のデバイス。
  17. 情報処理装置と通信を行うデバイスの通信方法であって、
    乱数を生成する乱数生成ステップと、
    前記情報処理装置からのポーリングリクエストに含まれる前記鍵を識別するための識別子に対応する鍵を、1つ以上の鍵が記憶されている記憶手段から読み出すための処理を制御する読み出し制御ステップと、
    前記読み出し制御ステップの処理により読み出しが制御された前記鍵で、前記乱数生成ステップの処理で生成された乱数を暗号化する暗号化ステップと、
    前記暗号化ステップの処理により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成ステップと
    を含む通信方法。
  18. 情報処理装置と通信を行うデバイスを制御するコンピュータのプログラムであって、
    乱数を生成する乱数生成ステップと、
    前記情報処理装置からのポーリングリクエストに含まれる前記鍵を識別するための識別子に対応する鍵を、1つ以上の鍵が記憶されている記憶手段から読み出すための処理を制御する読み出し制御ステップと、
    前記読み出し制御ステップの処理により読み出しが制御された前記鍵で、前記乱数生成ステップの処理で生成された乱数を暗号化する暗号化ステップと、
    前記暗号化ステップの処理により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成ステップと
    を含むプログラム。
  19. 情報処理装置と通信を行うデバイスを制御するコンピュータに、
    乱数を生成する乱数生成ステップと、
    前記情報処理装置からのポーリングリクエストに含まれる前記鍵を識別するための識別子に対応する鍵を、1つ以上の鍵が記憶されている記憶手段から読み出すための処理を制御する読み出し制御ステップと、
    前記読み出し制御ステップの処理により読み出しが制御された前記鍵で、前記乱数生成ステップの処理で生成された乱数を暗号化する暗号化ステップと、
    前記暗号化ステップの処理により暗号化された前記乱数のデータを含む前記ポーリングレスポンスを生成するポーリングレスポンス生成ステップと
    を含む処理を実行させるプログラムが記録されている記録媒体。
JP2006203703A 2006-07-26 2006-07-26 通信システムおよび通信方法、情報処理装置および方法、デバイス、プログラム、並びに記録媒体 Active JP4622951B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2006203703A JP4622951B2 (ja) 2006-07-26 2006-07-26 通信システムおよび通信方法、情報処理装置および方法、デバイス、プログラム、並びに記録媒体
EP07791333A EP2045956A1 (en) 2006-07-26 2007-07-26 Communication system and communication method
CN2007800010321A CN101351987B (zh) 2006-07-26 2007-07-26 通信系统和通信方法
US12/088,017 US8837725B2 (en) 2006-07-26 2007-07-26 Communication system and communication method
PCT/JP2007/064633 WO2008013212A1 (fr) 2006-07-26 2007-07-26 Système de communication et procédé de communication
KR1020087007210A KR101472142B1 (ko) 2006-07-26 2008-03-25 통신 시스템 및 통신 방법
HK09102391.2A HK1125234A1 (en) 2006-07-26 2009-03-12 Communication system and communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006203703A JP4622951B2 (ja) 2006-07-26 2006-07-26 通信システムおよび通信方法、情報処理装置および方法、デバイス、プログラム、並びに記録媒体

Publications (2)

Publication Number Publication Date
JP2008034971A true JP2008034971A (ja) 2008-02-14
JP4622951B2 JP4622951B2 (ja) 2011-02-02

Family

ID=38981523

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006203703A Active JP4622951B2 (ja) 2006-07-26 2006-07-26 通信システムおよび通信方法、情報処理装置および方法、デバイス、プログラム、並びに記録媒体

Country Status (7)

Country Link
US (1) US8837725B2 (ja)
EP (1) EP2045956A1 (ja)
JP (1) JP4622951B2 (ja)
KR (1) KR101472142B1 (ja)
CN (1) CN101351987B (ja)
HK (1) HK1125234A1 (ja)
WO (1) WO2008013212A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010171721A (ja) * 2009-01-22 2010-08-05 Fuji Electric Holdings Co Ltd Icカードシステム、その上位機器、プログラム
JP2010225055A (ja) * 2009-03-25 2010-10-07 Toshiba Corp 携帯可能電子装置の処理装置、携帯可能電子装置、及び携帯可能電子装置の処理システム
JP2011049944A (ja) * 2009-08-28 2011-03-10 Kddi Corp 情報通信システム、情報通信方法およびプログラム

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5112812B2 (ja) * 2007-10-19 2013-01-09 パナソニック株式会社 遠隔医療システム
KR101547696B1 (ko) * 2007-11-30 2015-08-26 삼성전자주식회사 근접 통신 네트워크에서 안전한 통신을 위한 시스템 및 방법
JP2009276916A (ja) * 2008-05-13 2009-11-26 Sony Corp 通信装置、通信方法、リーダライタ及び通信システム
US9106628B2 (en) * 2009-07-07 2015-08-11 Alcatel Lucent Efficient key management system and method
JP5521803B2 (ja) * 2010-06-10 2014-06-18 ソニー株式会社 通信装置、通信方法、及び、通信システム
DE102010041804A1 (de) * 2010-09-30 2012-04-05 Siemens Aktiengesellschaft Verfahren zur sicheren Datenübertragung mit einer VPN-Box
CN102857914A (zh) * 2011-06-28 2013-01-02 芯讯通无线科技(上海)有限公司 Nfc通信安全系统及nfc安全通信的方法和移动终端
US9237133B2 (en) * 2012-12-12 2016-01-12 Empire Technology Development Llc. Detecting matched cloud infrastructure connections for secure off-channel secret generation
US9152380B2 (en) 2013-03-12 2015-10-06 Qualcomm Incorporated Interrupt driven hardware random number generator
US9195857B2 (en) * 2013-09-30 2015-11-24 Infineon Technologies Ag Computational system
JP6232303B2 (ja) * 2014-01-31 2017-11-15 株式会社日立製作所 情報処理装置
US10169719B2 (en) * 2015-10-20 2019-01-01 International Business Machines Corporation User configurable message anomaly scoring to identify unusual activity in information technology systems
US10218698B2 (en) * 2015-10-29 2019-02-26 Verizon Patent And Licensing Inc. Using a mobile device number (MDN) service in multifactor authentication
US11128452B2 (en) * 2017-03-25 2021-09-21 AVAST Software s.r.o. Encrypted data sharing with a hierarchical key structure
US10616055B2 (en) * 2018-03-06 2020-04-07 Accenture Global Solutions Limited Hash based device configuration management

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60208137A (ja) * 1984-03-31 1985-10-19 Toshiba Corp デ−タ処理方式
JPS63232539A (ja) * 1987-03-20 1988-09-28 Hitachi Ltd コ−ドブツク暗号システム
JPS6481087A (en) * 1987-09-22 1989-03-27 Hitachi Maxell Ic card data transmission system
JPH04137840A (ja) * 1990-09-28 1992-05-12 Toshiba Corp 秘匿通信システム
JPH08202262A (ja) * 1995-01-30 1996-08-09 Oki Electric Ind Co Ltd 信号処理装置および信号処理方法
WO2002076011A1 (fr) * 2001-03-19 2002-09-26 Yozan Inc. Systeme de communication cryptee

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1990000781A1 (en) * 1988-07-13 1990-01-25 Matsushita Electric Industrial Co., Ltd. Communication equipment
US5729537A (en) * 1996-06-14 1998-03-17 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for providing anonymous data transfer in a communication system
US20030021418A1 (en) * 2001-03-19 2003-01-30 Kunio Arakawa Cryptogram communication system
JP2003082903A (ja) 2001-06-28 2003-03-19 Sony Corp 通信システム、認証通信装置、制御装置及び通信方法
US7065647B2 (en) * 2001-06-28 2006-06-20 Sony Corporation Communication system, authentication communication device, control apparatus, and communication method
JP2004072214A (ja) * 2002-08-02 2004-03-04 Sharp Corp 電子印鑑、icカード、本人認証システムおよび携帯機器
US7231518B1 (en) * 2003-03-28 2007-06-12 Cisco Technology, Inc. System and method for authenticating a storage device for use with driver software in a storage network
CN100504916C (zh) * 2004-12-20 2009-06-24 华中科技大学 一种安全防伪系统
JP3695464B2 (ja) 2005-03-02 2005-09-14 ソニー株式会社 近接通信方法および通信装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60208137A (ja) * 1984-03-31 1985-10-19 Toshiba Corp デ−タ処理方式
JPS63232539A (ja) * 1987-03-20 1988-09-28 Hitachi Ltd コ−ドブツク暗号システム
JPS6481087A (en) * 1987-09-22 1989-03-27 Hitachi Maxell Ic card data transmission system
JPH04137840A (ja) * 1990-09-28 1992-05-12 Toshiba Corp 秘匿通信システム
JPH08202262A (ja) * 1995-01-30 1996-08-09 Oki Electric Ind Co Ltd 信号処理装置および信号処理方法
WO2002076011A1 (fr) * 2001-03-19 2002-09-26 Yozan Inc. Systeme de communication cryptee

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010171721A (ja) * 2009-01-22 2010-08-05 Fuji Electric Holdings Co Ltd Icカードシステム、その上位機器、プログラム
JP2010225055A (ja) * 2009-03-25 2010-10-07 Toshiba Corp 携帯可能電子装置の処理装置、携帯可能電子装置、及び携帯可能電子装置の処理システム
JP2011049944A (ja) * 2009-08-28 2011-03-10 Kddi Corp 情報通信システム、情報通信方法およびプログラム

Also Published As

Publication number Publication date
CN101351987B (zh) 2011-06-29
JP4622951B2 (ja) 2011-02-02
KR101472142B1 (ko) 2014-12-24
EP2045956A1 (en) 2009-04-08
WO2008013212A1 (fr) 2008-01-31
US8837725B2 (en) 2014-09-16
CN101351987A (zh) 2009-01-21
HK1125234A1 (en) 2009-07-31
US20100150347A1 (en) 2010-06-17
KR20090041358A (ko) 2009-04-28

Similar Documents

Publication Publication Date Title
JP4622951B2 (ja) 通信システムおよび通信方法、情報処理装置および方法、デバイス、プログラム、並びに記録媒体
JP5205720B2 (ja) 通信システムおよび通信方法、デバイス、情報処理装置、並びにプログラム
US9973479B2 (en) Communication system and communication method for communication based on encryption capabilities of device
US20060050877A1 (en) Information processing apparatus and method, program, and recording medium
EP1667077B1 (en) Data storage apparatus, data processing method, recording medium, and program
KR100627989B1 (ko) 정보 처리 시스템 및 데이터 기억 장치 및 정보 처리 장치
JP4987939B2 (ja) 保安モードに応じる手動型rfid保安方法
US20100001840A1 (en) Method and system for authenticating rfid tag
US20050246546A1 (en) Access method
EP2120386B1 (en) Communication device, communication method, reader/writer, and communication system
US20110279235A1 (en) Radio frequency identification (rfid) tag and interrogator for supporting normal mode and secure mode, and operation method thereof
JP7099461B2 (ja) 無線通信装置、無線通信方法および無線通信システム
JP2006139490A (ja) 印刷処理システムおよび印刷処理方法、情報処理装置および情報処理方法、印刷サーバ装置および印刷処理方法、並びにプログラム
JP4774907B2 (ja) カード通信システム,リーダライタ及びicカード
JP2006101213A (ja) 情報処理装置および方法、プログラム並びに記録媒体
JP5908869B2 (ja) 通信装置
KR101470053B1 (ko) 일반모드 및 보안모드를 지원하는 rfid 태그, 인터로게이터, 및 그의 동작 방법
KR20100005658A (ko) Rfid 태그 인증 방법 및 시스템

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100812

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100915

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101005

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101018

R151 Written notification of patent or utility model registration

Ref document number: 4622951

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131112

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250