CCMP

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 29. december 2016; checks kræver 7 redigeringer .

CCMP ( Counter  Mode with Cipher Block Chaining Message Authentication Code Protocol  - blokchifferprotokol med imitationsindsættelse (MAC) og blok- og tællerkædetilstand ) er en 802.11i -krypteringsprotokol oprettet til at erstatte TKIP , en obligatorisk krypteringsprotokol i WPA og WEP , som mere pålidelig mulighed. CCMP er en obligatorisk del af WPA2-standarden og en valgfri del af WPA- standarden .

CCMP, der er en del af 802.11i- standarden , bruger algoritmen Advanced Encryption Standard ( AES ). I modsætning til TKIP håndteres nøgleadministration og meddelelsesintegritet af en enkelt komponent bygget op omkring AES ved hjælp af en 128-bit nøgle, 128-bit blok, efter FIPS-197- krypteringsstandarden .

Historie

CCMP-protokollen blev brugt med WPA2 , defineret i IEEE 802.11i- standarden . IEEE 802.11i blev vedtaget i juni 2004 , og denne dato kan betragtes som datoen for fremkomsten af ​​CCMP-protokollen.

Arkitektur oversigt

CCMP-algoritmen er baseret på CCM AES-krypteringsalgoritmen. CCM bruger CTR -algoritmen til privatliv og CBC-MAC-algoritmen til autentificering og dataintegritet. CCM sikrer integriteten af ​​både MPDU- pakkens dataområde , det vil sige pakken, der sendes over netværket, og nogle dele af headeren på IEEE 802.11 -pakken .

Al AES-behandling, der bruges i CCMP, bruger AES med en 128-bit nøgle og en 128-bit blok.

CCM-tilstanden er en generisk tilstand, der kan bruges med enhver blokchiffer. CCM-algoritmen indeholder to parametre (M og L), og CCMP bruger følgende værdier til dem:

CCM-algoritmestandarden kræver brug af nye midlertidige nøgler for hver nyoprettet session. Derudover kræver CCM en unik Nonce -værdi for hver frame, beskyttet af en specifik valgt tidsnøgle. CCMP bruger et 48-bit pakkenummer (PN) til dette.

Genbrug af en PN med den samme midlertidige nøgle ophæver alle sikkerhedsgarantier.

CCMP-kryptering

IEEE 802.11-protokolpakkestruktur ved hjælp af CCMP-baseret kryptering

Brug af CCMP-behandling udvider den originale pakkestørrelse med 16 oktetter, hvoraf 8 oktetter er placeret i MPDU-pakkeheaderen og 8 oktetter i MAC-området. CCMP-headeren består af følgende dele: PN, ExtIV og nøgleidentifikator. PN er et 48-bit pakkenummer, som er en matrix på 6 bytes.

CCMP-krypteringsalgoritme

CCMP konverterer pakkens almindelige tekst (klartekst i figuren) og indkapsler den til en datapakke ved hjælp af følgende algoritme.

  1. PN-pakkenummeret øges med et positivt tal for at opnå et forskelligt tal for hver datapakke, således at pakkenummeret aldrig gentages to gange, når den samme midlertidige nøgle bruges. Det er værd at bemærke, at gentagne datapakker ikke ændres, når de videresendes.
  2. Ved at bruge felterne i pakkehovedet genererer CCMP yderligere godkendelsesdata (AAD) til CCM. CCM-algoritmen sørger for kryptering af de felter, der er inkluderet i AAD. Pakkeoverskriftsfelter, der kan ændre sig, når de videresendes, bør ikke tages i betragtning, når der genereres yderligere godkendelsesdata og betragtes derfor som nul, når AAD oprettes.
  3. Nonce-feltet er sammensat af pakkenummeret, A2-adressen og prioritetsfeltet, som er reserveret i den aktuelle implementering, så dets værdi skal sættes til nul.
  4. Det nye PN-pakkenummer og nøgle-ID er placeret i overskriften på CCMP-pakken.
  5. Yderligere autentificeringsdata, Nonce-feltet, selve pakkedataene, ved hjælp af den midlertidige nøgle TK, krypteres af CCM-algoritmen. Dette trin kaldes CCM-ophavsmandsbehandling.

Opbygning af et ekstra godkendelsesdatafelt

AAD er bygget ud fra MPDU-pakkeheaderen. AAD inkluderer ikke "Udløb"-headerfeltet, fordi dette felt kan ændres, når data transmitteres via IEEE 802.11 -links (f.eks. når hastigheden ændres under pakkerelæ). Af samme årsager anses flere underfelter i feltet "Frame Control" for at være nul. Oprettelse af yderligere autentificeringsdata udføres i overensstemmelse med følgende algoritme:

Længden af ​​AAD er 22 oktetter, når A4- og QC-felterne mangler, og 28 oktetter, når pakken indeholder A4-feltet.

Oprettelse af CCM nonce

Nonce-feltet består af felterne prioritet, A2 og pakkenummer, hvor prioritetsfeltet er reserveret til fremtidig brug og skal sættes til nul.

CCMP-dekrypteringsskema

Skemaet for algoritmen er vist i figuren.

CCMP tager chifferteksten af ​​pakken som nyttelast og dekrypterer pakken ved hjælp af følgende sekvens af trin.

  1. Ved at bruge pakkedataene oprettes AAD- og ikke-udenstående identifikationsdatafelter.
  2. AAD-feltet udtrækkes fra overskriften på den krypterede pakke.
  3. Feltet oprettes ud fra A2-felterne, PN-pakkesekvensnummeret og prioritetsfeltet.
  4. For at kontrollere pakkens integritet udtrækkes MAC-feltet fra den.
  5. Pakken dekrypteres, og dens integritet kontrolleres, hvortil teksten i den krypterede pakke bruges direkte, værdierne af yderligere identifikationsdata, den midlertidige nøgle, MAC- og nonce-felterne.
  6. Derefter samles pakken igen, allerede i dekrypteret form, og overføres videre til behandling.
  7. Dekrypteringsprocessen forhindrer duplikerede pakker i at blive transmitteret til brugersiden ved at sammenligne PN's pakkesekvensnummer med dets interne pakketæller.

Noter

  1. I de fleste tilfælde kan du tænke på en oktet som én byte , dog er en byte muligvis ikke 8 bit på nogle arkitekturer.

Links