Metode de criptare simetrice

2.2.1. a semnalelor numerice
Scramblerele se numesc implementări de software sau hardware ale unui algoritm care vă permite să criptați fluxurile continuu bitrate de informații. Scramblerul în sine este un set de biți care se schimbă la fiecare pas în funcție de un anumit algoritm. După fiecare pas următor, pe ieșirea sa apare un bit de criptare, fie 0 sau 1, care este suprapus peste bitul curent al fluxului de informații prin operația XOR.







2.2.2. Blochează blocurile
Block cifrurile cripta întregul blocuri de informații (4 până la 32 octeți) ca întreg - sporește semnificativ rezistența la transformare atac brute force și permite utilizarea diferitelor transformări matematice și algoritmice.

Recent, domeniul de aplicare al algoritmilor de criptare a scăzut semnificativ. Acest lucru se datorează în primul rând reducerii transmiterii în serie a informațiilor biți, pentru protejarea cărora au fost elaborați acești algoritmi. Aproape peste tot în sistemele moderne, se folosesc rețele cu comutare de pachete, pentru a menține confidențialitatea cipurilor de bloc care sunt utilizați. Iar puterea lor criptografică depășește, uneori destul de semnificativ, puterea criptografică a scramblerilor.

Esența amestecării este schimbarea bit-by-bit a fluxului de date care trece prin sistem. Aproape singura operație folosită în scramblere este XOR - "exclusiv biți OR". În paralel cu trecerea fluxului de informații în scrambler, un flux de codare bit este generat în conformitate cu o regulă specială. Atât criptarea înainte cât și cea inversă se efectuează prin suprapunerea secvenței de codare XOR la ​​cea originală.

Generarea unei secvențe de codare a biților se face ciclic dintr-un volum inițial mic de informații - o cheie conform următorului algoritm. Din setul actual de biți, valorile anumitor cifre sunt selectate și adăugate împreună de XOR. Toți biți sunt deplasați cu 1 biți, iar valoarea nou primită ("0" sau "1") este plasată în biți cel mai puțin semnificativ eliberat. Valoarea care a fost în cel mai înalt bit înainte de schimbare este adăugată la secvența de codificare, devenind următorul bit (a se vedea figura 1).

Din teoria transmisiei de date, criptografia a împrumutat un sistem binar de înregistrare pentru înregistrarea unor astfel de scheme. Potrivit acestuia, scramblerul arătat în figură este scris de combinația "100112" - unitățile corespund biților din care sunt luați biții pentru a forma feedback-ul.

Luați în considerare exemplul de codificare a secvenței de informații 0101112 de către scramblerul 1012 cu tasta inițială 1102.

scrambler code.bit

După cum puteți vedea, dispozitivul scrambler este extrem de simplu. Punerea în aplicare a acestuia este posibilă atât pe cale electronică, cât și pe bază electrică, ceea ce a asigurat aplicarea sa largă pe teren. Mai mult, faptul că fiecare bit al secvenței de ieșire depinde numai de un bit de intrare a consolidat și mai mult poziția clasificatorilor în protejarea transmisiei de date în flux. Acest lucru se datorează faptului că în canalul de transmisie a interferențelor apare inevitabil, ceea ce poate distorsiona în acest caz numai acele biți în care se încadrează, și nu grupul de octeți asociat, ca în cazul cifrelor de bloc.

Decodificarea secvențelor codificate are loc conform aceleiași scheme ca și codarea. În acest scop, algoritmii utilizează codificarea "exclusivă-OR" rezultată, o schemă recuperabilă în mod unic în decodare fără costuri suplimentare de calcul. Vom decoda fragmentul rezultat.

După cum puteți ghici, principala problemă a scramblerelor bazate pe scramblere este sincronizarea dispozitivelor de transmisie (codare) și recepție (decodare). Dacă treceți sau inserați incorect cel puțin un bit, toate informațiile transmise sunt pierdute ireversibil. Prin urmare, în sistemele de criptare bazate pe scramblere, se acordă multă atenție metodelor de sincronizare. În practică, în acest scop, se utilizează de obicei o combinație a două metode: a) adăugarea la un flux de informație de sincronizare biți cunoscute anterior partea receptoare, care permite la non-apariție a unei astfel de început activ bit căutarea pentru sincronizare cu expeditorul, și b) utilizarea de înaltă precizie generatoare de impulsuri de timp, care permite la momentul pierderii sincronizării, decodifică biții de informație recepționați "din memorie" fără sincronizare.







Numărul de biți acoperiți de feedback, adică lățimea dispozitivului de memorie pentru biții care generează secvență de codificare, se numește lățimea bitului scrambler. Scramblerul de mai sus are o adâncime de 5 de biți. În ceea ce privește parametrii de stabilitate criptografică, această valoare este complet identică cu lungimea cheii blocurilor de bloc, care va fi analizată în continuare. În aceeași etapă, este important de observat că cu cât este mai mare adâncimea de biți a scramblerului, cu atât este mai mare puterea criptografică a sistemului bazată pe utilizarea sa.

