İnternet anahtar değişim protokolü

Mimari

En IPsec uygulamaları, kullanıcı alanında koşan  bir  IKE daemondan ve asıl IP paketleri işleyen kerneldeki bir IPsec yığınından oluşur.
Kullanıcı alanı daemonları, gerektiği gibi IPsec uç nokta adresleri, anahtarları ve sertifikaları gibi konfigürasyon bilgisi içeren yığın depolamaya kolay erişime sahiptir. Kernel modülleri, diğer taraftan, paketleri verimli ve minimum yük ile işleyebilir. Bu performans sebepleri için önemlidir.
IKE protokolü genellikle port 500 UDP paketleri kullanır ve genellikle her iki tarafta bir SA oluşturmak için 2-3 kez çevrede dönen 4-6 paketlere ihtiyaç duyar. Anlaşmalı anahtar malzeme daha sonra IPsec yığınına verilir. Örneğin bu, korunan IP uç noktaları ve portları belirleyen bilgi olan bir AES anahtarı olabilir.
IPsec yığını da, eğer gerekirse ilgili IP paketlerini durdurur ve gerektiği gibi bir şifreleme / şifre çözme uygular. Uygulamalar,  paketlerin nasıl durdurulduğuna göre çeşitlenir örneğin, bazıları sanal aygıtlar kullanır, diğerleri güvenlik duvarının dışından bir parça alır gibi.
IKEv1 2 faz içerir: faz 1 ve faz 2.

IKEv1

IKE faz 1’in amacı; iletişimi şifrelemek için paylaşılan gizli anahtarı oluşturmak için Diffie-Hellman anahtar değişimi algoritması kullanarak daha güvenli bir doğrulanmış bir IKE iletişim kanalı kurmaktır. Bu müzakere  tek çift yönlü ISAKMP Güvenlik Ortaklığında (SA) sonuçlandırılmıştır. Kimlik doğrulama işlemi  ya önceden paylaşılmış imzalar, ya da ortak anahtar şifreleme kullanılarak yapılabilir. Faz 1 Ana Mod ve Agresif Mod’dan oluşur Ana Mod çiftlerin kimliklerini korur; Agresif Mod korumaz. Faz 2 boyunca; IKE çifleri, güvenlik ortaklığını IPSEC gibi diğer hizmetler adına müzakere etmek için faz 1 de kurulmuş güvenli kanalı kullanır. Müzakere en az iki tane tek yönlü güvenlik ortaklığıyla (bir gelen ve bir giden) sonuçlanır. Faz 2 yalnızca Hızlı modunda çalışır. 

IKEv1 Sorunları

IKE çok sayıda yapılandırma seçenekleri vardı ama tanınmış bir varsayılan durumda(evrensel uygulanan) otomatik müzakere için genel bir olanak yoktu. Sonuç olarak, IKE’deki her iki taraf tam güvenlik ortaklığı  türü üzerinde anlaşmaya vardı Onlar kurulamadı bir bağlantı oluşturmak istedi kurulamayan bir bağlantı yaratmak istediler. Eğer hata ayıklama rutii varsa, hata ayıklama çıkışını yorumlamak zor olduğu gerçeği ortaya çıktı.
Şifreleme parametresi:
Alice’in destekleyebildiği tüm algoritma kombinasyonları sunuluyor.(Çok fazla kombinasyon olabilir.)
Kimlik doğrulama:
Protokol mesajlarındaki belirli alanlar son turlarda imzalanmış şifrelenmiş / özetlenmiş.(Neden tamamı değil.)
Dahil değildir: Bob'un kabul ettiği parametreler(sorunlu)
Cookies :
Cookie koruması: Photuris Cookie’ye benzer
Karmaşıklık:
8 farklı protokol tanımlanır. (2 mod, her birinde kimlik doğrulama 4 tip)
Gereksiz yere esnek ve karmaşık.

Uygulamalar

IKE,  Windows 2000, Windows XP, Windows Server 2003, Windows Vista, ve Windows Server 2008’ teki Ipsec uygulamasının kısmı olarak desteklenir. ISAKMP/IKE uygulaması Cisco ve Microsoft tarafından geliştirilmiştir.
Microsoft Windows 7 ve Windows Server 2008 R2, MOBIKE (RFC 4555) gibi IKEv2’ (RFC 4306) yi de  VPN Tekrarbağlan özelliği sırasında kısmen destekler. (asAgile VPN olarak da bilir.)
ilişkili IKE yetenekleri ile IPsec’ in  birçok açık kaynak uygulamaları vardır. Linux üzerinde, Openswan ve strongswan uygulamaları pluto olarak çağrılan bir IKE daemonu sağlar. Pluto, KLIPS veya NETKEY kernel tabanlı IPsec yığınlarına konfigüre olabilir. NETKEY, Linux2.6 kernelinin ana Ipsec uygulamasıdır.
Berkeley Yazılım Dağıtımları da bir IPsec uygulaması ve IKE daemonuna ve en önemlisi kriptografik hızlandırıcıları desteklemeyi daha kolay yapan bir kriptografik çerçeveye (OpenBSD Cryptographic Framework, OCF) sahiptir. OCF  yakın zamanda Linux’ a taşınmıştır.
Ağ ekipman satıcılarının önemli bir kısmı kendi IKE daemonlarını (ve IPsec uygulamalarının), ya da birbirlerinden bir yığın lisans oluşturdu.
ICSA Labs, dünyanın dört bir yanından gelen 13 satıcıları ile 2007 yılının Mart ayında Orlando, FL’ de en son IKEv2 Interoperability Workshop’ unu düzenledi.