Algoritmul de criptare cu cheie publică RSA (Rivest-Shamir-Adleman)

Slides:



Advertisements
Similar presentations
Prof.Briciu Daniela Sc.cu cls. I-VIII Luna de Sus
Advertisements

Virtual Private Networks. Cuprins Introducere Tipuri de VPN-uri Componentele VPN Caracteristicile Secure VPN-urilor VPN Tunneling Integritatea datelor.
Adobe photoshop.  De multe ori ne facem fotografii si unele nu le facem publice pentru ca ori am avut un cos in acel moment sau un alt aspect negativ.
Curs 4 – Cifru bloc, semnatura digitala
Z IDURILE SECOLULUI XX Ziduri politice Bariere comerciale Ziduri in domeniul transporturilor Ziduri in zona comunicarii si comunicatiilor.
 Ce e bravenet.COM ?  De ce bravenet.COM ?  Avantaje si dezavantaje in folosirea bravenet.COm Grupa 6: Lucian-Eduard Barticel Eduard Giurgiu Iany Ionut.
În general exist ă 2 forme mari de conservare : “in situ” şi “ex situ” 1. Conservarea “ in situ” Aceast ă metod ă de conservare const ă în.
PROGRAMUL CADRU 7 Cum să folosim facilitatea CORDIS: “Search for partners”
Batalia sexelor O lume dominata de barbati vs o lume dominata de femei.
Present Perfect Continuous prezentare. schema Afirmativ: S + have/has + been + V-ing… Negativ: S + have/has + not + been + V-ing… Interogativ: have/has.
(passive voice) -prezentare -
POSTA ELECTRONICA Ana-Maria Tache Ioana Cristina Ciufu.
SECURITATEA ÎN REŢELELE TCP/IP
Subinterogări multiple
Oracle Academy Lead Adjunct
CUPRINS Tastatura Imprimanta Scanner Bibliografie Recapitulare.
Funcţii Excel definite de utilizator (FDU) în VBA
Instrumente CASE Curs nr. 7.
Căutarea şi regăsirea informaţiei.
Sisteme criptografice
SOFTWARE Tipuri de software.
PASII INSTALARII SISTEMULUI DE OPERARE
Dispozitive de stocare
Arhitectura serviciilor web
Les meilleures photos de
Transport Layer Security TLS, SSL, HTTPS
Căutarea şi regăsirea informaţiei.
Paxos Made Simple Autor: Puşcaş Radu George
Gindeste ……...
Retele de calculatoare
Reflexia luminii.
METODA BACKTRACKING Examenul de bacalaureat 2012
Algoritmi de combatere a congestiei
CONVERSII INTRE SISTEME DE NUMERATIE
Funcţii Hash 1. Puţină teorie... 
WebSite Social Tema 2 WebSite Social.
Tipuri structurate Tipul tablou
SUBNETAREA.
Grasu leonard ionut Trifu gabriel
Web Form BuilDer Coffee Cup.
Totul despre: Valentine’s day.
original creator unknown
Maşina Enigma sau criptarea prin substituţie în era modernă.
Sisteme de programe pentru timp real
Formatarea paragrafului
Funcții C/C++ continuare
prof. mrd. Negrilescu Nicolae Colegiul National Vlaicu Voda
Apache WEB Server.
Gindeste ……...
ADULTUL DE MIJLOC (continuare).
AUTOMOBILUL ELECTRIC UNIVERSITATEA POLITEHNICA
INTERNET SERVICII INTERNET.
Procedee de cifrare uzuale în Internet
Eclipsele de soare si de luna
Forms (Formulare).
original creator unknown
A great way to create a channel of communication
Functia de documentare
Folosirea de către companii a Twitter, Facebook şi LinkedIn
Gindeste ……...
Programarea in limbajul Java 2004 Lecturer: Gavrila Cristian
Software open source in industria software
PARE IMPOSIBIL! GENERALUL DWIGHT D. EISENHOWER A AVUT
Review blog culianu.wordpress.com
William Stallings Data and Computer Communications
Harti de imagini, Cadre, Stiluri
Comunicare in medii electronice
Despre lamaie.net De ce sunt lamaile acre? Realizatori: Cristina Cazan
Tabele WEB.
ALGORITMI ŞI SCHEME LOGICE
Presentation transcript:

Algoritmul de criptare cu cheie publică RSA (Rivest-Shamir-Adleman) 1. Scurt istoric Algoritmul RSA (Rivest-Shamir-Adleman) a fost inventat de: Ron Rivest Adi Shamir Leonard Adleman în 1977 şi este proprietate a societăţii americane RSA Data Security. Odată cu acest algoritm, părăsim zona algoritmilor istorici, uşor de supus criptanalizei.

