INTRODUCERE IN CRIPTOGRAFIE 1.Criptografiaconvențională2.Cifrurisubstituție3.CifrulluiCezar 4.Modelulunuicriptosistemconvențional5.Tipuride atacuri [626369]

METODE CRIPTOGRAFICE DE PROTECȚIE A INFORMAȚIEIDacădreptulla confidențialitateester înafaralegii, atuncidoarceiaflațiînafaralegiivorbeneficiade confidențialitate.

INTRODUCERE IN CRIPTOGRAFIE 1.Criptografiaconvențională2.Cifrurisubstituție3.CifrulluiCezar 4.Modelulunuicriptosistemconvențional5.Tipuride atacuri

CRIPTOGRAFIA CONVENȚIONALĂO schemăde criptareconvenționalăestealcătuitădin cincielemente: • TEXTUL CLAR: Acestaestemesajuloriginal sauinformațiade intrarepentrualgoritmulde criptare. • ALGORITMUL DE CRIPTARE: Acestalgoritmexecutădiferitesubstituțiișitransformăriasupratextuluiclar. • CHEIA SECRETĂ: Aceastăcheieesteo intrarepentrualgoritmulde criptare. • TEXTUL CIFRAT: Este textulrezultatdin algoritmulde criptare. El depindede textulclarșide cheiasecretă. Pentruun mesajdat, douăcheisecrete diferiteproducdouătextecifratediferite. • ALGORITMUL DE DECRIPTARE: Acestaestealgoritmulinvers algoritmuluide criptare. Alg. de decriptareesteaplicattextuluicifratșiaceleașicheisecrete pentrua obținetextulclaroriginal.

SCHEMA DE CRIPTARECONVENȚIONALĂ
Figura 1. Modelul simplificat al criptării convenționale

CRIPTOGRAFIACONVENȚIONALĂTrebuiesăse ținăseamade următoareledouăelementepentrurealizareauneicriptărisigure: 1.Algoritmulde criptaretrebuiesăfie foarteputernic. Dacăun atacatorcunoaștealgoritmulde cifrare(criptare) șiare accesla unulsaumaimultetextecifrate, el nu poatesădecriptezetextulcifratsausăgăseascăcheiasecretă. 2.Atâtemițătorulcâtșireceptorultrebuiesăobținăcheiasecretăîntromanierăsigură(peun canal de comunicațiesigur) șisăo păstrezesecretă.

MODELULUNUICRIPTOSISTEMCONVENȚIONALDescriemmaijosmodelulde criptosistemconvențional: •Fie X={x1,x 2,…,x M} textulclar, undexi, i=1,…,M suntliteredintrunalfabetfinit.•Înmod uzual, alfabetulestealcătuitdin 26 de literemari. Pentrucriptare, o cheiede forma K={k1,k 2,…,k J} estegenerată. •Cu mesajulclarX șicu cheiasecretăK ca date de intrare, algoritmulde criptareproduce textulcifratY={y1,x 2,…,yN}. •PutemscrieY = E k(X). Receptorultextuluicifrataflatînposesiacheiiprivate K, poatesădetermine textulclaroriginal cu ajutorulrelației: X = D k(Y) undeD esteo funcțiecereprezintăalgoritmulde decriptare, aplicatătextuluicifratY șicheiisecrete K.

MODELULUNUICRIPTOSISTEMCONVENȚIONALObservație: Funcția D este inversa funcției E.
Figura2. Modelulunuicriptosistemconvențional

CRITERIIDE CLASIF. A SISTEMELORCRIPTOGRAFICESistemele criptografice sunt clasificate în general după trei criterii:1.Tipuloperațiilorutilizatepentrua transformatextulclarîntext cifrat. Algoritmiide criptaresuntbazațipedouătransformărigenerale: substituțiașitranspoziția.2.Numărulde cheiutilizate. Dacăatâtemițătorulcâtșireceptorulutilizeazăo aceeașicheiesecretă, sistemulse numeștesimetricsaucu o singurăcheie. Dacăemițătorulșireceptorulutilizeazăcheidiferite, sistemulse numeșteasimetricsaucu cheipublice.3.Modulîncare textulclaresteprocesat. Se proceseazăun bloc de elementede fiecaredatărezultândun bloc cifratpentrufiecarebloc de intrare. Acestesistemese numesccifruribloc. Un cifrustream proceseazăcâteun element din intrarecontinuu, producândla ieșirecâteun element odată.

TIPURIDE ATACURI•Procesulde încercarede a descoperitextulsaucheiaprivatăestecunoscutsub numelede criptanaliză. •Strategiautilizatăde criptanalistdepindede schema de criptareșide informațiadeținutăde criptanalist.Tipulde atacInformațiadeținutăde criptanalistText cifrat(ciphertextonly) •Algoritmulde criptare•TextulcifratText clarcunoscut(known plaintext)•Algoritmulde criptare•Textulcifrat•Unulsaumaimulteperechi(text clar, text cifrat)

TIPURIDE ATACURITipulde atacInformațiadeținutăde criptanalistText clarales (chosen plaintext)•Algoritmulde criptare•Textulcifrat•Textulclarales de criptanalistîmpreunăcu textulcifratgeneratde cheiasecretăTextcifratales (chosenciphertext)•Algoritmulde criptare, Textulcifrat•Textulclarales de criptanalistîmpreunăcu textulcifratgeneratde cheiasecretăText ales (chosen text) •Algoritmulde criptare, Textulcifrat•Textulclarales de criptanalistîmpreunăcu textulcifratgeneratde cheiasecretă•Textulcifratsugeratde criptanalistîmpreunăcu textulclargeneratde cheiasecretă

COST ȘITIMPPENTRUCRIPTANALIZĂO schemăde criptareestesigurcomputaționalădacătextulcifratgeneratare unasauambeleproprietăți: • Costulde spargerea textuluicifratestemultmaimare decâtvaloareainformațieicriptate. • Timpulnecesarpentruspargereatextuluicifratdepășeștetimpulde viațăal informației.

COST ȘITIMPPENTRUCRIPTANALIZĂAnalizămmaijosun tabelcare aratăcâttimpestenecesarpentrua spargeun text cifratpentrudiferitedimensiuniale cheiide cifrare.Dim. cheii(înbiți)Numărul de chei alternativeTimpul necesar pentru 1 decriptare/µsTimpul necesar pentru 𝟏𝟎𝟔decriptări/µs322%&=4.3×10)2%*µs=35.8 minute2.15 milisecunde562+,=7.2×10*,2++µs=1142ani10 ore 1282*&-=3.4×10%-2*&.µs=5.4×10&/ani5.4×10*-ani1682*,-=3.7×10+02*,.µs=5.9×10%,ani5.9×10%0aniTabelul 1. Timpi necesari pentru a sparge un text cifrat

CIFRURISUBSTITUȚIETehnicasubstituțieipresupunecălitereledin textulclarsuntînlocuitede altelitere, saude numeresausimboluri.CifrulluiCezar • CifrulluiCezar presupuneînlocuireafiecăreiliteredin alfabetcu literaobținutăprindeplasareaciclicăcu X pozițiila stângaa litereloralfabetului. • De exemplu: plaintext: defend the east wall of the castleciphertext: EFGFOE UIF FBTU XBMM PG UIF DBTUMF

CIFRULLUICEZAR• Avem așadar corespondența: text clar: a b c d e f g h i j k l m n o p q r s t u v w x y z text cifrat: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C• Dacăechivalentelenumericeale literelorsunta = 1, b = 2, …, z = 26, atuncialgoritmulluiCezar se poatescrieastfel: C = E( p ) = ( p + 3 ) mod 26 undep reprezintăliteraalfabetului(text clar), iarC esteliteracifratăa luip.

ALGORITMULLUICEZAR GENERAL•Algoritmulde criptarese poatescrieastfel: C = E(p) = (p + k) mod 26 undek aparținemulțimii{1, 2,…, 25}, iarE estefuncțiade criptare. •Algoritmulde decriptareeste: p = D(C) = (C –k) mod 26 undek aparținemulțimii{1, 2,…,25}, iarD estefuncțiade decriptare. •CifrulluiCezar estefoarteușorde spart. •Astfel, un criptanalistpoateobținetextulclarprinîncercareacelor25 de chei.

METODE CRIPTOGRAFICE DE PROTECȚIE A INFORMAȚIEITrebuiesăne planificămlibertatea, nu doarpentrua ne asigurasecuritate, deoarecelibertateanu poatefi un motivsigurde securitate.

AGENDA1.Cifrurimonoalfabetice2.Cifruripolialfabetice3.CifrulVigenere4.Cifrultranspozitie5.CifrulDES

CIFRURIMONOALFABETICE• Cu numai25 de cheiposibile, cifrulluiCezar esteconsideratslab la atacurilecriptanalitice. • Numărulde cheipoatecreștefoartemultdacăse realizeazăo substituțiearbitrară. Înacestcazexistă26! cheiposibile. • Aceastaînseamnăcăexistăde 10 orimaimultecheidecâtîncazulcifruluiDES (cifrulDES având256 chei). • Literelecifruluise pot obțineastfel: se alegeprima literăA șiapoi, înordineciclicăfiecarea treialiteră, adicăD,G,…,Y. • DupăliteraY șirulcifruluise continuăcu B, deoarece, înordineciclică, a treialiterădupăY înalfabetulprimaresteB ș.a.m.d. Astfelcifrulobținutprinoperațiade selectareestedatde relația: C = 3p mod 26.

