インターネットセキュリティアソシエーションおよび鍵管理プロトコル(ISAKMP )は、インターネット環境でセキュリティアソシエーション(SA)と暗号鍵を確立するためにRFC 2408で定義されたプロトコルです。ISAKMPは認証と鍵交換のためのフレームワークのみを提供し、鍵交換に依存しないように設計されています。インターネット鍵交換(IKE)やKerberized Internet Negotiation of Keys(KINK)などのプロトコルは、ISAKMPで使用するための認証済み鍵マテリアルを提供します。たとえば、IKEは、ISAKMPで使用するための認証済み鍵マテリアルを取得するために、Oakleyの一部とSKEMEの一部をISAKMPと組み合わせて使用するプロトコルを記述しており、IETF IPsec DOIのAHやESPなどの他のセキュリティアソシエーションにも適用されます。[ 1 ]
ISAKMP は、通信ピアの認証、セキュリティ アソシエーションの作成と管理、鍵生成技術、脅威軽減 (サービス拒否攻撃やリプレイ攻撃など) の手順を定義します。フレームワークとして、[ 1 ] ISAKMP は通常、鍵交換にIKEを利用しますが、 Kerberized Internet Negotiation of Keysなどの他の方法も実装されています。このプロトコルを使用して予備 SA が形成され、その後、新しい鍵生成が行われます。
ISAKMPは、セキュリティアソシエーションの確立、ネゴシエーション、変更、削除を行うための手順とパケット形式を定義します。SAには、IP層サービス(ヘッダー認証やペイロードカプセル化など)、トランスポート層サービス、アプリケーション層サービス、ネゴシエーショントラフィックの自己保護など、さまざまなネットワークセキュリティサービスの実行に必要なすべての情報が含まれています。ISAKMPは、鍵生成データと認証データを交換するためのペイロードを定義します。これらの形式は、鍵生成技術、暗号化アルゴリズム、認証メカニズムに依存しない、鍵と認証データを転送するための一貫したフレームワークを提供します。
ISAKMPは、セキュリティアソシエーション管理(および鍵管理)の詳細と鍵交換の詳細を明確に分離するために、鍵交換プロトコルとは区別されています。鍵交換プロトコルは多種多様であり、それぞれ異なるセキュリティ特性を持つ可能性があります。しかし、SA属性のフォーマットに合意し、SAの交渉、変更、削除を行うための共通のフレームワークが必要です。ISAKMPはこの共通のフレームワークとして機能します。
ISAKMPは、あらゆるトランスポートプロトコル上で実装可能です。すべての実装において、 UDPポート500を使用したISAKMPの送受信機能を含める必要があります。
OpenBSDは1998年にisakmpd(8)ソフトウェアを通じてISAKMPを初めて実装した。
Microsoft WindowsのIPsecサービスがこの機能を処理します。
KAMEプロジェクトは、Linuxおよびその他ほとんどのオープンソースBSD向けにISAKMPを実装しています。
最新のCiscoルーターは、VPNネゴシエーションにISAKMPを実装しています。
シュピーゲル誌が公開したリークされたNSAのプレゼンテーションによると、ISAKMPはIKEと同様に、IPSecトラフィックを復号するために未知の方法で悪用されている。[ 2 ] Logjam攻撃を発見した研究者らは、1024ビットのDiffie-Hellmanグループを破ると、VPNサーバーの66%、上位100万のHTTPSドメインの18%、SSHサーバーの26%が破られると述べており、これは研究者らによるとリークされた情報と一致している。[ 3 ]