(57)【特許請求の範囲】
【請求項１】
一種の３ウェイ・ハンドシェイク・プロトコルの方法において、
１）開始装置が応答装置に対して、ペア暫定キー標識ＰＴＫＩＤ、マスターキー標識ＭＫＩＤ、更新標識ＵＤ及びランダム数Ｉ−Ｎｏｎｃｅを含むメッセージ１を送信し、そのうち、ＰＴＫＩＤは開始装置がランダムに選択した値で、当該ＰＴＫＩＤはローカルに格納されている暫定キー標識ＴＫＩＤ、又は、実行中の３ウェイ・ハンドシェイク・プロトコル又はペア暫定キーＧＴＫ配送プロトコルにおいて利用される暫定キー標識ＴＫＩＤと異なり、ＭＫＩＤはペア・マスター・キーＰＭＫのマークであり、ＵＤはペア暫定キーＰＴＫの更新過程であるかどうかを表示し、Ｉ−Ｎｏｎｃｅは開始装置が発生したランダム数であり、
２）応答装置がメッセージ１を受信後、ＭＫＩＤ、ＰＴＫＩＤに対して検証し、又、前記ＭＫＩＤ、ＰＴＫＩＤが検証を通った後、ステップａ１）を実行し、
ａ１）ＵＤがＰＴＫ更新過程であるかどうかを検証し、そうでない場合、ステップａ２）を実行し、そうである場合、Ｉ−Ｎｏｎｃｅがローカルに格納された前回のＰＴＫネゴシエーションが成功した後に開始装置と応答装置の間でネゴシエートされたＩ−Ｎｏｎｃｅ値と同じであるかどうかを確認し、同じでない場合、当該メッセージを廃棄し、同じである場合、ステップａ２）を実行し、
ａ２）ランダム数発生関数を利用して、ランダム数Ｒ−Ｎｏｎｃｅを発生し、又、拡張関数を利用してペア・マスター・キーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算し、ＰＴＫ、キー確認キーＫＣＫと次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅの種を取得し、そして、当該種に対して拡張関数を利用し、次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅを計算・保存し、又、開始装置に対してＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｒ−Ｎｏｎｃｅとペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣを含むメッセージ２を送信し、そのうち、ＰＴＫＩＤ、ＭＫＩＤとＵＤがメッセージ１における対応する値と同じで、ＰＴＫ−ＭＩＣはローカルＫＣＫを利用し、メッセージ２におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、メッセージ１におけるＩ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたメッセージ完全性コードＭＩＣであり、
３）開始装置がメッセージ２を受信後、メッセージ２とメッセージ１における対応するパラメータが同じであるかどうかを比較し、同じでない場合、当該メッセージを廃棄し、逆の場合、マスター・キーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算し、次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅを計算・保存し、ローカルＫＣＫを利用してＭＩＣを再計算し、又、メッセージ３におけるＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、逆の場合、開始装置に対してＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｒ−Ｎｏｎｃｅ、ＰＴＫ−ＭＩＣを含むメッセージ３を送信し、
４）応答装置がメッセージ３を受信後、メッセージ３とメッセージ２における対応するパラメータが同じであるかどうかを比較し、同じでない場合、当該メッセージを廃棄し、逆の場合、ローカルＫＣＫを利用してＭＩＣを再計算し、又、メッセージ３におけるＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、同じである場合、３ウェイ・ハンドシェイク・プロトコル過程を終了する、
ステップを含むことを特徴とする３ウェイ・ハンドシェイク・プロトコルの方法。
【請求項２】
前記ステップl）において、始めてＰＴＫを作成する際、Ｉ−Ｎｏｎｃｅは開始装置がランダム数発生関数で発生した値であり、ＰＴＫを更新する際、Ｉ−Ｎｏｎｃｅは前回のＰＴＫネゴシエーションが成功した後に開始装置と応答装置の間でネゴシエートされた値である、ことを特徴とする請求項１記載の３ウェイ・ハンドシェイク・プロトコルの方法。
【請求項３】
前記ステップ４）の後は、又、ステップ５）とステップ６）を含み、
５）応答装置が開始装置に対して、ＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｉ−Ｎｏｎｃｅ、ＰＴＫ−ＭＩＣ等を含むメッセージ４を送信し、そのうち、ＰＴＫＩＤ、ＭＫＩＤ、ＵＤとＩ−Ｎｏｎｃｅがメッセージ１における対応する値と同じで、ＰＴＫ−ＭＩＣはローカルＫＣＫを利用し、メッセージ４におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたＭＩＣであり、
６）開始装置がメッセージ４を受信後、次の処理を行い、
６．１）ＰＴＫＩＤ、ＭＫＩＤ、ＵＤとＩ−Ｎｏｎｃｅがメッセージ１における対応する値と異なる場合、当該メッセージを廃棄し、同じである場合、６．２）の操作を実行し、
６．２）ローカルＫＣＫを利用し、メッセージ４におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのＭＩＣを再計算し、又、メッセージ４におけるＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、同じである場合、開始装置と応答装置が４ウェイ・ハンドシェイク・プロトコルの実行に成功し、それぞれと対応するＰＴＫキー、確認キーＫＣＫと両者の次回のＰＴＫ更新に利用されるＩ−Ｎｏｎｃｅを取得することになる、
ことを含むことを特徴とする請求項１記載の３ウェイ・ハンドシェイク・プロトコルの方法。
【請求項４】
ＭＫＩＤ、ＰＴＫＩＤに対して検証することは、
２．１）ＭＫＩＤが開始装置と応答装置が予め共用しているペア・マスター・キーＰＭＫの標識であるかどうかを検証し、そうでない場合、当該メッセージを廃棄し、そうである場合、ステップ２．２）を実行し、
２．２）当該ＭＫＩＤを利用していて、実行中の３ウェイ・ハンドシェイク・プロトコルが存在するかどうかを検証し、存在する場合、当該メッセージを廃棄し、存在しない場合、ステップ２．３）を実行し、
２．３）ＰＴＫＩＤを検証し、ＰＴＫＩＤがローカルに格納されている暫定キー標識ＴＫＩＤ、又は、実行中の３ウェイ・ハンドシェイク・プロトコル又はペア暫定キーＧＴＫ配送プロトコルにおいて利用されるＴＫＩＤと同じである場合、当該メッセージを廃棄し、同じでない場合、ステップａ１）を実行する、
ことを含むことを特徴とする請求項１〜３の何れに記載の３ウェイ・ハンドシェイク・プロトコルの方法。
【請求項５】
前記メッセージ２とメッセージ１における対応するパラメータが同じであるかどうかを比較することは、
メッセージ２におけるＰＴＫＩＤ、ＭＫＩＤ、ＵＤとＩ−Ｎｏｎｃｅがメッセージ１における対応する値と同じであるかどうかを比較する、ことを含むことを特徴とする請求項１〜３の何れに記載の３ウェイ・ハンドシェイク・プロトコルの方法。
【請求項６】
前記マスター・キーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算し、次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅを計算・保存することは、
拡張関数を利用し、ペア・マスター・キーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算してＰＴＫ、ＫＣＫと次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅの種を取得し、
当該種に対して拡張関数を利用し、次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅを計算・保存する、
ことを含むことを特徴とする請求項１〜３の何れに記載の３ウェイ・ハンドシェイク・プロトコルの方法。
【請求項７】
前記開始装置がローカルＫＣＫを利用し、ＭＩＣを再計算することは、
ローカルＫＣＫを利用し、メッセージ２におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、メッセージ１におけるＩ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのＭＩＣを再計算する、
ことを含むことを特徴とする請求項１〜３の何れに記載の３ウェイ・ハンドシェイク・プロトコルの方法。
【請求項８】
前記メッセージ３がＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｒ−ＮｏｎｃｅとＰＴＫ−ＭＩＣを含み、そのうち、ＰＴＫＩＤ、ＭＫＩＤ、ＵＤとランダム数Ｒ−Ｎｏｎｃｅがメッセージ２における対応する値と同じで、ＰＴＫ-ＭＩＣはローカルＫＣＫを利用し、メッセージ３におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたＭＩＣである、
ことを特徴とする請求項１〜３の何れに記載の３ウェイ・ハンドシェイク・プロトコルの方法。
【請求項９】
前記メッセージ３とメッセージ２における対応するパラメータが同じであるかどうかを比較することは、
メッセージ３におけるＰＴＭＤ、ＭＫＩＤ、ＵＤとランダム数Ｒ−Ｎｏｎｃｅがメッセージ２における対応する値と同じであるかどうかを比較する、
ことを含むことを特徴とする請求項１〜３の何れに記載の３ウェイ・ハンドシェイク・プロトコルの方法。
【請求項１０】
前記応答装置がローカルＫＣＫを利用し、ＭＩＣを再計算することは、
ローカルＫＣＫを利用し、メッセージ３におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのＭＩＣを再計算する、
ことを含むことを特徴とする請求項１〜３の何れに記載の３ウェイ・ハンドシェイク・プロトコルの方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は２００８年１２月９日に、中国特許局に提出した、出願番号が２００８１０１８４１３７．１で、発明名称が「一種の３ウェイ・ハンドシェイク・プロトコルの方法」である中国特許出願の優先権を要求し、当該出願の全ての内容を参照することにより本出願に組み込まれている。
【０００２】
本発明はネットワーク安全技術領域に関し、特に、一種の３ウェイ・ハンドシェイク・プロトコルの方法に関わっている。
【背景技術】
【０００３】
（ヨーロッパ電子計算機工業会Ｅｕｒｏｐｅａｎ  Ｃｏｍｐｕｔｅｒ  Ｍａｎｕｆａｃｔｕｒｅｒｓ  Ａｓｓｏｃｉａｔｉｏｎ、ＥＣＭＡと略称する）が２００５年にＥＣＭＡ３６８という超広帯域ＵＷＢ(Ｕｌｔｒａ  ｗｉｄｅ  ｂａｎｄ）物理層とＭＡＣ層規格を定義する標準をリリースした。超広帯域ＵＷＢは一種のキャリアレス通信技術であり、ナノ秒更にピコ秒程の正弦波ナロウパルスを利用してデータを伝送する。ＥＣＭＡ３６８標準において、一種の４ウェイ・ハンドシェイク・プロトコル（４  ｗａｙ  ｈａｎｄｓｈａｋｅ）が設計され、超広帯域ＵＷＢ設備間のペア暫定キーＰＴＫ(Ｐａｉｒｗｉｓｅ Ｔｅｍｐｏｒａｌ Ｋｅｙ）の作成・更新に利用される。当該４ウェイ・ハンドシェイク・プロトコルは以下のように、
１）開始装置が応答装置に対してメッセージ１:ＭＮ||ＳＣ||ＰＴＫＩＤ||ＭＫＩＤ||Ｉ−Ｎｏｎｃｅ||ＰＴＫ−ＭＩＣを送信し、そのうち、メッセージシリアル番号ＭＮが１とし、状態コードＳＣが０とし、プロトコルが正常状態であることを表示し、ペア暫定キー標識ＰＴＫＩＤは開始装置がランダムに選択した値であり（ローカルに格納されている、或いは実行中の４ウェイ・ハンドシェイク・プロトコルにおいて利用される暫定きー標識ＴＫＩＤ(Ｔｅｍｐｏｒａｌ Ｋｅｙ Ｉｄｅｎｔｉｆｉｅｒ）、又はペア暫定キーＧＴＫ（Ｇｒｏｕｐ  Ｔｅｍｐｏｒａｌ  Ｋｅｙ）配送プロトコルにおいて利用される暫定キー標識ＴＫＩＤとは異なる）、マスターキー標識ＭＫＩＤはペア・マスター・キーＰＭＫのマークであり、Ｉ−Ｎｏｎｃｅは開始装置がランダム数発生関数で計算・発生したランダム数であり、ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣは０とし、ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣを計算していないことを表示し、
２）応答装置がメッセージ１を受信した後、メッセージシリアル番号ＭＮが１で、状態コードＳＣが０で、且つペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣが０であることを満足しない場合、当該メッセージを廃棄し、逆の場合、マスターキー標識ＭＫＩＤが開始装置と応答装置が予め共用しているペア・マスター・キーＰＭＫの標識であるかどうかを検証し、そうでない場合、当該メッセージを廃棄し、逆の場合、当該マスターキー標識ＭＫＩＤを利用していて、実行中の４ウェイ・ハンドシェイク・プロトコルが存在するかどうかを検証し、存在する場合、当該メッセージを廃棄し、又、状態コードＳＣを２に設定し（当該マスターキー標識ＭＫＩＤを利用していて、実行中の４ウェイ・ハンドシェイク・プロトコルが存在することを表示する）、開始装置にプロトコル状態を報告し、逆の場合、ペア暫定キー標識ＰＴＫＩＤを検証し、ペア暫定キー標識ＰＴＫＩＤがローカルに格納されている暫定キー標識ＴＫＩＤ、又は、実行中の４ウェイ・ハンドシェイク・プロトコル、又はペア暫定キーＧＴＫ配送プロトコルにおいて利用される暫定キー標識ＴＫＩＤと同じである場合、当該メッセージを廃棄し、又、状態コードＳＣを３に設定し（当該ペア暫定キー標識ＰＴＫＩＤがローカルに格納されている暫定キー標識ＴＫＩＤ、又は、実行中の４ウェイ・ハンドシェイク・プロトコル又はペア暫定キーＧＴＫ配送プロトコルにおいて利用される暫定キー標識ＴＫＩＤと同じであることを表示する）、開始装置にプロトコル状態を報告し、逆の場合、ランダム数Ｒ−Ｎｏｎｃｅを発生し、又、拡張関数を利用してペア・マスター・キーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算し、ペア暫定キーＰＴＫとキー確認キーＫＣＫ（Ｋｅｙ Ｃｏｎｆｉｒｍａｔｉｏｎ Ｋｅｙ）を取得し、そして、開始装置に対してメッセージ２＝ＭＮ||ＳＣ||ＰＴＫＩＤ||ＭＫＩＤ||Ｒ−Ｎｏｎｃｅ||ＰＴＫ−ＭＩＣを送信し、そのうち、メッセージシリアル番号ＭＮが２とし、状態コードＳＣが０とし、ペア暫定キー標識ＰＴＫＩＤとマスターキー標識ＭＫＩＤがメッセージ１おける対応する値と同じで、ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣは、ローカルキー確認キーＫＣＫを利用してメッセージ２（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたメッセージ完全性コードＭＩＣ(Ｍｅｓｓａｇｅ  Ｉｎｔｅｇｒｉｔｙ  Ｃｏｄｅ)であり、
３）開始装置がメッセージ２を受信し、メッセージシリアル番号ＭＮが２で、状態コードＳＣが０で、ペア暫定キー標識ＰＴＫＩＤとマスターキー標識ＭＫＩＤがメッセージ１における対応する値と同じであることを満足しない場合、当該メッセージを廃棄し、逆の場合、拡張関数を利用し、ペア・マスター・キーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算し、ペア暫定キーＰＴＫとキー確認キーＫＣＫを取得し、そして、ローカルキー確認キーＫＣＫを利用し、メッセージ２（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのメッセージ完全性コードＭＩＣを再計算し、メッセージ２におけるペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、又、状態コードＳＣを１に設定し（安全検証を通れなかったことを表示する）、応答装置にプロトコル状態を報告し、逆の場合、応答装置に対してメッセージ３:ＭＮ||ＳＣ||ＰＴＫＩＤ||ＭＫＩＤ||Ｉ−Ｎｏｎｃｅ||ＰＴＫ−ＭＩＣを送信し、そのうち、メッセージシリアル番号ＭＮが３とし、状態コードＳＣが０とし、ペア暫定キー標識ＰＴＫＩＤとマスターキー標識ＭＫＩＤがメッセージ２における対応する値と同じで、ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣは、ローカルキー確認キーＫＣＫを利用してメッセージ３（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたメッセージ完全性コードＭＩＣであり、
４）応答装置がメッセージ３を受信し、メッセージシリアル番号ＭＮが３で、状態コードＳＣが０で、ペア暫定キー標識ＰＴＫＩＤとマスターキー標識ＭＫＩＤがメッセージ２における対応する値と同じであることを満足しない場合、当該メッセージを廃棄し、逆の場合、ローカルキー確認キーＫＣＫを利用し、メッセージ３（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのメッセージ完全性コードＭＩＣを再計算し、又、メッセージ３におけるペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、又、状態コードＳＣを１に設定し（安全検証を通れなかったことを表示する）、応答装置にプロトコル状態を報告し、逆の場合、開始装置に対してメッセージ４：ＭＮ||ＳＣ||ＰＴＫＩＤ||ＭＫＩＤ||Ｒ−Ｎｏｎｃｅ||ＰＴＫ−ＭＩＣを送信し、そのうち、メッセージシリアル番号ＭＮが４とし、状態コードＳＣが０とし、ペア暫定キー標識ＰＴＫＩＤとマスターキー標識ＭＫＩＤがメッセージ３における対応する値と同じで、ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣはローカルキー確認キーＫＣＫを利用してメッセージ４（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたメッセージ完全性コードＭＩＣであり、
５）開始装置がメッセージ４を受信し、メッセージシリアル番号ＭＮが４で、状態コードＳＣが０で、ペア暫定キー標識ＰＴＫＩＤとマスターキー標識ＭＫＩＤがメッセージ３における対応する値と同じであることを満足しない場合、当該メッセージを廃棄し、逆の場合、ローカルキー確認キーＫＣＫを利用してメッセージ４（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのメッセージ完全性コードＭＩＣを再計算し、又、メッセージ４におけるペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、逆の場合、開始装置と応答装置が４ウェイ・ハンドシェイク・プロトコルの実行に成功し、それぞれと対応するペア暫定キーＰＴＫとキー確認キーＫＣＫを取得することになる。
【０００４】
開始装置と応答装置が上述４ウェイ・ハンドシェイク・プロトコルを完成後、ペア暫定キーＰＴＫを利用して二者の間のユニキャスト・サービス・データを保護する。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述４ウェイ・ハンドシェイク・プロトコルから見出したように、従来、ペア暫定キーＰＴＫを更新する度に、開始装置と応答装置が使用中のペア暫定キーＰＴＫを利用して４ウェイ・ハンドシェイク・プロトコルの暗号化処理を行う必要があり、又、開始装置が再計算して新しいランダム数Ｉ−Ｎｏｎｃｅを発生する必要がある。しかし、低消費電力（電池式）の設備を利用した一部の超広帯域ＵＷＢ通信ネットワーク応用に対して、エネルギー、通信と計算などのリソースが厳しく制限されるため、ペア暫定キーＰＴＫを更新する際、始終、リソースが制限されるという問題に悩まれていた。
【課題を解決するための手段】
【０００６】
本発明は背景技術における上述問題点を解決するため、更に計算リソースを節約でき、超広帯域ネットワークに適する３ウェイ・ハンドシェイク・プロトコルの方法を提案した。
【０００７】
本発明に係る技術案は次のように説明する。
【０００８】
１、一種の３ウェイ・ハンドシェイク・プロトコルの方法において、以下のステップを含み、
１）  開始装置が応答装置に対して、ペア暫定キー標識ＰＴＫＩＤ、マスターキー標識ＭＫＩＤ、更新標識ＵＤ及びランダム数Ｉ−Ｎｏｎｃｅを含むメッセージ１を送信し、そのうち、ＰＴＫＩＤは開始装置がランダムに選択した値で、当該ＰＴＫＩＤがローカルに格納されている暫定キー標識ＴＫＩＤ、又は、実行中の３ウェイ・ハンドシェイク・プロトコル或いはペア暫定キーＧＴＫ配送プロトコルにおいて利用される暫定キー標識ＴＫＩＤとは異なり、ＭＫＩＤはペア・マスター・キーＰＭＫのマークであり、ＵＤはペア暫定キーＰＭＫの更新過程であるかどうかを表示し、Ｉ−Ｎｏｎｃｅは開始装置が発生したランダム数であり、
２）  応答装置がメッセージ１を受信後、ＭＫＩＤとＰＴＫＩＤに対して検証し、又、前記ＭＫＩＤ、ＰＴＫＩＤが検証を通った後、ステップａ１）を実行し、
ａ１）ＵＤがＰＴＫ更新過程であるかどうかを検証し、そうでない場合、ステップａ２）を実行し、そうである場合、Ｉ−Ｎｏｎｃｅがローカルに格納された前回のＰＴＫネゴシエーションが成功した後に開始装置と応答装置の間でネゴシエートされたＩ−Ｎｏｎｃｅ値と同じであるかどうかを確認し、同じでない場合、当該メッセージを廃棄し、同じである場合、ステップａ２）を実行し、
ａ２）ランダム数発生関数を利用して、ランダム数Ｒ−Ｎｏｎｃｅを計算・発生し、又、拡張関数を利用してペアマスターキーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算し、ＰＴＫ、キー確認キーＫＣＫ及び次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅの種を取得し、そして、当該種に対して拡張関数を利用し、次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅを計算・保存し、そして、開始装置に対してＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｒ−Ｎｏｎｃｅとペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣを含むメッセージ２を送信し、そのうち、ＰＴＫＩＤ、ＭＫＩＤとＵＤがメッセージ１における対応する値と同じで、ＰＴＫ−ＭＩＣはローカルＫＣＫを利用し、メッセージ２におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、メッセージ１におけるＩ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたメッセージ完全性コードＭＩＣであり、
３）開始装置がメッセージ２を受信し、メッセージ２とメッセージ１における対応するパラメータが同じであるかどうかを比較し、同じでない場合、当該メッセージを廃棄し、逆の場合、マスター・キーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算し、次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅを計算・保存し、ローカルＫＣＫを利用してＭＩＣを再計算し、又、メッセージ３におけるＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、逆の場合、開始装置に対してＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｒ−Ｎｏｎｃｅ、ＰＴＫ−ＭＩＣを含むメッセージ３を送信し、
４）応答装置がメッセージ３を受信し、メッセージ３とメッセージ２における対応するパラメータが同じであるかどうかを比較し、同じでない場合、当該メッセージを廃棄し、逆の場合、ローカルＫＣＫを利用してＭＩＣを再計算し、又、メッセージ３におけるＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、同じである場合、３ウェイ・ハンドシェイク・プロトコル過程を終了する。
【０００９】
前記ステップl）において、初めてＰＴＫを作成する際、Ｉ−Ｎｏｎｃｅは開始装置がランダム数発生関数で発生した値であり、ＰＴＫを更新する際、Ｉ−Ｎｏｎｃｅは前回のＰＴＫネゴシエーション過程が成功した後に開始装置と応答装置との間でネゴシエートされた値である。
【００１０】
前述ステップ４）の後、又、ステップ５）とステップ６）を含み、具体的なステップは以下のようになる。
５）応答装置が開始装置に対して、ＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｉ−Ｎｏｎｃｅ、ＰＴＫ−ＭＩＣ等を含むメッセージ４を送信し、そのうち、ＰＴＫＩＤ、ＭＫＩＤ、ＵＤとＩ−Ｎｏｎｃｅがメッセージ１における対応する値と同じで、ＰＴＫ−ＭＩＣは、ローカルＫＣＫを利用し、メッセージ４におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたＭＩＣであり、
６）開始装置がメッセージ４を受信後、次の処理を行い、
６．１）ＰＴＫＩＤ、ＭＫＩＤ、ＵＤ及びＩ−Ｎｏｎｃｅがメッセージ１における対応する値と同じでない場合、当該メッセージを廃棄し、同じである場合、６．２）の操作を実行し、
６．２）ローカルＫＣＫを利用し、メッセージ４におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのＭＩＣを再計算し、又、メッセージ４におけるＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、同じである場合、開始装置と応答装置が４ウェイ・ハンドシェイク・プロトコルの実行に成功し、それぞれと対応するＰＴＫキー、確認キーＫＣＫと両者の次回のＰＴＫ更新に利用されるＩ−Ｎｏｎｃｅを取得することになる。
【００１１】
ＭＫＩＤ、ＰＴＫＩＤに対して検証することは、
２．１）ＭＫＩＤが開始装置と応答装置が予め共用しているペア・マスター・キーＰＭＫの標識であるかどうかを検証し、そうでない場合、当該メッセージを廃棄し、そうである場合、ステップ２．２）を実行し、
２．２）当該ＭＫＩＤを利用していて、実行中の３ウェイ・ハンドシェイク・プロトコルが存在するかどうかを検証し、存在する場合、当該メッセージを廃棄し、存在しない場合、ステップ２．３）を実行し、
２．３）ＰＴＫＩＤを検証し、ＰＴＫＩＤがローカルに格納されている暫定キー標識ＴＫＩＤ、又は、実行中の３ウェイ・ハンドシェイク・プロトコル又はペア暫定キーＧＴＫ配送プロトコルにおいて利用されるＴＫＩＤと同じである場合、当該メッセージを廃棄し、同じでない場合、ステップa１）を実行する、
ことを含む。
【００１２】
前記メッセージ２とメッセージ１における対応するパラメータが同じであるかどうかを比較することは、
メッセージ２におけるＰＴＫＩＤ、ＭＫＩＤ、ＵＤとＩ−Ｎｏｎｃｅがメッセージ１における対応する値と同じであるかどうかを比較することを含む。
【００１３】
前記マスター・キーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算し、次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅを計算・保存することは、
拡張関数を利用し、ペア・マスター・キーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算し、ＰＴＫ、ＫＣＫと次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅの種を取得し、
当該種に対して拡張関数を利用し、次回のＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅを計算・保存することを含む。
【００１４】
前記開始装置がローカルＫＣＫを利用してＭＩＣを再計算することは、
ローカルＫＣＫを利用し、メッセージ２におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、メッセージ１におけるＩ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのＭＩＣを再計算することを含む。
【００１５】
前記メッセージ３はＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｒ−Ｎｏｎｃｅ、ＰＴＫ−ＭＩＣを含み、そのうち、ＰＴＫＩＤ、ＭＫＩＤ、ＵＤとランダム数Ｒ−Ｎｏｎｃｅが、メッセージ２における対応する値と同じで、ＰＴＫ−ＭＩＣはローカルＫＣＫを利用し、メッセージ３におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたＭＩＣである。
【００１６】
前記メッセージ３とメッセージ２における対応するパラメータが同じであるかどうかを比較することは、
メッセージ３におけるＰＴＫＩＤ、ＭＫＩＤ、ＵＤとランダム数Ｒ−Ｎｏｎｃｅがメッセージ２における対応する値と同じであるかどうかを比較することを含む。
【００１７】
前記応答装置がローカルＫＣＫを利用し、ＭＩＣを再計算することは、
ローカルＫＣＫを利用し、メッセージ３におけるＰＴＫ−ＭＩＣ以外の他のパラメータ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのＭＩＣを再計算することを含む。
【発明の効果】
【００１８】
本発明は超広帯域ネットワークに適する３ウェイ・ハンドシェイク・プロトコルの方法を提供し、ペア暫定キーＰＴＫが更新する際、送信者が直接に前回のペア暫定キーＰＴＫネゴシエーション過程で発生・保存されたＩ−Ｎｏｎｃｅにより、メッセージ１を構造して応答装置に送信し、同時に３ウェイ・ハンドシェイク・プロトコルにより交換されるメッセージに対して暗号化する必要がないため、ＥＣＭＡ３８６の４ウェイ・ハンドシェイク・プロトコルと比較すれば、メッセージの再送を防止できるだけではなく、リソースに制限のある応用に更に利点がある。
【発明を実施するための形態】
【００１９】
本発明の具体的な実現方法は以下のように、
１）開始装置が応答装置に対してＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｉ−Ｎｏｎｃｅ等を含むメッセージ１を送信し、そのうち、ペア暫定キー標識ＰＴＫＩＤは開始装置がランダムに選択した値であり（ローカルに格納されている暫定キー標識ＴＫＩＤ、又は、実行中の３ウェイ・ハンドシェイク・プロトコル又はペア暫定キーＧＴＫ配送プロトコルにおいて利用される暫定キー標識ＴＫＩＤと異なる）、マスターキー標識ＭＫＩＤはペア・マスター・キーＰＭＫのマークであり、更新標識ＵＤはペア暫定キーＰＴＫの更新過程であるかどうかを表示し、Ｉ−Ｎｏｎｃｅは開始装置が発生したランダム数であり（初めてペア暫定キーＰＴＫを作成する際、Ｉ−Ｎｏｎｃｅは開始装置がランダム数発生関数で発生した値であり、ペア暫定キーＰＴＫを更新する際、Ｉ−Ｎｏｎｃｅは前回のペア暫定キーＰＴＫネゴシエーションが成功した後に開始装置と応答装置の間でネゴシエートされた値である）、
２）応答装置がメッセージ１を受信後、次の処理を行い、
２．１）マスターキー標識ＭＫＩＤが開始装置と応答装置が予め共用しているペア・マスター・キーＰＭＫの標識であるかどうかを検証し、そうでない場合、当該メッセージを廃棄し、そうである場合、ステップ２．２）を実行し、
２．２）当該マスターキー標識ＭＫＩＤを利用していて、実行中の３ウェイ・ハンドシェイク・プロトコルが存在するかどうかを検証し、存在する場合、当該メッセージを廃棄し、存在しない場合、ステップ２．３）を実行し、
２．３）ペア暫定キー標識ＰＴＫＩＤを検証し、ペア暫定キー標識ＰＴＫＩＤがローカルに格納されている暫定キー標識ＴＫＩＤ、又は、実行中の３ウェイ・ハンドシェイク・プロトコル又はペア暫定キーＧＴＫ配送プロトコルにおいて利用される暫定キー標識ＴＫＩＤと同じである場合、当該メッセージを廃棄し、同じでない場合、ステップ２．４）を実行し、
２．４）更新標識ＵＤがペア暫定キーＰＴＫ更新過程であるかどうかを検証し、そうでない場合、ステップ２．５）を実行し、そうである場合、Ｉ−Ｎｏｎｃｅがローカルに格納された、前回のペア暫定キーＰＴＫネゴシエーションが成功した後に開始装置と応答装置の間でネゴシエートされたＩ−Ｎｏｎｃｅ値と同じであるかどうかを検証し、同じでない場合、当該メッセージを廃棄し、同じである場合、ステップ２．５）を実行し、
２．５）ランダム数発生関数を利用してランダム数Ｒ−Ｎｏｎｃｅを発生し、又、拡張関数を利用してペア・マスター・キーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算し、ペア暫定キーＰＴＫ、キー確認キーＫＣＫ及び次回のペア暫定キーＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅの種を取得し、そして、当該種に対して拡張関数を利用し、次回のペア暫定キーＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅを計算・保存し、又、開始装置に対してＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｒ−Ｎｏｎｃｅ、ＰＴＫ−ＭＩＣ等を含むメッセージ２を送信し、そのうち、ペア暫定キー標識ＰＴＫＩＤ、マスターキー標識ＭＫＩＤと更新標識ＵＤはメッセージ１における対応する値と同じで、ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣはローカルキー確認キーＫＣＫを利用し、メッセージ２（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、メッセージ１におけるランダム数Ｉ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたメッセージ完全性コードＭＩＣであり、
３）開始装置がメッセージ２を受信後、次の処理を行い、
３．１）ペア暫定キー標識ＰＴＫＩＤ、マスターキー標識ＭＫＩＤ、更新標識ＵＤとランダム数Ｉ−Ｎｏｎｃｅがメッセージ１における対応する値と異なる場合、当該メッセージを廃棄し、同じである場合、ステップ３．２）を実行し、
３．２）拡張関数を利用し、ペア・マスター・キーＰＭＫ、Ｉ−Ｎｏｎｃｅ、Ｒ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算し、ペア暫定キーＰＴＫ、キー確認キーＫＣＫ及び次回のペア暫定キーＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅ種を取得し、そして、当該種に対して拡張関数を利用し、次回のペア暫定キーＰＴＫネゴシエーション過程のＩ−Ｎｏｎｃｅを計算・保存し、ローカルキー確認キーＫＣＫを利用し、メッセージ２（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、メッセージ１におけるランダム数Ｉ−Ｎｏｎｃｅ、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのメッセージ完全性コードＭＩＣを再計算し、メッセージ２におけるペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、逆の場合、開始装置に対してＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｒ−Ｎｏｎｃｅ、ＰＴＫ−ＭＩＣ等を含むメッセージ３を送信し、そのうち、ペア暫定キー標識ＰＴＫＩＤ、マスターキー標識ＭＫＩＤ、更新標識ＵＤとランダム数Ｒ−Ｎｏｎｃｅはメッセージ２における対応する値と同じで、ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣは、ローカルキー確認キーＫＣＫを利用し、メッセージ３（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたメッセージ完全性コードＭＩＣであり、
４）応答装置がメッセージ３を受信後、次の処理を行い
４．１）ペア暫定キー標識ＰＴＫＩＤ、マスターキー標識ＭＫＩＤ、更新標識ＵＤとランダム数Ｒ−Ｎｏｎｃｅがメッセージ２における対応する値と異なる場合、当該メッセージを廃棄し、同じである場合、４．２）の操作を実行し、
４．２）ローカルキー確認キーＫＣＫを利用してメッセージ３（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのメッセージ完全性コードＭＩＣを再計算し、又、メッセージ３におけるペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、同じである場合、開始装置と応答装置が３ウェイ・ハンドシェイク・プロトコルの実行に成功し、それぞれと対応するペア暫定キーＰＴＫキー、確認キーＫＣＫと次回の両者のペア暫定キーＰＴＫの更新に利用されるＩ−Ｎｏｎｃｅを取得する。
【００２０】
ペア暫定キーＰＴＫをインストールすることを簡易にさせ、又、応答装置がペア暫定キーＰＴＫのネゴシエーションに成功することを開始装置に通知するため、応答装置がメッセージ３を受信後、更に開始装置に対してメッセージ４を送信でき、即ち、上述ステップ４）の後、次のステップ５）と６）を実行する。
【００２１】
５）応答装置が開始装置に対してＰＴＫＩＤ、ＭＫＩＤ、ＵＤ、Ｉ−Ｎｏｎｃｅ、ＰＴＫ−ＭＩＣ等を含むメッセージ４を送信し、そのうち、ペア暫定キー標識ＰＴＫＩＤ、マスターキー標識ＭＫＩＤ、更新標識ＵＤとランダム数Ｉ−Ｎｏｎｃｅはメッセージ１における対応する値と同じであり、ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣはローカルキー確認キーＫＣＫを利用して、メッセージ４（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣに対して計算されたメッセージ完全性コードＭＩＣであり、
６）開始装置がメッセージ４を受信後、次の処理を行い、
６．１）ペア暫定キー標識ＰＴＫＩＤ、マスターキー標識ＭＫＩＤ、更新標識ＵＤとランダム数Ｉ−Ｎｏｎｃｅがメッセージ１における対応する値と異なる場合、当該メッセージを廃棄し、同じである場合、６．２）の操作を実行する。
【００２２】
６．２）ローカルキー確認キーＫＣＫを利用してメッセージ４（ペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣ以外の他のパラメータ）、開始装置のＭＡＣアドレスＩ−ＭＡＣ及び応答装置のＭＡＣアドレスＲ−ＭＡＣのメッセージ完全性コードＭＩＣを再計算し、又、メッセージ４におけるペア暫定キーメッセージ完全性コードＰＴＫ−ＭＩＣと比較し、二者が同じでない場合、当該メッセージを廃棄し、同じである場合、開始装置と応答装置が４ウェイ・ハンドシェイク・プロトコルの実行に成功し、それぞれと対応するペア暫定キーＰＴＫキー、確認キーＫＣＫと次回の両者のペア暫定キーＰＴＫの更新に利用されるＩ−Ｎｏｎｃｅを取得することになる。
【００２３】
前記の実施形態は本発明の技術的な解決手段の説明だけであり、当業者により、上述した実施形態に記述された技術的な解決手段を改造し、またはその中の一部の技術要素を置換することもできる。そのような改造と置換は本発明の実施形態の技術の範囲から逸脱するとは見なされない。