Algoritmul de criptare cu cheie publică RSA 1. Scurt istoric RSA face parte din clasa algoritmilor de criptare cu cheie publică ce au drept principală caracteristică existenţa a două chei: o cheie publică ce poate fi cunoscută de orice expeditor; o cheie privată cunoscută doar de destinatar.

Algoritmul de criptare cu cheie publică RSA 1. Scurt istoric Din punct de vedere matematic, algoritmii de criptare cu două chei sunt denumiţi algoritmi asimetrici. Prin contrast, toţi algoritmii studiaţi până acum, vor fi numiţi algoritmi de criptare simetrici.

Algoritmul de criptare cu cheie publică RSA 1. Scurt istoric Protocoale de securitate care folosesc RSA: IPSEC/IKE - IP data security TLS/SSL - transport data security (web) PGP - email security SSH - terminal connection security SILC - conferencing service security

Algoritmul de criptare cu cheie publică RSA 2.1 Probleme de comunicare... Să presupunem că două persoane, Bob şi Alice doresc să comunice într-un mod cât mai sigur mesaje secrete. Există însă şi o treia persoană, Eve, care doreşte să intercepteze şi să decripteze traficul de mesaje dintre Bob şi Alice. Alice şi Bob pot fi oameni de afaceri aflaţi la distanţă, avioane aflate în zbor sau chiar doi prieteni ce doresc să comunice într-un mod cât mai privat. În nici unul din cazuri Eve nu poate fi oprită să ”asculte” traficul radio sau cel de pe internet.

Algoritmul de criptare cu cheie publică RSA 2.2 Criptografia cu cheie privată Soluţia clasică a problemei este utilizarea algoritmilor de criptare cu cheie privată (criptare simetrică). Pentru a fi sigură, această soluţie implică un schimb de chei între Alice şi Bob. Acest schimb de chei poate fi făcut printr-o întâlnire prealabilă între cele două persoane sau, în cazul unor instituţii, companii sau guverne, cu ajutorul unor curieri.

Algoritmul de criptare cu cheie publică RSA 2.2 Criptografia cu cheie privată Dacă cele două persoane Alice şi Bob locuiesc în zone aflate la distanţă mare între ele, întâlnirea se poate dovedi foarte costisitoare, uneori aproape imposibilă. Soluţia ar putea fi schimbarea unei chei digitale folosind internetul sau chiar poşta clasică. Nici una dintre aceste metode nu este însă sigură, deoarece cheia poate fi interceptată !!!

Algoritmul de criptare cu cheie publică RSA 2.3 Criptografia cu cheie publică Soluţia problemei anterioare este utilizarea algoritmilor de criptare cu cheie publică. Acest tip de criptare implică folosirea a două tipuri de chei: chei private ştiute doar de destinatarii mesajelor; chei publice (publicate de destinatar).

Algoritmul de criptare cu cheie publică RSA 2.3 Criptografia cu cheie publică Fiecare utilizator al acestui sistem de criptare va avea două chei (Fig. 3): cea privată pe care o păstrează secretă cea publică pe care o poate trimite la toţi cei care doresc sa-i trimită mesaje criptate. Orice ”adversar” de tipul Eve descris anterior va cunoaşte cheia publică dar nu va putea decripta mesajul dacă nu cunoaşte cheia privată.

Algoritmul de criptare cu cheie publică RSA 2.3 Criptografia cu cheie publică Incă o dată, descrierea funcţionării algoritmilor cu cheie publică... 

Algoritmul de criptare cu cheie publică RSA 2.4 Descrierea algoritmului

Algoritmul de criptare cu cheie publică RSA 2.4.1Generarea cheilor Generaţi 2 numere prime p şi q cât mai mari Fie n = p * q Fie m = (p-1)*(q-1) Alegeţi e astfel încât cmmdc(e,m) = 1 Găsiţi d astfel încât (d*e) % m = 1 Se va publica cheia publică: (e, n). Se va păstra cheia privată: (d, n).

e şi n sunt cheia publică C = CipherText (mesajul criptat) Algoritmul de criptare cu cheie publică RSA 2.4.2 Criptarea RSA C = Me % n, Unde: M = Mesaj e şi n sunt cheia publică C = CipherText (mesajul criptat) % este operaţia modulo

d şi n sunt cheia privată M = Mesajul iniţial % este operaţia modulo Algoritmul de criptare cu cheie publică RSA 2.4.2 Decriptarea RSA M = Cd % n Unde: C = CipherText d şi n sunt cheia privată M = Mesajul iniţial % este operaţia modulo

