Uporaba kriptografije v internetu
Kazalo   
 

Protokoli IPSec

Gre za skupino protokolov, ki določajo šifriranje na nivoju IP (omrežni komunikacijski sloj). Do leta 2004 jih je razvijaladelovna skupina pri IETF kot del standarda IPV6 (RFC 2460). Ker bo do splošne uporabe opreme po tem standardu preteklo še nekaj let, je IPSec vgrajen v različne produkte, ki podpirajo današnjo verzijo IPV4. Zašifrirano je vse od glave omrežnega sloja naprej, torej vsi podatki, ki niso potrebni za usmerjanje paketov:

Paketov na vmesnih postajah ni treba dešifrirati, ker informacije, ki jih potrebujejo usmerjevalniki, niso zašifrirane.

IPSec sestavljajo:

  • dogovor o načinu šifriranja in izmenjava ključev (Key Management),
  • preverjanje nespremenjenosti podatkov in overjanje brez šifriranja (Authentication Header - AH)
  • šifriranje podatkov (Encapsulating Security Payload - ESP).

Dogovor o načinu šifriranja (Key Management)

Sodelujoči strani se dogovorita o:

  • algoritmu in ključu za šifriranje podatkov (za ESP),
  • algoritmu in ključu za overjanje (za AH),
  • času veljavnosti ključev,
  • IP naslovih pošiljatelja in naslovnika,
  • stopnji tajnosti (neobvezno),
  • oznaki uporabnika (neobvezno).

Ta dogovor imenujemo Security Association (SA). Vsaka stran določi svoj SA, v katerem je IP številka nasprotne strani, oznaka protokola (AH ali ESP) in pa 32-bitna oznaka Security parameters index (SPI), ki označuje vse potrebne algoritme in ključe za šifriranje oziroma dešifriranje, za katere sta se dogovorila. S SPI so na enostaven način ločili problem izmenjave ključev od overjanja in šifriranja paketov. Kako pride do dogovora, kakšen protokol bo tu uporabljen, še ni določeno. Vsi večji proizvajalci se trudijo, da bi bil izbran njihov predlog. Gre za postopek na višjem komunikacijskem sloju, zato ne spada med protokole IPV6.

Zaenkrat omenjajo naslednje načine:

  • ročna izmenjava podatkov o SA (na disketah, papirju, ...) je primerna za manjša okolja, nikakor pa ne za internet, kjer gre za stotine povezav;

  • Photuris (avtorja Phil Karn in William Simpson):
    Dogovor poteka z UPD paketi. Za izmenjavo začasnega skritega ključa uporabimo Diffie-Hellmanov algoritem, za overovitev obeh strani pa RSA DSS. Prejemnik pošlje svoj nabor algoritmov, pošiljatelj pa iz tega nabora izbere tiste, ki mu bolj ustrezajo. Ključ se ne hrani in postopek se ponovi ob vsaki novi povezavi.Tak način je varen, ker se iz predhodnega ključa ne da ugotoviti novega.

  • Simple Key Management Protocol (SKIP), ki ga je razvil Sun;
    SKIP daje prednost hitrosti pred varnostjo. Ob začetni povezavi se izmenja glavni skriti ključ po protokolu Diffie-Hellman. Ob naslednji povezavi pa pobudnik izračuna novi ključ kot naključno število, ga zašifrira s prej izmenjanim glavnim ključem in odpošlje. Če bi kdo izračunal glavni ključ, bi lahko dešifriral vse pakete. Možno je implemetirati SKIP tudi tako, da se ob vsaki povezavi izmenja nov glavni ključ.

  • Internet Security Association and Key Management Protocol (ISAKMP), ki ga podpira CISCO;
    V uporabi je predvsem verzija ISAKMP/Oakley- zadnjem času namesto te nerodne okrajšave uporabljajo IKE (Internet Key Exchange).

Pri določanju postopka šifriranja (SA in SPI) imamo možnost izbrati samo preverjanje nespremenjenosti podatkov v paketih, šifriranja paketov ali obojega hkrati.


Preverjanje nespremenjenosti podatkov

V paket dodamo "Authentication Header (AH)", ki vsebuje povzetek vsebine paketa, sami podatki pa niso zašifrirani (rfc2402). Dodano je naslednje:

  • številska oznaka glave, ki sledi AH (običajno oznaka za TCP glavo ali ESP glavo),
  • dolžina AH v 32-bitnih blokih,
  • SPI - Security parameters index - število, ki označuje, kateri kriptografski postopki in ključi so uporabljeni,
  • povzetek podatkov v paketu:
    Algoritem v protokolu ni fiksiran. Ena možnost je uporaba MD5 in to tako, da povzetek naredimo čez podatke, ki smo jim na začetku in koncu dodali skriti ključ, ki je določen s SPI (rfc1828). V zgostitev vključimo tudi tiste podatke iz glave omrežnega sloja, ki se med prenosom ne spremenijo. Spremeni se n.pr. TTL (time to live), ki ga v povzetku upoštevamo kot same ničle. Lahko pa s SPI določimo drugačen povzetek.

    Protokol se še razvija. Dodan je 32-bitni števec, ki označuje zaporedje paketov, in je namenjen preprečevanju napadov s podvajanjem paketov (replay attack). Seveda pa je vprašanje, kako hitro proizvajalci sledijo razvoju protokola.


Šifriranje podatkov

določa protokol Encapsulating Security Payload (ESP) - rfc2406. V paket za IP glavo dodamo SPI. Temu lahko sledijo podatki, ki jih potrebuje šifrirni algoritem, določen s SPI (n.pr. začetni vektor za DES-CBC). Vse, kar sledi, je overjeno in/ali zašifrirano na način, ki ga določa SPI. ESP omogoča overjanje in šifriranje po izbiri.


Transportni in tunelski način šifriranja

Kadar vzpostavljata povezavo dva računalnika brez posrednikov (oba imata veljavni IP številki), imenujejo to transportni način uporabe bodisi AH bodisi ESP (transport-mode).

V internet so vključena tudi omrežja, kjer ima registrirano številko samo priključni računalnik (gateway, posrednik, zastopnik, proxy, ...), interna mreža za njim pa uporablja privatne IP številke (n.pr. 10.*.*.*). Če hočemo zagotoviti varno povezavo med računalnikom iz ene notranje mreže z računalnikom iz druge notranje mreže, uporabimo "tunelski način" - Tunnel-mode: pri ESP posrednik celotni paket, ki ga dobi od postaje iz notranje mreže, zašifrira in vključi v ESP paket, ki mu doda novo IP glavo. Tu kot izvor navede svojo IP številko, namesto dejanskega naslovnika pa navede njegovega posrednika. Oba sodelujoča posrednika imata tabelo, v kateri je vsaki postaji iz internih mrež določen posrednik. Ko paket pride do naslovnikovega posrednika, ga ta dešifrira, najde pravi naslov in paket pošlje pravemu naslovniku.

Zakaj pravzaprav protokol AH, saj ESP ravno tako omogoča overjanje? Eden od vzrokov so izvozne omejitve - za algoritme za overjanje ponavadi ne veljajo, ESP pa zahteva implementacijo šifrirnih algoritmov tudi, če ne bodo uporabljeni. Če potrebujemo samo overjanje, je uporaba protokola AH veliko bolj racionalna kot uporaba ESP.

Lahko se uporabljata AH in ESP istočasno in ni nujno, da se končni točki pri obeh pokrivata. Imamo več možnosti kombiniranja - odvisno od zaupnosti podatkov. Običajno je ESP vključen v AH.

Maj 1998, zadnjič ažurirano novembra 2005