CIFRURIPOLIALFABETICE• Cifrurilepolialfabeticeconstaudin utilizareaperiodicăa unorsubstituțiisimple diferite. • Fie dalfabetede cifrare𝐶*, 𝐶&,…, 𝐶2șid funcții𝑓4care realizeazăsubstituțiade forma: 𝑓4: A →𝐶4, 1 <= i<= d undeA estealfabetulmesajelorînclar. • Un mesajclarM = 𝑚*𝑚&… 𝑚2𝑚26*… 𝑚&2vafi cifratprinrepetareasecvențelorde funcții𝑓*,…, 𝑓2la fiecareal d-lea caracter:E(M) = 𝑓*(𝑚*)… 𝑓2(𝑚2) 𝑓*(𝑚26*). • Înacestcaznumărulcheilorposibilese măreștede la 26! la (26!)7

CIFRULVIGENERE•Funcțiilefi de substituțiese definescastfel: 𝑓4(a) = (a+ 𝑘4)(mod n)unden estelungimeaalfabetului, 𝑘4esteliteracheiik= 𝑘*𝑘&… 𝑘2, iara esteliteradin mesajulclar. •Se considerăcheiade opt litere“academie” care vafi utilizatărepetitivpentrucifrareamesajului“substituțiepolialfabetică”. •Text clar: substituțiapolialfabetică; ­Cheia: academie­s+a= 19+1(mod 26) = 20(mod 26) = 20 = T ­u+c= 21+3(mod 26) = 24(mod 26) = 24 = X ­b+a= 2+1 (mod 26) = 3 (mod 26) = 3 = C­c+e= 3+5 (mod 26) = 8 (mod 26) = 8 = H ­a+a= 1+1 (mod 26) = 2 (mod 26) = 2 = B •Text cifrat: TXC…HB

CIFRURITRANSPOZIȚIE•Cifruriletranspozițierealizeazăo permutarea caracterelordin textulclar. •Cheiade cifrareesteperecheak=(d, f), undedreprezintălungimeablocurilorsuccesivede caracterecare vorfi cifrateconform permutăriif: f: 𝑍2-> 𝑍2, 𝑍2= {1,2,…,d} de forma 12 … d f(1) f(2) … f(d) undef(i) ≠ f(j), pentruoricei≠ j.•Mulțimeafuncțiilorastfeldefinite ested!. ÎnacestfelmesajulclarM = 𝑚*𝑚&…𝑚2𝑚26*…𝑚&2… estecifratastfel: C = 𝐸;(M) = 𝑚<(1)… 𝑚<(d)𝑚<(d+1)… 𝑚d+f(d).

CIFRURITRANSPOZIȚIE•Descifrarease obțineprinpermutareainversă. •Cifrareaprintranspozițieesteo transformarea textuluiclarprincarese modificăpozițiacaracterelorînmesaj.•O metodădes folosităpentruimplementareaacestuitip de transformareestescriereamesajuluiîntr-o anumitămatricedupăcare textulcifratse obțineprincitireacaracterelorpelinie, pecoloanăsaudupăun anumittraseuînmatrice.•Celemaisimple transpozițiise obținprinîmpărțireatextuluiclarîndouăjumătățicare se scriuunasubalta, dupăcare se citesccoloanelede la stângala dreapta. •De exemplu, cuvântul“calculator” se cifreazăastfel:Text clar: c a l c u l a t o r Text cifrat: CLAALTCOUR

CIFRULDES• Celmaiutilizatalgoritmde criptaresimetricestealgoritmulDES (Data Encryption Standard) adoptatîn1977 de cătreBiroulNaționalde Standarde, acumInstitutulNaționalde StandardeșiTehnologie(NIST) din SUA. • SistemulDES esteprimulstandard dedicatprotecțieicriptograficea datelorde calculator. • DES esteun cifrubloc, cu lungimeade 64 bițiprelucrațiînconjuncțiecu o cheieformatădin 56 biți. • Mai suntfolosiți8 bițipentrudetectareaerorilorde transmisie. Aceastăcheieestepăstratăde cătretoțimembriigrupuluicare, astfel, pot cifra/descifradateletransmisede la uniila alții. • Privitînansamblu, algoritmulDES esteo combinațiea douătehnicielementarede criptare: confuzieșidifuzie.

CIFRULDES• Construcțiafundamentalăa unuibloc DES esteo combinațieunicăa acestortehnici(o substituțieurmatăde o permutare) asupratextuluiclar, bazatăpecheie. • Aceastăconstrucțieestecunoscutăca rundă. AlgortimulDES estecompusdin 16 runde. • Algoritmulestebazatpeun set de permutări, substituțiișisumămod 2, aplicateiterativde 16 ori, peun bloc de date de 64 biți, prinfolosireade fiecaredatăa uneicheidiferitede 48 biți, extraseinițialdintr-o cheiede 56 biți.• Datelesuntîmpărțiteînblocuride 64 bițișicriptatefărăa modificalungimealor.

CIFRULDESCifrareaconstădin treicategoriide prelucrăricare se facasuprabloculuicu text clarde la intrare: 1. Bloculde date estesupusuneipermutăriinițiale, IP.2. Bloculpermutattreceprintr-un calculcomplex care depindede cheieșicare constădin 16 iterațiifuncționalidentice. Considerândcei64 bițiaiunuibloc supușiuneiiterații“i”, se noteazăcu 𝐿4C*și𝑅4C*celedouăjumătățide 32 de biți, stîngașidreapta, care-l compun. Fie 𝑘4cheiapentruiterația“i” șiun bloc de 48 de bițialeșidin cei56 de bițiaicheii. Prelucrărileuneiiterațiisunt: 𝐿4= 𝑅4C*𝑅4= 𝐿4C*+𝑓(𝑅4C*,𝐾4)3. Ultima iterație este diferită de celelalte, fiind definită de ecuațiile: 𝐿*,=𝑅*+𝐿*,= 𝑅*++𝑓(𝑅*+,𝐾*,)

CIFRULDES• Funcțiaf realizeazăo substituțieneliniară. • Dupăcalcululcomplex format din cele16 iterări, bloculde 32 de bițiestesupusuneipermutări𝐼𝑃C*, inversaceleiinițiale. • Descifrareaconstăînfolosireaaceluiașialgoritm, darcu cheile𝑘4aplicateînsensinvers, de la 𝑘*,la 𝑘*. • Primulpas îndescifrareesteaplicareapermutăriiIP , care dezleagăultimulpas 𝐼𝑃C*, din operațiade cifrare. • Apoise vagenera însensinvers:𝑅4C*= 𝐿4𝐿4C*= 𝑅4+𝑓(𝐿4,𝐾4). • Se vaplecade la 𝑅*,și𝐿*,generându-se la sfârșit𝑅0și𝐿0. • Bloculde 64 de bițiestesupusuneipermutăriinverse, 𝐼𝑃C*.

CIFRULDES

CIFRULDES
Figura3. Sistemulde cifrareDES

SECURITATEADES• SecuritateaalgoritmuluiDES depindede algoritmulînsine șide utilizareacheiide 56 de biți. • De-a lungultimpului, algoritmulDES a fostcelmaistudiatalgoritmde criptare, atâtprindiverselelucrăricare au apărut, darșiprinrezultatelepractice efectuate. • Un interesdeosebitestemanifestatasupralungimiicheii. • In 1998, Electronic Frontier Foundation (EFF) a anunțatcăcifrulDES a fostspartfolosindu-se un calculator special care a costat250000$. • Atacula duratmaipuținde treizile. • Dacăun cracker poateexecutaun milionde decriptăripemilisecundă, atuncicodulDES poatefi spartînaproape10 ore.

TIMPULNECESARPENTRUA SPARGEALGORITMULDES

METODE CRIPTOGRAFICE DE PROTECȚIE A INFORMAȚIEIO problemăde securitateinternă: strigătulvechide mileniial opresorului.

AGENDA•Cifrultriple DEA •CifrulIDEA •CifrulBlowfish •CifrulRC5 •Moduride cifrare

TRIPLE DEA •Triple DEA (TDEA) a fostpropusde Tuchman șipentruprima datăstandardizatînaplicațiilefinanciareînstandardulANSI X9.17 înanul1985. •AlgoritmulTDEA utilizeazătreicheișitreiexecuțiiale algoritmuluiDES. Criptareaunuitext clarse face astfel: C=𝐸;%[𝐷;&[𝐸;*𝑃]]unde: C = textulcifratP = textulclar𝐸;[𝑋]= funcțiade criptarea luiX utilizândcheiaK. 𝐷;[𝑌]= funcțiade decriptarea luiY utilizândcheiaK. Decriptareaunuitext cifratse face astfel: P=𝐷;*[𝐸;&[𝐷;%𝐶]]

TRIPLE DEA•Cu celetreicheidistincte, cifrulTDEA are lungimeacheiiegalăcu 168 biți. •Cu o cheiede 168 de biți, ataculasupracifruluiTDEA esteaproapeimposibil. •NISTapreciazăcăcifrulTDEAșiAESvorcoexistaînurmătoriiani, pânăcândse vaface trecereadefinitivăla noulstandard AES. •2000 -NIST confirmanoulstandard AES •CistigatorulesteRijndaeldin Belgia.

