(57)【要約】  本発明は、第三世代移動システムにおける認証および鍵合意ＡＫＡ手続きにおいて使用するために、ランダムおよび秘密鍵Ｋに基づいて派生鍵素材を生成する、認証サーバと、セキュアサーバとを含む通信ネットワークにおける移動端末装置のためのパーソナルトークンにおいて、受け取られたランダム、およびパーソナルトークンの中に格納された秘密鍵Ｋに基づき、派生鍵素材Ｃｋ、Ｉｋを再計算するためのプログラム命令を含むパーソナルトークンであって、受け取られたさらなるデータを解釈するために、派生鍵素材の再計算された一部を使用するためのプログラム命令を含むことを特徴とするパーソナルトークンに関する。標準のＡＫＡ手続きのこの変更は、パーソナルトークンが、鍵素材を移動端末装置が利用できないままにすることを可能にする。
2008503800.tif 000002
【特許請求の範囲】
【請求項１】
セキュアサーバと、認証サーバと、パーソナルトークン（ＳＥ）をホストする少なくとも１つの端末装置（ＨＴ）とを含むネットワークにおける認証方法であって、
ａ．  セキュアサーバにおいて、ランダム（ＲＡＮＤ）および秘密鍵に基づく計算を実行して、派生鍵素材（Ｃｋ、Ｉｋ）を生成するステップと、
ｂ．  前記派生鍵素材（Ｃｋ、Ｉｋ）を、前記ランダムと一緒に、さらに、さらなるデータ（ＡＵＴＮ、ＸＲＥＳ、ＭＡＣ、ＳＱＮ、Ａｋ、ＡＭＦ）と一緒に、セキュアサーバ（ＳＳ）から認証サーバ（ＡＳ）に送るステップと、
ｃ．  前記認証サーバにおいて、前記派生鍵素材（Ｃｋ、Ｉｋ）の少なくとも一部を使用して、前記さらなるデータ（ＭＡＣ＊、ＳＱＮ＊）の少なくとも一部を変更するステップと、
ｄ．  前記さらなるデータ（ＡＵＴＮ、ＡＵＴＮ＊、ＸＲＥＳ、ＭＡＣ、ＳＱＮ、Ａｋ、ＡＭＦ、Ｍａｃ＊、ＳＱＮ＊）および前記ランダム（ＲＡＮＤ）を、ホスト端末装置を介して前記パーソナルトークンに送るステップと、
ｅ．  パーソナルトークンにおいて、さらなるデータの前記一部を変更するために認証サーバにおいて使用された、前記派生鍵素材（Ｃｋ、Ｉｋ）の前記少なくとも一部を再計算するために、受け取られたランダム（ＲＡＮＤ）に基づく計算を実行するステップと、
ｆ．  パーソナルトークンにおいて、受け取られたさらなるデータの変更された一部を解釈するために、派生鍵素材の前記再計算された少なくとも一部を使用するステップとを含む方法。
【請求項２】
受け取られたさらなるデータの変更された一部を前記解釈することは、受け取られたさらなるデータの前記一部が、そのようなさらなるデータをパーソナルトークンに送るのに先立って変更されているか否かを識別することを含むことを特徴とする、請求項１に記載の方法。
【請求項３】
受け取られたさらなるデータの変更された一部を前記解釈することは、受け取られたさらなるデータの予期される値の有効性をチェックすることを含むことを特徴とする、請求項１に記載の方法。
【請求項４】
派生鍵素材の前記再計算された一部が、パーソナルトークンの中に保持されることを特徴とする、請求項１に記載の方法。
【請求項５】
パーソナルトークンが、前記受け取られたランダムに基づいてさらなるデータの前記一部の再計算を実行し、前記派生鍵素材に基づいてさらなるデータの前記一部の再変更を実行し、かつ再計算し再変更されたさらなるデータ部分と、さらなるデータの受け取られ変更された一部との比較を実行することを含むことを特徴とする、請求項１に記載の方法。
【請求項６】
パーソナルトークンが、セキュアサーバによって最初に生成されたさらなるデータの変更されていない一部を取得するように、さらなるデータの受け取られ変更された一部の逆変更を実行し、パーソナルトークンにおいて、前記受け取られたランダムに基づきさらに秘密鍵に基づき、さらなるデータの前記一部を再計算し、セキュアサーバによって最初に生成されたさらなるデータの変更されていない一部と、さらなるデータの再計算された一部との比較を実行することを含むことを特徴とする、請求項１に記載の方法。
【請求項７】
さらなるデータの前記変更された一部が、パーソナルトークンに対してサーバを認証するために通常、使用されるＭＡＣ（メッセージ認証コード）であることを特徴とする、請求項１から６のいずれか一項に記載の方法。
【請求項８】
パーソナルトークンが、ＭＡＣの再計算を実行することを特徴とする、請求項７に記載の方法。
【請求項９】
パーソナルトークンが、派生鍵素材に基づき、再計算されたＭＡＣの変更を実行し、前記変更され再計算されたＭＡＣを、ホスト端末装置を介して認証サーバから受け取られ変更されたＭＡＣと比較することを特徴とする、請求項８に記載の方法。
【請求項１０】
パーソナルトークンが、派生鍵素材を使用して、受け取られ変更されたＭＡＣの逆変更を実行し、再計算されたＭＡＣを、逆変更され受け取られたＭＡＣと比較することを特徴とする、請求項７から９のいずれか一項に記載の方法。
【請求項１１】
派生鍵素材が、暗号化鍵（Ｃｋ）の少なくとも一部分を含むことを特徴とする、請求項１から１０のいずれか一項に記載の方法。
【請求項１２】
派生鍵素材の前記少なくとも一部が、完全性鍵（Ｉｋ）を含むことを特徴とする、請求項１から１１のいずれか一項に記載の方法。
【請求項１３】
ｇ１）  さらなるデータの前記一部が、派生鍵素材の前記少なくとも一部を使用して変更されている場合、派生鍵素材の少なくとも一部分をパーソナルトークンの中に保持する代替のステップと、
ｇ２）  さらなるデータの前記一部が、変更されていない場合、派生鍵素材の前記一部をパーソナルトークンから端末装置に伝送する代替のステップとを含むことを特徴とする、請求項１から１２のいずれか一項に記載の方法。
【請求項１４】
パーソナルトークンが、前記受け取られたランダムに基づいてさらなるデータの前記一部の再計算を実行すること、およびさらなるデータの前記受け取られた一部が、さらなるデータの再計算された一部にも、派生鍵素材を使用して再変更されたさらなるデータの前記再計算された一部にも対応しない場合、パーソナルトークンが、派生鍵素材の前記一部をパーソナルトークン内部に保持することを含むことを特徴とする、請求項１３に記載の方法。
【請求項１５】
パーソナルトークンが、端末装置を介して、認証サーバに応答（ＲＥＳ）を送り、認証サーバが、前記応答を使用してパーソナルトークンを認証すること、および認証サーバとパーソナルトークンが相互に認証されると、パーソナルトークンが、内部鍵（ＫｓＮＡＦｉｎｔ）および外部鍵（ＫｓＮＡＦｅｘｔ）を派生鍵素材（Ｃｋ、Ｉｋ）から派生させ、前記内部鍵（ＫｓＮＡＦｉｎｔ）が、端末装置を介してパーソナルトークンとリモートサーバとの間でセキュアチャネルを確立するために使用されるが、端末装置には隠され、前記外部鍵（ＫｓＮＡＦｅｘｔ）が、端末装置とリモートサーバとの間でセキュアチャネルを確立するために使用されることを特徴とする、請求項１から１４のいずれか一項に記載の方法。
【請求項１６】
セキュアサーバと、認証サーバと、パーソナルトークンをホストする少なくとも１つの端末装置とを含むネットワークにおける認証方法であって、
ａ．  セキュアサーバにおいて、派生鍵素材（Ｃｋ、Ｉｋ）を生成するためにランダム（ＲＡＮＤ）および秘密鍵に基づく計算を実行するステップと、
ｂ．  前記派生鍵素材（Ｃｋ、Ｉｋ）を、前記ランダムと一緒に、さらに、さらなるデータ（ＡＵＴＮ、ＸＲＥＳ、ＭＡＣ、ＳＱＮ、Ａｋ、ＡＭＦ）と一緒に、セキュアサーバ（ＳＳ）から認証サーバ（ＡＳ）に送るステップと、
ｂ’．  前記認証サーバにおいて、認証されるべきパーソナルトークンが、第１のタイプのパーソナルトークンであるか、または第２のタイプのパーソナルトークンであるかを判定するために、ネットワークにおいてパーソナルトークンのデータベーシスを使用するステップとを含み、
パーソナルトークンが、第１のタイプのパーソナルトークンである場合、
ｃ１．  前記派生鍵素材（Ｃｋ、Ｉｋ）の少なくとも一部を使用して、前記さらなるデータ（ＭＡＣ＊、ＳＱＮ＊）の少なくとも一部を変更するステップと、
ｄ１．  前記さらなるデータ（ＡＵＴＮ、ＡＵＴＮ＊、ＸＲＥＳ、ＭＡＣ、ＳＱＮ、Ａｋ、ＡＭＦ、Ｍａｃ＊、ＳＱＮ＊）および前記ランダム（ＲＡＮＤ）を、ホスト端末装置を介して前記パーソナルトークンに送るステップと、
ｅ１．  パーソナルトークンにおいて、受け取られたＲＡＮＤおよび秘密鍵Ｋに基づいて、前記派生鍵素材（Ｃｋ、Ｉｋ）の前記少なくとも一部を再計算するステップと、
ｆ１．  パーソナルトークンにおいて、受け取られたさらなるデータの変更された一部を解釈するために派生鍵素材の前記再計算された少なくとも一部を使用するステップと、
ｇ１．  パーソナルトークンの中に、派生鍵素材の再計算された一部を保持するステップとを含み、
パーソナルトークンが、第２のタイプのパーソナルトークンである場合、
ｃ２．  派生鍵素材の前記一部に基づく前記変更を実行することなしに、前記さらなるデータ（ＡＵＴＮ、ＡＵＴＮ＊、ＸＲＥＳ、ＭＡＣ、ＳＱＮ、Ａｋ、ＡＭＦ、Ｍａｃ＊、ＳＱＮ）および前記ランダム（ＲＡＮＤ）を、ホスト端末装置を介して前記パーソナルトークンに送るステップと、
ｄ２．  パーソナルトークンにおいて、受け取られたＲＡＮＤおよび秘密鍵Ｋに基づいて、前記派生鍵素材（Ｃｋ、Ｉｋ）の少なくとも一部を再計算して、派生鍵素材の前記少なくとも一部をパーソナルトークンから端末装置に伝送するステップとを含む方法。
【請求項１７】
ランダムおよび秘密鍵（Ｋ）に基づいて派生鍵素材を生成する、認証サーバと、セキュアサーバとを含む通信ネットワークにおける端末装置のためのパーソナルトークンであって、前記パーソナルトークンは、受け取られたランダム、およびパーソナルトークンの中に格納された秘密鍵（Ｋ）に基づき、派生鍵素材（Ｃｋ、Ｉｋ）を再計算するためのプログラム命令を含み、受け取られたさらなるデータを解釈するために、派生鍵素材の再計算された一部を使用するためのプログラム命令を含むことを特徴とするパーソナルトークン。
【請求項１８】
再計算された派生鍵素材をパーソナルトークンの中に保持するためのプログラム命令を含むことを特徴とする、請求項１７に記載のパーソナルトークン。
【請求項１９】
前記受け取られたランダムに基づいてさらなるデータの前記一部の再計算を実行し、派生鍵素材の前記一部に基づいてさらなるデータの前記一部を再変更し、かつ再計算されかつ再変更されたさらなるデータ部分を、さらなるデータの受け取られ変更された一部と比較するためのプログラム命令を含むことを特徴とする、請求項１７に記載のパーソナルトークン。
【請求項２０】
セキュアサーバによって最初に生成されたさらなるデータの変更されていない一部を取得するように、さらなるデータの受け取られ変更された一部の逆変更を実行し、前記受け取られたランダムに基づきさらに秘密鍵（Ｋ）に基づき、さらなるデータの前記一部を再計算し、かつセキュアサーバによって最初に生成されたさらなるデータの変更されていない一部を、さらなるデータの再計算された一部と比較するためのプログラム命令を含むことを特徴とする、請求項１７に記載のパーソナルトークン。
【請求項２１】
さらなるデータの前記変更される一部が、パーソナルトークンにサーバを認証するために通常、使用される、ＭＡＣ（メッセージ認証コード）であることを特徴とする、請求項１７に記載のパーソナルトークン。
【請求項２２】
ＭＡＣの再計算を実行することを特徴とする、請求項２１に記載のパーソナルトークン。
【請求項２３】
派生鍵素材の前記一部に基づいて、再計算されたＭＡＣの変更を実行し、かつ前記再計算されかつ再変更されたＭＡＣを、ホスト端末装置を介して認証サーバから受け取られた、変更されたＭＡＣと比較することを特徴とする、請求項２１に記載のパーソナルトークン。
【請求項２４】
派生鍵素材の前記一部を使用して、受け取られ変更されたＭＡＣの逆変更を実行し、かつ再計算されたＭＡＣを、逆に変更され受け取られたＭＡＣと比較することを特徴とする、請求項２１に記載のパーソナルトークン。
【請求項２５】
派生鍵素材が、暗号化鍵（Ｃｋ）の少なくとも一部分を含むことを特徴とする、請求項１７から２４のいずれか一項に記載のパーソナルトークン。
【請求項２６】
派生鍵素材が、完全性鍵（Ｉｋ）の少なくとも一部分を含むことを特徴とする、請求項１７から２５のいずれか一項に記載のパーソナルトークン。
【請求項２７】
受け取られたさらなるデータを前記解釈することは、受け取られたさらなるデータの前記一部が、前記派生鍵素材を使用して変更されているか否かを識別することを含み、パーソナルトークンが、
ｇ１）  さらなるデータの前記一部が、派生鍵素材の前記少なくとも一部を使用して変更されている場合、派生鍵素材の少なくとも所与の一部を保持する代替のステップ、および
ｇ２）  さらなるデータの前記一部が、変更されていない場合、派生鍵素材の前記所与の一部を端末装置に伝送する代替のステップを実行することを特徴とする、請求項１７に記載のパーソナルトークン。
【請求項２８】
受け取られたランダムに基づきさらに秘密鍵（Ｋ）に基づき、さらなるデータの前記一部の再計算を実行し、さらなるデータの前記受け取られた一部が、さらなるデータの再計算された一部にも、派生鍵素材を使用して変更された、前記再計算された一部にも対応しない場合、派生鍵素材の所与の一部をパーソナルトークン内部に保持することを特徴とする、請求項２７に記載のパーソナルトークン。
【請求項２９】
パーソナルトークンが、端末装置を介して応答（ＲＥＳ）を認証サーバに送り、認証サーバが、前記応答を使用してパーソナルトークンを認証すること、および認証サーバと認証サーバが相互に認証されると、パーソナルトークンが、内部鍵（ＫｓＮＡＦｉｎｔ）および外部鍵（ＫｓＮＡＦｅｘｔ）を派生鍵素材（Ｃｋ、Ｉｋ）の前記一部から派生させ、前記内部鍵（ＫｓＮＡＦｉｎｔ）が、端末装置を介してパーソナルトークンとリモートサーバとの間でセキュアチャネルを確立するために使用されるが、端末装置には隠され、前記外部鍵（ＫｓＮＡＦｅｘｔ）が、端末装置とリモートサーバとの間でセキュａチャネルを確立するために使用されることを特徴とする、請求項１７から２８のいずれか一項に記載のパーソナルトークン。
【請求項３０】
パーソナルトークンをそれぞれがホストする端末装置を認証する、通信ネットワークにおける認証サーバであって、
ａ．  ランダムと、前記ランダムに基づいて生成された派生鍵素材（Ｃｋ、Ｉｋ）と、さらなるデータ（ＡＵＴＮ、ＸＲＥＳ、ＭＡＣ、ＳＱＮ、Ａｋ、ＡＭＦ）とを、セキュアサーバから受け取るステップ、
ｂ．  前記派生鍵素材（Ｃｋ、Ｉｋ）の少なくとも一部を使用して、前記さらなるデータ（ＭＡＣ＊、ＳＱＮ＊）の少なくとも一部を変更するステップ、および
ｃ．  前記さらなるデータ（ＡＵＴＮ、ＡＵＴＮ＊、ＸＲＥＳ、ＭＡＣ、ＳＱＮ、Ａｋ、ＡＭＦ、Ｍａｃ＊、ＳＱＮ＊）および前記ランダム（ＲＡＮＤ）を、端末装置を介して、端末装置においてホストされるパーソナルトークンに送るステップを実行する認証サーバ。
【請求項３１】
パーソナルトークンをそれぞれがホストする端末装置を認証する、通信ネットワークにおける認証サーバのためのコンピュータプログラムであって、
ａ．  ランダムと、前記ランダムに基づいて生成された派生鍵素材（Ｃｋ、Ｉｋ）と、さらなるデータ（ＡＵＴＮ、ＸＲＥＳ、ＭＡＣ、ＳＱＮ、Ａｋ、ＡＭＦ）とを、セキュアサーバから受け取るステップ、
ｂ．  前記派生鍵素材（Ｃｋ、Ｉｋ）の少なくとも一部を使用して、前記さらなるデータ（ＭＡＣ＊、ＳＱＮ＊）の少なくとも一部を変更するステップ、および
ｃ．  前記さらなるデータ（ＡＵＴＮ、ＡＵＴＮ＊、ＸＲＥＳ、ＭＡＣ、ＳＱＮ、Ａｋ、ＡＭＦ、Ｍａｃ＊、ＳＱＮ＊）および前記ランダム（ＲＡＮＤ）を、端末装置を介して、端末装置においてホストされるパーソナルトークンに送るステップを実行するためのプログラム命令を含むコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークに関し、より詳細には、そのようなネットワークにおける認証および鍵合意プロトコルに関する。
【背景技術】
【０００２】
認証および鍵合意（ＡＫＡ、Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ａｇｒｅｅｍｅｎｔ）プロトコルは、２つの接続されたエンティティの間において鍵素材（ｋｅｙ  ｍａｔｅｒｉａｌ）および身元の証拠を提供するのに、有線環境および無線環境において広く使用されている。典型的な例は、ネットワークにおける認証サーバに対して認証される、セルラーネットワークにアクセスする無線加入者である。
【０００３】
異なるエンティティまたはデバイスが、ＡＫＡ手続きにかかわっている。
【０００４】
パーソナルトークンをホストする端末装置ＨＴ（例えば、移動電話機）と認証サーバ（ＡＳ）が、互いに通信する。パーソナルトークンとセキュアサーバは、マスタキーとしても知られる、同一の秘密鍵Ｋを格納する。
【０００５】
通常のＡＫＡプロトコル（例えば、セキュアデータ転送を実施するための）では、認証サーバとホスト端末装置ＨＴはともに、マスタキーから派生させられた鍵、すなわち、完全性鍵Ｉｋおよび暗号化鍵Ｃｋを使用することができる。そのような鍵、ＩｋおよびＣｋは、一方でセキュアサーバにより、他方でパーソナルトークンにより共有されるマスタキーから導出される。
【０００６】
他の状況、すなわち、特別なＡＫＡ手続きにおいて、ホスト端末装置は、完全性鍵Ｉｋと暗号化鍵Ｃｋの使用をともに奪われることがあり、すなわち、それらの派生鍵は、ホスト端末装置に開示されてはならない取り扱いに注意を要する（ｓｅｎｓｉｔｉｖｅ）データと見なされるべきである。
【０００７】
通常のＡＫＡ手続きを実行するための手続きを、図１に関連して以下に説明する。
【０００８】
通常、セキュアサーバＳＳは、ランダム化されたアレイＲＡＮＤを選択する。ＲＡＮＤを、ＡＫＡＡｌｇと呼ばれるアルゴリズム、およびセキュアサーバＳＳとパーソナルトークンとだけによって共有される秘密鍵Ｋをとともに使用して、セキュアサーバＳＳは、認証ベクトル（ＡＶ）を生成する。
【０００９】
認証ベクトルＡＶは、少なくとも以下の構成要素から成る。すなわち、初期ＲＡＮＤ、結果値（ＲＥＳ）、何らかの派生鍵素材（ＤＫＭ）、すなわち、通常、派生鍵ＩｋおよびＣｋ、およびメッセージ認証コード（ＭＡＣ）である。認証ベクトルＡＶは、次に、認証サーバＡＳに送られる。
【００１０】
認証サーバＡＳは、値ＲＡＮＤ、ＭＡＣ値、および場合によりその他のデータを、ホスト端末装置ＨＴに送る。ホスト端末装置は、次に、それらをパーソナルトークンＳＥに送る。
【００１１】
パーソナルトークンＳＥは、格納された秘密鍵Ｋ、および受け取られたパラメータ（少なくともＲＡＮＤ、ＭＡＣ）を使用して、ＡＫＡＡｌｇアルゴリズムを実行する。
【００１２】
パーソナルトークンＳＥは、共有される秘密鍵Ｋに基づき、かつ受け取られたＲＡＮＤにも基づき、ＭＡＣＴを再計算する。
【００１３】
次に、パーソナルトークンＳＥは、何らかの完全性チェック、および場合により、認証サーバの認証手続きを実行するために、再計算されたＭＡＣＴ値を、受け取られたＭＡＣ値と比較する（ＭＡＣ＝ＭＡＣＴか）。
【００１４】
次に、パーソナルトークンＳＥは、ＲＥＳを計算する。
【００１５】
ホスト端末装置は、ＲＥＳを認証サーバに送信して、パーソナルトークンが、サーバによって認証されるようにする。最後に、認証サーバＡＳが、ホスト端末装置から受け取られたＲＥＳを、セキュアサーバＳＳから受け取られたＸＲＥＤ値と比較することにより、パーソナルトークンを認証する。
【００１６】
また、パーソナルトークンＳＥは、派生鍵ＩｋおよびＣｋも計算して、それらの鍵をＲＥＳと一緒にホスト端末装置に送信する。ホスト端末装置は、それらの派生鍵を使用して、ＡＳに対するさらなるセキュリティ動作を実行する。
【００１７】
この基本的な認証ＡＫＡ手続きの例が、３ＧＰＰ  ＴＳ３３．１０２において規定されたＵＭＴＳ  ＡＫＡである。
【発明の開示】
【発明が解決しようとする課題】
【００１８】
説明されるＡＫＡ通常手続きは、ホスト端末装置ＨＴと認証サーバＡＳとの両方の間で、セキュア認証をもたらしかつ鍵素材を共有するためによく適合されている。しかし、一部の特別な状況では、アルゴリズムＡＫＡＡｌｇが、パーソナルトークン内で異なる形で処理されることが必要とされる。例えば、一部の特定の状況下で、派生鍵ＩｋおよびＣｋ、またはそれらの鍵の一部が、取り扱いに注意を要するデータと見なされ、したがって、ホスト端末装置に開示されることが防止されること、すなわち、派生鍵ＩｋおよびＣｋが、ホスト端末装置に送られる代わりに、パーソナルトークン内部に保持されることが要求される。
【００１９】
それらの特別のケースでは、多くの状況に関する基本的な要件は、ホスト端末装置が、標準のＡＫＡまたは他の任意の手続きを使用して、派生鍵を取得することができないことである。
【課題を解決するための手段】
【００２０】
本発明の目的は、派生鍵のホスト端末装置への開示を回避するための問題解決法を提供することである。
【００２１】
より一般的には、通常のＡＫＡ手続きに基づくが、任意の種類であることが可能ないくつかの態様において異なる、ある特定の認証手続きが存在する。同一のパーソナルトークンが、パーソナルトークンの寿命の間に出会う可能な様々なＡＫＡ手続きに応じて、異なる反応を受ける可能性がある。
【００２２】
本発明の第２の目的は、ある特定の認証手続きが要求されることをパーソナルトークンに効率的に信号通知する仕方を提案することである。
【００２３】
本発明のその他の目的、特徴、および利点は、限定的ではない例として与えられ、添付の図面を参照する、本発明の好ましい実装、およびその実装のために構成されたシステムの実施形態の、以下の説明を読むことで、明らかとなろう。
【発明を実施するための最良の形態】
【００２４】
図２で見られる本発明によるシステムは、ＡＫＡ手続きにかかわるエンティティまたはデバイスと同一の、様々なエンティティまたはデバイスを含む。
【００２５】
システムは、パーソナルトークンＳＥをホストする端末装置ＨＴを含む。ある特定の実施形態では、ホスト端末装置ＨＴは、移動電話機、または、より一般的にパーソナルトークン受け入れデバイスであることが可能であり、パーソナルトークン受け入れデバイスは、パーソナルトークンを受けるアパーチャまたはスロットを備えた筐体の形態を有することが可能であるが、パーソナルトークンが、パーソナルトークン受け入れデバイスと通信することを可能にする任意の形態であることも可能である。
【００２６】
システムは、認証サーバＡＳと、認証サーバが通信するセキュアサーバＳＳとを含み、そのセキュアサーバの中に、秘密鍵またはマスタキーＫが保持される。
【００２７】
パーソナルトークン、つまりセキュア要素ＳＥは、端末装置ＨＴにホストされる。ホスト端末装置ＨＴは、トークンと通信する。
【００２８】
秘密鍵Ｋは、トークンの中にも保持されるが、ホスト端末装置ＨＴには開示されない。よく知られているとおり、秘密鍵Ｋは、パーソナルトークンとセキュアサーバとの間で共有される秘密である。
【００２９】
ある特定の実施形態では、パーソナルトークン（ＳＥ）は、スマートカードとも呼ばれる、集積回路を有するカードである。
【００３０】
本発明は、認証および鍵合意（ＡＫＡ）手続き、すなわち、２つの接続されたエンティティの間で鍵素材を確立し、かつ身元の証拠を提供することを可能にする手続きを、安全にすることにある。
【００３１】
この実施形態は、完全性鍵Ｉｋまたは暗号化鍵Ｃｋなどの派生鍵の、ホスト端末装置ＨＴへの開示を回避すること、すなわち、派生鍵素材または鍵素材の一部の、ホスト端末装置ＨＴへの開示を回避することを可能にする。
【００３２】
この実施形態による手続きは、以下のステップを含む。すなわち、
ホスト端末装置ＨＴが、認証サーバに向けてＨＴＴＰ要求を送信して、ＡＫＡ手続きを要求する。また、ＡＫＡ手続きは、認証サーバによって要求されることも可能である。
【００３３】
ＡＳが、セキュアサーバ（ＳＳ）から標準の認証ベクトル（ＡＶ）を供給される（図２のステップ１）。
【００３４】
認証ベクトル（ＡＶ）は、少なくとも以下の構成要素から成る。すなわち、初期ＲＡＮＤ、結果値ＲＥＳ、以降ＤＫＭと表される派生鍵素材、すなわち、通常、派生鍵ＩｋおよびＣｋ、およびメッセージ認証コード（ＭＡＣ）である。
【００３５】
有利な実施形態では、認証サーバＡＳは、出会ったパーソナルトークン（認証トークンとも呼ばれる）の性質に応じて、特に、出会ったパーソナルトークンに関連するユーザセキュリティ設定（ＵＳＳ）に基づき、ＭＡＣの変更が必要であるか否かを判定する。そのような設定は、認証サーバ側にあらかじめ格納されていても、端末装置ＨＴを介してパーソナルトークンから受け取られてもよい。
【００３６】
ＩｋおよびＣｋが取り扱いに注意を要するデータと考えられない、いくつかのタイプのパーソナルトークンの場合、通常のＡＫＡ手続きが、適用される、すなわち、変更されていないＭＡＣが、ＲＡＮＤ値と一緒にトークンに伝送され、派生鍵が、次に、パーソナルトークンによってホスト端末装置ＨＴに伝送される。
【００３７】
しかし、派生鍵が、ユーザセキュリティ設定に従って隠される場合、認証サーバＡＳは、認証ベクトルＡＶからＭＡＣ値を取り、派生鍵の１つを使用することにより、前記ＭＡＣの変更を計算する。このため、Ｍａｃは、派生鍵素材ＤＫＭの少なくとも一部を使用することにより、変更される。
【００３８】
派生鍵素材を使用するＭＡＣのそのような変更の例として、その変更は、ＭＡＣ＊＝Ｍ（ＭＡＣ，ＤＫＭ＊）であることが可能であり、ただし、ＤＫＭ＊は、派生鍵素材ＤＫＭの変更された部分、例えば、完全性鍵Ｉｋの値に基づく変更された値Ｉｋ＊である。
【００３９】
完全性鍵Ｉｋと暗号化鍵Ｃｋはともに、セキュアサーバによって実行される計算によってマスタキーＫおよびＲＡＮＤから派生させられる。
【００４０】
後段で説明されるとおり、前記秘密マスタキーＫは、パーソナルトークンＳＥの中にも格納され、そのような派生は、パーソナルトークンが、ＲＡＮＤを受け取っている限り、パーソナルトークンにおいても可能である。したがって、マスタキーＫは、パーソナルトークンとセキュアサーバとの間における共有される秘密を構成する。
【００４１】
セキュアサーバＳＳから受け取られた派生鍵ＩｋおよびＣｋのどちらかに基づき、認証サーバＡＳは、派生鍵素材の少なくとも一部の変更を計算する、すなわち、前述したＤＫＭ＊パラメータを計算する。例えば、認証サーバＡＳは、以下のとおり、完全性鍵Ｉｋに適用される、よく知られた関数（ｓｈａ−１）の最初の６４ビットを取る。すなわち、
Ｉｋ＊＝Ｔｒｕｎｃ（ＳＨＡ−１（ＩＫ））
Ｔｒｕｎｃは、（ＳＨＡ−１）のビット出力の切り捨てを表し、（ＳＨＡ−１）は、完全性鍵Ｉｋに適用された、よく知られたハッシュ関数である。
【００４２】
ＭＡＣ＊は、以下の形で計算されることが可能である（図２のステップ３）。すなわち、
ＭＡＣ＊＝ＭＡＣ  ＸＯＲ  Ｔｒｕｎｃ（ＳＨＡ−１（ＩＫ））
ＭＡＣの変更は、式ＭＡＣ＊＝ＭＡＣ  ＸＯＲ  ＤＫＭ＊における、派生鍵素材の前記変更された部分ＤＫＭ＊の知識に応じて、好ましくは、可逆性である。
【００４３】
一旦変更された値ＭＡＣ＊が、認証サーバＡＳによって計算されると、認証サーバＡＳは、ＲＡＮＤを、ＭＡＣ＊と一緒に、さらにＳＱＮ、ＡＫ、ＡＭＦなどの値と一緒に、ホスト端末装置ＨＴに送信する（図２のステップ４）。それらの異なるデータを送信するために、例えば、同一のメッセージが使用される。
【００４４】
値ＲＥＳは、認証サーバの中に格納されたままである。
【００４５】
ホスト端末装置ＨＴが、次に、ＲＡＮＤ、ＭＡＣ＊、ＳＱＮ、ＡＫ、ＡＭＦ（および、場合により、その他の値）をパーソナルトークンＳＥに送信する（図２のステップ５）。
【００４６】
さらなるアルゴリズムＡＫＡＡｌｇが、パーソナルトークンＳＥにおいて以下の形で実行される。すなわち、
パーソナルトークンＳＥは、派生鍵Ｃｋ、Ｉｋ、および値ＲＥＳを計算し、これらの計算は、パーソナルトークンが、マスタキーＫを格納しており、ＣｋおよびＩｋを計算することとおよびＲＥＳを計算することの両方のために必要であるＲＡＮＤを受け取ったばかりであるために、パーソナルトークンにおいて可能である。
【００４７】
その時点で、ＣｋおよびＩｋは、認証サーバＡＳの中、およびパーソナルトークンＳＥの中に存在するが、ホスト端末装置ＨＴの中には存在しない。その時点まで、したがって、そのような鍵ＣｋおよびＩｋは、ホスト端末装置ＨＴに開示されないために、取り扱いに注意を要するデータと考えられることが可能である。
【００４８】
この例では、パーソナルトークンは、次に、受け取られたＭＡＣ＊に基づき、さらに、再計算されたＩｋに基づき、変更されていないＭＡＣの計算を実行する。
【００４９】
その目的で、パーソナルトークンＳＥは、変更された完全性鍵Ｉｋ＊、すなわち、派生鍵素材ＤＫＭの変更された部分ＤＫＭ＊を計算する。
Ｉｋ＊＝Ｔｒｕｎｃ（ｓｈａ−１（Ｉｋ））
【００５０】
次に、パーソナルトークンは、受け取られ変更された値ＭＡＣ＊に対応するＭＡＣ値を以下のとおり計算する。すなわち、
ＭＡＣＣ＝Ｍ’（ＭＡＣ＊，Ｉｋ＊）、すなわち、ＭＡＣＣ＝Ｍ’（ＭＡＣ＊，ＤＫＭ＊）、ただし、Ｍ’は、ＡＳによって使用されるＭの逆関数、すなわち、このケースでは、ＭＡＣＣ＝ＭＡＣ＊  ＸＯＲ  Ｉｋ＊である（図２のステップ６）。可逆関数Ｍ’は、パーソナルトークンＳＥと認証サーバＡＳの両方によって事前に知られている。
【００５１】
Ｍ’計算は、前述した詳細な例では、以下の計算である。すなわち、ＭＡＣＣ＝ＭＡＣ＊  ＸＯＲ  Ｔｒｕｎｃ（ＳＨＡ−１（ＩＫ））である。
【００５２】
また、トークンは、ＭＡＣＴ、すなわち、ＲＡＮＤとマスタキーＫの両方に基づいて計算されるＭＡＣ値も計算する。通常、ＭＡＣは、伝送されたパラメータＳＱＮおよびＡＭＦにも応じる。
【００５３】
ＭＡＣＴが、次に、ＭＡＣＣと比較される（図２のステップ７）。
【００５４】
前述したとおり、Ｍは、好ましくは、可逆関数であるのに対して、変更されたＭＡＣの計算において使用される派生鍵は、両方の側で知られている。
【００５５】
本発明の別の実施形態では、Ｍは、可逆性ではない可能性がある。そのようなケースでは、パーソナルトークンは、ＭＡＣ値を再計算し、次に、ＭＡＣ値の変更を再計算し、次に、受け取られ変更されたＭＡＣ値を、再計算され再変更されたＭＡＣ値と比較する。
【００５６】
ＭＡＣＣをＭＡＣＴと比較する仕方は、ＭＡＣＴと他の値の連結（ｃｏｎｃａｔｅｎａｔｉｏｎ）を比較すること、例えば、
【数１】
2008503800.tif 000003
を、ＭＡＣＴと他の値の連結、例えば、
【数２】
2008503800.tif 000004
と比較することであり、この数式において、
【数３】
2008503800.tif 000005
は、連結記号である。
【００５７】
ＭＡＣ比較が不成功であったケース、すなわち、ＭＡＣＴが、ＭＡＣＣと異なるように見えるケースでは、パーソナルトークンは、ＭＡＣ比較が不成功であったことをホスト端末装置ＨＴに知らせる。
【００５８】
ＭＡＣ比較が成功したケースでは、パーソナルトークンＳＥは、ＲＥＳを計算して、ホスト端末装置に送り（図２のステップ８）、他のデータ（ＤＫＭ、すなわち、この例では、ＩｋおよびＣｋ）、またはそのデータの一部分をトークンの中に隠されたままにする。ホスト端末装置は、次に、認証サーバＡＳによるパーソナルトークンＳＥの認証のために、ＲＥＳを認証サーバＡＳに送信する（図２のステップ９）。
【００５９】
この例では、パーソナルトークンＳＥと認証サーバＡＳはともに、Ｋｓと名付けられたＩｋとＣｋの連結を使用して、内部ＮＡＦ固有鍵Ｋｓ＿ｉｎｔ＿ＮＡＦおよび外部ＮＡＦ固有鍵Ｋｓ＿ｅｘｔ＿ＮＡＦを派生させる。
【００６０】
内部ＮＡＦ固有鍵Ｋｓ＿ｉｎｔ＿ＮＡＦは、端末装置ＨＴを介してパーソナルトークンとリモートサーバとの間でセキュアチャネルを確立するために使用されるが、端末装置ＨＴには隠される。
【００６１】
外部ＮＡＦ固有鍵Ｋｓ＿ｅｘｔ＿ＮＡＦは、ホスト端末装置ＨＴとリモートサーバとの間でセキュアチャネルを確立するために使用される。
【００６２】
ＭＡＣが、端末装置を介してパーソナルトークンＳＥに送られる前に、認証サーバＡＳによって変更されないケースでは、パーソナルトークンＳＥは、通常の手続きに従って動作する、すなわち、ＭＡＣの値を再計算して、チェックし、認証の後、派生鍵ＩｋおよびＣｋを端末装置に提供する。
【００６３】
派生鍵素材、または素材の一部の使用による、認証手続きにおけるＭＡＣ、またはＲＡＮＤに関連する他の任意のデータのそのような変更は、提供される２つの手続きのうち１つの特別な手続きをトリガする可能性とは無関係に、それ自体で多くの利点をもたらす。
【００６４】
これが、ＭＡＣが変更されるか否かに応じる異なる手続きの可能性なしに、ＭＡＣの変更が系統立って適用される理由である。
【００６５】
ＭＡＣの変更は、ＭＡＣの真の値を隠して、不正なエンティティによって、関連するＲＡＮＤを使用してＭＡＣが解釈されて、そのエンティティが、取り扱いに注意を要するデータの何らかの値を推測できることを防止するという利点を有する。
【００６６】
そのような変更によって隠されてはいるものの、ＭＡＣは、それでも、パーソナルトークンによって解釈されることが可能なままであり、すなわち、トークンは、依然、ＭＡＣの有効性をチェックすることができる。というのは、パーソナルトークンは、そのような有効性をチェックするのに必要な派生鍵素材を埋め込むからである。
【００６７】
また、ＭＡＣの変更は、不正なエンティティが、伝送された（ＲＡＮＤ，ＭＡＣ）対をピックアップすることができ、その対をトークンに再生して、それと引き替えにＣｋおよびＩｋの値を得ることができることを防止するという利点も有する。
【００６８】
以上すべての利点は、ＲＡＮＤとともに伝送される他のデータに関しても当てはまる。
【００６９】
以上に説明した、隠す利点とは無関係に、ＭＡＣの変更、および認証手続きにおいてＲＡＮＤとともに伝送される別のデータの変更について選択する、または選択しない可能性は、そのような変更に応答してカードによって実行されるべき特別な手続きを効率的に信号通知するという利点を有する。
【００７０】
このケースでは、ＭＡＣのそのような変更は、取り扱いに注意を要するデータＩｋおよびＣｋをカード内に保つ必要性を信号通知する。派生鍵素材を隠すこととは異なることが可能な、いずれの手続きであれ、トークンにおいて実行されるべき特定の手続きを示すために、同一の信号通知が適用されることが可能である。変更されたＭＡＣは、前記信号通知に応答して、トークンによって実行されるべき特別な動作をトリガするものとして、トークンによって解釈されることが可能である。
【００７１】
また、派生鍵素材を隠すケースにおいても、変更を介する信号通知は、ＲＡＮＤと一緒にトークンに送られるＡＭＦパラメータなどのフラグを、トークンが調べるように誘導することに存することが可能である。すると、ＡＭＦの特別な値が、トークンによって、例えば、トークンまたは他の任意の手続きによってＣｋおよびＩｋが隠されることを命令している、特定の意味として読み取られることが可能である。そのような変更されたＭＡＣが存在せず、したがって、ＡＭＦフラグへのリダイレクトが存在しない場合、スマートカードは、Ｃｋ値およびＩｋ値を開示することを許される。
【００７２】
そのような例では、変更されているまたは変更されていないＭＡＣの意味と、変更されているＭＡＣによってトークンがリダイレクトされるＡＭＦフラグの特定の値との間で、多くの組み合わせが存在する。
【００７３】
前述したのと同一の手続きが、ＲＡＮＤとともに伝送される任意の値の変更を使用することにより、適用されることが可能である。ＭＡＣと同様な別の値は、ＭＡＣの計算において使用される値であることが可能である。しかし、そのような値は、好ましくは、いずれの派生鍵素材の計算においても使用されない。
【００７４】
変更されることが可能なそのような他のデータは、例としてＳＱＮであることが可能である。ＳＱＮは、以下の形で変更されることが可能である。すなわち、
認証サーバが、例えば、以下のとおり、ＳＱＮを変更する。すなわち、ＳＱＮ＊＝ＳＱＮ  ＸＯＲ  ＤＫＭ＊であるようにし、次に、ＲＡＮＤ、ＳＱＮ＊、および変更されていないＭＡＣ（ＳＳによって、変更されていないＳＱＮ値およびＲａｎｄから計算された）を伝送する。次に、トークンが、以下の動作を実行する。
【００７５】
第１に、トークンは、受け取られたＳＱＮ（変更されていないＳＱＮ、または変更されたＳＱＮ＊）が、ＳＱＮ管理規則に従って正しい範囲に入っていることをチェックする。
【００７６】
第２に、トークンは、可能な２つのケースを扱う。第１のケースで、トークンは、ＳＱＮが変更されていないと想定する。
【００７７】
次に、トークンは、ＳＱＮが、正しい範囲に入っていることをチェックする。ＳＱＮが、正しい範囲に入っている場合、トークンは、ＲＡＮＤ、マスタキー、ならびに通常、ＳＱＮおよびＡＭＦに応じて、ＭＡＣＴを計算し、ＭＡＣＴを、受け取られたＭＡＣと比較する。ＭＡＣ値は、好ましくは、変更されていないデータ、すなわち、変更されていないＲＡＮＤ、ＳＱＮ、およびＡＭＦを使用して計算される。
【００７８】
ＭＡＣ＝ＭＡＣＴであった場合、トークンは、通常のＡＫＡが行われていることを識別し、そのため、ＣＫおよびＤＫが、開示される。
【００７９】
ＭＡＣ＝ＭＡＣＴではなかった場合、トークンは、第２のケースを扱う。
【００８０】
トークンは、ＳＱＮが変更されており、そのため、ＳＱＮ＊が、受け取られた値であるものと想定する。
【００８１】
次に、トークンは、ＤＫＭを計算し、ＤＫＭ＊を計算し、ＳＱＮ＝ＳＱＮ＊  ＸＯＲ  ＤＫＭ＊を計算し、マスタキー、ＲＡＮＤ、ならびに通常、ＳＱＮおよびＡＭＦフラグに応じて、ＭＡＣＴを計算し、次に、ＭＡＣＴを、受け取られたＭＡＣと比較する。
【００８２】
ＭＡＣＴが、ＭＡＣとは異なる場合、認証は、拒否される。
【００８３】
異ならない場合、トークンは、ＳＱＮが、正しい範囲に入っていることを検証し、その後、ＣＫおよびＩＫを開示しない。
【００８４】
ＳＱＮまたはＳＱＮ＊は、ＡＫによって隠されて送られることが可能である（このため、ＳＱＮ  ｘｏｒ  ＡＫ、またはＳＱＮ  ｘｏｒ  ＤＫＭ＊  ｘｏｒ  ＡＫが送られる）。
【００８５】
ＡＭＦは、例えば、
【数４】
2008503800.tif 000006
を実行して、ＳＱＮと同時に変更されることが可能である。
【００８６】
また、ＳＱＮ、ＡＭＦ、およびＭＡＣが、同時に変更されることも可能である。
【数５】
2008503800.tif 000007
【００８７】
しかし、ＲＡＮＤは、ＤＫＭを計算するのに使用されるので、変更されてはならない。
【００８８】
同一の信号通知が、いくらかの取り扱いに注意を要するデータに関して、通常、派生鍵素材に関して、特定の使用方法が実施される必要があることを、カードを介してホスト端末装置に示すために適用されることが可能である。そのケースでは、派生鍵素材がＳＥを出ても、ホスト端末装置は、ＡＫＡＡｌｇがパーソナルトークンにおいて行われた後に、前述したＭＡＣ手続きを実行することができる。
【図面の簡単な説明】
【００８９】
【図１】知られているＡＫＡ手続きの様々なステップを示す概略図である。
【図２】ＡＫＡに基づく本発明による手続きの様々なステップを示す概略図である。
【図１】
2008503800.tif 000008
【図２】
2008503800.tif 000009
【国際調査報告】
2008503800.tif 000010
2008503800.tif 000011