Wi-Fi Protected Access

Wi-Fi Protected Accessとは、Wi-Fi Alliance の監督下で行われている認証プログラム。Wi-Fi Alliance が策定したセキュリティプロトコルにそのネットワーク機器が準拠していることを示すものである。また、そのセキュリティプロトコルそのものも指す。これまでにWPA、WPA2、WPA3の3つのプログラム及びプロトコルが策定された。

1. 概要
-----

WPAプロトコルは、それ以前の Wired Equivalent Privacy  が脆弱性を持つことが指摘されたので、その対策として策定された。これはIEEE 802.11i の主要部分を実装したプロトコルであり、802.11i が完成するまでの間、WEP の代替として一時的に使うために策定されたものである。WPA対応以前の無線LANカードでも利用できるように設計されているが、第一世代のアクセスポイントでは必ずしも利用できない。

WPA2 認証マークは、その機器が拡張プロトコル規格に完全準拠していることを示す。この拡張プロトコルは古い無線LANカードでは使用できない。

基本的に、WPA は Wi-Fi Alliance による認証プログラムである。Wi-Fi Alliance は、Wi-Fi の商標の権利者であり、機器にその商標を付けることを認証している業界団体である。

WPAは利用する認証方式によって「WPAパーソナル」あるいは「WPAエンタープライズ」に大別される。

WPAパーソナル - 認証サーバを使用しないモード。RADIUSサーバなどを使用しない代わりに、認証にはPSK認証やSAEを利用する。
WPAエンタープライズ - 認証サーバを使用するモード。IEEE 802.1X/EAP認証がそれに該当する。

1.1. 歴史
-------

2. バージョン
--------

2.1. WPA
--------

WPA 認証マークは、製品が無線ネットワークのセキュリティ強化のために策定したセキュリティプロトコルへの準拠していることを示す。このプロトコルには Enterprise と Personal の2種類がある。Enterprise は、各ユーザに別々のキーを配布する IEEE 802.1X 認証サーバを使う方式である。Personal WPA はスケーラビリティのない「事前共有鍵 」モードを使い、アクセス可能なコンピュータには全て同じパスフレーズを与える。PSKモードでは、セキュリティはパスフレーズの秘密性と強度に依存する。このプロトコルの設計は、IEEE 802.11i 規格のドラフト3版に基づいている。

Wi-Fi Alliance は、この標準に基づいたセキュアな無線ネットワーク製品を普及させるべく、IEEE 802.11i の策定が完了する前にこのプロトコルを策定した。その時点で既に Wi-Fi Alliance は IEEE 802.11i 規格の最終ドラフト版に基づいた WPA2 仕様を考慮していた。従って、フレームフィールド上のタグが 802.11i と違っているのは意図的であって、プロトコルの2種類のバージョンが実装されたときの混乱を避けるために変更した。

データはRC4ストリーム暗号で暗号化され、鍵は128ビット、初期化ベクトル  は48ビットである。WEP からの主要な改善点は Temporal Key Integrity Protocol  である。これはシステムの運用中に鍵を動的に変更するプロトコルである。それに48ビット長の初期化ベクトルを組合せることにより、WEP での関連鍵攻撃に対する脆弱性への対策とした。

認証と暗号化に加えて、このプロトコルではペイロード完全性を大幅に強化している。WEP で使われていた本質的にセキュアでない巡回冗長検査  は、WEP の鍵を知らなくともペイロードを書き換えて、CRC を更新することが可能であった。WPA ではよりセキュアなメッセージ認証符号を使い、"Michael" というアルゴリズムを使っている。MIC にはフレームカウンタが含まれているので反射攻撃を防ぐことができる。

鍵とIVのサイズを大きくしたことで、関連鍵で送るパケット数を減らし、さらにセキュアなメッセージ認証システムを加えたので、無線LANへの侵入は従来より遥かに困難になった。Michael アルゴリズムは、古い無線LANカードでも機能するもののうちでは Wi-Fi Alliance の設計者らが到達した最も強度の高いアルゴリズムである。Michael も完全ではないため、TKIP は Michael のチェックに合格しないフレームが2個見つかると、ネットワークを1分間閉鎖する。そうして、新しい世代の鍵を要求し、再認証によってネットワークを再開する。

2.2. WPA2
---------

Wi-Fi Alliance の WPA2 プログラムで認証される拡張プロトコルは、802.11i の必須部分を実装したものである。特に新たにAESベースのアルゴリズムCCMP などを導入している。2006年3月13日からは、WPA2 認証を受けていないと "Wi-Fi CERTIFIED" と称することができなくなった。管理フレームを保護する機能にPMFを使用し、管理フレームへの盗聴、改ざん、「なりすまし」を防ぐが、WPA2ではオプションである。しかしWPA3ではPMFは必須となった。

2.3. WPA3
---------

2018年6月25日発表。2018年後半より対応機器がリリースされる予定。

WPA2のセキュリティ拡張として提供される。WPA2に対して、下記の新機能が追加されるとアナウンスされた。

