先の2回において、暗号の意味、それを解読するということ、そして、その具体化としてストリーム暗号であるRC4とその安全性について解説した。802.11bで規定されているWEPについて、特にその解読法について説明する。802.11は1997年に規定された、最初の無線LAN関係の規格である。802.11nでは300Mbpsへの拡張が予定されている。無線LANの性質上、空間を伝搬している信号を誰にも気づかせることなく盗聴することが可能となる。無線は伝搬範囲を正確に制限することが難しく、利用を想定している範囲外(室外)に信号が伝搬することからその対策が必須となる。信号電力を制御することや電波を遮へいすることは事実上不可能であることから、物理的ではなく、いわゆる論理的に信号を処理する必要がある。暗号化を行って、利用を制限する必要がある。このために提案された暗号化の規格がWEPである。無線LANにおいては当初から数Mbpsという高速な通信を仮定していたことから、暗号化においてオーバーヘッドが許されない、高速に処理ができる暗号方式が望まれた。当時のDESをはじめとするブロック暗号では、高速処理という面において十分な性能が得られず、高速処理可能なストリーム暗号の適用が考えられた。RC4は当時すでにさまざまな分野で実用化に具されており、特にソフトウエア実装において実績もあった。よってRC4が採用されることとなった。WEPとその脆弱(ぜいじゃく)性WEPは暗号アルゴリズムとしてRC4を用いているものの、RC4と同じ規格となっていない。WEPではIPレイヤで生成されるパケットごとに生成される鍵(パケット鍵)Kを、40ビットあるいは104ビットの秘密鍵(WEP鍵)K’と24ビットの初期化ベクトルIVを用いて、その連結K=IV||K’として生成する。WEPにおけるIVの役割は以下のとおりである。通常、WEP鍵は頻繁に更新することはなく、WEP鍵だけで暗号化した場合、キーストリームは常に同じものとなる。暗号文は平文との排他的論理和で得られることから、キーストリーム自体が類推される可能性が高くなる。無線LANへの利用においては、後述するように平文であるパケットでは、部分的に固定値を取ることがあり、キーストリームの推定からパケット全体を推定することが容易になる可能性がある。したがって、IVを変化させることによって、キーストリームを変化させている。IVは平文として、暗号化されたパケットに加えて伝送される。当初、40ビットの暗号化鍵(WEP鍵)を使用したが、鍵の全数探索で容易に推定可能となり、現在では利用に適さず、104ビットのWEP鍵が用いられる。注意深く設定された104ビット鍵に対して全数探索は無力であり、鍵を導出することは困難である。WEPとRC4との相違は秘密鍵の設定方法にある。WEPは秘密鍵の設定を制限したRC4なのである。RC4の脆弱性はWEPの脆弱性そのものとなる。第2回でも述べたように、RC4に対して運用を脅かす致命的な欠陥は発見されておらず、キーストリームが既知としても現実的にはRC4を解読する、すなわち秘密鍵を導出することはできない。他方、WEPでは秘密鍵の先頭24ビットが既知であり、かつ24ビットという短いIVゆえ、望みのIVに対するキーストリームを得ることも可能となる。結果的にこの相違点がWEPの脆弱性となり、WEPの致命的な欠陥に結びつくこととなった。インターネット、符号理論、ネットワークセキュリティー、暗号理論等の研究/教育/開発に従事。インターネットプロトコルハンドブック」など。ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。VeloCloudが選ばれる理由SD-WANとはなにか。Linuxエンジニア育成への思いF5とNGINXの組み合わせで、サービス公開をよりセキュアに。ITがお届けするポッドキャストです。