Algoritm pentru crearea cheilor publice și private

Cheile RSA sunt generate după cum urmează: [14]

1. Alegeți două numere aleatorii diferite și o anumită dimensiune (de exemplu, 1024 biți fiecare).

2. Produsul lor este calculat.





care se numește un modul.

3. Valoarea funcției Euler este calculată din numărul:

4. Se alege un număr întreg () care este relativ prime la valoarea funcției. De obicei, numerele simple care conțin un număr mic de biți unici în notație binară, de exemplu, numerele prime de Fermat 17, 257, sau 65537, sunt luate ca o calitate.







§ Numărul este numit exponent deschis (exponent public englez)

§ Timpul necesar pentru criptare utilizând exponentierea rapidă este proporțional cu numărul de biți unici în.

§ Valorile sunt prea mici. de exemplu, 3, ar putea slăbi siguranța sistemului RSA. [15]

5. Numărul este calculat. în mod multiplicativ inversul numărului modulo. adică un număr care satisface condiția:

§ Numărul este numit exponent secret. De obicei, se calculează folosind algoritmul extins euclidian.

6. Perechea este publicată ca o cheie deschisă RSA (cheia publică engleză RSA).

7. Perechea joacă rolul unei chei private RSA (cheia privată RSA engleză) și este ținută secretă.

§ Obțineți cheia publică a lui Alice

§ Luați text clar

§ Criptați un mesaj utilizând cheia publică a lui Alice:

§ Acceptați mesajul criptat

§ Luați cheia privată

§ Aplicați cheia privată pentru a decripta mesajul:

22. Schema de criptare "plic digital".

Plic digital - Datele adăugate la sfârșitul mesajului și care permit unui destinatar specific să verifice integritatea conținutului mesajului

Modelele asimetrice vă permit să schimbați cu ușurință cheile de criptare într-un canal de comunicare deschis - dar lucrați prea lent. Metodele simetrice funcționează rapid - dar pentru schimbul de chei este nevoie de un canal de comunicare securizat și, în plus, necesită schimbarea frecventă a cheilor. Prin urmare, criptosistemele moderne folosesc forțele ambelor abordări. De exemplu, pentru a cripta un mesaj, se folosește un algoritm simetric cu o cheie aleatorie de criptare care acționează numai într-o singură sesiune, o cheie de sesiune. Pentru a decripta ulterior mesajul, cheia sesiunii este criptată cu un algoritm asimetric, utilizând cheia publică a destinatarului. Cheia sesiunii criptate este stocată împreună cu mesajul, formând un plic digital. Dacă este necesar, plicul digital poate conține o cheie de sesiune în mai multe situații - criptată cu chei publice de la diferiți destinatari.

23. EDS. Schema clasică.

Semnătura electronică (EP) - informații în formă electronică care sunt atașate altor informații în formă electronică (informații care sunt subscrise) sau care sunt asociate în alt mod cu aceste informații și care sunt utilizate pentru a identifica persoana care semnează informațiile

§ Luați text clar

§ Creați o semnătură digitală utilizând cheia secretă:

§ Transferați perechea. constând dintr-un mesaj și o semnătură.

§ Obțineți cheia publică a lui Alice

§ Calculați prototipul mesajului din semnătură:

§ Verificați autenticitatea semnăturii (și imuabilitatea mesajului) prin compararea și

24. Funcția de eliminare. Proprietățile sale.

Hashing (uneori hashing) - convertirea unei matrice de date de lungime arbitrară într-un șir de biți de ieșire cu lungime fixă. Astfel de transformări sunt numite și funcții hash sau funcții fold. iar rezultatele lor sunt numite hash. Codul hash sau mesajul digest.

Hashing-ul este folosit pentru a compara datele: dacă două matrice au hashuri diferite, matricea este garantată a fi diferită; în cazul în care aceeași - arrays sunt susceptibile de a fi la fel. În general, nu există o corespondență unu-la-unu între datele sursă și codul hash, deoarece numărul de valori hash este mai mic decât variantele matricei de intrare; Există mai multe matrice care dau aceleași coduri hash - așa-numitele coliziuni. Probabilitatea coliziunilor joacă un rol important în evaluarea calității funcțiilor hash.

Există mulți algoritmi de tip hashing cu caracteristici diferite (adâncimea bitului, complexitatea calculată, stabilitatea criptografică etc.). Alegerea acestei sau acelei funcții hash este determinată de natura specifică a problemei care trebuie rezolvată. Cele mai simple exemple de funcții hash sunt suma de control sau CRC.

Dintre numeroasele funcții de hash existente, este obișnuit să se aloce criptografiile criptografice persistente. Pentru ca funcția hash H să fie considerată criptografic stabilă, ea trebuie să satisfacă cele trei cerințe de bază pe care cele mai multe funcții hash sunt folosite în criptografie:

§ ireversibilitate. Nu ar trebui să fie fezabilă din punct de vedere computațional să găsim un bloc de date pentru o valoare dată a funcției hash m. pentru care.

§ Rezistența la coliziuni de primul tip. pentru un anumit mesaj M ar trebui să fie imposibil de calculat pentru a selecta un alt mesaj N. pentru care.

§ Rezistența la coliziuni de tipul celui de-al doilea. trebuie să fie imposibil de calculat să ridice câteva mesaje. având același hash.

Aceste cerințe nu sunt independente:

Funcția inversibilă este instabilă la ciocnirile primului și celui de-al doilea tip.

O funcție care este instabilă la coliziuni de primul tip nu este rezistentă la coliziuni de tipul celui de-al doilea; conversația nu este adevărată.

Trebuie remarcat faptul că nu există nici o dovadă a existenței unor funcții hash ireversibile pentru care calculul oricărei pre-imagini a unei valori date a unei funcții hash este teoretic imposibil. De obicei, găsirea unei valori inverse este doar o sarcină computațional complexă.

Atacul "zile de naștere" vă permite să găsiți coliziunile pentru o funcție hash cu o lungime de n biți în medie pentru aproximativ un calcul al funcției hash. Prin urmare, funcția hash n-bit este considerată cripto-rezistentă dacă complexitatea computațională a găsirii coliziunilor pentru ea este aproape de.

Pentru funcțiile hash criptografice, este de asemenea important ca, cu cea mai mică schimbare în argument, valoarea funcției să se schimbe foarte mult (efect de avalanșă). În particular, valoarea unui hash nu ar trebui să scape de informații, chiar și despre biții individuali ai argumentului. Această cerință este cheia stabilității criptografice a algoritmilor de hash, care au o parolă de utilizator pentru a obține o cheie.

25. Identificarea și autentificarea.

Identificarea în sistemele informatice - atribuirea identificatorilor entităților și obiectelor și / sau compararea identificatorului cu o listă de identificatori atribuiți [1]. De exemplu, identificarea prin coduri de bare.

Având în vedere gradul de încredere și politica de securitate a sistemelor, autentificarea efectuată poate fi una sau una reciprocă. De obicei, se utilizează metode criptografice.

26. Amenințări la adresa securității sistemelor de parole.







Articole similare

Trimiteți-le prietenilor: