Vector de inițializare

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

În criptografie, un vector de inițializare ( VI ), din vectorul de inițializare engleză ( IV ), este un bloc de biți de lungime predefinită care este utilizat pentru a inițializa starea unui cifru de flux sau a unui cifru de bloc atunci când funcționează într-un mod transforma într - un cifru flux, astfel încât , cu identice chei rezultat de chei este diferit.

Vectorul de inițializare

Dimensiunea VI depinde de algoritmul de criptare și de protocolul criptografic utilizat, chiar dacă este, în general, la fel de mare ca blocul de date gestionat de algoritmul însuși (în cazul cifrelor de bloc) sau ca cheia în sine ( în cazul cifrelor bloc) .cazul cifrelor de flux).

VI-ul trebuie cunoscut de către destinatar, altfel destinatarul nu va putea decripta mesajul primit. Acest lucru poate fi asigurat în diferite moduri:

  • transmiterea VI-ului împreună cu pachetul de date;
  • de acord asupra acestuia în timpul schimbului de chei;
  • calcularea acestuia (în general incremental);
  • măsurarea acestuia de la anumiți parametri, cum ar fi ora curentă (modul utilizat în jetoanele hardware );
  • preluarea acestuia din identități digitale, cum ar fi adresa expeditorului sau a destinatarului;
  • numărul fișierului, sectorului sau altor date etc.

În funcție de protocolul utilizat, mai multe variabile pot fi selectate și unite împreună folosind un algoritm hash pentru a genera un rezumat unic.

Dacă VI-ul este ales aleatoriu, atunci criptograful trebuie să ia în considerare ipoteza de a avea coliziuni, în timp ce dacă VI-ul este utilizat în mod incremental, ca nonce , trebuie luată în considerare rezistența algoritmului la atacurile conectate la VI-urile.

VI-ul din cifrele bloc

VI-urile sunt implementate în cifre de bloc diferit de cifrele de flux. Primele, utilizate în modul lor clasic, definit Electronic Code Book (ECB) , produc același text cifrat din același text simplu dacă se utilizează aceeași cheie de criptare, ceea ce reprezintă o amenințare serioasă pentru securitatea datelor criptate. Pentru a depăși această problemă, se folosește un vector de inițializare care este combinat printr-o operațiune OR exclusivă (XOR) cu primul bloc al textului simplu: așa se întâmplă, de exemplu, în cifrele de blocuri utilizate în modul Cipher . Block Chaining (CBC) .

Cifrele VI în flux

În cifrele de flux, VI-urile sunt încărcate în mod obișnuit în starea secretă a algoritmului, după care se efectuează pași de cifrare pentru a inițializa fluxul de chei înainte de a începe să-i folosească ieșirea. Din motive de performanță a cifrării, proiectanții de cifrare a fluxurilor tind, în general, să mențină acest număr de pasaje cât mai scăzut posibil. Deoarece determinarea numărului minim de pași astfel încât algoritmul să aibă un grad suficient de securitate nu este atât de simplă și luând în considerare și alte probleme legate de pierderea entropiei , unice pentru fiecare cifru, atacurile legate de VI sunt o slăbiciune cunoscută a cifrelor flux: din aceste motive studiul încărcării VI-ului în starea cifrului face obiectul unor cercetări puternice.

VI-ul din WEP

WEP , utilizat în IEEE 802.11 (prescurtare pentru Wired Equivalent Privacy ) utilizează algoritmul RC4 ca cifru cu o cheie obținută prin combinarea cheii utilizatorului cu un VI slab , cu o lungime de doar 24 de biți. Datorită acestor alegeri structurale făcute de proiectanții săi, protocolul sa dovedit imediat a fi nesigur [1] [2] și de la publicarea primelor analize ale WEP până la forțarea protocolului a durat puțin. Astăzi, puteți prelua cheia unei conexiuni WEP în câteva minute.

Notă

Bibliografie

  • B. Bruce Schneier , „Criptografie aplicată”, Wiley 1996
  • N. Ferguson și B. Schneier, „Criptografie practică”, Wiley 2003

Elemente conexe

linkuri externe

Criptare Portal de criptografie : Accesați intrările Wikipedia care se ocupă de criptografie