(57)【特許請求の範囲】
【請求項１】
リード・ライト機がリード・ライド機により選択された乱数N1を含むアクセス認証要求パケットを電子タグへ送信し、
リード・ライト機は前記電子タグから送信された、電子タグ一時身元TempIDと、リード・ライト機により選択された乱数N1と、電子タグにより選択された乱数N2と、電子タグにより算出され且つその値がH(TempID||N1||N2||Key)（ここで、H(ｘ)は一方向ハッシュ関数、Keyはリード・ライト機と電子タグで共有されている事前共有キーである）に等しいメッセージ整合性チェック値MICとを含むアクセス認証応答パケットを受信した後に、前記アクセス認証応答パケットに対して認証を行い、且つ認証成功の場合にアクセス認証確認パケットを作成し、
リード・ライト機は前記アクセス認証確認パケットを電子タグへ送信すること、を含み、
前記の前記アクセス認証応答パケットに対して認証を行い且つ認証成功の場合にアクセス認証確認パケットを作成することは、
リード・ライト機は前記N1が自分で選択した乱数であると判断すると、MIC値を再計算して前記の受信されたMIC値と比較し、等しい場合にバッグエンドデータベースを検索し、受信されたTempID値と等しい電子タグ一時身元TempIDを探し出すことができた場合には、LastTempID=TempID且つTempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信し、受信されたTempID値と等しいある行の電子タグ一時身元TempIDを探し出すことができなかった場合には、受信されたTempID値と等しいある行のLastTempIDが存在しているかどうかに対して継続して検索し、受信されたTempID値と等しいある行のタグLastTempIDを探し出すことができた場合には、TempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信すること、
を含むことを特徴とする事前共有キーによる匿名認証方法。
【請求項２】
前記電子タグはリード・ライト機から送信された前記アクセス認証要求パケットを受信した後に、前記アクセス認証要求パケットに対して認証を行い、且つ認証成功の場合にアクセス認証応答パケットを作成し、
前記アクセス認証確認パケットは、電子タグにより選択された乱数N2と、リード・ライト機により算出され且つその値がH(N2||Key)に等しいメッセージ整合性チェック値MIC1とを含み、
前記電子タグは前記アクセス認証応答パケットをリード・ライト機へ送信し、
前記電子タグは、受信された、リード・ライト機から送信されたアクセス認証確認パケットに対して確認を行うこと、
を更に含むことを特徴とする、請求項１に記載の事前共有キーによる匿名認証方法。
【請求項３】
前記リード・ライト機が電子タグへアクセス認証要求パケットを送信する前に、前記方法は、
リード・ライト機は電子タグとのシステムパラメータを確立して当該システムパラメータを初期化し、及びシステムパラメータを電子タグへ送信して記憶すること、
を更に含むことを特徴とする、請求項２に記載の事前共有キーによる匿名認証方法。
【請求項４】
前記電子タグに記憶されたシステムパラメータは、電子タグに書き込まれたタグ身元ID、事前共有キーKey、及び電子タグ一時身元TempIDを含み、初期化時にTempID=H(ID||Key)とし、
前記リード・ライト機に記憶されたシステムパラメータは、全てのタグの情報を含み、TempIDと、前回認証された電子タグ一時身元LastTempIDと、IDと、Keyと、タグの私的情報データPDataとを含み、初期化時にTempID=H(ID||Key)且つLastTempID=TempIDとすること、
を含むことを特徴とする、請求項３に記載の事前共有キーによる匿名認証方法。
【請求項５】
前記の前記アクセス認証要求パケットに対して認証を行い且つ認証成功の場合にアクセス認証応答パケットを作成することは、
電子タグは前記N2が自分で選択した乱数であると判断すると、MIC1の値を再計算して、受信されたMIC1値と比較し、等しい場合にTempID=H(ID||Key||N1||N2)とし、認証が成功すること、
を含むことを特徴とする、請求項１〜４の何れか一つに記載の事前共有キーによる匿名認証方法。
【請求項６】
バックエンドサーバーにより代替して、前記のリード・ライト機の認証機能を実現することを特徴とする、請求項１に記載の事前共有キーによる匿名認証方法。
【請求項７】
電子タグへリード・ライト機により選択された乱数N1を含むアクセス認証要求パケットを送信する送信手段、
前記電子タグから送信された、電子タグ一時身元TempIDと、リード・ライト機により選択された乱数N1と、電子タグにより選択された乱数N2と、電子タグにより算出され且つその値がH(TempID||N1||N2||Key)（ここで、H(ｘ)は一方向ハッシュ関数、Keyはリード・ライト機と電子タグで共有されている事前共有キーである）に等しいメッセージ整合性チェック値MICとを含むアクセス認証応答パケットを受信する受信手段、
受信手段により受信された前記アクセス認証応答パケットに対して認証を行い且つ認証成功の結果を送信する認証手段、
前記認証成功の結果を受信した時にアクセス認証確認パケットを作成して前記アクセス認証確認パケットを電子タグへ送信する作成手段、
を備え、
前記N1が自分で選択した乱数であると判断すると、MIC値を再計算して前記の受信されたMIC値と比較し、等しい場合にバッグエンドデータベースを検索し、受信されたTempID値と等しい電子タグ一時身元TempIDを探し出すことができた場合には、LastTempID=TempID且つTempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信し、受信されたTempID値と等しいある行の電子タグ一時身元TempIDを探し出すことができなかった場合には、受信されたTempID値と等しいある行のLastTempIDが存在しているかどうかに対して継続して検索し、受信されたTempID値と等しいある行のタグLastTempIDを探し出すことができた場合には、TempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信すること、
を含むことを特徴とするリード・ライト機。
【請求項８】
電子タグとのシステムパラメータを確立し、当該システムパラメータを初期化し、及びシステムパラメータを電子タグへ送信して記憶する確立手段を更に備えることを特徴とする、請求項７に記載のリード・ライト機。
【請求項９】
前記認証手段は、
前記N1が自分で選択した乱数であるか否かを判断し且つ肯定の判断結果を送信する判断手段、
判断手段から送信された肯定の判断結果を受信した時に、MICの値を再計算して、前記受信されたMIC値と比較し、且つ等しいという比較結果を送信する比較手段、
比較手段から送信された等しいという比較結果を受信した時に、受信されたTempID値と等しい電子タグ一時身元TempIDを探し出すことができた場合には、LastTempID=TempID且つTempID=H(ID||Key||N1||N2)とし、認証成功の結果を送信する検索手段、
認証成功の結果を受信した時に、アクセス認証確認パケットを作成して前記アクセス認証確認パケットを電子タグへ送信する作成手段、
を備えることを特徴とする、請求項７又は８に記載のリード・ライト機。
【請求項１０】
リード・ライト機と電子タグを備える事前共有キーによる匿名双方向認証システムであって、
前記リード・ライト機は、電子タグへアクセス認証要求パケットを送信し、前記電子タグから送信されたアクセス認証応答パケットを受信した後に、前記アクセス認証応答パケットに対して認証を行い、且つ認証成功の場合に、電子タグにより選択された乱数N2と、リード・ライト機により算出され且つその値がH(N2||Key)（ここで、H(ｘ)は一方向ハッシュ関数、Keyはリード・ライト機と電子タグで共有されている事前共有キーである）に等しいメッセージ整合性チェック値MIC1とを含むアクセス認証確認パケットを作成し、及び前記アクセス認証確認パケットを電子タグへ送信するために用いられ、
前記の前記アクセス認証応答パケットに対して認証を行い且つ認証成功の場合にアクセス認証確認パケットを作成することは、
リード・ライト機は前記N1が自分で選択した乱数であると判断すると、MIC値を再計算して前記の受信されたMIC値と比較し、等しい場合にバッグエンドデータベースを検索し、受信されたTempID値と等しい電子タグ一時身元TempIDを探し出すことができた場合には、LastTempID=TempID且つTempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信し、受信されたTempID値と等しいある行の電子タグ一時身元TempIDを探し出すことができなかった場合には、受信されたTempID値と等しいある行のLastTempIDが存在しているかどうかに対して継続して検索し、受信されたTempID値と等しいある行のタグLastTempIDを探し出すことができた場合には、TempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信すること、を含み、
前記電子タグは、リード・ライト機から送信された前記アクセス認証要求パケットを受信した後に、前記アクセス認証要求パケットに対して認証を行い、且つ認証成功の場合に、電子タグ一時身元TempIDと、リード・ライト機により選択された乱数N1と、電子タグにより選択された乱数N2と、電子タグにより算出され且つその値がH(TempID||N1||N2||Key)に等しいメッセージ整合性チェック値MICとを含むアクセス認証応答パケットを作成して前記アクセス認証応答パケットをリード・ライト機へ送信し、及び受信されたリード・ライト機からのアクセス認証確認パケットに対して確認を行い、前記アクセス認証応答パケットに対して認証を行い、且つ認証成功の場合にアクセス認証確認パケットを作成するために用いられること、
を特徴とする事前共有キーによる匿名双方向認証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は事前共有キーによる匿名認証方法、リード・ライト機、及び事前共有キーによる匿名双方向認証システムに関する。
【背景技術】
【０００２】
無線ローカルエリアネットワーク或は無線メトロポリタンエリアネットワーク等の無線ネットワークには、有線イーサネット（登録商標）よりも深刻なセキュリティの問題がある。同様に、無線認識電子タグ(RFID、Radio Frequency Identification)もセキュリティの問題に当面しており、安全な通信を行う前に、RFIDシステムにおけるリード・ライト機と電子タグとの間での身元認証及び権限識別という問題を効率的に解決する必要がある。全ての無線ネットワークにおいては、電子タグにおけるセキュリティの問題は最も複雑である。これは、電子タグそのものによって性能、機能要素などの差異が大きく、製品の態様と適用需要の統一が困難であるからである。電子タグの種類及びその具体的な適用モード毎に異なるセキュリティポリシーを設計する必要がある。
【０００３】
一般的に、電子タグの使用場所と適用環境に応じて、電子タグは三種類に大別することができる。即ち、1)読み書き可能な機能を持ち、ある程度の内部メモリ空間とデータ処理機能及び演算機能を有する高級電子タグ、2)高級電子タグと比べて性能がやや悪く、機能が類似している中ランクの電子タグ、3）幾らかのデータ情報の記録に用いられ、情報がリード・ライト機により読み出され、または書き込まれることを確保し、データ処理機能と演算機能を一般的に持っていない低ランクの電子タグ、に分けられる。
【０００４】
電子タグの性能が高く、ある程度の演算機能と処理機能を有する場合には、既存の無線ネットワークにおけるセキュリティアクセスプロトコルを使用し又は参考にして電子タグとリード・ライト機との間での双方向認証及び権限識別を実現することができる。例えば、無線ローカルエリアネットワーク国家セキュリティ基準(WAPI、WLAN Authentication and Privacy Infrastructure)等のプロトコルを採用することができる。一方、電子タグの性能が低く、既存のプロトコルをサポートできない場合に、電子タグのセキュリティ性を実現するために、新たなセキュリティプロトコルを設計しなければならない。
【０００５】
特に、国際標準化機構(ISO、International Organization for Standardization)により制定されたISO 18000-6A類とISO 18000-6B類の電子タグについて、その演算性能と処理性能は低いため、よくある公開キーのアルゴリズムによるセキュリティプロトコルは、いずれも適用することが困難である。しかしながら、分析によって分かったところでは、当該種類のタグは性能上、事前共有キーによるセキュリティプロトコルをサポートすることができる。したがって、事前共有キーによるセキュリティ認証プロトコルはISO 18000-6A類とISO 18000-6B類の電子タグのセキュリティ問題に対して有効な解決案である。
【０００６】
また、注意すべき問題として、電子タグの適用分野において、電子タグの身元(ID、Identity)は一般的に貨物価格、貨物産地等のような商業秘密情報を代表するため、認証プロセスにおいてそのIDの内容の機密性を確保する必要がある。IDが漏洩されないことを確保してプロトコルにおいて身元漏洩等による各種のセキュリティ攻撃を避けるため、プロトコルにおいてそのID自身の代わりに公開可能な一時身元を使用する必要がある。安全のため、一般的に同一の電子タグの異なる認証プロセスにおいて一時身元が異なることが、要求されている。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
現在、事前共有キーによる幾つかの双方向認証プロトコルも業界に提供されている。しかし、分析によって分かるように、これらプロトコルはある程度のセキュリティ問題を普遍的に有するため、セキュリティ認証の目的を実現し難い。具体的には、既存のプロトコルには以下のセキュリティの問題がある。
【０００８】
1、共有キーの更新がセキュリティリスクに繋がる。事前共有キーによるセキュリティプロトコルでは、共有キーの安全性がシステム全体の基礎であるため、一般に、確実な手動方式で書き込まれる。プロトコルにおいて共有キーの動的な更新が、必ずしも安全ではない不確実な要素を導入し、システムの安全性を低下させることになる。
【０００９】
2、共有キーの頻繁な書き込みが、システムにおける大量のエネルギー損失に繋がる。電子タグの性能はエネルギーに敏感であるため、エネルギーの損失により電子タグの可用性が低くなる可能性がある。
【００１０】
3、巡回冗長検査(CRC、Cyclic Redundancy Check) コードを採用してプロトコルのメッセージの整合性チェックを行い、且つ整合性チェックコードの算出が通信する双方により共有されたいかなる秘密情報にも係わらないため、積極的攻撃（active attack）に対抗することができない。
【００１１】
4、共有キーの更新はフォワードセキュリティを有していない。ある回に更新されたキーが攻撃者により解明されると、攻撃者がその後にネゴシエートされる全ての共有キーを算出することができる。
【００１２】
5、共有キーの更新はバックワードセキュリティを有していない。ある回に更新されたキーが攻撃者により解明されると、攻撃者がその前のネゴシエートされた全ての共有キーを算出することができる。
【００１３】
6、プロトコルの過程において、プロトコルの双方は毎回算出されたメッセージの整合性チェックの情報を記憶しなければならない。これによって、システムの記憶負荷が増えることになる。
【００１４】
上記に鑑みて、事前共有キーによる新たな匿名双方向認証プロトコルを設計することにより、電子タグとリード・ライド機との間での双方向認証及び権限識別の機能を実現し、この種類の電子タグのデータ情報の安全性を確保する必要がある。
【課題を解決するための手段】
【００１５】
本発明は、電子タグ分野において既存の認証プロトコルに存在しているセキュリティの問題を解決するために、事前共有キーによる匿名認証方法、リード・ライト機、及び事前共有キーによる匿名双方向認証システムを提供する。
【００１６】
本発明の技術的な解決案において、本発明は事前共有キーによる匿名認証方法であって、リード・ライト機が、リード・ライド機により選択された乱数N1を含むアクセス認証要求パケットを電子タグへ、送信し、リード・ライト機は前記電子タグから送信された、電子タグ一時身元TempIDと、リード・ライト機により選択された乱数N1と、電子タグにより選択された乱数N2と、電子タグにより算出され且つその値がH(TempID||N1||N2||Key)（ここで、H(ｘ)は一方向ハッシュ関数、Keyはリード・ライト機と電子タグで共有されている事前共有キーである）に等しいメッセージ整合性チェック値MICとを含むアクセス認証応答パケットを受信した後に、前記アクセス認証応答パケットに対して認証を行い、且つ認証成功の場合にアクセス認証確認パケットを作成し、リード・ライト機は前記アクセス認証確認パケットを電子タグへ送信することを含み、
前記の前記アクセス認証応答パケットに対して認証を行い且つ認証成功の場合にアクセス認証確認パケットを作成することは、
リード・ライト機は前記N1が自分で選択した乱数であると判断すると、MIC値を再計算して前記の受信されたMIC値と比較し、等しい場合にバッグエンドデータベースを検索し、受信されたTempID値と等しい電子タグ一時身元TempIDを探し出すことができた場合には、LastTempID=TempID且つTempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信し、受信されたTempID値と等しいある行の電子タグ一時身元TempIDを探し出すことができなかった場合には、受信されたTempID値と等しいある行のLastTempIDが存在しているかどうかに対して継続して検索し、受信されたTempID値と等しいある行のタグLastTempIDを探し出すことができた場合には、TempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信することを含む。
【００１７】
好ましくは、前記電子タグはリード・ライト機から送信された前記アクセス認証要求パケットを受信した後に、前記アクセス認証要求パケットに対して認証を行い、且つ認証成功の場合に、電子タグ一時身元TempIDと、リード・ライト機により選択された乱数N1と、電子タグにより選択された乱数N2と、電子タグにより算出され且つその値がH(TempID||N1||N2||Key)に等しいメッセージ整合性チェック値MICとを含むアクセス認証応答パケットを作成し、前記電子タグは前記アクセス認証応答パケットをリード・ライト機へ送信し、前記電子タグは受信した、リード・ライト機から送信されたアクセス認証確認パケットに対して確認を行うことを更に含む。
【００１８】
好ましくは、前記リード・ライト機が電子タグへアクセス認証要求パケットを送信する前に、前記方法は、リード・ライト機は電子タグとのシステムパラメータを確立して、当該システムパラメータを初期化し、及びシステムパラメータを電子タグへ送信して記憶させることを更に含む。
【００１９】
好ましくは、前記電子タグの中のシステムパラメータは、電子タグに書き込まれたタグ身元ID、事前共有キーKey、及び電子タグ一時身元TempIDを含み、初期化時にTempID=H(ID||Key)とする。
【００２０】
前記リード・ライト機のシステムパラメータは、全てのタグの情報を含み、TempIDと、前回認証された電子タグ一時身元LastTempIDと、IDと、Keyと、タグの私的情報データPDataとを含み、初期化時にTempID=H(ID||Key)且つLastTempID=TempIDとする。
【００２２】
好ましくは、前記アクセス認証確認パケットは、電子タグにより選択された乱数N2と、リード・ライト機により算出され且つその値がH(N2||Key)に等しいメッセージ整合性チェック値MIC1とを含む。
【００２３】
好ましくは、前記の前記アクセス認証要求パケットに対して認証を行い且つ認証成功の場合にアクセス認証応答パケットを作成することは、電子タグは前記N2が自分で選択した乱数であると判断すると、MIC1の値を再計算して、受信したMIC1値と比較し、等しい場合にTempID=H(ID||Key||N1||N2)とし、認証が成功することを含む。
【００２４】
好ましくは、バックエンドのサーバーにより代替して、前記のリード・ライト機の認証機能を実現する。
【００２５】
相応に、本発明は、電子タグへリード・ライト機により選択された乱数N1を含むアクセス認証要求パケットを送信する送信手段と、前記電子タグから送信された、電子タグ一時身元TempIDと、リード・ライト機により選択された乱数N1と、電子タグにより選択された乱数N2と、電子タグにより算出され且つその値がH(TempID||N1||N2||Key)（ここで、H(ｘ)は一方向ハッシュ関数、Keyはリード・ライト機と電子タグで共有されている事前共有キーである）に等しいメッセージ整合性チェック値MICとを含むアクセス認証応答パケットを受信する受信手段と、受信手段により受信した前記アクセス認証応答パケットに対して認証を行い且つ認証成功の結果を送信する認証手段と、前記認証成功の結果を受信した時にアクセス認証確認パケットを作成して前記アクセス認証確認パケットを電子タグへ送信する作成手段とを備え、
前記N1が自分で選択した乱数であると判断すると、MIC値を再計算して前記の受信されたMIC値と比較し、等しい場合にバッグエンドデータベースを検索し、受信されたTempID値と等しい電子タグ一時身元TempIDを探し出すことができた場合には、LastTempID=TempID且つTempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信し、受信されたTempID値と等しいある行の電子タグ一時身元TempIDを探し出すことができなかった場合には、受信されたTempID値と等しいある行のLastTempIDが存在しているかどうかに対して継続して検索し、受信されたTempID値と等しいある行のタグLastTempIDを探し出すことができた場合には、TempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信することを含むリード・ライト機を提供する。
【００２６】
好ましくは、電子タグとのシステムパラメータを確立して、当該システムパラメータを初期化し、及びシステムパラメータを電子タグへ送信して記憶する確立手段を更に備える。
【００２７】
好ましくは、前記認証手段は、前記N1が自分で選択した乱数であるか否かを判断し且つ肯定の判断結果を送信する判断手段と、判断手段から送信された肯定の判断結果を受信した時に、MICの値を再計算して、前記の受信したMIC値と比較し、且つ等しいという比較結果を送信する比較手段と、比較手段から送信された等しいという比較結果を受信した時に、受信したTempID値と等しい電子タグ一時身元TempIDを探し出すことができた場合には、LastTempID=TempID且つTempID=H(ID||Key||N1||N2)とし、認証成功の結果を送信する検索手段と、認証成功の結果を受信した時に、アクセス認証確認パケットを作成して前記アクセス認証確認パケットを電子タグへ送信する作成手段を備える。
【００３１】
相応に、本発明は、リード・ライト機と電子タグを備える事前共有キーによる匿名双方向認証システムを提供し、前記リード・ライト機は、電子タグへリード・ライト機により選択された乱数N1を含むアクセス認証要求パケットを送信し、前記電子タグから送信されたアクセス認証応答パケットを受信した後に、前記アクセス認証応答パケットに対して認証を行い、且つ認証成功の場合に、電子タグにより選択された乱数N2と、リード・ライト機により算出され且つその値がH(N2||Key)（ここで、H(ｘ)は一方向ハッシュ関数、Keyはリード・ライト機と電子タグで共有されている事前共有キーである）に等しいメッセージ整合性チェック値MIC1とを含むアクセス認証確認パケットを作成し、及び前記アクセス認証確認パケットを電子タグへ送信するために用いられ、
前記の前記アクセス認証応答パケットに対して認証を行い且つ認証成功の場合にアクセス認証確認パケットを作成することは、
リード・ライト機は前記N1が自分で選択した乱数であると判断すると、MIC値を再計算して前記の受信されたMIC値と比較し、等しい場合にバッグエンドデータベースを検索し、受信されたTempID値と等しい電子タグ一時身元TempIDを探し出すことができた場合には、LastTempID=TempID且つTempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信し、受信されたTempID値と等しいある行の電子タグ一時身元TempIDを探し出すことができなかった場合には、受信されたTempID値と等しいある行のLastTempIDが存在しているかどうかに対して継続して検索し、受信されたTempID値と等しいある行のタグLastTempIDを探し出すことができた場合には、TempID=H(ID||Key||N1||N2)とし、認証が成功し、且つアクセス認証確認パケットを作成して電子タグへ送信することを含み、
前記電子タグは、リード・ライト機から送信された前記アクセス認証要求パケットを受信した後に、前記アクセス認証要求パケットに対して認証を行い、且つ認証成功の場合に、電子タグ一時身元TempIDと、リード・ライト機により選択された乱数N1と、電子タグにより選択された乱数N2と、電子タグにより算出され且つその値がH(TempID||N1||N2||Key)に等しいメッセージ整合性チェック値MICとを含むアクセス認証応答パケットを作成して、前記アクセス認証応答パケットをリード・ライト機へ送信し、及び受信したリード・ライト機からのアクセス認証確認パケットに対して認証を行うために用いられる。
【００３２】
バックエンドサーバーにより代替して、前記のリード・ライト機の認証機能を実現しても良い。
【発明の効果】
【００３３】
上述の技術案によれば、リード・ライト機は電子タグへアクセス認証要求パケットを送信し、前記電子タグにより送信されたアクセス認証応答パケットを受信した後に前記アクセス認証応答パケットに対して認証行い、且つ認証成功の場合にアクセス認証確認パケットを作成して前記アクセス認証確認パケットを電子タグへ送信することにより、電子タグ情報に対する認証の機能と権限識別の機能が実現され、この種類の電子タグのデータ情報のセキュリティが確保される。更に、前記電子タグはリード・ライト機から送信された前記アクセス認証要求パケットを受信した後に、前記アクセス認証要求パケットに対して認証を行い、且つ認証成功の場合にアクセス認証応答パケットを作成して前記アクセス認証応答パケットをリード・ライト機へ送信し、受信した、リード・ライト機から送信されたアクセス認証確認パケットに対して認証を行うことにより、電子タグとリード・ライト機との間での双方向認証の機能及び権限識別の機能が実現され、この種類の電子タグのデータ情報の安全性が確保される。つまり、電子タグとリード・ライト機との間で事前共有キーを更新する必要がないので、安全性を低下させることなくプロトコルの効率を向上している。より安全で確実なメッセージ整合性チェック技術を採用したので、積極的な攻撃に対抗することができる。共有キーを頻繁に書き換える必要がないので、システムエネルギーを節約し、電子タグの可用性を向上している。電子タグとリード・ライト機は算出されたメッセージ整合性チェックコードを毎回記憶する必要がないので、システムのメモリ要求を低くしている。
【図面の簡単な説明】
【００３４】
【図１】本発明に係る事前共有キーによる匿名認証方法を示すフローチャート図である。
【発明を実施するための形態】
【００３５】
本願は、2008年8月1日に、中国特許局に提出された出願番号200810150525．8号、発明の名称「事前共有キーによる匿名双方向認証方法」の中国特許出願に優先権を主張し、その全ての内容を本願に援用する。
【００３６】
当業者に容易に理解させるために、本発明に係る用語を以下のように簡単に説明する。具体的には以下のものを含み、
R：リード・ライト機
T：電子タグ
ID：電子タグの身元
TempID：認証過程において使用される電子タグの一時身元
LastTempID：前回の認証過程において使用された電子タグの一時身元
Key：リード・ライト機と電子タグで共有されている事前共有キー
PData：例えば貨物価格、貨物産地等の機密保持が必要なデータであり、タグの私的情報データ
H(ｘ)：一方向ハッシュ関数
N1：リード・ライト機により選択された乱数
N2：電子タグにより選択された乱数
SKey：セッションキー
【００３７】
図1は、本発明に係る事前共有キーによる匿名認証方法のフローチャートである。当該方法は具体的に、
1）先ず、システムパラメータを初期化するステップを実行してもよい、つまり、リード・ライト機がシステムパラメータを生成し、次に、対応する処理プロセス、例えば当該システムパラメータを電子タグへ送信する等をそれぞれ実行する。当該ステップは選択可能なステップであり、図中に示していない。以下のようにシステムパラメータを初期化する。
電子タグT：電子タグTにタグ身元ID、事前共有キーKey、及び電子タグ一時身元TempIDが書き込まれており、初期化時にTempID=H(ID||Key)とする。
リード・ライト機R：リード・ライト機Rに、TempIDと、LastTempIDと、IDと、Keyと、PDataとを含む全てのタグの情報を格納しており、初期化時にTempID=H(ID||Key)且つLastTempID=TempIDとする。
【００３８】
当該ステップについては、最初の適用時に、システムパラメータを確立しておき、確立された後に、その後の繰り返し適用するときにおいて、このステップは必要ではなくなる。
【００３９】
2)リード・ライト機Rは電子タグTへアクセス認証要求パケットを送信し、当該アクセス認証要求パケットの内容は以下のものを含む。
【００４０】
【表１】
0005429675.tif 000002
【００４１】
ここで、
N1フィールド：リード・ライト機により選択された乱数である。
【００４２】
3）電子タグTはアクセス認証要求パケットを受信した後に、アクセス認証応答パケットを作成してリード・ライト機Rへ送信する。当該認証応答パケットの内容は以下のものを含む。
【００４３】
【表２】
0005429675.tif 000003
【００４４】
ここで、
TempIDフィールド：電子タグTの一時身元である。
N1フィールド：リード・ライト機Rにより選択された乱数である。
N2フィールド：電子タグTにより選択された乱数である。
MICフィールド：電子タグTにより算出されたメッセージ整合性チェック値であり、その値はH(TempID||N1||N2||Key)に等しい。
【００４５】
4)リード・ライト機Rはアクセス認証応答パケットを受信した後に、アクセス認証確認パケットを作成して電子タグTへ送信する。
【００４６】
リード・ライド機Rは電子タグTから送信されたアクセス認証応答パケットを受信した後に、先ずN1が自分で選択した乱数であるか否かを判断し、否定の場合に当該パケットを廃棄し、肯定の場合にMICを再計算して、受信したMIC値と比較し、等しくない場合に当該パケットを廃棄し、等しい場合にバックエンドのデータベースでの検索を開始する。受信したTempID値と等しいある行の電子タグの一時身元TempIDを探し出すことができた場合には、LastTempID=TempID且つTempID=H(ID||Key||N1||N2)とすると共に、アクセス認証確認パケットを作成して電子タグTへ送信する。受信したTempID値と等しいある行の電子タグ一時身元TempIDを探し出すことができなかった場合には、受信したTempID値と等しいある行の前回に認証されたLastTempIDが存在しているかどうか検索し、受信したTempID値と等しいある行のLastTempIDを探し出すことができた場合には、TempID=H(ID||Key||N1||N2)とすると共に、アクセス認証確認パケットを作成して電子タグTへ送信し、さもなければ、リード・ライト機Ｒは認証を中止し、認証プロセスが失敗する。
【００４７】
アクセス認証確認パケットの内容は以下のものを含む。
【００４８】
【表３】
0005429675.tif 000004
【００４９】
ここで、
N2フィールド：電子タグTにより選択された乱数であり、
MIC1フィールド：リード・ライド機Rにより算出されたメッセージ整合性チェック値であり、その値はH(N2||Key)に等しい。
【００５０】
5)電子タグTはアクセス認証確認パケットに基づいて確認を行う。
【００５１】
電子タグTはアクセス認証確認パケットを受信した後に、先ずN2が自分で選択した乱数であるか否かを判断し、否定の場合に当該パケットを廃棄し、肯定の場合にMIC1を再計算して受信したMIC1と比較し、等しくない場合に当該パケットを廃棄し、等しい場合にTempID=H(ID||Key||N1||N2)とし、認証が成功する。
【００５２】
上述のプロトコルにより、電子タグTとリード・ライト機Rとの間での事前共有キーによる双方向認証が実現されると共に、電子タグTのID情報が漏洩することがない。認証を行うと同時に、電子タグTの一時身元TempIDの更新が行われる。
【００５３】
認証が成功した後に、電子タグTとリード・ライト機Rのそれぞれは、キーKeyと乱数N1及びN2を使用して同一のセッションキーSKeyを導出することができ、SKeyを暗号キーとして使用してタグの私的情報データPDataを暗号化して、タグデータに対する保護を実現するようにする。
【００５４】
また、注意すべきであるのは、本発明に係る実施例の説明は電子タグTとリード・ライト機Rに対して行ったものであるが、認証プロセスにおけるリード・ライト機の認証機能の実体はバックエンドのサーバーに搭載しても良い。
【００５５】
上記方法の実現過程に基づいて、本発明は更に、電子タグへリード・ライト機により選択された乱数N1を含むアクセス認証要求パケットを送信する送信手段と、前記電子タグから送信された、電子タグ一時身元TempIDと、リード・ライト機により選択された乱数N1と、電子タグにより選択された乱数N2と、電子タグにより算出され且つその値がH(TempID||N1||N2||Key)に等しいメッセージ整合性チェック値MICとを含むアクセス認証応答パケットを受信する受信手段と、受信手段により受信した前記アクセス認証応答パケットに対して認証を行い且つ認証成功の結果を送信する認証手段と、前記認証成功の結果を受信した時にアクセス認証確認パケットを作成して前記アクセス認証確認パケットを電子タグへ送信する作成手段とを備えるリード・ライト機を提供する。
【００５６】
好ましくは、前記リード・ライト機は、電子タグとのシステムパラメータを確立し、当該システムパラメータを初期化し、及びシステムパラメータを電子タグへ送信して記憶する確立手段を更に含む。
【００５７】
好ましくは、前記認証手段は、前記N1が自分で選択した乱数であるか否かを判断し且つ肯定の判断結果を送信する判断手段と、判断手段から送信された肯定の判断結果を受信した時に、MICの値を再計算して前記の受信したMICの値と比較し、且つ等しいという比較結果を送信する比較手段と、比較手段から送信された等しいという比較結果を受信した時に、受信したTempIDの値と等しいある行の電子タグ一時身元TempIDを探し出すことができた場合には、LastTempID=TempID且つTempID=H(ID||Key||N1||N2)とし、認証成功の結果を送信する検索手段と、認証成功の結果を受信した時に、アクセス認証確認パケットを作成して前記アクセス認証確認パケットを電子タグへ送信する作成手段とを含む。
【００５８】
上記方法の実現過程に基づいて、本発明は更に、リード・ライト機から送信されたアクセス認証要求パケットを受信して前記アクセス認証要求パケットに対して認証を行い、認証成功のメッセージを送信する認証手段と、認証手段から送信された認証成功のメッセージを受信した時にアクセス認証応答パケットを作成して前記アクセス認証応答パケットをリード・ライト機へ送信する作成手段と、リード・ライト機から送信された、電子タグにより選択された乱数N2と、リード・ライト機により算出され且つその値がH(N2||Key)に等しいメッセージ整合性チェック値MIC1とを含むアクセス認証確認パケットを受信する受信手段と、受信手段により受信されたアクセス認証確認パケットに対して確認を行う確認手段とを備える電子タグを提供する。
【００５９】
好ましくは、前記電子タグは、受信されたリード・ライト機からのシステムパラメータを予め記憶する記憶手段を更に備える。
【００６０】
好ましくは、前記確認手段は、前記N2が自分で選択した乱数であるか否かを判断し且つ肯定の判断結果を送信する判断手段と、判断手段から送信された肯定の判断結果を受信した時に、MIC1の値を再計算して受信したMIC1の値と比較し、且つ等しいという比較結果を送信する比較手段と、比較手段から送信された等しいという比較結果を受信した時に、TempID=H(ID||Key||N1||N2)とし且つ認証成功を確認する確認手段とを備える。
【００６１】
上記方法の実現過程に基づいて、本発明は更に、リード・ライト機と電子タグを備える事前共有キーによる匿名双方向認証システムを提供し、前記リード・ライト機は、電子タグへリード・ライト機により選択された乱数N1を含むアクセス認証要求パケットを送信し、前記電子タグから送信されたアクセス認証応答パケットを受信した後に、前記アクセス認証応答パケットに対して認証を行い、且つ認証成功の場合に、電子タグにより選択された乱数N2と、リード・ライト機により算出され且つその値がH(N2||Key)に等しいメッセージ整合性チェック値MIC1とを含むアクセス認証確認パケットを作成し、及び、前記アクセス認証確認パケットを電子タグへ送信するために用いられ、
前記電子タグは、リード・ライト機から送信された前記アクセス認証要求パケットを受信した後に、前記アクセス認証要求パケットに対して認証を行い、且つ認証成功の場合に、電子タグ一時身元TempIDと、リード・ライト機により選択された乱数N1と、電子タグにより選択された乱数N2と、電子タグにより算出され且つその値がH(TempID||N1||N2||Key)に等しいメッセージ整合性チェック値MICとを含むアクセス認証応答パケットを作成して前記アクセス認証応答パケットをリード・ライト機へ送信し、及び受信したリード・ライト機からのアクセス認証確認パケットに対して確認を行い、前記アクセス認証応答パケットに対して認証を行い、且つ認証成功の場合にアクセス認証確認パケットを作成するために用いられる。
【００６２】
前記システムにおける各装置又は実体的な機能及び作用については、上述方法における対応のプロセスを参照することができ、ここではその説明を省略する。
【００６３】
前記実施の形態の説明によれば、当業者は、本発明がソフトウェアと必要な汎用のハードウェアプラットフォームの組合せで実現されることが明らかにわかる。勿論、ハードウェアを利用しても良いが、前者は最適の実施の形態である場合が多い。このような理解によれば、本発明に係る技術案における本質的な或いは既存技術への貢献のある部分はソフトウェア製品の形式により実現することができる。当該コンピュータソフトウェア製品は、ROM/RAM、磁気ディスク、光ディスク等のような記憶媒体に記憶することができ、若干の命令を含むことにより、一つのコンピュータ装置(パーソナルコンピュータ、サーバー、又はネットワーク装置等であっても良い)に本発明に係る各実施例又は実施例のある部分で説明された方法を実行させる。
【００６４】
上述の説明は本発明に係る好ましい実施の形態に過ぎず、説明する必要があるのは、当業者にとって、本発明の趣旨の範囲から逸脱しない限り、その他の改善と修飾もできることである。これら改善と修飾は本発明の保護範囲に属するものである。
【図１】
0005429675.tif 000005