CIFRULIDEA •CifrulIDEA (International Data Encryption Algorithm) esteun cifrubloc simetricrealizatde cătreXuejiaLaișiJames Masseyîn1991 înElveția. •CifrulIDEA utilizeazăo cheiede 128 de biți. •Acestalgoritmutilizeazătreioperațiimatematicediferitede celedin cifrulDES: XOR, adunareabinarăa întregilorpe16 bițișimultiplicareabinarăa întregilorpe16 biți. •Acestefuncțiisuntcombinateînașafelîncâtsăproducăo transformarecomplexăcare estefoartegreude analizatșifoartegreude spart. •AlgoritmulIDEA esteutilizatînprodusulPGP (produspentrucriptareamesajelore-mail) șiînalteprodusecomerciale.

CIFRULBLOWFISH• Acestcifrua fostdezvoltatînanul1993 de cătreBruce Schneierșia devenitunuldintrecelemaipopularealternative la DES. • CifrulBlowfish a fostproiectatsăfie ușorde implementatșisăaibăo vitezăde execuțiemare. • Este de asemeneaun algoritmfoartecompact care îiestenecesarăo memoriede 5 kB. • O caracteristicăimportantăa cifruluiBlowfish esteaceeacălungimeacheiiestevariabilășipoatefi pânăla 448 de biți. • Blowfish are 16 runde(iterații) șiînpracticăse folosesccheide 128 de biți.

CIFRULRC5CifrulRC5 a fostrealizatde Ron Rivestînanul1994 șiare următoarelecaracteristici: • Este potrivitpentruhardware-ulșisoftware-ulexistent: RC5 utilizeazănumaioperațiicomputaționalefolositede microprocesoare. • Este rapid: Aceasta, datorităfaptuluicăcifrulRC5 esteun algoritmsimplu. • Este adaptabilla procesoarecu lungimidiferitede cuvânt. • Are un numărvariabilde runde: Numărulde rundeesteal doileaparametrual luiRC5. • Lungimeade cheievariabilă: Lungimeacheiiesteal treileaparametrual cifruluiRC5.

CIFRULRC5• Este simplu: Structurasimplăa cifruluiRC5 esteușorde implementat. • Necesitămemoriepuțină: DeoareceRC5 necesităpuținămemorie, el esteutilizatpentrucarteleinteligente(smart cards) saupentrualtedispozitivecare necesitămemorielimitată. • Securitate ridicată: CifrulRC5 are o securitateridicatădacăse alegparametriipotriviți. • CifrulRC5 esteutilizatînuneleprodusecriptograficerealizatede RSA Data Security, Inc.

CIFRULCAST-128• CifrulCAST-128 esteun cifrubloc simetricrealizatînanul1997 de c ătreC. Adams șiS. Tavares la Entrust Technologies. • CifrulCAST-128 utilizează cheide la 40 de bi țila 128 de bi ți. • Acestcifrua începuts ă fie utilizatîndiferiteprodusecriptografice, inclusivînPGP.

CARACTERISTICILEALGORITMILORSIMETRICIAlgoritmLungime cheieNumărde rundeOperațiimatematiceAplicațiiDES56 biți16XORSET, KerberosTriple DEA112 sau 168 biți48XORPGP , S/MIMEIDEA128 biți8XOR, adunare, multiplicarePGPBlowfishVariabilăpânăla 448 biți16XOR,adunareaRC5Variabilăpânăla 2048 bițiVariabil până la 255Adunarea, XOR, rotațiaCAST -128De la 40 bițila 128 bițiPGP

MODURIDE CIFRARE• Un cifrubloc simetricprocesează un bloc de bițila o operație. • ÎncazulDES șiTDEA, lungimeablocurilorestede 64 de biți. • Pentruun text clarcare are o lungimemaimare de 64 de biți, estenecesarsăse împartătextulclarînblocuride 64 de bițifiecare. • Existădouămoduriprincipalede utilizareînpracticăa algoritmilorsimetrici: cifrareabloc șicifrareasecvențială. • Cifrareabloc opereazăcu blocuride text clarșicifratde 64 de biți. • Cifrareasecvențialăopereazăcu secvențede text clarșicifratde un bit sauoctet. • Încazulcifrăriibloc, acelașibloc de text clarvafi cifratde fiecaredatăînacelașibloc de text cifrat, folosindaceeașicheie. • Încazulcifrăriisecvențiale, secvențesimilarede text clarvorfi cifratediferit, încazulunorcifrărirepetate.

CIFRURIBLOC• Cifrarecarte de coduri(Electronic CodeBook-ECB) • Cifrareabloc cu înlănțuire(Cipher Block Chaining-CBC) o Matematic, procesulde criptareșide decriptaredecurgeastfel: Ci = Ek(Pi +Ci-1 ) Pi = Ci-1 +Dk(Ci) o UndeCi reprezintăun fragment de criptogramăo IarPi reprezintăporțiunidin textulclar.

CIFRAREABLOC CU ÎNLĂNȚUIRE
Modulde criptareCBC

CIFRAREABLOC CU ÎNLĂNȚUIRE
Criptarea ultimului bloc prin CBC

CIFRAREACU REACȚIE(CIPHER FEEDBACK -CFB)• Cifrusecvențial• CifrulCFB pe8 biți, celucreazăcu blocuride 64 de biți, opereazăcu o coadăegalăcu ceaa blocului. • Inițial, aceastaesteinițializatăcu VI, analog moduluiCBC. • Coadaestecriptată, iarceimaidin stânga8 bițiairezultatuluisuntfăcuțiXOR cu primulcaracterdin textulclar, devenindprimulcaracterdin textulcifrat. • Se face deplasareacu 8 bițisprestânga, care suntastfelpierduți. Următorulcaracterdin textulclarestecriptatdupăacelașitipic. • Decriptareaesteprocesulinvers. Dacămărimeabloculuide criptatesten, atuncimodulCFB pen bițiestede forma din figura7, unde:

CIFRAREACU REACȚIE(CIPHER FEEDBACK -CFB) • Ca șimodulCBC, modulCFB face ca cifrareaunuicaracterdin textulclarsădepindăde celecriptateanterior.

METODE CRIPTOGRAFICE DE PROTECȚIE A INFORMAȚIEINu renunțaniciodatăla oportunitatepentrusecuritate.

AGENDA1. Criptografiacu cheipublice2. Criptareacu cheipublice3. Semnaturadigitala4. Functiigreuinversabile5. CriptosistemulRSA

CRIPTOGRAFIACU CHEIPUBLICEO schemăde criptarecu cheipubliceconțineurmătoareleelemente: • Textulclar: Acestaesteun mesajsaudate de intrarepentrualgoritmulde criptare. • Algoritmulde criptare: Transformătextulclarîntext cifrat. • Cheiapublicășicheiaprivată: Este o perechede chei, unautilizatăpentrucriptare(ceapublică) șicealaltăpentrudecriptare(ceaprivată). • Textulcifrat: Textulprodusînurmaalgoritmuluide criptare. Pentruun mesajdat, douăcheidiferitevorproduce douătextecifratediferite. • Algoritmulde decriptare: Decripteazătextulcifrat, înurmacăruiarezultătextulclar.

CRIPTAREACU CHEIPUBLICE

CRIPTAREACU CHEIPUBLICESuntrespectateurmătoarelecondiții:1. BpoateușorsăgenerezecheiapublicăPBșicheiaprivatăSB. 2. EmițătorulA, știindcheiapublicăa luiBșimesajulclarM, poatesăgenerezetextulcifratcorespunzător:C = 𝐸OP(M)3. ReceptorulBpoateușorsădecriptezetextulcifratC:M = 𝐷QP(C) = 𝐷QP(𝐸OP(M))4. Un atacatorcare știePBnu poatesădetermine cheiaprivatăSB5. Un atacatorcare știecheiapublicăPBșitextulcifratCnu poatesădetermine mesajuloriginal M6. Are locurmătoarearelație: M = 𝐷QP(𝐸OP(M)) = 𝐷OP(𝐸QP(M)).

SEMNĂTURADIGITALĂ

SEMNĂTURADIGITALĂ•Semnăturadigitalăreprezintăun atributal unuiutilizator, fiindfolosităpentrurecunoaștereaacestuia. •Fie Bun receptor de mesajsemnatde A. •SemnăturaluiAtrebuiesăsatisfacăurmătoareleproprietăți: ­UtilizatorulBsăfie capabilsăvalidezesemnăturaluiA­Săfie imposibilpentruoricine, inclusivB, săfalsificesemnăturaluiA­Încazulîncare Anu recunoaștesemnăturaunuimesajM, trebuiesăexisteun „judecător” care săpoatărezolvadisputadintreAșiB.

APLICAȚIILE CRIPTOSISTEMELOR CU CHEI PUBLICEAlgoritmCriptare/DecriptareSemnăturădigitalăDistribuțiacheilorRSA DA DADADiffie-HellmanNUNUDADSSNUDANUAlgoritmibazațipecurbeelipticeDADADA

FUNCȚIIGREUINVERSABILE• DiffieșiHellmanau sugeratșio metodăde implementarepractică. • O funcțieestegreuinversabilășiușorde calculat, darpentruaproapetoatevaloriley din codomeniuesteimposibilcomputaționalsăse calculeze𝑥=𝑓C*(𝑦).• Cu altecuvinteesteimposibilcomputaționalsăse calculeze𝑓C*dacăse dispunede o descrierecompletăa lui𝑓. • O funcțiegreuinversabilăse spunecăestecu trapăatuncicând𝑓C*esteușorde calculatnumaidacăse dispunede o informațietrapă.• Necunoaștereaacesteiinformațiiface ca funcțiasăfie greuinversabilă.• O astfel de pereche de funcții (𝑓,𝑓C*) poate constitui perechea (E,D) a unui criptosistem cu chei publice.

CRIPTOSISTEMULRSA• Prima schemăcriptograficăcu cheipublicea fostrealizatăînanul1977 de cătreRon Rivest, AdiShamir șiLen Adlemande la MIT. • Schema Rivest-Shamir-Adleman(RSA) esteceamairăspânditășiimplementatăschemădin lume.Generareacheilor: 1. Se selecteazădouănumereîntregiprime p șiq. 2. Se calculeazăprodusuln=p*q. 3. Se calculeazăindicatorulluiEuler Φ(n)=(p-1)*(q-1). 4. Se selecteazăun numărîntrege astfelîncâtc.m.m.d.c.( Φ(n),e)=1, 1<e< Φ(n). 5. Se calculeazăd astfelîncâtd = 𝑒C*mod Φ(n). 6. Cheiapublicăeste(e,n), iarcheiaprivatăested.

CRIPTOSISTEMULRSAAlgoritmulde criptare: • Presupunemcăun utilizatorA are cheiapublică(e,n) șicheiaprivatăd. • UtilizatorulB criptează mesajulM pentrua fi transmisla A astfel: 1. Obținecheiapublică(e,n) a luiA. 2. Transformămesajulcevafi criptatîntr-un numărîntregM înintervalul[0,n-1]. 3. CalculeazăC = 𝑀V(mod n). 4. TrimitetextulcifratC la utilizatorulA.

CRIPTOSISTEMULRSAAlgoritmul de decriptare:• Pentrua determinatextulclarM din textulcifratC, utiliz. A calc.: M = 𝐶2(mod n). • NumaiutilizatorulA cunoastecheiaprivatad.

CRIPTOSISTEMULRSAExemplu: Se genereazămaiîntâicheile: 1. Se selecteazădouănumereprime p= 7 șiq= 17. 2. Se calculeazăn= p*q= 7*17 = 119. 3. Se calculeazăΦ(n) = (p-1)*(q-1) = 96. 4. Se alegeeașaîncîteesterelativprim cu Φ(n) = 96. Înacestcaze= 5.5. Se determinădastfelîncâtd*e= 1 mod 96 șid<96. Avem d= 77,deoarece 77*5 = 385 = 4*96+1.6. Cheia publică este (5,119), iar cheia privată este 77.• Se considerăcătextulclaresteM =19.• Textulcriptatvafi C = 19+mod 119 = 2476099 mod 119 = 66.• Pentrudecriptarese calculează66..mod 119 = 19 mod 119.

ATACURIASUPRAALGORITMULUIRSA• Firmeproducătoarede sistemede programeșiechipamente, ca Novell, DEC, Lotus, Motorola, folosescacestalgoritm. • Instituțiiimportante(DepartamentulApărăriidin SUA, Boeing, rețeauabancarăinternaționalăSWIFT) folosescacestalgoritmpentruprotejareașiautentificareadatelor, parolelor, fi șierelor, documentelormemoratesautransmiseprinrețele. • Existătreitipuride atacuriasupraalgoritmuluiRSA:oÎncercareatuturorcheilorprivate posibile. oFactorizareanumăruluin înfactoriprimip șiq. o Acesteatacuridepindde timpulde execuțiea alg. de decriptare.

ATACURIASUPRAALGORITMULUIRSADin punctde vederematematic, există3 atacuriasupraRSA: 1. Factorizareanumăruluin înfactoriprimip șiq. Se poateastfeldeterminaΦ(n) = (p-1)*(q-1), iarapoid = 𝑒C*(mod Φ(n)). 2. DeterminarealuiΦ(n) direct, fărăa determinamaiîntâip șiq. Șiînacestcazse poatedeterminaapoid = 𝑒C*(mod Φ(n)). 3. Determinarealuid înmod direct, fărăa determinamaiîntâiΦ(n).• DeterminarealuiΦ(n) esteechivalentcu factorizareanumăruluin, iardeterminarealuid ( știinddoarpee șin) se face într-un timptot așade mare ca șifactorizarealuin. • SecuritateaRSA se bazeazăpedificultateafactorizăriiunuinumărîntregînfactoriprimi. • RSA cu lungimeacheiide 1024 biți(aproximativ300 cifre) esteconsideratdestulde puternicpentruaplicațiileactuale.

METODE CRIPTOGRAFICE DE PROTECȚIE A INFORMAȚIEIO problemăde securitateinternă: strigătulvechide mileniial opresorului.

AGENDA1. CriptosistemulElGamal2. Algoritmul Diffie-Hellman3. Criptografia bazata pe curbe eliptice 4. Recomandari pentru alegerea cheilor RSA

CRIPTOSISTEMULELGAMALCriptosistemul ElGamal a fost realizat оn 1985 de Taher ElGamal. Generarea cheilor Fiecare entitate generează o cheie publică șio cheie privată corespunzătoare. Entitatea A execută următoarele: 1. Generează un număr prim mare p și un generator αal grupului multiplicativ Z*p. 2. Selectează un număr întreg a, 1 ≤ a ≤ p-2 șicalculează αa mod p. 3. Cheia publică a lui A este (p,α,αa), iar cheia privată a lui A este a.

CRIPTOSISTEMULELGAMALAlgoritmul de criptare Utilizatorul B criptează un mesaj m și-l trimite la utilizatorul A: 1. Obține cheia publică (p,α,αa) a lui A. 2. Reprezintă mesajul de criptat într-un număr întreg m din intervalul [0,p-1]. 3. Selectează aliator un număr întreg k, 1 ≤ k ≤ p-2. 4. Calculează c1 = αk mod p șic2 = m(αa)k mod p. 5. Trimite textul cifrat c = (c1,c2) la utilizatorul A.

CRIPTOSISTEMULELGAMALAlgoritmul de decriptare Pentru a determina textul clar mdin textul cifrat c, utilizatorul A execută următoarele: 1. Utilizează cheia sa privată apentru a calcula: c1 p-1-a mod p 2. Determină textul clar mastfel: M = (c1-a)*c2 mod p 3. Se observă că c1 p-1-a = c1-a = α-a*k.

CRIPTOSISTEMULELGAMALExemplu: • A selectează numărul prim p = 2357 șiun generator α=2 din Z*2357. • A alege cheia sa privată a=1751 și calculează: αa mod p = 21751 mod 2357 = 1185 • Cheia publică a lui A este (2357, 2 ,1185). • Pentru a cripta un mesaj m = 2035, utilizatorul B selectează un număr întreg k=1520 șicalculează c1 = 21520 mod 2357 = 1430 c2 = 2035*11851520 mod 2357 = 697. • Utilizatorul B trimite c1 = 1430 și c2 = 697 la utilizatorul A. • Pentru a decripta mesajul cifrat, utilizatorul A calculează: c1p-1-a = 1430605 mod 2357 = 872 m = 872*697 mod 2357 = 2035.

ALGORITMUL DE DISTRIBUȚIE A CHEILOR DIFFIE-HELLMAN• Se fac publice următoarele elemente: un număr prim mare q șiun număr întreg α care este un element primitiv moduloq. • Un număr întreg α este un element primitiv moduloq dacă puterile α mod q, α 2 mod q, …, αq-1 mod q sunt nr. întregi de la 1 la q-1. • Presupunem că utiliz. A șiB doresc să stabilească o cheie secretă. • Utilizatorul A generează aleatorun număr întreg xA<q șicalculează yA=αxAmod q. • Оn mod similar, utilizatorul B generează aleatorun număr întreg xB<q șicalculează yB= αxBmod q. • Utilizatorul A ține valoarea xAsecretă șiface publică valoarea yA. • Utilizatorul B ține secretă valoarea xBșiface publică valoarea yB. • Utilizatorul A calculează cheia kA=(yA)xBmod q.

ALGORITMUL DE DISTRIBUȚIE A CHEILOR DIFFIE-HELLMAN• Avem următoarele relații: KA = (yB)xAmod q = (αxB mod q)xA mod q = (αxB)xAmod q = αxBxAmod q = (αxA)xBmod q = (αxA mod q)xB mod q = (yA)xBmod q = KB. • Cheia secretă stabilită de cei doi utilizatori A și B este K=KA=KB.

ALGORITMUL DE DISTRIBUȚIE A CHEILOR DIFFIE-HELLMANElementele publice globale • q –Număr prim • α –α<q șiα este un element primitiv Generarea cheilor utilizatorului A • Generează cheia privată xA, xA<q • CalculeazăcheiapublicăyA, yA= αxAmodq Generarea cheilor utilizatorului B • Generează cheia privată xB, xB<q • Calculează cheia publică yB, yB= αxBmod q

