MQV(Menezes–Qu–Vanstone)は、Diffie–Hellman方式に基づく認証付き 鍵合意プロトコルです。他の認証付きDiffie–Hellman方式と同様に、MQVはアクティブ攻撃者からの保護を提供します。このプロトコルは、任意の有限群、特に楕円曲線群で動作するように変更することができ、楕円曲線MQV(ECMQV)として知られています。
MQVは、1995年にアルフレッド・メネゼス、ミンフア・ク、スコット・ヴァンストーンによって最初に提案されました。その後、ローリー・ローとジェリー・ソリナスとの共同作業で改良されました。 [ 1 ] 1パス、2パス、3パスのバリアントがあります。
MQVは公開鍵暗号標準IEEE P1363およびNISTのSP800-56A標準に組み込まれています。[ 2 ]
MQVのいくつかの派生形は、Certicomに譲渡された特許で請求されている。
ECMQVは、国家安全保障局(NSA)の暗号標準規格群であるSuite Bから削除された。
アリスは鍵のペアを持っていますと彼女の公開鍵と彼女の秘密鍵とボブが持っている鍵ペアと彼の公開鍵と彼の秘密鍵。
以下ではは次の意味を持ちます。楕円曲線上の点とする。どこそして使用されるジェネレータポイントの次数。 それで最初の座標の最初のLビットは。
注:アルゴリズムの安全性を確保するには、いくつかのチェックを実行する必要があります。Hankerson et al.を参照してください。
ボブの計算:
アリスは計算する:
つまり、共有された秘密確かに同じです
オリジナルの MQV プロトコルでは、鍵交換フローに通信当事者のユーザー ID は含まれていません。ユーザー ID は、後続の明示的な鍵確認プロセスにのみ含まれています。ただし、明示的な鍵確認は MQV (およびIEEE P1363仕様) ではオプションです。2001 年に、Kaliski は MQV 鍵交換プロトコルに欠落している ID を悪用する未知の鍵共有攻撃を発表しました。[ 3 ]この攻撃は、明示的な鍵確認がない暗黙的に認証された MQV に対して機能します。この攻撃では、ユーザーは別のユーザーとセッション鍵を確立しますが、別のユーザーと鍵を共有していると騙されます。2006 年に、Menezes と Ustaoglu は、MQV 鍵交換の最後に鍵導出関数にユーザー ID を含めることでこの攻撃に対処することを提案しました。[ 4 ]明示的な鍵確認プロセスはオプションのままです。
2005年、KrawczykはMQVのハッシュ版であるHMQVを提案した。[ 5 ] HMQVプロトコルは、Kaliskiの攻撃に対処するために設計された(明示的な鍵確認を義務付けることなく)ものであり、証明可能なセキュリティと効率性の向上という追加目標も掲げていた。HMQVはMQVに3つの変更を加えた。
HMQVは、MQVでは必須である上記2)および3)の操作を省略できるため、パフォーマンスにおいてMQVよりも優れていると主張している。HMQVの論文では、これらの操作を省略することが安全であることを裏付ける「正式なセキュリティ証明」が示されている。
2005年、メネゼスはHMQVに対する小規模サブグループ隔離攻撃を初めて発表した。[ 6 ]この攻撃は、2)と3)における公開鍵検証の欠落を悪用する。この攻撃は、アクティブな攻撃者と交戦した場合、HMQVプロトコルがユーザーの長期秘密鍵に関する情報を漏洩し、基盤となる暗号グループの設定によっては、攻撃者が秘密鍵全体を復元できる可能性があることを示している。メネゼスは、少なくとも2)と3)における公開鍵検証を義務付けることで、この攻撃に対処することを提案した。
2006年、メネゼスの攻撃に対応して、クラフチクはIEEE P1363への提出文書(IEEE P1363 D1-preドラフトに含まれる)の中でHMQVを改訂した。しかし、クラフチクは、2)と3)でそれぞれ長期公開鍵と一時公開鍵を別々の操作として検証する代わりに、鍵交換プロセス中にそれらを1つの複合操作でまとめて検証することを提案した。これによりコストが削減される。この複合公開鍵検証が導入されれば、メネゼスの攻撃は防止される。改訂されたHMQVは、依然としてMQVよりも効率的であると主張できる。
2010 年、 Hao は改訂版 HMQV (IEEE P1363 D1-pre ドラフトで規定) に対する 2 つの攻撃を発表しました。[ 7 ]最初の攻撃は、HMQV が 0 と 1 以外の任意のデータ ストリングを長期公開鍵として登録できるという事実を悪用します。したがって、小さなサブグループ要素を「公開鍵」として登録できます。この「公開鍵」を知っていることで、ユーザーは HMQV のすべての検証手順を通過でき、最終的に完全に「認証」されます。これは、認証付き鍵交換プロトコルにおける「認証」が秘密鍵の知識を証明することに基づいて定義されるという一般的な理解と矛盾します。この場合、ユーザーは「認証」されますが、秘密鍵を持っていません (実際には秘密鍵は存在しません)。この問題は MQV には適用されません。2 番目の攻撃は、HMQV で明示的にサポートされている自己通信モードを悪用します。これは、ユーザーが同じ公開鍵証明書を使用して自分自身と通信できるようにするものです。このモードでは、HMQV は未知の鍵共有攻撃に対して脆弱であることが示されています。最初の攻撃に対処するため、Hao は Menezes が最初に提案したように、2) と 3) で公開鍵の検証を別々に実行することを提案しました。しかし、この変更は HMQV の MQV に対する効率上の利点を低下させることになります。2 番目の攻撃に対処するため、Hao は自己のコピーを区別するための追加の ID を含めるか、自己通信モードを無効にすることを提案しました。
Hao氏による2つの攻撃は、2010年にIEEE P1363ワーキンググループのメンバーによって議論された。しかし、HMQVをどのように改訂すべきかについて合意が得られなかった。その結果、IEEE P1363 D1-preドラフトのHMQV仕様は変更されず、IEEE P1363におけるHMQVの標準化はそれ以降進展していない。
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)