JP2024076259A - 通信システム、電子情報記憶媒体、icチップ、icカード、利用開始位置の再同期方法、及びプログラム - Google Patents
通信システム、電子情報記憶媒体、icチップ、icカード、利用開始位置の再同期方法、及びプログラム Download PDFInfo
- Publication number
- JP2024076259A JP2024076259A JP2022187755A JP2022187755A JP2024076259A JP 2024076259 A JP2024076259 A JP 2024076259A JP 2022187755 A JP2022187755 A JP 2022187755A JP 2022187755 A JP2022187755 A JP 2022187755A JP 2024076259 A JP2024076259 A JP 2024076259A
- Authority
- JP
- Japan
- Prior art keywords
- electronic information
- start position
- information storage
- random number
- number sequence
- 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.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 120
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000004364 calculation method Methods 0.000 claims description 50
- 230000005540 biological transmission Effects 0.000 claims description 19
- 238000010586 diagram Methods 0.000 description 10
- 239000000284 extract Substances 0.000 description 8
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Landscapes
- Storage Device Security (AREA)
Abstract
【課題】乱数列における利用開始位置を適宜同期させることが可能な通信システム、電子情報記憶媒体、ICチップ、ICカード、利用開始位置の再同期方法、及びプログラムを提供する。【解決手段】ICカードC2は、ICカードC2が記憶する利用開始位置がICカードC1からの利用開始位置より大きい場合に、ICカードC2が記憶する利用開始位置を示す位置情報をICカードC1へ送信する一方、ICカードC2が記憶する利用開始位置がICカードC1からの利用開始位置より小さい場合に、ICカードC2が記憶する利用開始位置をICカードC1からの利用開始位置に更新する。【選択図】図3
Description
本発明は、複数のIC(Integrated Circuit)カード間で鍵データを共有するシステム及び方法等の技術分野に関する。
従来、複数のICカード間で通信を行う場合に通信データ(通信文)をDESやAES等の共通鍵暗号方式により暗号化することが知られている。共通鍵暗号方式では、複数のICカードが暗号演算を実行するためのアルゴリズムと、その暗号演算に利用される鍵データとを共有する必要がある。例えば特許文献1に開示されるように、2つの装置が共通の初期解を有し、初期解から共通のタイミングで変化する同一の解を生成することで鍵データを共有することができる。
ところで、複数のICカードが同一の鍵データを生成する方法として、例えば、各ICカードが同一の乱数列を予め記憶し、通信データの暗号化の際に当該乱数列の所定の利用開始位置から所定長の乱数列を取り出すことで鍵データを生成することが考えられる。この場合、各ICカードが乱数列のどの位置(利用開始位置)から所定長の乱数列を取り出すかをICカード間で一致させる必要があるため、各ICカードが利用開始位置を記憶する必要がある。しかしながら、各ICカードに記憶された利用開始位置は、エラー発生などの要因により変化してしまう可能性がある。
そこで、本発明は、上記点に鑑みてなされたものであり、乱数列における利用開始位置を適宜同期させることが可能な通信システム、電子情報記憶媒体、ICチップ、ICカード、利用開始位置の再同期方法、及びプログラムを提供することを課題とする。
上記課題を解決するために、請求項1に記載の発明は、互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおいて、それぞれの前記電子情報記憶媒体は、鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、を備え、前記複数の電子情報記憶媒体のうち第1の電子情報記憶媒体は、前記記憶手段に記憶されている利用開始位置を示す位置情報を、前記複数の電子情報記憶媒体のうち第2の電子情報記憶媒体へ送信する送信手段を更に備え、前記第2の電子情報記憶媒体は、前記第1の電子情報記憶媒体から送信された前記位置情報を受信する受信手段と、前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較する比較手段と、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記第1の電子情報記憶媒体へ送信する送信手段と、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新する更新手段と、を更に備えることを特徴とする。
請求項2に記載の発明は、請求項1に記載の通信システムにおいて、前記第1の電子情報記憶媒体は、前記第2の電子情報記憶媒体から送信された前記位置情報を受信する受信手段と、前記記憶手段に記憶されている利用開始位置を前記受信された位置情報に示される利用開始位置に更新する更新手段と、を更に備えることを特徴とする。
請求項3に記載の発明は、請求項1に記載の通信システムにおいて、前記第1の電子情報記憶媒体の前記送信手段は、前記位置情報を、前記第2の電子情報記憶媒体、及び前記複数の電子情報記憶媒体のうち第3の電子情報記憶媒体へ送信し、前記第2の電子情報記憶媒体の前記更新手段は、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記位置情報を、前記第1の電子情報記憶媒体、及び前記第3の電子情報記憶媒体へ送信することを特徴とする。
請求項4に記載の発明は、請求項3に記載の通信システムにおいて、前記第1の電子情報記憶媒体及び前記第3の電子情報記憶媒体は、それぞれ、前記第2の電子情報記憶媒体から送信された前記位置情報を受信する受信手段と、前記記憶手段に記憶されている利用開始位置を前記受信された位置情報に示される利用開始位置に更新する更新手段と、を更に備えることを特徴とする。
請求項5に記載の発明は、請求項1に記載の通信システムにおいて、前記第1の電子情報記憶媒体の前記送信手段は、前記記憶手段に記憶されている利用開始位置を示す位置情報、及び当該利用開始位置から所定長分の乱数列を鍵データとして利用した前記暗号演算により暗号化された暗号文を、前記第2の電子情報記憶媒体へ送信し、前記第2の電子情報記憶媒体の前記受信手段は、前記第1の電子情報記憶媒体から送信された前記位置情報、及び前記暗号文を受信し、前記第2の電子情報記憶媒体の前記演算手段は、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記更新手段により更新された利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行することを特徴とする。
請求項6に記載の発明は、請求項1に記載の通信システムにおいて、前記第1の電子情報記憶媒体の前記送信手段は、前記記憶手段に記憶されている利用開始位置を示す位置情報、及び当該利用開始位置から所定長分の乱数列を鍵データとして利用した前記暗号演算により暗号化された暗号文を、前記第2の電子情報記憶媒体、及び前記複数の電子情報記憶媒体のうち第3の電子情報記憶媒体へ送信し、前記第2の電子情報記憶媒体の前記送信手段は、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記位置情報、及び前記暗号文を、前記第1の電子情報記憶媒体、及び前記第3の電子情報記憶媒体へ送信することを特徴とする。
請求項7に記載の発明は、互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおいて、それぞれの前記電子情報記憶媒体は、鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、を備え、前記複数の電子情報記憶媒体のうち第1の電子情報記憶媒体は、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した前記暗号演算により暗号化された暗号文を、前記複数の電子情報記憶媒体のうち第2の電子情報記憶媒体へ送信する送信手段を更に備え、前記第2の電子情報記憶媒体は、前記第1の電子情報記憶媒体から送信された前記暗号文を受信する受信手段を更に備え、前記第2の電子情報記憶媒体の前記演算手段は、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行し、前記第2の電子情報記憶媒体は、前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記第1の電子情報記憶媒体へ送信する送信手段と、前記未だ利用されていない所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新する更新手段と、を更に備えることを特徴とする。
請求項8に記載の発明は、請求項7に記載の通信システムにおいて、前記第1の電子情報記憶媒体は、前記第2の電子情報記憶媒体から送信された前記乱数列を受信する受信手段と、前記記憶手段に記憶されている乱数列から、前記受信された乱数列と一致する部分を特定する特定手段と、前記特定された部分に基づいて、前記記憶手段に記憶されている利用開始位置を更新する更新手段と、を更に備えることを特徴とする。
請求項9に記載の発明は、互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおける1の電子情報記憶媒体であって、鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、前記複数の電子情報記憶媒体のうち他の電子情報記憶媒体の記憶手段に記憶されている利用開始位置を示す位置情報を、当該他の電子情報記憶媒体から受信する受信手段と、前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較する比較手段と、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記他の電子情報記憶媒体へ送信する送信手段と、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新する更新手段と、を備えることを特徴とする。
請求項10に記載の発明は、互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおける1の電子情報記憶媒体であって、鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記複数の電子情報記憶媒体のうち他の電子情報記憶媒体の記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した暗号演算により暗号化された暗号文を、当該他の電子情報記憶媒体から受信する受信手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行する演算手段と、前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記他の電子情報記憶媒体へ送信する送信手段と、前記所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新する更新手段と、を備えることを特徴とする。
請求項11に記載の発明は、互いに通信可能な複数のICチップを備える通信システムにおける1のICチップであって、鍵データに利用される乱数列であって前記ICチップ間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、前記複数のICチップのうち他のICチップの記憶手段に記憶されている利用開始位置を示す位置情報を、当該他のICチップから受信する受信手段と、前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較する比較手段と、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記他のICチップへ送信する送信手段と、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新する更新手段と、を備えることを特徴とする。
請求項12に記載の発明は、互いに通信可能な複数のICチップを備える通信システムにおける1のICチップであって、鍵データに利用される乱数列であって前記ICチップ間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記複数のICチップのうち他のICチップの記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した暗号演算により暗号化された暗号文を、当該他のICチップから受信する受信手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行する演算手段と、前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記他のICチップへ送信する送信手段と、前記所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新する更新手段と、を備えることを特徴とする。
請求項13に記載の発明は、互いに通信可能な複数のICカードを備える通信システムにおける1のICカードであって、鍵データに利用される乱数列であって前記ICカード間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、前記複数のICカードのうち他のICカードの記憶手段に記憶されている利用開始位置を示す位置情報を、当該他のICカードから受信する受信手段と、前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較する比較手段と、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記他のICカードへ送信する送信手段と、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新する更新手段と、を備えることを特徴とする。
請求項14に記載の発明は、互いに通信可能な複数のICカードを備える通信システムにおける1のICカードであって、鍵データに利用される乱数列であって前記ICカード間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記複数のICカードのうち他のICカードの記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した暗号演算により暗号化された暗号文を、当該他のICカードから受信する受信手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行する演算手段と、前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記他のICカードへ送信する送信手段と、前記所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新する更新手段と、を備えることを特徴とする。
請求項15に記載の発明は、互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおいて実行される利用開始位置の再同期方法であって、それぞれの前記電子情報記憶媒体は、鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、を備え、前記再同期方法は、前記複数の電子情報記憶媒体のうち第1の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置を示す位置情報を、前記複数の電子情報記憶媒体のうち第2の電子情報記憶媒体へ送信するステップと、前記第2の電子情報記憶媒体が、前記第1の電子情報記憶媒体から送信された前記位置情報を受信するステップと、前記第2の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較するステップと、前記第2の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記第1の電子情報記憶媒体へ送信するステップと、前記第2の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新するステップと、を含むことを特徴とする。
請求項16に記載の発明は、互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおいて実行される利用開始位置の再同期方法であって、それぞれの前記電子情報記憶媒体は、鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、を備え、前記再同期方法は、前記複数の電子情報記憶媒体のうち第1の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した前記暗号演算により暗号化された暗号文を、前記複数の電子情報記憶媒体のうち第2の電子情報記憶媒体へ送信するステップと、前記第2の電子情報記憶媒体が、前記第1の電子情報記憶媒体から送信された前記暗号文を受信するステップと、前記第2の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行するステップと、前記第2の電子情報記憶媒体が、前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記第1の電子情報記憶媒体へ送信するステップと、前記第2の電子情報記憶媒体が、前記未だ利用されていない所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新するステップと、を含むことを特徴とする。
請求項17に記載の発明は、互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおける1の電子情報記憶媒体に含まれるコンピュータに、鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶手段に記憶するステップと、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行するステップと、前記複数の電子情報記憶媒体のうち他の電子情報記憶媒体の記憶手段に記憶されている利用開始位置を示す位置情報を、当該他の電子情報記憶媒体から受信するステップと、前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較するステップと、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記他の電子情報記憶媒体へ送信するステップと、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新するステップと、を実行させることを特徴とする。
請求項18に記載の発明は、互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおける1の電子情報記憶媒体に含まれるコンピュータに、鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶手段に記憶するステップと、前記複数の電子情報記憶媒体のうち他の電子情報記憶媒体の記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した暗号演算により暗号化された暗号文を、当該他の電子情報記憶媒体から受信するステップと、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行するステップと、前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記他の電子情報記憶媒体へ送信するステップと、前記所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新するステップと、を実行させることを特徴とする。
本発明によれば、複数の電子情報記憶媒体間で乱数列における利用開始位置を適宜同期させることができる。
以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施の形態は、駆動制御される制御対象物に利用される通信システムに対して本発明を適用した場合の実施の形態である。制御対象物の例として、車両のドア、住宅の扉などが挙げられるが特に限定されるものではない。
[1.通信システムSの概要構成]
先ず、図1等を参照して、本実施形態に係る通信システムSの概要構成について説明する。図1は、本実施形態に係る通信システムSの概要構成例を示す図である。図1に示すように、通信システムSは、通信デバイスD、及びICカードCn(n=1,2,3・・・)(電子情報記憶媒体の一例)を備えて構成される。通信デバイスDは、例えば、ユーザにより所持される。通信デバイスDは、ICカードCnとの間で接触通信または非接触通信を行うことが可能になっており、ICカードCnに対して制御指令を与えることができる。なお、通信デバイスDとICカードCnとの通信は、セキュア通信路を介して行われることが望ましい。セキュア通信路は、暗号化通信プロトコルを用いて安全性が確保された通信路であってもよいし、専用回線を用いた通信路であってもよい。
先ず、図1等を参照して、本実施形態に係る通信システムSの概要構成について説明する。図1は、本実施形態に係る通信システムSの概要構成例を示す図である。図1に示すように、通信システムSは、通信デバイスD、及びICカードCn(n=1,2,3・・・)(電子情報記憶媒体の一例)を備えて構成される。通信デバイスDは、例えば、ユーザにより所持される。通信デバイスDは、ICカードCnとの間で接触通信または非接触通信を行うことが可能になっており、ICカードCnに対して制御指令を与えることができる。なお、通信デバイスDとICカードCnとの通信は、セキュア通信路を介して行われることが望ましい。セキュア通信路は、暗号化通信プロトコルを用いて安全性が確保された通信路であってもよいし、専用回線を用いた通信路であってもよい。
ICカードCnは、例えば、制御対象物On(n=1,2,3・・・)内またはその近傍位置に着脱可能に設置され、制御対象物Onの駆動制御に用いられる。例えば、ICカードC1は、通信デバイスDからの制御指令を受信すると、制御指令に示される制御内容に応じたコマンドを制御対象物O1のコントローラへ送信する。これにより、制御対象物O1は駆動する。さらに、ICカードC1は、制御対象物の制御内容を示すデータ(平文)を後述の暗号演算により暗号化し、暗号化されたデータを含む通信文をICカードC2及びC3へ送信する。ICカードC2及びC3は、ICカードC1からの通信文を受信すると、通信文に含まれるデータを後述の復号演算により復号し、復号されたデータに示される制御内容に応じたコマンドを制御対象物O2及びO3のコントローラへ送信する。これにより、制御対象物O2及びO3は駆動する。なお、ICカードCnは、例えば、eUICC(embedded Universal Integrated Circuit Card)(ICチップの一例)として、制御対象物Onに固定的に設置されてもよい。eUICCは、電子情報記憶媒体の一例でもある。
図2は、ICカードCnの概要構成例を示す図である。図2に示すように、ICカードCnは、それぞれ、I/O回路1、RAM(Random Access Memory)2、NVM(Nonvolatile Memory)3(記憶手段の一例)、及びCPU(Central Processing Unit)4等を備えて構成される。なお、ICカードCnは、ROM(Read Only Memory)を備えてもよい。I/O回路1は、アンテナを備えてもよいICチップの場合、外部のアンテナが利用される。ICカードCnは、I/O回路1を介して互いに接触通信または非接触通信を行うことが可能になっている。また、ICカードCnは、I/O回路1を介して通信デバイスDとの間で接触通信または非接触通信を行うことが可能になっている。さらに、ICカードCnは、I/O回路1を介して制御対象物On内のコントローラとの間で接触通信または非接触通信を行うことが可能になっている。なお、接触通信の例として、SPI(Serial Peripheral Interface)、I2C(Inter-Integrated Circuit)、ISO7816のインターフェースを介した通信などが挙げられる。非接触通信の例として、例えば、NFC(Near field communication)、Bluetooth(登録商標)、UWB(Ultra Wide Band)の技術を用いた近距離無線通信などが挙げられる。
NVM3には、例えばフラッシュメモリ等の不揮発性メモリが適用される。なお、NVM3は、「Electrically Erasable Programmable Read-Only Memory」であってもよい。NVM3には、オペレーティングシステム及びアプリケーション等の各種プログラム(本発明のプログラムを含む)が記憶される。アプリケーションには、暗号演算または復号演算の処理を規定する暗号演算プログラム、及びICカードCn間で利用開始位置の再同期を図る(つまり、利用開始位置を一致させる)処理を規定する再同期プログラムが含まれる。なお、暗号演算プログラムには、前の演算結果が後の演算に影響を及ぼさない暗号アルゴリズムが使用される。例えば、平文の1バイトに対して鍵データ1バイトを排他的論理和するといったものである。また、NVM3には、鍵データに利用される乱数列であってICカードCn間で共有される乱数列(同一の乱数列)と、当該乱数列における利用開始位置とが記憶される。
ここで、乱数列は、ICカードCnのそれぞれに予め配布され、NVM3に書き込まれる。ICカードCnにおいて暗号演算または復号演算の際に、NVM3に記憶されている利用開始位置から所定長分の乱数列が鍵データとして取り出されて利用される。つまり、利用開始位置は、乱数列の取り出し開始位置である。一度利用された鍵データ(つまり、乱数列)は、再利用されずに捨てられ(使い捨て)、次回の暗号演算または復号演算の際には、前回捨てられた乱数列の次の利用開始位置から所定長分の乱数列が鍵データとして取り出されて利用される。これにより、利用開始位置は、鍵データが利用される度に更新される。しかし、利用開始位置は、何れかのICカードCnにおいてエラー発生などの要因により変化してしまう可能性があるため、ICカードCn間で再同期を図る必要がある。
CPU4は、暗号演算プログラムを実行することにより、本発明における演算手段として機能し、NVM3に記憶されている利用開始位置から所定長分の乱数列を鍵データとして取り出して利用し暗号演算または復号演算の処理を実行する。さらに、CPU4は、暗号演算プログラムを実行することにより、本発明における送信手段、受信手段、比較手段、及び更新手段として機能することで、ICカードCn間で利用開始位置の再同期を図る処理を実行する。利用開始位置の再同期方法には、以下に説明するように、第1の再同期方法、及び第2の再同期方法がある。
(第1の再同期方法)
例えば、ICカードC1のCPU4は、NVM3に記憶されている利用開始位置を示す位置情報を含む通信文をICカードC2へ送信する。或いは、ICカードC1のCPU4は、NVM3に記憶されている利用開始位置を示す位置情報に加えて、当該利用開始位置から所定長分の乱数列(例えば、通信文と同じ長さの乱数列)を鍵データとして取り出して利用した暗号演算により暗号化された暗号文を含む通信文をICカードC2へ送信する。なお、ICカードC1のCPU4は、上記通信文をICカードC2及びC3へ送信してもよい。
例えば、ICカードC1のCPU4は、NVM3に記憶されている利用開始位置を示す位置情報を含む通信文をICカードC2へ送信する。或いは、ICカードC1のCPU4は、NVM3に記憶されている利用開始位置を示す位置情報に加えて、当該利用開始位置から所定長分の乱数列(例えば、通信文と同じ長さの乱数列)を鍵データとして取り出して利用した暗号演算により暗号化された暗号文を含む通信文をICカードC2へ送信する。なお、ICカードC1のCPU4は、上記通信文をICカードC2及びC3へ送信してもよい。
ICカードC2のCPU4は、ICカードC1からの通信文を受信すると、NVM3に記憶されている利用開始位置と、通信文に含まれる位置情報に示される利用開始位置とを比較する。かかる比較の結果、NVM3に記憶されている利用開始位置が、通信文に含まれる位置情報に示される利用開始位置より大きい場合に、ICカードC2のCPU4は、NVM3に記憶されている利用開始位置を示す位置情報を含む通信文をICカードC1へ送信する。
ICカードC1のCPU4は、ICカードC2からの通信文を受信すると、NVM3に記憶されている利用開始位置を、通信文に含まれる位置情報に示される利用開始位置に更新する。これにより、利用開始位置が再同期される。
一方、NVM3に記憶されている利用開始位置が、通信文に含まれる位置情報に示される利用開始位置より小さい場合に、ICカードC2のCPU4は、NVM3に記憶されている利用開始位置を、通信文に含まれる位置情報に示される利用開始位置に更新する。ここで、通信文に暗号文が含まれている場合、ICカードC2のCPU4は、当該更新された利用開始位置から所定長分の乱数列(例えば、通信文と同じ長さの乱数列)を鍵データとして取り出して利用し暗号文を復号するための復号演算を実行する。
(第2の再同期方法)
例えば、ICカードC1のCPU4は、NVM3に記憶されている利用開始位置から所定長分の乱数列(例えば、通信文と同じ長さの乱数列)を鍵データとして取り出して利用した暗号演算により暗号化された暗号文を含む通信文をICカードC2へ送信する。
例えば、ICカードC1のCPU4は、NVM3に記憶されている利用開始位置から所定長分の乱数列(例えば、通信文と同じ長さの乱数列)を鍵データとして取り出して利用した暗号演算により暗号化された暗号文を含む通信文をICカードC2へ送信する。
ICカードC2のCPU4は、通信文を受信すると、NVM3に記憶されている利用開始位置から所定長分の乱数列を鍵データとして取り出して利用し暗号文を復号するための復号演算を実行する。そして、ICカードC2のCPU4は、暗号文の復号に失敗した場合に、NVM3に記憶されている乱数列において未だ利用されていない所定長分の乱数列(つまり、任意のデータ長分の乱数列)を取り出し当該乱数列を含む通信文をICカードC1へ送信するとともに、当該所定長分に基づいてNVM3に記憶されている利用開始位置を更新する。
ICカードC1のCPU4は、ICカードC2からの通信文を受信すると、NVM3に記憶されている乱数列から、通信文に含まれる乱数列と一致する部分を特定し、当該特定された部分に基づいて、NVM3に記憶されている利用開始位置を更新する。これにより、利用開始位置が再同期される。
[2.通信システムSの動作]
次に、通信システムSの動作について、実施例1と実施例2に分けて説明する。
次に、通信システムSの動作について、実施例1と実施例2に分けて説明する。
(実施例1)
先ず、図3及び図4を参照して、実施例1における通信システムSの動作について説明する。実施例1は、第1の再同期方法が実行される場合の実施例である。なお、実施例1に示すICカードC1~C3は、それぞれ、本発明の第1~第3の電子情報記憶媒体の何れかの一例である。図3は、実施例1においてICカードC1~C3のそれぞれのCPU4の処理を示すシーケンス図である。図3に示すシーケンスは、定期的または不定期に実施されてもよいし、通信デバイスDからの制御指令がICカードC1により受信されたときに実施されてもよい。図4(A)~(C)は、ICカードC1~C3のそれぞれのNVM3に記憶されている乱数列、及び当該乱数列における利用開始位置の一例を示す図である。なお、図4(A)~(C)に示すように、更新前においてICカードC1~C3の乱数列における利用開始位置P11~P13は、それぞれ、“8”(バイト)、“0”(バイト)、及び“16”(バイト)となっており、位置ずれが発生しているものとする。
先ず、図3及び図4を参照して、実施例1における通信システムSの動作について説明する。実施例1は、第1の再同期方法が実行される場合の実施例である。なお、実施例1に示すICカードC1~C3は、それぞれ、本発明の第1~第3の電子情報記憶媒体の何れかの一例である。図3は、実施例1においてICカードC1~C3のそれぞれのCPU4の処理を示すシーケンス図である。図3に示すシーケンスは、定期的または不定期に実施されてもよいし、通信デバイスDからの制御指令がICカードC1により受信されたときに実施されてもよい。図4(A)~(C)は、ICカードC1~C3のそれぞれのNVM3に記憶されている乱数列、及び当該乱数列における利用開始位置の一例を示す図である。なお、図4(A)~(C)に示すように、更新前においてICカードC1~C3の乱数列における利用開始位置P11~P13は、それぞれ、“8”(バイト)、“0”(バイト)、及び“16”(バイト)となっており、位置ずれが発生しているものとする。
図3において、ICカードC1は、NVM3に記憶されている利用開始位置P11から所定長(例えば、8バイト)分の乱数列を鍵データとして取り出して利用した暗号演算により平文を暗号化する(ステップS1)。これにより、暗号文が生成される。なお、図3に示すシーケンスが通信デバイスDからの制御指令の受信をトリガとして開始された場合、暗号化される平文は制御対象物の制御内容を示すデータとなる。次いで、ICカードC1は、NVM3に記憶されている利用開始位置P11を示す位置情報、及びステップS1で暗号化された暗号文を含む通信文をICカードC2及びC3へ送信する(ステップS2)。
ICカードC2は、ICカードC1からの通信文を受信すると、NVM3に記憶されている利用開始位置P12と、通信文に含まれる位置情報に示される利用開始位置P11とを比較する(ステップS3)。ここで、ICカードC2のNVM3に記憶されている利用開始位置P12が、通信文に含まれる位置情報に示される利用開始位置P11(つまり、ICカードC1のNVM3に記憶されている利用開始位置)より小さくなっている。そのため、ICカードC2は、NVM3に記憶されている利用開始位置P12を、通信文に含まれる位置情報に示される利用開始位置P11に更新(図4(B)に示す更新(a))する(ステップS4)。次いで、ICカードC2は、ステップS4で更新された利用開始位置P11から所定長(例えば、8バイト)分の乱数列を鍵データとして取り出して利用する復号演算により、通信文に含まれる暗号文を復号する(ステップS5)。
一方、ICカードC3は、ICカードC1からの通信文を受信すると、NVM3に記憶されている利用開始位置P13と、通信文に含まれる位置情報に示される利用開始位置P11とを比較する(ステップS6)。ここで、ICカードC3のNVM3に記憶されている利用開始位置P13が、通信文に含まれる位置情報に示される利用開始位置P11より大きくなっている。そのため、ICカードC3は、NVM3に記憶されている利用開始位置P13を示す位置情報を含む通信文をICカードC1及びC2へ送信する(ステップS7)。
ICカードC1及びC2は、それぞれ、ICカードC3からの通信文を受信すると、NVM3に記憶されている利用開始位置P11,P12を、通信文に含まれる位置情報に示される利用開始位置P13に更新(図4(A),(B)に示す更新(b))する(ステップS8,S9)。これにより、ICカードC1~C3間で利用開始位置が再同期される。
(実施例2)
次に、図5及び図6を参照して、実施例2における通信システムSの動作について説明する。実施例2は、第2の再同期方法が実行される場合の実施例である。実施例2では、ICカードC1とICカードC2とが1対1で通信する場合を例にとるものとする。図5は、実施例2においてICカードC1及びC2のそれぞれのCPU4の処理を示すシーケンス図である。図5に示すシーケンスは、定期的または不定期に実施されてもよいし、通信デバイスDからの制御指令がICカードC1により受信されたときに実施されてもよい。図6は、ICカードC1及びC2のそれぞれのNVM3に記憶されている乱数列、及び当該乱数列における利用開始位置の一例を示す図である。なお、図6(A),(B)に示すように、更新前においてICカードC1及びC2の乱数列における利用開始位置P21,P22は、それぞれ、“0(バイト)”、及び“16”(バイト)となっており、位置ずれが発生しているものとする。
次に、図5及び図6を参照して、実施例2における通信システムSの動作について説明する。実施例2は、第2の再同期方法が実行される場合の実施例である。実施例2では、ICカードC1とICカードC2とが1対1で通信する場合を例にとるものとする。図5は、実施例2においてICカードC1及びC2のそれぞれのCPU4の処理を示すシーケンス図である。図5に示すシーケンスは、定期的または不定期に実施されてもよいし、通信デバイスDからの制御指令がICカードC1により受信されたときに実施されてもよい。図6は、ICカードC1及びC2のそれぞれのNVM3に記憶されている乱数列、及び当該乱数列における利用開始位置の一例を示す図である。なお、図6(A),(B)に示すように、更新前においてICカードC1及びC2の乱数列における利用開始位置P21,P22は、それぞれ、“0(バイト)”、及び“16”(バイト)となっており、位置ずれが発生しているものとする。
図5において、ICカードC1は、NVM3に記憶されている利用開始位置P21から所定長(例えば、8バイト)分の乱数列を鍵データとして取り出して利用した暗号演算により平文を暗号化する(ステップS11)。これにより、暗号文が生成される。なお、図5に示すシーケンスが通信デバイスDからの制御指令の受信をトリガとして開始された場合、暗号化される平文は制御対象物の制御内容を示すデータとなる。次いで、ICカードC1は、ステップS11で暗号化された暗号文を含む通信文をICカードC2へ送信する(ステップS12)。
ICカードC2は、ICカードC1(他の電子情報記憶媒体の一例)からの通信文を受信すると、NVM3に記憶されている利用開始位置P22から所定長分の乱数列を鍵データとして取り出して利用し暗号文を復号するための復号演算を実行する(ステップS13)。この場合、ICカードC1とICカードC2との間で利用開始位置は同期していないので、暗号文の復号に失敗する。そのため、ICカードC2は、NVM3に記憶されている乱数列において未だ利用されていない所定長(例えば、8バイト)分の乱数列を送信データとして設定する(ステップS14)。
次いで、ICカードC2は、ステップS14における所定長(例えば、8バイト)分に基づいて、NVM3に記憶されている利用開始位置P22を利用開始位置P23に更新(図6(B)に示す更新(a))する(ステップS15)。つまり、送信データとして設定された乱数列の末尾バイトまでが利用済みとして設定され、利用開始位置P22から8バイト分進められることで、利用開始位置P23に更新される。次いで、ICカードC2は、ICカードC2は、ステップS14で設定された送信データを含む通信文をICカードC1へ送信する(ステップS16)。
ICカードC1は、ICカードC2からの通信文を受信すると、NVM3に記憶されている乱数列から、通信文に含まれる送信データ(つまり、乱数列)と一致する部分を特定する(ステップS17)。例えば、未使用乱数列の先頭位置から検索することで当該部分が特定される。次いで、ICカードC1は、ステップS17で特定された部分に基づいて、NVM3に記憶されている利用開始位置P21を利用開始位置P23に更新(図6(A)に示す更新(b))する(ステップS18)。つまり、送信データの末尾バイトまでが利用済みとして設定されることで、利用開始位置P23に更新される。これにより、これにより、ICカードC1及びC2間で利用開始位置が再同期される。
以上説明したように、実施例1によれば、ICカードC2は、ICカードC2が記憶する利用開始位置がICカードC1からの利用開始位置より大きい場合に、ICカードC2が記憶する利用開始位置を示す位置情報をICカードC1へ送信する一方、ICカードC2が記憶する利用開始位置がICカードC1からの利用開始位置より小さい場合に、ICカードC2が記憶する利用開始位置をICカードC1からの利用開始位置に更新(変更)するように構成したので、エラー発生などの要因により利用開始位置が変化してしまう場合であっても、複数のICカードCn間で乱数列における利用開始位置を適宜同期させることができる。また、実施例2によれば、ICカードC2は、ICカードC1からの暗号文の復号に失敗した場合に、ICカードC2が記憶する乱数列において未だ利用されていない所定長分の乱数列をICカードC1へ送信するとともに、当該所定長分に基づいて、ICカードC2が記憶する利用開始位置を更新するように構成したので、エラー発生などの要因により利用開始位置が変化してしまう場合であっても、複数のICカードCn間で乱数列における利用開始位置を適宜同期させることができる。なお、実施例1は、実施例2のように任意のデータ長分の乱数列の末尾バイトまでが利用済みとして設定されないので、実施例2と比べて必要以上に乱数列の利用することを防ぐことができる。
なお、上記実施形態においては、複数のICカードCnは直接的に通信するように構成したが、複数のICカードCnはリーダライタ等の仲介機器を介して間接的に通信するように構成しても良く、この場合に対しても本発明は適用可能である。また、複数のICカードCnはそれぞれIoT(Internet of Things)機器に搭載され、ネットワークを介して通信するように構成しても良く、この場合に対しても本発明は適用可能である。
1 I/O回路
2 RAM
3 NVM
4 CPU
Cn ICカード
D 通信デバイス
S 通信システム
2 RAM
3 NVM
4 CPU
Cn ICカード
D 通信デバイス
S 通信システム
Claims (18)
- 互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおいて、
それぞれの前記電子情報記憶媒体は、
鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、
前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、
を備え、
前記複数の電子情報記憶媒体のうち第1の電子情報記憶媒体は、前記記憶手段に記憶されている利用開始位置を示す位置情報を、前記複数の電子情報記憶媒体のうち第2の電子情報記憶媒体へ送信する送信手段を更に備え、
前記第2の電子情報記憶媒体は、
前記第1の電子情報記憶媒体から送信された前記位置情報を受信する受信手段と、
前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較する比較手段と、
前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記第1の電子情報記憶媒体へ送信する送信手段と、
前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新する更新手段と、
を更に備えることを特徴とする通信システム。 - 前記第1の電子情報記憶媒体は、
前記第2の電子情報記憶媒体から送信された前記位置情報を受信する受信手段と、
前記記憶手段に記憶されている利用開始位置を前記受信された位置情報に示される利用開始位置に更新する更新手段と、
を更に備えることを特徴とする請求項1に記載の通信システム。 - 前記第1の電子情報記憶媒体の前記送信手段は、前記位置情報を、前記第2の電子情報記憶媒体、及び前記複数の電子情報記憶媒体のうち第3の電子情報記憶媒体へ送信し、
前記第2の電子情報記憶媒体の前記更新手段は、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記位置情報を、前記第1の電子情報記憶媒体、及び前記第3の電子情報記憶媒体へ送信することを特徴とする請求項1に記載の通信システム。 - 前記第1の電子情報記憶媒体及び前記第3の電子情報記憶媒体は、それぞれ、
前記第2の電子情報記憶媒体から送信された前記位置情報を受信する受信手段と、
前記記憶手段に記憶されている利用開始位置を前記受信された位置情報に示される利用開始位置に更新する更新手段と、
を更に備えることを特徴とする請求項3に記載の通信システム。 - 前記第1の電子情報記憶媒体の前記送信手段は、前記記憶手段に記憶されている利用開始位置を示す位置情報、及び当該利用開始位置から所定長分の乱数列を鍵データとして利用した前記暗号演算により暗号化された暗号文を、前記第2の電子情報記憶媒体へ送信し、
前記第2の電子情報記憶媒体の前記受信手段は、前記第1の電子情報記憶媒体から送信された前記位置情報、及び前記暗号文を受信し、
前記第2の電子情報記憶媒体の前記演算手段は、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記更新手段により更新された利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行することを特徴とする請求項1に記載の通信システム。 - 前記第1の電子情報記憶媒体の前記送信手段は、前記記憶手段に記憶されている利用開始位置を示す位置情報、及び当該利用開始位置から所定長分の乱数列を鍵データとして利用した前記暗号演算により暗号化された暗号文を、前記第2の電子情報記憶媒体、及び前記複数の電子情報記憶媒体のうち第3の電子情報記憶媒体へ送信し、
前記第2の電子情報記憶媒体の前記送信手段は、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記位置情報、及び前記暗号文を、前記第1の電子情報記憶媒体、及び前記第3の電子情報記憶媒体へ送信することを特徴とする請求項1に記載の通信システム。 - 互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおいて、
それぞれの前記電子情報記憶媒体は、
鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、
前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、
を備え、
前記複数の電子情報記憶媒体のうち第1の電子情報記憶媒体は、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した前記暗号演算により暗号化された暗号文を、前記複数の電子情報記憶媒体のうち第2の電子情報記憶媒体へ送信する送信手段を更に備え、
前記第2の電子情報記憶媒体は、前記第1の電子情報記憶媒体から送信された前記暗号文を受信する受信手段を更に備え、
前記第2の電子情報記憶媒体の前記演算手段は、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行し、
前記第2の電子情報記憶媒体は、
前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記第1の電子情報記憶媒体へ送信する送信手段と、
前記未だ利用されていない所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新する更新手段と、
を更に備えることを特徴とする通信システム。 - 前記第1の電子情報記憶媒体は、
前記第2の電子情報記憶媒体から送信された前記乱数列を受信する受信手段と、
前記記憶手段に記憶されている乱数列から、前記受信された乱数列と一致する部分を特定する特定手段と、
前記特定された部分に基づいて、前記記憶手段に記憶されている利用開始位置を更新する更新手段と、
を更に備えることを特徴とする請求項7に記載の通信システム。 - 互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおける1の電子情報記憶媒体であって、
鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、
前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、
前記複数の電子情報記憶媒体のうち他の電子情報記憶媒体の記憶手段に記憶されている利用開始位置を示す位置情報を、当該他の電子情報記憶媒体から受信する受信手段と、
前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較する比較手段と、
前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記他の電子情報記憶媒体へ送信する送信手段と、
前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新する更新手段と、
を備えることを特徴とする電子情報記憶媒体。 - 互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおける1の電子情報記憶媒体であって、
鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、
前記複数の電子情報記憶媒体のうち他の電子情報記憶媒体の記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した暗号演算により暗号化された暗号文を、当該他の電子情報記憶媒体から受信する受信手段と、
前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行する演算手段と、
前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記他の電子情報記憶媒体へ送信する送信手段と、
前記所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新する更新手段と、
を備えることを特徴とする電子情報記憶媒体。 - 互いに通信可能な複数のICチップを備える通信システムにおける1のICチップであって、
鍵データに利用される乱数列であって前記ICチップ間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、
前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、
前記複数のICチップのうち他のICチップの記憶手段に記憶されている利用開始位置を示す位置情報を、当該他のICチップから受信する受信手段と、
前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較する比較手段と、
前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記他のICチップへ送信する送信手段と、
前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新する更新手段と、
を備えることを特徴とするICチップ。 - 互いに通信可能な複数のICチップを備える通信システムにおける1のICチップであって、
鍵データに利用される乱数列であって前記ICチップ間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、
前記複数のICチップのうち他のICチップの記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した暗号演算により暗号化された暗号文を、当該他のICチップから受信する受信手段と、
前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行する演算手段と、
前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記他のICチップへ送信する送信手段と、
前記所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新する更新手段と、
を備えることを特徴とするICチップ。 - 互いに通信可能な複数のICカードを備える通信システムにおける1のICカードであって、
鍵データに利用される乱数列であって前記ICカード間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、
前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、
前記複数のICカードのうち他のICカードの記憶手段に記憶されている利用開始位置を示す位置情報を、当該他のICカードから受信する受信手段と、
前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較する比較手段と、
前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記他のICカードへ送信する送信手段と、
前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新する更新手段と、
を備えることを特徴とするICカード。 - 互いに通信可能な複数のICカードを備える通信システムにおける1のICカードであって、
鍵データに利用される乱数列であって前記ICカード間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、
前記複数のICカードのうち他のICカードの記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した暗号演算により暗号化された暗号文を、当該他のICカードから受信する受信手段と、
前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行する演算手段と、
前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記他のICカードへ送信する送信手段と、
前記所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新する更新手段と、
を備えることを特徴とするICカード。 - 互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおいて実行される利用開始位置の再同期方法であって、
それぞれの前記電子情報記憶媒体は、鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、を備え、
前記再同期方法は、
前記複数の電子情報記憶媒体のうち第1の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置を示す位置情報を、前記複数の電子情報記憶媒体のうち第2の電子情報記憶媒体へ送信するステップと、
前記第2の電子情報記憶媒体が、前記第1の電子情報記憶媒体から送信された前記位置情報を受信するステップと、
前記第2の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較するステップと、
前記第2の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記第1の電子情報記憶媒体へ送信するステップと、
前記第2の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新するステップと、
を含むことを特徴とする利用開始位置の再同期方法。 - 互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおいて実行される利用開始位置の再同期方法であって、
それぞれの前記電子情報記憶媒体は、鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶する記憶手段と、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行する演算手段と、を備え、
前記再同期方法は、
前記複数の電子情報記憶媒体のうち第1の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した前記暗号演算により暗号化された暗号文を、前記複数の電子情報記憶媒体のうち第2の電子情報記憶媒体へ送信するステップと、
前記第2の電子情報記憶媒体が、前記第1の電子情報記憶媒体から送信された前記暗号文を受信するステップと、
前記第2の電子情報記憶媒体が、前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行するステップと、
前記第2の電子情報記憶媒体が、前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記第1の電子情報記憶媒体へ送信するステップと、
前記第2の電子情報記憶媒体が、前記未だ利用されていない所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新するステップと、
を含むことを特徴とする利用開始位置の再同期方法。 - 互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおける1の電子情報記憶媒体に含まれるコンピュータに、
鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶手段に記憶するステップと、
前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し暗号演算または復号演算を実行するステップと、
前記複数の電子情報記憶媒体のうち他の電子情報記憶媒体の記憶手段に記憶されている利用開始位置を示す位置情報を、当該他の電子情報記憶媒体から受信するステップと、
前記記憶手段に記憶されている利用開始位置と、前記位置情報に示される利用開始位置とを比較するステップと、
前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より大きい場合に、前記記憶手段に記憶されている利用開始位置を示す位置情報を前記他の電子情報記憶媒体へ送信するステップと、
前記記憶手段に記憶されている利用開始位置が前記位置情報に示される利用開始位置より小さい場合に、前記記憶手段に記憶されている利用開始位置を前記位置情報に示される利用開始位置に更新するステップと、
を実行させることを特徴とするプログラム。 - 互いに通信可能な複数の電子情報記憶媒体を備える通信システムにおける1の電子情報記憶媒体に含まれるコンピュータに、
鍵データに利用される乱数列であって前記電子情報記憶媒体間で共有される前記乱数列と、当該乱数列における利用開始位置とを記憶手段に記憶するステップと、
前記複数の電子情報記憶媒体のうち他の電子情報記憶媒体の記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用した暗号演算により暗号化された暗号文を、当該他の電子情報記憶媒体から受信するステップと、
前記記憶手段に記憶されている利用開始位置から所定長分の乱数列を鍵データとして利用し前記暗号文を復号するための復号演算を実行するステップと、
前記暗号文の復号に失敗した場合に、前記記憶手段に記憶されている乱数列において未だ利用されていない所定長分の乱数列を前記他の電子情報記憶媒体へ送信するステップと、
前記所定長分に基づいて、前記記憶手段に記憶されている利用開始位置を更新するステップと、
を実行させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022187755A JP2024076259A (ja) | 2022-11-24 | 2022-11-24 | 通信システム、電子情報記憶媒体、icチップ、icカード、利用開始位置の再同期方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022187755A JP2024076259A (ja) | 2022-11-24 | 2022-11-24 | 通信システム、電子情報記憶媒体、icチップ、icカード、利用開始位置の再同期方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024076259A true JP2024076259A (ja) | 2024-06-05 |
Family
ID=91330749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022187755A Pending JP2024076259A (ja) | 2022-11-24 | 2022-11-24 | 通信システム、電子情報記憶媒体、icチップ、icカード、利用開始位置の再同期方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024076259A (ja) |
-
2022
- 2022-11-24 JP JP2022187755A patent/JP2024076259A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4763368B2 (ja) | 通信カード、機密情報処理システム、機密情報転送方法およびプログラム | |
US9787663B2 (en) | Replaying a batch of secure commands in a secure channel | |
US20140023195A1 (en) | Radio frequency identification (rfid) tag, interrogator, and method for authentication between the rfid tag and the interrogator | |
US8607333B2 (en) | Radio frequency identification (RFID) security apparatus having security function and method thereof | |
EP3099003B1 (en) | Efficient key derivation with forward secrecy | |
US20080279371A1 (en) | Methods of encrypting and decrypting data and bus system using the methods | |
US20210351942A1 (en) | Embedding protected memory access into a rfid authentication process based on a challenge-response mechanism | |
US9769664B1 (en) | Nonce silent and replay resistant encryption and authentication wireless sensor network | |
US8281130B2 (en) | Authentication system and authentication object device | |
US10027639B2 (en) | IC chip performing access control based on encrypted ID | |
CN109544747A (zh) | 智能门锁的加密密钥更新方法、系统和计算机存储介质 | |
KR20120070808A (ko) | Rfid 태그 장치 및 rfid 태그 장치를 인식하는 방법 | |
JPWO2018066506A1 (ja) | 通信装置、通信方法、通信システム及び記録媒体 | |
US10218500B2 (en) | Authentication of a card by contactless reading | |
EP2065830B1 (en) | System and method of controlling access to a device | |
JP2024076259A (ja) | 通信システム、電子情報記憶媒体、icチップ、icカード、利用開始位置の再同期方法、及びプログラム | |
US10237071B2 (en) | Authentication of a card by contactless reading | |
CN116155491A (zh) | 安全芯片的对称密钥同步方法及安全芯片装置 | |
CN102436592B (zh) | 基于比特串的rfid系统中标签与后端数据库的认证方法 | |
JP2011010218A (ja) | 携帯可能電子装置、及び携帯可能電子装置の制御方法 | |
JP7397403B2 (ja) | 電子情報記憶媒体、認証コード生成方法、認証コード検証方法、及びプログラム | |
JP7206869B2 (ja) | 暗号化通信システム及び暗号化通信方法 | |
JP2007316865A (ja) | メモリカード | |
JP5692441B2 (ja) | 情報処理装置、情報処理方法、及び、プログラム | |
CN113453221B (zh) | 加密通信方法、装置、电子设备和计算机可读存储介质 |