ALGORITMUL DE DISTRIBUȚIE A CHEILOR DIFFIE-HELLMANGenerarea cheii de distribuție de către utilizatorul A KA = (yB)xAmod q Generarea cheii de distribuție de către utilizatorul B KB = (yA)xBmod q

ALGORITMUL DE DISTRIBUȚIE A CHEILOR DIFFIE-HELLMAN1. Se face public numărul prim q = 71 2. Se face public nr. α = 7, care e un primitiv modulo71. 3. Utilizatorul A selectează xA= 5 (cheia privată) șicalculează yA= 75= 51 mod 71. 4. Utilizatorul B selectează xB= 12 (cheia privată) șicalculează yB=712= 4 mod 71. 5. Utilizatorul A calculează cheia de distribuție: KA = (yB)xA mod 71 = 45 = 30 mod 71 6. Utilizatorul B calculează cheia de distribuție: KB = (yA)xB mod 71 = 5112 = 30 mod 71. 7. Cheia de distribuție este K=KA = KB =30 mod 71.

CRIPTOGRAFIA BAZATĂ PE CURBE ELIPTICE • Majoritatea produselor șistandardelor care utilizează criptografia cu chei publice pentru criptare șisemnături digitale folosesc criptosistemulRSA. • Se foloseștecriptosistemulRSA cu 1024 de biți pentru a creștesecuritatea aplicațiilor șiîn special a aplicațiilor din comerțul electronic. • O posibilă alternativă la criptosistemulRSA este criptografia bazată pe curbe eliptice. • Folosirea curbelor eliptice оn criptografie a fost propusă pentru prima dată în anul 1985 de către Victor Miller șiindependent de NealKoblitz. • Ideea de bază era folosirea grupului punctelor de pe o curbă eliptică în locul grupului Zp* din sistemele criptografice existente.

CRIPTOGRAFIA BAZATĂ PE CURBE ELIPTICE • Recent, curbele eliptice au fost folosite pentru conceperea unor algoritmi eficienți de factorizare a întregilor șipentru demonstrarea primalității. • Ele au fost utilizate оn construirea criptosistemelorcu chei publice • Curbele eliptice și-au găsit aplicabilitate șiîn teoria codurilor, unde au fost întrebuințate pentru obținerea unor coduri corectoare de erori foarte bune. • Curbele eliptice au jucat un rol important șiîn recenta demonstrație a Ultimei Teoreme a lui Fermat.

CRIPTOGRAFIA BAZATĂ PE CURBE ELIPTICE • Folosirea criptosistemelorbazate pe curbe eliptice permite creștereasecurității • Scade supraâncărcareașitimpul de latență. Curbele eliptice sunt benefice în aplicații în care: • Puterea de calcul este limitată (cartelele inteligente) • Spațiul de circuit integrat este limitat • Este necesară viteză mare de calcul • Lățimea de bandă este limitată (comunicații mobile) • Se folosește intens semnarea și verificarea semnăturii.

AVANTAJELE CRIPTOSISTEMELORBAZATE PE CURBE ELIPTICE • Securitate crescută: tăria criptografică per bit este mult mai mare decât a oricărui alt sistem de criptare cu chei publice cunoscut la ora actuală • Lărgime de bandă redusă datorită semnăturilor șicertificatelor de dimensiune mică • Viteză mare de criptare șisemnare atât în implementările software cât șiîn cele hardware (transferuri bancare, rețele radio) • Economii substanțiale față de alte criptosistemela calcule, lărgimea de bandă șinecesitățile de memorare • Sunt ideale pentru implementările pe hardware de dimensiuni reduse (cum ar fi cartelele inteligente –smartcards)

RECOMANDĂRI PENTRU ALEGEREA CHEILOR RSA• Recentele progrese făcute în factorizarea întregilor șiîn procesarea paralelă au dat nașterela necesitatea unor chei din ce în ce mai mari pentru sistemele de criptare cu chei publice. • Ultimele recomandări făcute de laboratoarele RSA Data Securitypentru alegerea dimensiunii cheilor de cifrare RSA sunt: CondițiilepuseDimensiuneSecuritate pe termen scurt (de ex. Chei utilizatori) 768 bițiSecuritate pe termen mediu (de ex. Chei organizații) 1024 bițiSecuritate pe termen lung (de ex. Chei administratori)2048 biți

METODE CRIPTOGRAFICE DE PROTECȚIE A INFORMAȚIEI

AGENDA 1. Curbe eliptice peste cвmpuri finite 2. Operația de adunare pe o curbă eliptică 3. CriptosistemulElGamalbazat pe curbe eliptice 4. Problema logaritmilor discrețipe o curbă eliptică 5. Funcțiihash6. Comparațieîntre funcțiilehash

CURBE ELIPTICE PESTE CВMPURI FINITE • O curbă eliptică E constă din elemente (numite puncte) de tipul (x,y) ce satisfac ecuația: y2 = x3+a*x+b(mod p) • Unde a,b∈Zpastfel încât 4*a3+27*b2≠0 (mod p) • Numarulp este un număr prim • Impreunăcu un element singular, notat cu O șinumit „punctul de la infinit”. • O curbă eliptică E are o structură de grup abelianîmpreună cu adunarea.

OPERAȚIA DE ADUNARE PE O CURBĂ ELIPTICĂFiind date două puncte pe E, P(x1,y1) șiQ(x2,y2) avem: • P + O = P • P + (x1,-y1) = O. Punctul(x1,-y1) este negativullui P , notatcu-P • Dacă P ≠ -Q, atunci P + Q = (x3,y3), unde

OPERAȚIA DE ADUNARE PE O CURBĂ ELIPTICĂ

OPERAȚIA DE ADUNARE PE O CURBĂ ELIPTICĂ Exemplu: • Fie P = (3,10), Q = (9,7), p = 23 • Curba eliptică y2 = x3+x+1. Avem: • x3 = 112-3-9 = 109 = 17 mod 23 • y3 = 11*(3-(-6)) –10 = 89 = 20 mod23. • AșadarP + Q = (17,20).

CRIPTOSISTEMULELGAMALBAZAT PE CURBE ELIPTICE • Fie curbaelipticăE: y2 = x3+a*x+b(modp) șipunctulG = (x1,y1) un punctgeneratorînE. • Utilizatorul A selectează o cheie privată nAșicalculează cheia publică PA=nA*G. • Utilizatorul B selectează cheia sa privată nBșicalculează cheia publică corespunzătoare PB = nB*G. • Pentru a cripta un mesaj Pm, utilizatorul A alege aleatorun număr întreg pozitiv k • Calculează textul cifrat Cm (format dintr-o pereche de puncte): Cm = {kG, Pm + k*PB}.• Pentru a decripta textul cifrat Cm, utilizatorul B calculează: Pm + k*PB -nB(kG) = Pm + k(nB*G) -nB*(k*G) = Pm.

PROBLEMA LOGARITMILOR DISCREȚI PE O CURBĂ ELIPTICĂ •Problema logaritmilor discreți pe curbe eliptice este definită astfel:•Fiind dat un punct G pe o curbă eliptică, de ordin r (numărul de puncte de pe o curbă)•Si un alt punct Y , să se găsească un unic x, 0 ≤ x ≤ r-1, astfel încât Y=x*G.•Securitatea criptosistemelorbazate pe curbe eliptice se bazează pe dificultatea rezolvării problemei logaritmilor discreți pe o curbă eliptică•Adică pe determinarea lui x, dându-se G șiY.

COMPARAȚIEÎNTRECE ȘIRSA•MIPS–ani = numărul de ani necesari dacă se execută un milion de instrucțiuni în fiecare secundă

FUNCȚIIHASH•În schemele de semnătură digitală, funcțiile hashsunt aplicate pentru a reduce lungimea arbitrară a mesajelor la un șirde biți•Șirulde biți poate fi manipulat cu ușurință în algoritmul de semnare.•Definiție. O funcție hasheste o funcție care mapeazăun șirbinar de o lungime arbitrară finită la un șirbinar de o lungime fixată l :H : {0,1}* →{0,1} l.•O funcție hashtrebuie să fie greu de inversat șisă fie ușorde calculat

PROPRIETĂȚILE FUNCTIILORHASH•Rezistență la coliziune slabă: pentru un x dat, este greu de găsit un x’≠xastfel încât H(x) = H(x’)•Rezistență la coliziune puternică: este greu de găsit o pereche (x,x’) cu x ≠ x’ astfel încât H(x) = H(x’), dacă H este aleasă aleatordintr-o familie de funcții hash•Greu inversabilă: pentru un c dat, este greu de găsit un x astfel încât H(x) = c.•Una din cerințele fundamentale pentru o astfel de funcție este ca, modificând un singur bit la intrare, să producă o avalanșăde modificări în biții de la ieșire.

FUNCȚIA HASHSHA-1•NIST împreună cu NSA au proiectat Secure HashAlgorithm(SHA), standardul numindu-se SHS.•Algoritmul procesează un mesaj de lungime maximă 264 biți șiproduce un rezumat de 160 de biți.•Mai întâi mesajul este completat la multiplu de 512 biți, adică se adaugă 1 șiatâția de 0 până la 448 biți, iar ultimii 64 de biți memorează lungimea mesajului înainte de completare.•Rezumatul MD de 160 de biți, văzut ca 5 regiștriA, B, C, D, E de 32 de biți, se inițializează cu următoarea constantă MD0:A = 67452301B = EFCDAB89C = 98BADCFED = 10325476E = C3D2E1F0

FUNCȚIA HASHSHA-1• Apoi se prelucrează fiecare bloc Mj de 512 biți al mesajului.• Fiecare prelucrare are 4 runde de câte 20 de operații fiecare.• Funcția neliniară F, care se modifică la fiecare rundă, este definită astfel:Runda 1: Ft(B,C,D) = (BΛC)٧(B’ΛD), pentru t= 0,…,19Runda 2: Ft(B,C,D) = B ⊕C ⊕D, pentru t=20,…,39Runda 3: Ft(B,C,D) = (BΛC)٧(BΛD)٧(CΛD), pentru t=40,…,59Runda 4: Ft(B,C,D) = (B ⊕C ⊕D), pentru t=60,…,79

FUNCȚIA HASHSHA-1• Se noteazăcut număruloperației(t=0,…,79).• Fiecare bloc Mj, j=0,…,15 ,de 16 cuvinte de 32 de biți este transformat în 80 de subblocuriWj, j=0,…,79, folosind următorul algoritm:Wt = Mt , t = 0,…,15Wt= ( Mt-3 ⊕Mt-8 ⊕Mt-14 ⊕Mt-16) <<< 1 , t = 16,…,79• Unde <<< K semnifică deplasarea circulară la stânga a cuvântului cu K poziții.• S-a notat cu A’ complementul de 1 al lui A, cu ∧funcția AND, cu ∨funcția SAU• S-a notat cu ⊕suma modulo 2 (XOR).

FUNCȚIA HASHSHA-1• În fiecare rundă se execută următoarele operații ( t=0,…,79):TEMP = (A<<<5) +Ft(B,C,D)+E+Wt+KtE = DC = B<<<30B = AA = TEMP• Unde Kt este o constantă unică aditivă.• În final avem: MDj= MDj+ MDj-1.

ALTE FUNCȚII HASH•Există șialte funcții hashcum ar fi algoritmul MD5, algoritmul RIPEMD-160.•Algoritmul MD5 a fost dezvoltat de Ron Rivest.•Acest algoritm primeștela intrare un mesaj de lungime arbitrară șiproduce la ieșireun rezumat de 128 de biți.•Algoritmul RIPEMD-160 a fost elaborat de un grup de cercetători de la European RACE IntegrityPrimitivesEvaluation.•RIPEMD–160 este similar cu SHA-1.•Algoritmul RIPEMD-160 primeștela intrare un mesaj de lungime arbitrară șiproduce la ieșireun rezumat de 160 de biți.

COMPARAȚIE ÎNTRE FUNCȚIILE HASH

METODE CRIPTOGRAFICE DE PROTECȚIE A INFORMAȚIEIAdd your first bullet point hereAdd your second bullet point hereAdd your third bullet point here

AGENDA1. Semnături digitale 2. Schema de semnătură RSA 3. Shema de semnătură ElGamal 4. Schema de semnătură DSA

SEMNĂTURI DIGITALE Semnăturadigitalărezolvăatâtproblemaautentificăriiemițătoruluicâtșipeceaaautentificăriidatelor.•Osemnăturădigitalăserealizeazăfolosindunsistemcriptograficcucheipubliceșiofuncțiehash.•Definiție.Oschemădesemnăturădigitalăesteuntripletformatdintreialgoritmi(gen,sig,ver).AlgoritmulgengenereazăocheiesecretăxAșiocheiepublicăcorespunzătoareyAaunuiutilizatorA.AlgoritmulsigarecadatedeintrarecheiasecretăxAșimesajulmșicadatedeieșiresemnăturaσamesajuluim.AlgoritmulververificăsemnăturaσcuajutorulcheiipubliceyA.

ATACURI ASUPRA SCHEMELOR DE SEMNĂTURĂ DIGITALĂ Atacuricaracterizatedefelulfalsificăriisemnăturii:•Spargereatotalăasemnăturii(totalbreak):unadversarestecapabilsădeterminecheiasecretăasemnataruluimesajuluisaupoatesăcalculezeeficientsemnăturaoricăruimesajcuajutorulunuialgoritmdiferitdealgoritmulsig.•Falsificareselectivă(selectiveforgery):unadversarestecapabilsădeterminesemnăturadigitalăaunuimesajparticulardatsauauneiclasespecialedemesaje.•Falsificareaexistențială(existentialforgery):unadversarestecapabilsădetermineosemnăturădigitalăacelpuținunuimesajarbitrar.Adversarulpoatesănuaibăniciuncontrolasupramesajuluisemnat.

SCHEMA DE SEMNĂTURĂ RSA GenerareacheilorEntitateaAexecutăurmătoarele:•Genereazădouănumereprimemaripșiq•Calculeazăn=p*qșiφ(n)=(p-1)*(q-1)•Selectezăaleatorunnumărîntrege,1<e<φ(n),astfelîncât:c.m.m.d.c.(e,φ(n))=1•Calculeazăununicnumărîntregd,1<d<φ(n),astfelîncât:ed=1(modφ(n))•CheiapublicăaentitățiiAesteperechea(e,n)•Cheiaprivatăcorespunzătoareested.

SCHEMA DE SEMNĂTURĂ RSA GenerareasemnăturiiEntitateaAexecutăurmătoarele:•CalculeazăS=H(m)d(modn),undeHesteofuncțiehash.•SemnăturamesajuluimesteS.VerificareasemnăturiiPentruaverificasemnăturaSamesajuluim,entitateaBexecutăurmătoarele:•Obținecheiapublicăautentică(e,n)aentitățiiA•CalculeazăSe=H(m)de≡H(m)(modn),deoareceed=1(modφ(n)).

SCHEMA DE SEMNĂTURĂ RSA Exemplu:•EntitateaAgenereazănumereleprimep=7927,q=6997•Calculeazăn=p*q=55465219șiφ=7926*6996=55450296.•EntitateaAalegee=5șideterminădastfelîncâte*d=5d=1(mod55450296).Rezultăd=44360237.•CheiapublicăaluiAeste(n=55465219,e=5)•Cheiasasecretăested=44360237.Pentrusimplitate,presupunemcăH(m)=m.•Pentruasemnaunmesajm=31229978,entitateaAcalculeazăS=md(modn)=3122997844360237mod55465219=30729435.•Pentruverificareasemnăturii,entitateaBcalculeazăSe(modn)=307294355mod55465219=31229978=m.

SHEMADE SEMNĂTURĂ ELGAMALSchema de semnătură ElGamala fost propusă de ElGamalîmpreună cu schema de criptare cu chei publice. GenerareacheilorFiecareentitategenereazăcheiapublicășicheiaprivatăcorespunzătoare.EntitateaAexecutăurmătoarele:•GenereazăunnumărprimmarepșiungeneratorαalgrupuluimultiplicativZp*.•Selecteazăaleatorunnumărîntregaastfelîncât1≤a≤p-2.•Calculeazăy=αamodp.•CheiapublicăaentitățiiAeste(p,α,y)•Cheiaprivatăestea.

SHEMADE SEMNĂTURĂ ELGAMALGenerareasemnăturii•EntitateaAsemneazăunmesajbinarmdeolungimearbitrară.•Pentruaceasta,entitateaAexecutăurmătoarele:•Selecteazăaleatorunnumărîntregsecretk,1≤k≤p-2,astfelîncâtcmmdc(k,p-1)=1•Calculeazăr=αkmodpșik-1mod(p-1)•Calculeazăs=k-1(H(m)-a*r)mod(p-1),undeHesteofuncțiehash•Semnăturamesajuluimesteperechea(r,s).

SHEMADE SEMNĂTURĂ ELGAMALVerificareasemnăturiiPentruaverificasemnătura(r,s)amesajuluim,entitateaBexecutăurmătoarele:•Obținecheiapublicăautentică(p,α,y)aentitățiiA•Verificădacă1≤r≤p-1.Dacăaceastăinegalitatenuareloc,semnătura(r,s)nuevalidă.•Calculeazăv1=yrrsmodp.•CalculeazăH(m)șiv2=αH(m)modp,undeHesteofuncțiehash.•Semnătura(r,s)esteacceptatădacășinumaidacăv1=v2.

SHEMADE SEMNĂTURĂ ELGAMALExemplu:•Agenereazănr.primp=2357șigeneratorulα=2algr.Z*2357.•Aalegecheiaprivatăa=1751șicalculeazăy=αamodp=21751mod2357=1185.•CheiapublicăaluiAeste(p=2357,α=2,y=1185),iarcheiasaprivatăestea=1751.•Pt.asemnamesajulm=1463,Aselect.aleatorunоntregk=1529,calc.r=αkmodp=21529mod2357=1490șik-1mod(p-1)=245.•AcalculeazăS=245*(1463-1751*1490)mod2356=1777.Semnăturamesajuluim=1463esteperechea(r=1490,s=1777).•Pentruverificareasemnăturii,Bcalculeazăv1=11851490*14901777mod2357=1072,H(m)=1463șiv2=21463mod2357=1072.•EntitateaBacceptăsemnăturadeoarecev1=v2.

SCHEMA DE SEMNĂTURĂ DSA În 1991 NIST a propus algoritmul de semnătură digitală numit DSA a cărui standard s-a numit Digital SignatureStandard (DSS). GenerareacheilorFiecareentitategenereazăcheiapublicășicheiaprivatăcorespunzătoare.EntitateaAexecutăurmătoarele:1.Genereazăunnumărprimqastfelîncât2159<q<2160.2.Genereazăunnumărprimpastfelîncât2512≤p<21024șiq|p-13.SelecteazăungeneratorαpentrugrupulciclicZp*deordinq­3.1Alegeunelementg∈Zp*șicalculeazăα=g(p-1)/qmodp­3.2Dacăα=1,atunciseexecutăpasul3.1.4.Seselecteazăunnumărîntregaastfelîncât1≤a≤q-1.5.Secalculeazăy=αamodp.6.CheiapublicăaentitățiiAeste(p,q,α,y),iarcheiaprivatăestea.

SCHEMA DE SEMNĂTURĂ DSA GenerareasemnăturiiEntitateaAsemneazăunmesajmastfel:•Selecteazăaleatorunnumărîntregkastfelîncât0<k<q.•Calculeazăr=(αkmodp)modq.•Calculeazăk-1modq.•Calculeazăs=k-1(H(m)+a*r)modq,undeHesteofuncțiehash.•Semnăturamesajuluimesteperechea(r,s).

SCHEMA DE SEMNĂTURĂ DSAVerificareasemnăturiiPentruaverificasemnătura(r,s)amesajuluim,entitateaBexecutăurmătoarele:•Obținecheiapublicăautentică(p,q,α,y)aentitățiiB.•Verificădacă0<r<qși0<s<q.Dacăacesteinegalităținuauloc,semnătura(r,s)nuevalidă.•Calculeazăw=s-1modqșiH(m).•Calculeazău1=w*H(m)modqșiu2=r*wmodq.•Calculeazăv=(αu1yu2modp)modq.•Semnătura(r,s)amesajuluimesteacceptatădacășinumaidacă

SCHEMA DE SEMNĂTURĂ DSA Exemplu:•EntitateaAselecteazănumereleprimep=124540019șiq=17389astfelîncâtq|p-1.•Aselecteazăg=110217528∈Zp*șicalculeazăα=g7162modp=10083255.•Aselecteazăunnumărîntrega=12496astfelîncât1≤a≤q-1șicalculeazăy=αamodp=1008325512496mod124540019=19946265.•CheiapublicăaluiAeste(p=124540019,q=17389,α=10083255,y=119946265),•CheiaprivatăaluiAestea=12496.

SCHEMA DE SEMNĂTURĂ DSA Exemplu:•Pentruasemnaunmesajm,Aalegealeatorunnumărîntregk=9557șicalculeazăr=(αkmodp)modq=(100832559557mod124540019)mod17389=27039929mod17389=34.•Acalculeazăk-1modq=7631,H(m)=5246șiapois=7631*(5246+12496*34)modq=13049.•Semnăturamesajuluimesteperechea(r=34,s=13049).•Pentruaverificaunmesaj,entitateaBcalculeazăw=s-1modq=1799,u1=w*H(m)modq=5246*1799mod17389=12716șiu2=r*wmodq=34*1799mod17389=8999.•Bcalculeazăv=(αu1yu2modp)modq=(1008325512716*1199462658999mod124540019)mod17389=27039929mod17389=34.Deoarecev=r,Bacceptăsemnătura.

OBSERVATIIASUPRA DSA De-alungulcelorcвțivaanidelapublicareastandardului,luiDSAis-auadusoseriedeobservații:•AfostelaboratdeNISTfărăniciocosultareprealabilăaindustrieiamericane.•Timpuldesemnăturăestemultmaiscurtdecâtceldeverificare.•SpredeosebiredeRSA,unde,dacăseiacheiapublică3,verificareaestemultmairapidăcasemnătura.•AcestalgoritmesteovariantăaschemeidesemnăturăElGamal.•DSAsebazeazăpedificultateacalculăriilogaritmilordiscreți.

PROBLEME 1.RealizațicriptareașidecriptareautilizândalgoritmulRSApentruurmătoareledate:a)p=3,q=11,d=7,M=5b)p=5,q=11,e=3,M=9c)p=7,q=11,e=17,M=8d)p=11,q=13,e=11,M=7e)p=17,q=31,e=7,M=2.2. Оntr-un criptosistemRSA interceptați textul cifrat c=10 care este trimis la un utilizator ce are cheia publică e=5 șin=35. Care este textul clar M? 3. Оntr-un criptosistemRSA, cheia publică a unui utilizator este e=31 șin=3599. Care este cheia privată a utilizatorului?

METODE CRIPTOGRAFICE DE PROTECȚIE A INFORMAȚIEI

AGENDA1. Servere de autentificare Kerberos2. Certificate de cheie publică 3. Securitatea poșteielectronice -Sistemul PGP 4. Prelucrarea unui mesaj e-mail 5. Standardul S/MIME

SERVERE DE AUTENTIFICARE KERBEROS• Problema autentificării utilizatorilor șiprogramelor în rețelelede calculatoare devine tot mai critică datorită numeroaselor posibilitățide ocolire a mecanismelor clasice bazate pe parole. • Un utilizator care are acces la un sistem multiuser sau la un serviciu Internet va trebui să se autentifice folosind o parolă. • Sistemele bazate pe parole sunt vulnerabile la atacuri prin оncercărirepetate sau la ascultarea conexiunilor pe care se transmit parolele. • De aceea, ultimii ani au dus la implementarea unor servicii de autentificare bazate pe protocoale criptografice. • Astfel a fost creat cel mai puternic șimai utilizat serviciu de autentificare din lume care se numește: KerberosAuthenticationServer.

SERVERE DE AUTENTIFICARE KERBEROS• Kerberosa fost creat în cadrul proiectului Athena, la MIT (MassachusetsInstitute of Tehnology) din SUA. • Permite utilizatorilor să comunice în rețeapentru a-șidezvălui identitatea șipentru a se autentifica, prevenind situațiilede ascultare a liniilor. • Kerberosrealizează secretizarea datelor prin criptare. • Mai mult, Kerberosfurnizează autentificarea în timp real într-un mediu distribuit nesecurizat. • Din cauza restricțiilorla export, Kerberosnu este disponibil în afara SUA. • Pentru a rezolva această problemă șipentru a furniza companiilor europene un produs compatibil, un alt proiect a fost dezvoltat în Europa, numit SESAME șieste perfect compatibil cu Kerberosversiunea 5.

SERVERE DE AUTENTIFICARE KERBEROS• Cele mai multe implementaride Kerberosfolosesc protocolul TCP/IP (TransmissionControl Protocol / Internet Protocol). • Kerberoseste folosit оn protocoale la nivel aplicație, precum Telnetsau FTP , pentru a asigura securitatea comunicațiilorcu host-ul. • Kerberosfurnizează următoarele servicii: 1. Autentificare mutuală șicomunicațiesigură între două entitățiale unei rețeledeschise. 2. Distribuie chei secrete, oferind mecanisme pentru propagarea sigură a acestor chei secrete prin rețea. 3. Furnizează diferitelor servicii de pe calculatoare hostposibilitatea identificării sigure a utilizatorilor individuali.

CERTIFICATE DE CHEIE PUBLICĂ • Abordarea sistemelor cu chei publice se face utilizând conceptul de certificat, necesar pentru a exista certitudine asupra autenticitățiicheilor publice. • Altfel, ar fi posibile anumite substituții de persoane. • Un certificat de cheie publică e o structură de date folosită pentru a se putea asocia, în mod sigur, o cheie publică cu nișteatribute de utilizator. • Atributele pot fi, de exemplu, informațiide autentificare (nume, adresă) sau informațiide autorizare (de acces la o sursă). • Certificatul face legătura între o cheie publică și un nume.

CERTIFICATE DE CHEIE PUBLICĂ Оn structura certificatului există următoarele câmpuri: • Versiunea permite să se facă distincție între versiuni succesive ale formatelor de certificat. • Seria identifică în mod unic certificatul, între cele emise de aceeașientitate. • Algoritmul de semnătură identifică algoritmul folosit pentru calcularea semnăturii digitale la acel certificat. • Emitent conținenumele distinct al entitățiicare a creat certificatul șigarantează pentru legătura corectă între cheie publică șisubiect (numele autorului certificatului). • Subiect conținenumele distinct al entitățiicare reprezintă subiectul certificării șiproprietarul cheii publice cuprinse în certificat.

CERTIFICATE DE CHEIE PUBLICĂ • Valabilitatea cuprinde intervalul de timp, data de început șicea de sfărșit, în care certificatul e valabil. • Cheia publică subiect conțineun identificator al algoritmului folosit, precum șiparametrii ceruțide algoritm, care constituie cheia publică a subiectului proprietar al certificatului. • Semnătura conținesemnătura digitală a certificatului șieste adaugatăcelorlalte câmpuri ale acestuia. Semnătura se aplică de către autoritatea emitentă folosind cheia sa privată șipoate fi verificată oriunde, folosind cheia publică a Emitentului. • Dintre autoritățile de certificare folosite în Internet, cea mai cunoscută este VeriSign

