Criptare cu o cheie unică, gleb

Într-o epocă de observare și perusal universală, este important să cunoașteți căile cheie pentru a vă proteja secretele. Ciudat cum pare, singurul cod teoretic de neînvins este atât de simplu de folosit încât merită să te familiarizezi cu acesta, doar în caz. În cele din urmă, nimeni nu știe ce va fi declarat mâine ilegal, nu?

Criptare cu o cheie unică, gleb

Ideea de bază a unui cifru cu o cheie unică este următoarea: părțile schimbă seturi de chei (cripto-chei). Când este redirecționat, fiecare mesaj este criptat cu o nouă cheie, lungimea căreia este egală cu lungimea mesajului. Mesajul include așa-numitul. "Indicator", prin care partea receptoare află ce cheie (pagina cheii criptografice) trebuie utilizată pentru decriptare. Teoretic, nu există nici o modalitate de a decripta un mesaj fără a avea acces la un bloc de cripto.

De aceea acest cifru este folosit de agenți ilegali din întreaga lume, ultimul cu o sută de ani în urmă.

Algoritmul în detaliu

Să presupunem că Alice și Bob au decis să-și cripteze corespondența cu o cheie unică. Pentru a face acest lucru, ei fac două shifrobloknota diferite, dintre care unul este folosit pentru a cripta și decripta mesajul de la Alice la Bob, al doilea - de la Bob la Alice. Bob și Alice au o copie a fiecărui notebook. În interiorul notebook-urilor arătați astfel:

Trimiterea unui mesaj

Alice dorește să trimită lui Bob mesajul "Verificați conexiunea", îl transpune în formă digitală, deoarece acesta este un tabel special:

Criptare cu o cheie unică, gleb

Caracterele de pe linia superioară sunt codificate cu o singură cifră, restul sunt numerele rândului și coloanei. Masa este aranjată astfel încât atunci când se decodifică este imposibil să se confunde codurile de la o singură cifră și de la două.

Dar ce sa întâmplat cu Alice:

Alice magazine de numere pentru criptare ulterioară: cheie 727326247369609916286667. ca foloseste pagina a doua a notebook-ului prezentat mai sus. Primele cinci cifre (81355) sunt un indicator cheie, ele nu sunt utilizate în criptare. Deci, Alice scrie cheia sub textul codificat:

Și face fiecare cifră următoarea operațiune: în cazul în care cifra este mai mare de cifre superioare de pe rândul de jos, cifra corespunzătoare a ciphertext se obține prin scăderea a doua din prima. Dacă numărul superior este mai mic, atunci 10 este adăugat la acesta, iar numărul mai mic este scăzut din numărul crescut, adică urmăm mâinile:

7 și 1 = 7 - 1 = 6
2 și 2 = 2 - 2 = 0
...
2 și 5 = 12 - 5 = 7

Alice adaugă primele cinci cifre ale cheii (indicatorul) în partea de sus a textului cifru și trimite Bob o criptare:

Alice este o fată inteligentă, distruge pagina de blocare a codului utilizat după criptarea mesajului. Fii inteligent. Fii ca Alice.

Primirea unui mesaj

Bob are o copie a notebook-ului "Alice-Bobu" și, după ce a primit criptarea, caută o pagină începând cu 81355 (indicator). Acum înregistrează cifrele cheie (sărind peste indicator) sub textul cifrat:

Pentru a obține textul sursă, se adaugă unul câte unul numerele de text cifrat și cheie, aruncând zeci:

6 și 1 = 6 + 1 = 7
0 și 2 = 0 + 2 = 2
...
7 și 5 = 7 + 5 = 12 = 2

Și Bob primește un cod familiar, care, cu ajutorul unui tabel deja cunoscut de noi, se traduce în textul sursă. Bob distruge pagina de blocare a blocului de date. Bob e inteligent. Fii ca Bob.

Astfel, Alice folosește notepad-ul "Alice-Bobu" pentru a cripta mesaje, iar Bob - pentru a decripta. Pentru a trimite mesaje de la Bob la Alice, au o copie a unui alt notebook, Bob-Alice.

Mai mult despre codificare

Tabela de codificare nu afectează puterea de criptare, chiar dacă metoda de codare este cunoscută terței părți, aceasta nu o va aduce mai aproape de decodificare. Deci masa ar trebui să fie convenabilă.

Aici este elaborarea tabelului de mai sus pentru codificarea alfabetelor ruse și latine:

Criptare cu o cheie unică, gleb

Pentru alfabetul de intrare suplimentare (în acest caz, limba latină) introduce o tranziție suplimentară de cod alfabet (88) pentru a reveni la principal - o tranziție cod la masa principală (87).

Pro, contra, capcane?

Principala dificultate în lucrul cu acest cod este organizarea schimbului de chei. Este suficient să utilizați un chei de două ori, astfel încât corespondența să poată fi decriptată fără probleme, astfel încât cheile ar trebui să fie ... să spunem, suficient.

A doua dificultate este generarea cheilor. Întregul sistem funcționează numai dacă numerele din șirurile de criptare sunt într-adevăr aleatoare. Majoritatea programelor de calculator folosesc așa-numitele "numere pseudo-aleatoare", ale căror secvențe pot fi reproduse de către un terț. Sistemele de tip Unix (Linux, BSD, Mac OS) au generatoare încorporate pentru numere aproape în întregime aleatoare, dar au și întrebări. Deși pentru prima dată, în timp ce FSB și FBI nu te vânează, va coborî.

A treia complexitate este un mediu sigur pentru criptare și decriptare. Dacă aveți suficientă "securitate" pentru un computer de acasă, cel mai probabil nu aveți nevoie de un cod cu o singură dată.

Dar dacă într-adevăr nevoie pentru a garanta secretul corespondenței, și sunteți dispus să sufere pentru ea un anumit disconfort, atunci alternativele cheie cifru pentru unică folosință pe care pur și simplu nu au.

Link-uri conexe:

71584 24571 13491 79921 52889 53636 36832 54036 50928 95065 06375 86945 47147 86954 44370 87278 19269 34350 87391 61344 79805

Articole similare