Coduri și Cifruri
definesc o parte imuabil. Privind în perspectivă, poate fi citat ca exemplu shifrmashinu „Enigma“ (a se vedea capitolul 9 ,.) care conținea mai multe roți; în aceste roți erau fire; Cablajului în interiorul roata nu a schimbat, dar se schimbă ordinea de zi cu zi de dispunere a roților din interiorul mașinii. Astfel, Cablajul este o parte neschimbătoare, iar ordinea roților - variabilă. Sistemul de franare - aceasta este cea mai consumatoare de timp parte a locului de muncă; poate dura mai multe săptămâni sau chiar luni și necesită aplicarea unor metode matematice, cercetarea și utilizarea de erori de operare și chiar informații obținute spioni.
După identificarea tuturor imuabil parte a sistemului, este necesar să se identifice toate variabilele (cum ar fi poziția inițială a roților din shifrmashine „Enigma“, care a schimbat pentru fiecare mesaj). Aceasta - sarcina de a deschide posturile cheie. După mesajele de decizie vor fi decriptate.
Deci, hacking-ul se referă la sistemul de criptare în ansamblul său, iar deschiderea cheie este asociată cu decriptarea mesajelor individuale.
Desi codul de cuvinte și cifrul adesea folosit vag, vom distinge între aceste concepte. În codul, elementele comune ale textului (care poate consta dintr-una sau mai multe litere, cifre sau cuvinte) sunt de obicei înlocuite cu patru sau cinci litere sau cifre, care sunt numite grupuri de cod și preluate din lista de coduri. dicționarului poate propune mai multe grupuri de cod pentru anumite expresii sau semne adesea utilizate în mod obișnuit. Acest lucru este de a se asigura că criptograful ar putea varia în funcție de acestea pentru a face dificilă identificarea lor. De exemplu, într-un cod de patru cifre pentru cuvântul „luni“ poate fi de trei grupuri alternative de cod - de exemplu, 1538, sau 2951 sau 7392. Codurile am discutat în capitolul 6.
Coduri - este un caz special al sistemului de criptare. Cu toate acestea, nu toate sistemele de criptare sunt coduri. Vom folosi cuvântul de cod în ceea ce privește metodele de criptare. nu utilizează liste de coduri. iar ciphertext obținut din plaintext- original, în conformitate cu o anumită regulă. În prezent, în loc de cuvântul „în general“, preferă să utilizeze cuvântul „algoritm“, mai ales dacă acesta este un program de calculator. Distincția între codul și numărul de cod nu este, uneori, foarte clar, mai ales pentru sisteme simple. Poate, putem presupune că Yuliya Tsezarya cifru folosește o carte de cod cu o singură pagină, în cazul în care fiecare literă a alfabetului este mapat literă în picioare alfabetul pentru trei poziții. Cu toate acestea, pentru majoritatea sistemelor, considerăm că această diferență este destul de clar. De exemplu, „Enigma“, care este de multe ori
în mod greșit numit „cod Enigma“ cu siguranță nu este un cod. și
Punct de vedere istoric, că, până relativ recent, criptografia a fost dominată de două idei principale, și multe sisteme de criptare (inclusiv aproape toate cele descrise în primele unsprezece capitole ale acestei cărți) au fost bazate pe una dintre ele sau ambele simultan. Prima idee a fost de a asigura, pentru a amesteca literele alfabetului (ca de obicei shuffle un pachet de cărți), în scopul de a obține ceva care poate fi considerat ca o ordine aleatorie, permutare sau anagrama a literelor. A doua idee este de a converti literele din numărul mesajului (de exemplu, punând A = 0, B = 1. Z = 25), și apoi se adaugă la acesta (număr per număr) alte numere, numite gamma. care, la rândul lor, pot fi litere, convertit într-un număr. Dacă rezultatul adăugării obținut număr mai mare de 25, scade 26 din ea (această metodă se numește modulo 26). Rezultatul este apoi convertit înapoi
în scrisoarea. În cazul în care numărul se adaugă la textul, obținut printr-un proces destul de imprevizibil, mesajul criptat în acest mod este foarte dificil sau chiar imposibil de descifrat fără scara de cunoștințe.
Este interesant de observat că Yuliya Tsezarya cifru, indiferent cât de simplă poate fi, poate fi considerată ca un exemplu și că, și celălalt tip. În primul caz, noastre „amestecarea punte“ este echivalent cu o simplă mișcare a ultimelor trei cărți la partea de sus a pachetului, astfel încât toate literele sunt deplasate în jos trei poziții, și X, Y și Z sunt la început. În al doilea caz, gama este numărul 3, care se repetă un număr infinit de ori. Nici măcar nu se poate imagina ceva „mai puțin“, a scalei.
Traducerea mesajelor într-o altă limbă, poate, de asemenea, ar putea fi considerată ca un anumit tip de criptare cu ajutorul unei liste de coduri (de exemplu în dicționarul), dar este încă prea utilizarea arbitrară a codului cuvânt. Cu toate acestea, o astfel de traducere într-o altă limbă, atunci când fiecare cuvânt urcare
*) Îmi amintesc ca un student a scris un eseu în limba franceză cu privire la modul în Evul Mediu, un călător ajunge noaptea în hotel și bate la ușă. Ca răspuns, el aude „Ce Ho! Fără“. ( "! Ce dracu 'Ieși afară!" - circa Perevi ..). Această expresie licean tradus în franceză, înlocuind literalmente cuvinte în franceză: „Que Ho Sans !.“ (Pornit "Ce ho nu !." - circa Perevi.) Limba franceză .Uchitel, citit-o, a pierdut pentru un moment mut, apoi a observat;. „Trebuie să fi găsit aceste cuvinte în dicționar, care este distribuit gratuit cu saci de zahăr.“
răspândirea largă a calculatoarelor și posibilitatea de construcție practică de cipuri electronice complexe pe cristale de siliciu au revoluționat atât criptografia și criptanaliza în. Ca rezultat, unele sisteme de criptare moderne se bazează pe concepte matematice avansate și necesită calculator solide și baze de date electronice. Prin urmare, în epoca pre-computer pentru a le folosi era aproape imposibil. Unele dintre ele sunt descrise în capitolele 12 și 13.
Puterea de criptare sistem de rating
Atunci când a oferit un nou sistem de criptare, este important să se evalueze rezistența la toate metodele cunoscute deja de deschidere în condiții în care criptanalistul cunoscut tipul de criptare utilizate de către sistem, dar nu și în detaliu. Evaluează puterea de criptare a sistemului în care este posibil pentru trei situații diferite:
(1) criptanalist cunoscut doar text criptat;
(2) un criptanalistul cunoscut texte și open source text cifrat acestora;
(3) criptanalist cunoscut sub numele de criptat și plaintext, pe care a luat.
Primul caz reflectă situația „tipic“: în cazul în care aceste condiții, puteți deschide criptare într-un timp scurt, apoi utilizați nu ar trebui să fie. A doua situație apare, de exemplu, în cazul în care același mesaj este criptat, atât în noul sistem, cât și pentru cele vechi, care
Codurile pentru a detecta și corecta erorile
O altă clasă de coduri concepute pentru a asigura transmiterea de erori de informații, nu pentru a ascunde conținutul său. Astfel de coduri se numesc detectarea și corectarea erorilor. ele fac obiectul cercetării matematice extinse. Aceste coduri din primele zile ale calculatoarelor sunt folosite pentru a proteja împotriva erorilor de memorie în datele înregistrate pe bandă magnetică. Cele mai vechi versiuni ale acestor coduri, cum ar fi codurile Hamming pot detecta și corecta o singură eroare într-un simbol de șase biți. Ca un exemplu mai recent este codul care a fost folosit pe nava spatiala „Mariner“ pentru transmiterea datelor de la Marte. Conceput pentru a satisface posibila denaturare a semnalului semnificativ în călătoria sa lungă pe Pământ, acest cod a fost capabil de a corecta erorile de până la șapte în fiecare „cuvânt“ pe 32 de biți. Un exemplu simplu de un cod diferit nivel de detectare. dar nu corectează eroarea, codul este ISBN (număr internațional standard de carte - Numărul internațional standard de carte) La .Se este format din zece cifre (zece cifre sau de nouă cifre cu litera X la sfârșitul anului, care este numărul de 10), și face posibilă verificarea pentru erori cameră ISBN. Testul se efectuează după cum urmează: se calculează valoarea
(Primul număr) 1+ (numărul doi) 2+ (a treia cifră) 3+. + (Zece cifre) 10.