Simultaneous Authentication of Equals 総当たり攻撃からの保護
設定のないデバイスに対するセキュリティ機能
Opportunistic Wireless Encryption 子機 - 親機間で個別にデータを暗号化
商用国家安全保障アルゴリズム アメリカ国家安全保障局が政府内の通信で採用する、[[Advanced Encryption Standardに準拠した192ビット暗号化を採用
Wi-Fi Easy Connect - Wi-Fi Protected Setupに代わる自動設定システムで、QRコードを読み取ることで設定する。従来のWPSはWPA3の設定には対応しない。
前方秘匿性 - 暗号化鍵の共有に使われている秘密鍵が漏えいしたとしても、過去に暗号化された通信データは解読されない。WPA3はWPA3-Personal、WPA3-Enterpriseに分けられる。

WPA3-Personal ではWPA-Personal、WPA2-Personalで使用していたPSKに代わり、ユーザの入力したパスワードをSAE で処理したPMKを利用する。PMK算出後は、従来のWPA/WPA2と同様に4-way handshakeによる鍵交換が実施される。

3. セキュリティ
---------

TKIPもしくはCCMPによる暗号化が提供されている。

3.1. WPAパーソナルモード
----------------

事前共有鍵モードは、個人宅や小規模の会社向けに設計されたもので、IEEE 802.1X 認証サーバを必要としない。

各ユーザーはネットワークにアクセスする際にパスフレーズを入力しなければならない。パスフレーズは8文字から63文字のASCIIの印字可能文字か、64桁の16進数である。ASCII文字を選択した場合、ハッシュ関数で最大約420.5ビットの情報を256ビットに縮小する。パスフレーズは何度もユーザーに入力させることを避けるために、ユーザーのコンピュータに記憶させておくことが多い。パスフレーズはアクセスポイントにも記憶させておく必要がある。

セキュリティ強化のためにはPBKDF2鍵導出関数を使うべきだが、ユーザーが一般に利用する弱いパスフレーズは、パスワードクラックに対して脆弱である。総当り攻撃への対策としては、13文字のランダムなパスフレーズで十分と言われている。Church of WiFi は上位1,000位までのSSIDについてレインボーテーブルを計算した。侵入を確実に防ぐには、ネットワークのSSIDは上位1,000位のSSIDと同じにしないよう設定すべきである。

半導体製造業者によっては、無線LAN機器をネットワークに追加する際にソフトウェアまたはハードウェアによる独自のインタフェースを使って、自動的にパスフレーズを生成して配布する方式を採用し、ユーザーが弱いパスフレーズを選択するのを防いでいる。これには例えば、ボタンを押下する方式やソフトウェア経由で短い語句を入力する方式がある。Wi-Fi Alliance はこれらの方式についても標準化を行い、Wi-Fi Protected Setupというプログラムで認証をおこなっている。

3.2. WPAエンタープライズモード
-------------------

WPAエンタープライズモードは、会社や宮公庁などの大規模事業所に利用されることを想定したモードであり、ユーザー認証に802.1XおよびEAPを使用する。

802.1Xを利用することにより、安全かつ動的な暗号キーが提供されるため、静的な暗号キーを管理する上で負担や問題がなくなる。

また、それを利用することにより、利用者側と認証サーバーとの性能の高い相互認証を利用できる。

この暗号化方式が設定されているネットワークを利用する場合は、利用者ごとに発行されたパスワードを使って認証をする。

802.1Xを使用すれば、認証に使用するパスワードが暗号化されずに認証サーバーに送信されることはない。

また、802.1Xの認証方式はWi-Fiに対して高い性能の認証方式を提供する。

そして、802.1Xでの認証には、Wi-Fiユーザーグループの集中管理ができ、これにはポリシーベースの動的キー、動的キーの割り当て、動的仮想LANの割り当て、SSIDの制限などが含まれている。これらの機能では、暗号キーがローテーションされる。

802.1XにはEAP-FASTやEAP-TLSなど、複数の認証方式が存在し、これらはそれぞれすべて異なるものであるが、利用者側とルーターの通信は同じく802.1XおよびEAPに依存している。

WPAエンタープライズモードを利用するには、認証サーバーがネットワーク上に存在する必要がある。

4. WPA Enterprise と WPA2 Enterprise における EAP 拡張
-----------------------------------------------

Wi-Fi Alliance は、WPA Enterprise および WPA2 Enterprise の認証プログラムに追加の EAP  を含めることを発表した。これにより、WPA Enterprise 認証を受けた機器が相互運用可能であることを保証できる。それ以前は EAP-TLS  のみを認証していた。

現在認証されている EAP は以下の通り。

EAP-TLS
EAP-TTLS/MSCHAPv2
Protected Extensible Authentication Protocolv0/EAP-MSCHAPv2
PEAPv1/EAP-GTC
EAP-SIM他のEAP方式を使う機器もある。この認証は主要なEAP方式の相互運用を保証しようとする試みである。

5. ハードウェアサポート
-------------

最近の "Wi-Fi CERTIFIED" 付きの機器では、上述のセキュリティプロトコルをサポートしているものがほとんどである2003年9月以降、Wi-Fi Alliance の認証を受けることがほぼ要説明。

WPAプログラムが策定される以前の機器でも WPA が使えるよう考慮されている。その場合、ファームウェアの更新が必要である。全ての古い機器でファームウェアが更新可能というわけではない。

6. 脆弱性
------

WPAに採用されているTKIPには脆弱性が存在することが知られており、AESをベースとするより強力なCCMPを使用するWPA2か、またはWPAにおいてTKIPの代わりにCCMPを使用することが推奨される。

しかしながら2017年10月16日に、セキュリティ面でより強力とされたWPA2についても脆弱性の発表を予告する情報が記載され、当時はこの規格が無線環境で広く用いられていたので、研究者やITコンサルタント等をはじめ、多くの利用者に波紋を広げた。

さらにWPA3についても、2019年4月15日に脆弱性が公開されたが、これはソフトウェアアップデートによる対処が可能である。

7. 脚注
-----

7.1. 注釈
-------

7.2. 出典
-------

8. 外部リンク
--------

[1]
[2], by Robert Moskowitz. Retrieved March 2, 2004.
[3]