Cu o funcționare suficient de lungă a scramblerului, se produce în mod inevitabil. După efectuarea unui anumit număr de cicluri în celulele scrambler, va fi creată o combinație de biți, care s-a întâmplat deja o dată, iar de acum înainte secvența de codare va începe ciclul ciclic cu o perioadă fixă. Această problemă nu este în mod inerent inerentă naturii, deoarece în biții N ai scramblerului nu pot exista mai mult de 2 combinații de biți N și, prin urmare, un ciclu maxim de 2N-1, repetarea combinației va avea loc în mod necesar. Combinația dintre "toate zerouri" este imediat exclusă din lanțul grafului stării de rulare - provoacă scramblerul în aceeași poziție ca și "toate zerourile". Acest lucru indică, de asemenea, că cheia "toate zerourile" nu este aplicabilă pentru scrambler. Fiecare biți generați de biți depind doar de câțiva biți din combinația scrambler stocată în prezent. Prin urmare, după repetarea unei situații care sa întâmplat odată în scrambler, toți cei care îl urmează vor repeta exact lanțul care a trecut deja în scrambler.

Diferite tipuri de grafice de stare de scramble sunt posibile. Figura 2 prezintă opțiuni exemplare pentru un scrambler pe 3 biți. În cazul "A", în plus față de ciclul întotdeauna prezent "000" >> "000", vedem încă două cicluri - cu 3 stări și 4. În cazul lui "B" vedem un lanț care converge într-un ciclu de 3 state și nu iese niciodată de acolo. Și în final, în cazul "B", toate stările posibile, cu excepția stării zero, sunt combinate într-un singur ciclu închis. Evident, în acest caz, atunci când toate cele 2 N -1 stări ale sistemului formează o perioadă de ciclu de repetiție este combinații de ieșire maxime, iar corelația dintre lungimea ciclului și starea inițială a amestecătorului (element), ceea ce ar duce la apariția unei chei slabe este absent.

Și aici matematica a prezentat știința aplicată, care este criptografia, un alt dar. Consecința unuia dintre teoremele dovedite (în termeni de relație cu omletă) că pentru orice bruiere lungime cuvânt N, există întotdeauna o alegere de biți de feedback acoperite de faptul că secvența generată de biți va avea o perioadă egală cu 2 N -1 biți. De exemplu, în 8 biți scrambler, atunci când acoperă 0th, 1, 6 și biții a 7 de fapt, în timpul generării de biți 255 trece succesiv toate numerele 1-255, fără a repeta o dată.

Schemele cu feedback selectate în conformitate cu această lege sunt numite generatoare de secvențe de lungime maximă (HDPE) și sunt utilizate în echipamentele de codificare. Din multitudinea de generatoare HDPE cu o anumită capacitate de biți, în momentul în care au fost implementate pe o bază electronică sau minimă, ele au fost selectate ale căror număr de biți participanți la crearea următorului bit a fost minim. În general, generatorul HDPE ar putea fi atins pentru 3 sau 4 legături. Lărgimea foarte multor scramblere a depășit 30 de biți, ceea ce a făcut posibilă transmiterea a până la 2 40 de biți = 100 MB de informații fără teama de a începe repetarea secvenței de codare.

HDPE sunt inextricabil legate de teoria matematică a polinomilor ireductibili. Se pare că destul de un polinom de gradul n care nu a fost reprezentat modulo 2 ca produs al altor polinoame, a bruiat, construit pe baza ei, a creat IPA. De exemplu, singurul polinom ireductibil al gradului 3 este x 3 + x + 1, în formă binară este scris ca 10112 (unitățile corespund biților actuali). Semnalelor numerice bazate pe polinoame ireductibile formate prin aruncarea cel mai semnificativ bit (este întotdeauna prezentă, și prin urmare, există doar informații cu privire la gradul de polinomului) sau pe baza menționatei polinom, putem crea o bruiere 0112, cu o perioadă de buclă 7 (= 2 3 -1). Firește, în practică, se utilizează polinoame cu ordine semnificativ mai mare. O tabelă de polinoame ireductibile de orice ordin poate fi întotdeauna găsită în cărți de referință matematice specializate.

Un dezavantaj esențial al algoritmilor de criptare este instabilitatea lor la falsificare. Mai multe detalii despre această problemă sunt discutate în următoarea prelegere, referindu-se la crearea de criptosisteme întregi.

2.2.2.1. Informații generale despre cipurile de blocuri (19 kb)
Până în prezent, au fost dezvoltate o mulțime de cipuri de blocuri persistente. Aproape toți algoritmii folosesc pentru transformare un anumit set de transformări matematice bijective (reversibile)

2.2.2.2. Rețeaua Feyxtel
O rețea Feistel este o metodă de transformări text reversibile, în care valoarea calculată dintr-o parte a textului este suprapusă peste celelalte părți. Deseori, structura rețelei este executată astfel încât același algoritm să fie folosit pentru criptare și decriptare - diferența constă numai în ordinea utilizării materialului cheie.

2.2.2.3. Blocați blocul TEA
Blocul algoritmului TEA este dat ca un exemplu de unul dintre cele mai simple în implementarea algoritmilor cripto persistenți.







Articole similare

Trimiteți-le prietenilor: