IEEE 802.11i-2004(略称: 802.11i)は、 Wi-Fi Protected Access II(WPA2)として実装された、オリジナルのIEEE 802.11の改訂版です。この規格案は2004年6月24日に承認されました。この規格は無線ネットワークのセキュリティメカニズムを規定しており、オリジナルの規格にあった簡潔な認証とプライバシーの条項を、詳細なセキュリティ条項に置き換えています。この改訂により、欠陥のある有線等価プライバシー(WEP)は廃止されましたが、後に公開されたIEEE 802.11-2007規格に組み込まれました。
802.11i は、セキュリティ上の脆弱性が指摘されていた以前のセキュリティ仕様であるWired Equivalent Privacy (WEP) に取って代わるものです。Wi -Fi Protected Access (WPA) は、以前Wi-Fi Allianceによって WEP のセキュリティ上の問題に対する中間的な解決策として導入されました。WPA は 802.11i のドラフトのサブセットを実装しています。Wi-Fi Alliance は、承認された相互運用可能な 802.11i の完全な実装をWPA2と呼んでおり、RSN (Robust Security Network) とも呼ばれています。802.11i はAdvanced Encryption Standard (AES)ブロック暗号を使用しますが、WEP と WPA はRC4ストリーム暗号を使用します。[ 1 ]
IEEE 802.11i は、4 ウェイ ハンドシェイクとグループ キー ハンドシェイクという 2 つの新しいプロトコルを備えた堅牢なセキュリティ ネットワーク (RSN) を提供することで、IEEE 802.11-1999 を拡張します。これらは、IEEE 802.1Xで説明されている認証サービスとポート アクセス制御を使用して、適切な暗号鍵を確立および変更します。[ 2 ] [ 3 ] RSN は、堅牢なセキュリティ ネットワーク アソシエーション (RSNA) の作成のみを許可するセキュリティ ネットワークです。RSNA は、ステーション (STA) のペアが使用するアソシエーションの一種で、それらの間の認証またはアソシエーションを確立する手順に 4 ウェイ ハンドシェイクが含まれている場合に使用されます。[ 4 ]
また、この規格では、RSNA データの機密性と完全性に関する 2 つのプロトコル、TKIPとCCMPも提供しており、TKIP の機密性と完全性メカニズムは CCMP ほど堅牢ではないため、CCMP の実装が必須となっています。[ 5 ] TKIP を実装する主な目的は、アルゴリズムが WEP のみをサポートするほとんどの古いデバイスの機能内で実装可能であることでした。
初期認証プロセスは、事前共有キー(PSK) を使用するか、802.1X を介したEAP交換 ( EAPOLとして知られ、認証サーバーの存在が必要) に従って実行されます。このプロセスにより、クライアント ステーション (STA) がアクセス ポイント (AP) で認証されることが保証されます。PSK または 802.1X 認証の後、ペアワイズ マスター キー(PMK) と呼ばれる共有秘密キーが生成されます。PSK 認証では、PMK は実際には PSK であり、[ 6 ]これは通常、暗号学的ハッシュ関数としてSHA-1を使用する鍵導出関数に WiFi パスワードを通すことによって生成されます。[ 7 ] 802.1X EAP 交換が実行された場合、PMK は認証サーバーから提供される EAP パラメータから生成されます。
![]()
4ウェイハンドシェイク[ 8 ]は、アクセスポイント(または認証器)と無線クライアント(またはサプリカント)が、鍵を公開することなく、PSK/PMKを知っていることを互いに独立して証明できるように設計されています。アクセスポイント(AP)とクライアントは、鍵を公開する代わりに、既に共有しているPMKを使用してのみ復号できるメッセージを互いに暗号化し、メッセージの復号が成功すれば、PMKを知っていることが証明されます。4ウェイハンドシェイクは、悪意のあるアクセスポイント(たとえば、実際のアクセスポイントになりすます攻撃者のSSID)からPMKを保護するために重要であり、クライアントがアクセスポイントにPMKを伝える必要がないようにします。
PMKはセッション全体を通して有効であり、できる限り公開しないように設計されているため、トラフィックを暗号化するための鍵を導出する必要があります。4ウェイハンドシェイクを使用して、ペアワイズ一時鍵(PTK)と呼ばれる別の鍵を確立します。PTKは、PMK、AP nonce(ANonce)、STA nonce(SNonce)、AP MACアドレス、STA MACアドレスの属性を連結して生成されます。この積は擬似乱数関数にかけられます。ハンドシェイクでは、マルチキャストおよびブロードキャストトラフィックの復号に使用されるGTK(グループ一時鍵)も生成されます。
握手中に実際にやり取りされたメッセージは図に示されており、以下に説明します(すべてのメッセージはEAPOLキーフレームとして送信されます)。
ネットワークで使用されるグループ一時キー(GTK)は、プリセットされたタイマーの有効期限切れにより更新が必要になる場合があります。デバイスがネットワークから離脱する場合も、GTKを更新する必要があります。これは、デバイスがアクセスポイント(AP)からマルチキャストメッセージやブロードキャストメッセージを受信しないようにするためです。
更新を処理するために、802.11iでは双方向ハンドシェイクで構成されるグループキーハンドシェイクが定義されています。
CCMPは、AES暗号化アルゴリズムのCBC-MACカウンタ(CCM)モードに基づいています。CCMは、機密性を確保するためのCTRと、認証および完全性を確保するためのCBC-MACを組み合わせたものです。CCMは、MPDUデータフィールドとIEEE 802.11 MPDUヘッダーの選択された部分の両方の完全性を保護します。
RSNAは2つの主要な階層を定義している。
キー階層の説明には、次の2つの関数が使用されます。
ペアワイズキー階層では、PRF-384またはPRF-512を使用してPMKからセッション固有のキーを導出し、PTKを生成します。PTKはKCKとKEK、およびMACがユニキャスト通信を保護するために使用するすべての時間キーに分割されます。
GTKは、このモデルでは通常PRF-128またはPRF-256であるPRF-nを使用して生成される乱数でなければなりません。グループキー階層はGMK(グループマスターキー)を受け取り、GTKを生成します。
「保護フレームフィールドは 1 ビット長です。フレームボディフィールドに暗号化カプセル化アルゴリズムによって処理された情報が含まれている場合、保護フレームフィールドは 1 に設定されます。保護フレームフィールドは、タイプが Data のデータフレーム内、およびタイプが Management、サブタイプが Authentication の管理フレーム内でのみ 1 に設定されます。その他のすべてのフレームでは、保護フレームフィールドは 0 に設定されます。データフレームで保護フレームフィールドが 1 に設定されている場合、フレームボディフィールドは暗号化カプセル化アルゴリズムを使用して保護され、第 8 項で定義されているように展開されます。サブタイプが Authentication の管理フレームの暗号化カプセル化アルゴリズムとしては、WEP のみが許可されます。」[ 8 ]
RSNA は認証サービスを提供するために IEEE 802.1X に依存し、IEEE 802.11 キー管理方式を使用します