→IPSecまとめ
→VPNまとめ
IPSecで使うプロトコル:IKE, ESP,AH
それぞれ独立して動作する。
鍵交換 IKE(Internet Key Exchange)†
- SA合意を自動的に行うプロトコル
- ISAKMP/Oakley という鍵交換プロトコルをもとにしている
- IKEで鍵を交換して初めてIPSecの暗号化が有効になる
- IKE自体の暗号化通信のためにさらにIKE用の鍵交換手順が定められている
IKE鍵交換手順†
- IKE特有の暗号化通信
- IPSec要暗号化のためのネゴシエーション
- SA,SPI決定
暗号ペイロード(ESP:Encapsulating Security Payload)†
- IPパケットを暗号化するプロトコル。
- パケットを暗号化し、カプセル化する。
- ESPの構造=暗号化された通信内容(IPパケット)+SPI+シーケンス番号フィールド+認証データ(MAC?)
- IPヘッダまで暗号化するかどうかでモードが変わる
- ESPにIPヘッダを付けて送信
通信のシナリオ†
- 送信側、受診側で共通のパスワードを持つ
- 送信側では送るデータとパスワードを合わせたものをMDにより処理したのち、結果(MAC?)をESPの中の認証データとしてパケットに付け加える。
- 受診側は送られてきたデータと自分のパスワードでMD計算をし、ESPの認証データと合致するかを確認する。
認証ヘッダ(AH:Authentication Header)†
- IPパケットの「完全性の保証」と「認証」のためのプロトコル。
- このプロトコルはパケットが通信途中で改ざんされずに届いたことを保証するものであり、通信内容を秘密にするために使うものではない(暗号化はしない)ので注意。
- MAC(Message Authentication Code)を送る
- MAC=通信内容とパスワードを合わせたものに対してハッシュ関数による演算を施した計算結果
- 任意の大きさのデータから、数十ビットから数百ビットの固定長データが生成される
- IPSecでは、ハッシュ関数として「メッセージ・ダイジェスト(MD)」と呼ばれるものが使われる
- MDの代表的なアルゴリズム -> MD5
- AHではデータの暗号化は行わず、SPI+シーケンス番号+認証データ(MAC?)をパックしてIPヘッダの後に加える