SECURITATEA POȘTEIELECTRONICE -SISTEMUL PGP • Cerințelede securitate în poștaelectronică au condus la realizarea mai multor pachete de programe destinate protecțieicriptografice a mesajelor trimise prin rețea. • Dintre acestea, cel mai popular este PGP (PrettyGoodPrivacy) dezvoltat de Philip Zimmermanîn SUA. • PGP este un pachet de programe destinat protecțieipoșteielectronice șia fișierelor, prin cifrare clasică șicu chei publice. • Cu ajutorul său se pot stabili modalitățisigure de comunicațieîntre persoane, nefiind necesară schimbarea prealabilă a unor chei de cifrare. • PGP-ulоncludeun sistem sigur de gestiune a cheilor, autentificarea datelor prin semnătură digitală șicompresia datelor.

SECURITATEA POȘTEIELECTRONICE -SISTEMUL PGP PGP satisface trei cerințe esențiale: 1. Caracterul privat al poșteielectronice, ceea ce înseamnă că doar destinatarul desemnat al scrisorii poate citi conținutulacesteia. 2. Autentificarea emițătoruluimesajului. 3. Autentificarea mesajelor, adică certitudinea că mesajele nu au fost modificate de alte persoane.Serviciile oferite de sistemul PGP sunt: •Autenticitatea•Confidențialitatea•Compresia•Compatibilitatea e-mail•Segmentarea.

SECURITATEA POȘTEIELECTRONICE -SISTEMUL PGP Sistemul PGP poate executa următoarele operații: • criptarea fișierelor: se pot cripta fișiereproprii, folosind algoritmi de criptare cu chei secrete IDEA. Fișierulpoate fi descifrat doar de entitatea care cunoaștecheia de criptare a fișierului. • crearea de chei secrete șipublice: acestea sunt utile pentru a cripta șisemna mesajele care se trimit sau pentru decriptare. • gestionarea cheilor: PGP-ulcreazășidețineo bază de date care să conținăcheile publice ale persoanelor cu care se doreștecorespondența. • transmiterea șirecepționareade mesaje e-mail criptate: cu ajutorul PGP-ului se pot trimite scrisori criptate șise pot decripta scrisorile recepționate.

SECURITATEA POȘTEIELECTRONICE -SISTEMUL PGP • folosirea semnăturilor digitale: PGP-ulpoate face o semnare electronică a documentelor sau poate verifica semnătura oricărei persoane. • certificarea cheilor: PGP-ulasigură aceasta prin semnătura digitală a cheilor publice. • revocarea, dezactivarea șicustodia cheilor: dacă anumite chei ale utilizatorilor sunt compromise, ele se pot revoca sau dezactiva. Cheile se pot pune la loc sigur, folosind facilitățilede custodie. • configurarea după necesităția PGP-ului: se pot schimba setările variabilelor din fișierulde configurare a PGP-ului. • folosirea serverelor de chei PGP de pe Internet: se poate adaugacheia publică la o baza de date de pe server sau se pot obținealte chei publice care se află pe server.

SECURITATEA POȘTEIELECTRONICE -SISTEMUL PGP Criptarea folosită de PGP PGP foloseșteo combinațiea sistemelor criptografice simetrice șicu chei publice: • sistem simetric, bazat pe cifrul IDEA cu o singură cheie pentru cifrarea conținutuluimesajelor e-mail sau fișierelor. • sistem asimetric RSA pentru protecțiașidistribuțiacheii de unică întrebuințare(cheie de sesiune) cu care se face cifrarea simetrică a mesajului e-mail, precum șipentru autentificarea prin semnătura digitală a mesajului șia emițătorului.

SERVICII OFERITE DE PGP ServiciiAlgoritmiutilizațiDescriere Semnătura digitală DSS/SHA sau RSA/SHA Este creat un cod hashal mesajului folosind SHA-1.Acest rezumat este criptat folosind DSS sau RSA cu cheia privată a emițătorului. Criptarea mesajului CAST sauIDEAsauTripleDES cuDiffie-HellmansauRSAUn mesaj este criptat cu CAST-128 sau IDEA sau TDES cu o cheie de sesiune generată de emițător. Cheia de sesiune este criptată cu Diffie-Hellmansau RSA cu cheia publică a recipientului. Compresia ZIPUn mesaj poate fi compresat pt.stocaresau pentru transmisie folosind ZIP.

SERVICII OFERITE DE PGP ServiciiAlgoritmiutilizațiDescriere Compatibilitate e-mail Conversie Radix-64 Pentru a furniza transparențaaplicațiilore-mail, un mesaj criptat poate fi convertit la un șirASCII folosind conversia Radix-64. Segmentarea Pentru a se încadra în limitările maxime ale mesajului,PGPface segmentarea șireasamblarea mesajului.

PRELUCRAREA UNUI MESAJ E-MAIL La emiterea unui mesaj e-mail, PGP execută următoarele prelucrări : 1. Folosindu-se algoritmul de hashMD5 (sau SHA-1), se creazăun cod de autentificare MAC (MessageAuthenticationCode) de 128 de biți(sau de 160 de biți), dependent de codul mesajului. Codul va fi folosit în procesul de autentificare: MAC = MD5 (mesaj). 2.Prin cifrare cu cheia secretă AKpublicaa emițătoruluiA al mesajului e-mail, folosindu-se algoritmul cu chei publice RSA, se creazăsemnătura digitală pentru autentificarea mesajului șia originii sale : Semnătura = RSA (MAC, AKpublica).

PRELUCRAREA UNUI MESAJ E-MAIL3. Mesajul e-mail este comprimat, folosindu-se cunoscutul program pkzip. Acest lucru asigură o reducere a volumului de date ce trebuie cifrate șiapoi transmise : Mesaj comprimat = pkzip(mesaj). 4. Se generează aleatoro cheie de cifrare K, folosită doar pentru acest mesaj, numită cheie de sesiune. Ea reprezintă un numarde 128 de biți: Cheie sesiune = random( ). 5. Mesajul comprimat anterior este apoi cifrat cu ajutorul algoritmului IDEA, folosindu-se cheia generată în pasul precedent: Mesajcifrat= IDEA (Mesajcomprimat, Cheiesesiune).

PRELUCRAREA UNUI MESAJ E-MAIL6. Folosind acelașisistem cu chei publice (cheia publica BKpublicaa destinatarului B al mesajului e-mail), se criptează cheia de sesiune pentru a putea fi trimisă în mod sigur la receptor: Cheie sesiune criptată = RSA (Cheie sesiune, BKpublica). 7. Se creazămesajul e-mail protejat în vederea transmiterii lui la destinațiefolosind serviciile obișnuitede e-mail: • Mesaj e-mail protejat = [Key-ID, Semnătura, Data-Semnătura, Cheie sesiune criptată, Mesaj cifrat].

STANDARDUL S/MIME• S/MIMEeste un standard pentru asigurarea securitățiimesajelor e-mail în Internet. • Formatulunuimesaje-mail este numitMIME (Multipurpose Internet Mail Extensions).• RFC 822 defineșteun format pentru mesajele de tip text care sunt trimise prin poștaelectronică. • Оn contextul RFC 822, mesajele sunt văzute ca având o anvelopă șiun conținut. • Anvelopa conțineinformațiice sunt necesare pentru a realiza transmisia. • Conținutulmesajului reprezintă obiectul ce va fi transmis la recipient.

STANDARDUL S/MIME• Standardul RFC 822 se aplică doar conținutuluimesajului. • Conținutulmesajului include un set de câmpuri headerce sunt utilizate de sistemul de poștăelectronică pentru a crea anvelopa. • Un mesaj, conform RFC 822, este constituit dintr-un număr de linii headerurmat de un text (thebody –corpul mesajului). • Header-ul este separat de corpul mesajului printr-o linie goala. • O linie headereste constituită dintr-un cuvânt cheie (keyword), urmat de caracterul două puncte ( : ) șide argumentele cuvântului cheie. • Formatul RFC 822 permite ca o linie prea lungă să fie spartă în mai multe linii. • CelemaiutilizatecuvintecheiesuntFrom, To, Subject șiDate.

STANDARDUL S/MIME•Prezentămaiciun exemplude mesaj: ­Date: Mon, 2Nov201510:37:17 ­From: “Mail UTM” mail@utm.md ­Subject: Sintaxain RFC 922 ­To: mail@utm.md Hello! Aici începe corpul mesajului. •S/MIME utilizează trei algoritmi cu cheie publică: •DSS pentru semnături digitale •EIGamalpentru criptarea cheilor de sesiune •RSA pentru semnături digitale șicriptarea cheilor de sesiune. Standardul S/MIME utilizează alg. hash SHA-1 de 160 de biți.

TITLE AND CONTENT LAYOUT WITH CHART
0123456
Category 1Category 2Category 3Category 4Название диаграммы
Series 1Series 2Series 3

TWO CONTENT LAYOUT WITH TABLEFirst bullet point hereSecond bullet point hereThird bullet point hereGroup AGroupBClass 18295Class 27688Class 38490

TWO CONTENT LAYOUT WITH SMARTARTGroup A•Task 1•Task 2Group B•Task 1•Task 2Group C•Task 1First bullet point hereSecond bullet point hereThird bullet point here

Similar Posts