Internet Key Exchange (IKE) este un set de protocoale de asistență create de Internet Engineering Task Force (IETF) și utilizate cu standardele de securitate a protocolului Internet (IPSec) pentru a oferi comunicații sigure între două dispozitive, sau egali, printr-o rețea. Ca protocol, IKE poate fi utilizat într-o serie de aplicații software. Un exemplu comun este configurarea unei rețele private virtuale securizate (VPN). Deși standard pe aproape toate sistemele moderne de operare pentru computere și echipamentele de rețea, o mare parte din ceea ce face Internet Key Exchange este ascuns pentru utilizatorul obișnuit.
Protocoalele din IKE stabilesc ceea ce se numește o asociere de securitate (SA) între doi sau mai mulți peer-uri prin IPSec, care este necesară pentru orice comunicație securizată prin IPSec. SA definește algoritmul criptografic utilizat în comunicare, cheile de criptare și datele de expirare ale acestora; toate acestea intră apoi în baza de date a asociației de securitate (SAD) a fiecărui peer. În timp ce IPSec poate avea SA configurat manual, Internet Key Exchange negociază și stabilește automat asociațiile de securitate între egali, inclusiv posibilitatea de a-și crea propriile.
Internet Key Exchange este cunoscut ca un protocol hibrid. IKE folosește un cadru de protocol cunoscut sub numele de Internet Security Association and Key Management Protocol (ISAKMP). ISAKMP oferă IKE capacitatea de a stabili SA și face sarcinile de a defini formatul încărcăturii utile de date și de a decide asupra protocolului de schimb de chei care va fi utilizat. ISAKMP este capabil să folosească mai multe metode pentru schimbul de chei, dar implementarea sa în IKE folosește aspecte a două. Majoritatea procesului de schimb de chei utilizează metoda OAKLEY Key Determination Protocol (OAKLEY), care definește diferitele moduri, dar IKE folosește și o parte din metoda SKEME (Source Key Exchange Mechanism), care permite criptarea cheii publice și are capacitatea de a reîmprospătați rapid tastele.
Când colegii doresc să comunice în siguranță, ei își trimit ceea ce se numește „trafic interesant” unul altuia. Traficul interesant este mesajele care aderă la o politică IPSec care a fost stabilită la egali. Un exemplu de această politică găsit în firewall-uri și routere este numit listă de acces. Lista de acces are o politică de criptare prin care anumite declarații din cadrul politicii determină dacă anumite date trimise prin conexiune ar trebui să fie criptate sau nu. Odată ce colegii interesați de comunicarea securizată au corelat o politică de securitate IPSec între ei, începe procesul de schimb de chei pe Internet.
Procesul IKE are loc în etape. Multe conexiuni securizate încep într-o stare nesecurizată, astfel încât prima fază negociază modul în care cei doi colegi vor continua procesul de comunicare securizată. IKE autentifică mai întâi identitatea colegilor și apoi securizează identitățile acestora determinând ce algoritmi de securitate vor folosi ambii colegi. Folosind protocolul de criptare cu chei publice Diffie-Hellman, care este capabil să creeze chei potrivite printr-o rețea neprotejată, Internet Key Exchange creează chei de sesiune. IKE încheie Faza 1 prin crearea unei conexiuni securizate, un tunel, între colegii care vor fi utilizate în Faza 2.
Când IKE intră în Faza 2, colegii folosesc noul IKE SA pentru a configura protocoalele IPSec pe care le vor folosi în restul conexiunii. Este stabilit un antet de autentificare (AH) care va verifica dacă mesajele trimise sunt primite intacte. Pachetele trebuie, de asemenea, să fie criptate, așa că IPSec folosește apoi protocolul de securitate de încapsulare (ESP) pentru a cripta pachetele, ferindu-le de privirile indiscrete. AH este calculat pe baza conținutului pachetului, iar pachetul este criptat, astfel încât pachetele sunt securizate de oricine încearcă să înlocuiască pachete cu altele false sau să citească conținutul unui pachet.
IKE schimbă, de asemenea, nonce criptografice în timpul fazei 2. Un nonce este un număr sau șir care este folosit o singură dată. Nonce este apoi folosit de un peer dacă trebuie să creeze o nouă cheie secretă sau să împiedice un atacator să genereze SA false, prevenind ceea ce se numește atac de reluare.
Avantajele unei abordări în mai multe faze pentru IKE sunt că, prin utilizarea SA Faza 1, oricare dintre egali poate iniția o Faza 2 în orice moment pentru a renegocia o nouă SA pentru a se asigura că comunicarea rămâne securizată. După ce Internet Key Exchange își finalizează fazele, se creează un tunel IPSec pentru schimbul de informații. Pachetele trimise prin tunel sunt criptate și decriptate conform SA-urilor stabilite în timpul Fazei 2. Când este terminat, tunelul se termină, fie expirând în funcție de o limită de timp prestabilită, fie după ce o anumită cantitate de date a fost transferată. Desigur, negocieri suplimentare IKE de Faza 2 pot menține tunelul deschis sau, alternativ, pot începe o nouă negociere de Faza 1 și Faza 2 pentru a stabili un nou tunel securizat.