Algoritmul de criptare cu cheie publică RSA 3 Exemplu de criptare/decriptare RSA 3.1 Generarea Cheilor 1) Generaţi 2 numere prime p şi q cât mai mari Pentru a face exemplul cât mai uşor de urmărit, vom folosi numerele prime 7 şi 19. p = 7 q = 19 2) Fie n = p * q n= 7 * 19 n = 133  3) Fie m = (p-1)*(q-1) m = (7-1)*(19-1) m = 6 * 18 m = 108 p = 7 q = 19 n = 133 m = 108 e = ? d = ? Cheia publica = (e,n) = ? Cheia privata = (d,n) = ?

Algoritmul de criptare cu cheie publică RSA 3 Exemplu de criptare/decriptare RSA 4) Alegeţi e astfel încât cmmdc(e,m) = 1 e = 2 => cmmdc(e, 108) = 2 (NU) e = 3 => cmmdc(e, 108) = 3 (NU) e = 4 => cmmdc(e, 108) = 4 (NU) e = 5 => cmmdc(e, 108) = 1 (DA) p = 7 q = 19 n = 133 m = 108 e = 5 d = ? Cheia publica = (e,n) = ? Cheia privata = (d,n) = ?

Algoritmul de criptare cu cheie publică RSA 3 Exemplu de criptare/decriptare RSA 5) Găsiţi d astfel încât (d*e) % m = 1 sau altfel spus, d*e = 1 + x*m (unde x poate fi orice număr întreg) => d = (1 + x*m)/e x = 0 => d = 1/5 (NU) x = 1 => d = 109/5 (NU) x = 2 => d = 217/5 (NU) x = 3 => d = 325/5 (DA) d = 65 p = 7 q = 19 n = 133 m = 108 e = 5 d = 65 Cheia publica = (e,n) = (5,133) Cheia privata = (d,n) = (65,133)

Algoritmul de criptare cu cheie publică RSA 3 Exemplu de criptare/decriptare RSA 3.2 Criptarea RSA Vom calcula C = Me % n Fie M = 6 => C = Me % n   = 65 % 133   = 7776 % 133   = 62 Cheia publica = (e,n) = (5,133) RSA( 6, (5,133) ) = 62

Algoritmul de criptare cu cheie publică RSA 3 Exemplu de criptare/decriptare RSA 3.3 Decriptarea RSA Vom calcula M = Cd % n Cheia privată = (d,n) = (65,133) RSA-1( 62, (65,133) ) = ?

Algoritmul de criptare cu cheie publică RSA 3 Exemplu de criptare/decriptare RSA M = Cd % n   = 6265 % 133   = 62 * 6264 % 133   = 62 * (622)32 % 133   = 62 * 384432 % 133   = 62 * (3844 % 133)32 % 133   = 62 * 12032 % 133 = 62 * 3616 % 133 = 62 * 998 % 133 = 62 * 924 % 133 = 62 * 852 % 133 = 62 * 43 % 133   = 2666 % 133   = 6 Cheia privată = (d,n) = (65,133) RSA-1( 62, (65,133) ) = 6 !!!

Algoritmul de criptare cu cheie publică RSA 4. RSA în hardware Cipuri RSA existente:

Algoritmul de criptare cu cheie publică RSA 5. Viteza RSA Viteza de criptare/decriptare RSA:

Algoritmul de criptare cu cheie publică RSA 6. Criptanaliză RSA Tipuri de atacuri posibile (1): Căutarea în spaţiul mesajelor. Ghicirea numărului "d". Criptarea repetată a ciphertext-ului folosind cheia publică. Se poate demonstra matematic că în cele din urmă, după un anumit număr de iteraţii, putem afla plaintext-ul !!! Atacuri asupra cmmdc. De obicei organizaţiile guvernamentale/private mari generează o singură dată cheile private/publice pe care apoi le distribuie angajaţilor.

Algoritmul de criptare cu cheie publică RSA 6. Criptanaliză RSA Tipuri de atacuri posibile (2): Atacuri asupra numărului e. Pentru a genera o viteză cât mai mare de criptare, se poate alege un număr e cât mai mic. (în multe cazuri din lumea reală, e=3 !!!) Factorizarea cheii publice: încercarea de a deduce cheia privată din cheia publică, concurs lansat de RSA Laboratories.

7. Exerciţii Pentru cei al caror nume de familie incepe cu A,B,C,D,E,F,G,H: Folosind numerele prime p=5 şi q=11, determinaţi cheia publică şi cea privată apoi criptaţi 13, 2 şi 9. 2. Pentru cei al caror nume de familie incepe cu I,J,K,L,M,N,O,P: Folosind numerele prime p=7 şi q=11, determinaţi cheia publică şi cea privată apoi criptaţi 13, 2 şi 9. 3. Pentru cei al caror nume de familie incepe cu Q,R,S,T,U,V,W,X,Y,Z: Folosind numerele prime p=5 şi q=13, determinaţi cheia publică şi cea privată apoi criptaţi 13, 2 şi 9.