Refer

17
MINISTERUL EDUCAȚIEI ACADEMIA DE STUDII ECONOMICE FACULTATEA “CIBERNETICĂ STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ” Referat: “Cifrul Cezar” A efectuat: Studentul grupei Ti- 121 Cristian Ilie

description

Referat Securitate lab1

Transcript of Refer

MINISTERUL EDUCAIEIACADEMIA DE STUDII ECONOMICEFACULTATEA CIBERNETIC STATISTIC I INFORMATIC ECONOMIC

Referat:

Cifrul Cezar

A efectuat:Studentul grupei Ti-121Cristian Ilie

Chiinu 2015

CuprinsNoiuni generale3Istoria criptografiei i criptanalizei4Exemplu5Spargerea cifrului8Bibliografie10Anexe10

Noiuni generale Criptografiareprezint o ramur a matematicii care se ocup cu securizarea informaiei precum i cu autentificarea i restricionarea accesului ntr-un sistem informatic. n realizarea acestora se utilizeaz att metode matematice (profitnd, de exemplu, de dificultatea factorizrii numerelor foarte mari), ct i metode decriptare cuantic. Termenulcriptografieeste compus din cuvintele de origine greac krypts(ascuns) i grfein(a scrie). Criptologia este considerat ca fiind cu adevrat o tiin de foarte puin timp. Aceasta cuprinde att criptografia - scrierea secretizat - ct i criptanaliza. De asemenea, criptologia reprezint nu numai o art veche, ci i o tiina nou: veche pentru c Iulius Cezar a utilizat-o deja, dar nou pentru c a devenit o tem de cercetare academico-tiinfic abia ncepnd cuanii 1970. Aceast disciplin este legat de multe altele, de exemplu de teoria numerelor, algebr, teoria complexitii,informatic.

Terminologie Pn n vremurile moderne, termenulcriptografiese referea aproape exclusiv lacriptare, procesul de conversie a informaiei obinuite (text n clar) ntr-un text neinteligibil (text cifrat).Decriptarea este inversul, trecerea de la textul cifrat, neinteligibil, n text clar. Uncifrueste o pereche dealgoritmicare efectueaz att aceast criptare ct i decriptarea. Modul de operare detaliat al unui cifru este controlat de algoritm i de ocheie. Aceast cheie este un parametru secret (n mod ideal, cunoscut doar celor care comunic) pentru contextul unui anume schimb de mesaje. Cheile sunt importante, iar cifrurile fr chei variabile sunt simplu de spart i deci mai puin utile. De-a lungul istoriei, cifrurile erau adesea folosite direct pentru criptare i decriptare, fr proceduri adiionale, cum ar fi autentificarea sau testele de integritate.n utilizarea popular, termenul "cod" este adesea folosit cu sensul de orice metod de criptare sau de ascundere a nelesului. Totui, n criptografie, cuvntulcodare un neles mai restrns; acela de nlocuire a unei uniti de text clar (un cuvnt sau o fraz) cu un cuvnt codat (de exemplu,plcint cu merenlocuieteatac n zori). Codurile nu mai sunt folosite n criptografie, dect uneori pentru anumite lucruri cum ar fi desemnarea unitilor (de exemplu, "zborul Bronco" sau Operaiunea Overlord) ntruct cifrurile alese corect sunt mai practice, mai sigure i n acelai timp mai bine adaptate calculatoarelor dect cele mai bune coduri. Istoria criptografiei i criptanalizei nainte de epoca modern, criptografia se ocupa doar cu asigurarea confidenialitii mesajelor (criptare) conversia demesajedintr-o form comprehensibil ntr-una incomprehensibil, i inversul acestui proces, pentru a face mesajul imposibil de neles pentru cei care intercepteaz mesajul i nu au cunotine secrete adiionale (anume cheia necesar pentru decriptarea mesajului). n ultimele decenii, domeniul s-a extins dincolo de problemele de confidenialitate i include, printre altele, i tehnici de verificare a integritii mesajului, autentificare a trimitorului i receptorului,semntur electronic, calcule securizate. Cele mai vechi forme de scriere secretizat necesitau doar puin mai mult dect hrtie i creion (sau unelte similare acestora), ntruct majoritatea oamenilor nu tiau s citeasc. Creterea alfabetizrii a necesitat creterea complexitii criptografiei. Principalele tipuri clasice de cifruri suntcifrurile cu transpoziie, care modific ordinea literelor dintr-un mesaj (de exemplu ajutor devine ojartu ntr-o schem trivial de rearanjare), icifrurile cu substituie, care nlocuiesc sistematic litere sau grupuri de litere cu alte litere i grupuri de litere (de exemplu, conexiune devine dpofyjvof nlocuind fiecare liter cu urmtoarea din alfabet). Versiuni simple ale celor dou tipuri de cifruri ofereau un grad mic de confidenialitate n cazul oponenilor instruii. Unul din primele cifruri cu substitutie a fostCifrul lui Cezar , n care fiecare liter din textul clar era nlocuit cu o liter aflat la un numr fix de poziii distan de ea n alfabet. Cifrul a fost denumit astfel dupIulius Cezar despre care se spune c l-a folosit, cu o deplasare de 3, n comunicaia cu generalii si n timpul campaniilor militare. Cifrul Cezar este denumit dup Iulius Cezar, care a folosit un alfabet cu o deplasare de trei poziii.Cifrul Cezar este denumit dup Iulius Cezar, care, conform Suetoniu, l folosea cu o deplasare de 3 pentru protejarea mesajelor cu importan militar:Dac avea ceva confidenial de comunicat, scria ncifrat, adic schimba ordinea literelor din alfabet, astfel nct nu se putea nelege nici un cuvnt. Dac cineva dorete s descifreze i s neleag, trebuie s nlocuiasc a patra liter din alfabet, adic D, cu A, i aa mai departe pentru celelalte. Suetonius, Viaa lui Iulius Cezar 56 .Dei Cezar a fost primul care a fost folosit cifrul ntr-un mod n care se poate atesta, alte cifruri bazate pe substituie se cunosc ca fiind folosite anterior. Nepotul lui Iulius Cezar, Augustus, a folosit de asemenea cifrul, dar cu o deplasare de unu:Cnd scria ncifrat, scria B n loc de A, C n loc de B, i restul literelor pe acelai principiu, folosind AA pentru X. Suetonius, Viaa lui Augustus 88.Exist dovezi cum c Iulius Cezar folosea i sisteme mai complicate, iar un scriitor, Aulus Gellius, refer un tratat (acum pierdut) despre cifrurile lui:Exist chiar i un tratat scris n mod ingenios de ctre gramaticianul Probus cu privire la semnificaia secret a literelor din compoziia epistolelor lui Cezar. Aulus Gellius, 17.9.1-5.Nu se tie ct de util era cifrul Cezar n acel timp, dar este probabil ca el s fie destul de sigur, att timp ct numai civa dintre inamicii lui Cezar erau n stare s scrie i s citeasc, dar mai ales s cunoasc concepte de criptanaliz.Presupunnd c un atacator reuea s citeasc un mesaj, nu exist indicii cu privire la existena unor tehnici de soluionare a cifrurilor cu substituie. Primele dovezi cunoscute sunt lucrrile din secolul al IX-lea ale lui Al-Kindi, n lumea arab, o dat cu descoperirea analizei frecvenei.Un cifru Cezar cu deplasarea de o unitate a fost utilizat la ncifrarea numelor lui Dumnezeu pe spatele Mezuzelor. Acest fapt poate fi o rmi din vremurile n care evreilor nu le era permis s dein Mezuze. nsei literele criptogramei conin un nume divin, care in forele rului la distan.n secolul al XIX-lea, seciunea de anunuri personale din ziare era folosit pentru schimbarea de mesaje criptate folosind scheme simple de ncifrare. Kahn (1967) descrie exemple de ndrgostii care comunicau secret folosind cifrul Cezar n The Times. Chiar i n 1915, cifrul Cezar era folosit: armata ruseasc l-a utilizat ca nlocuitor pentru cifruri mai complicate care s-au dovedit a fi prea dificile pentru ca trupele lor s le foloseasc; criptanalitii germani i austrieci nu aveau nici o dificultate n decriptarea mesajelor lor.Cifrurile Cezar pot fi gsite astzi n jucriile pentru copii. O deplasare de 13 este efectuat n algoritmul ROT13, o metod simpl de alambicare a textului de pe unele forumuri de pe Internet, dar nu ca metod de criptare.Cifrul Vigenre folosete un cifru Cezar cu o deplasare diferit la fiecare poziie din text; valoarea deplasrii este definit folosind un cuvnt-cheie care se repet. Dac o cheie este la fel de lung ca i mesajul i aleas aleatoriu, atunci acesta este un cifru care nu poate fi spart att timp ct cheia este secret. Cuvintele cheie mai scurte dect mesajul introduc un ablon ciclic care poate fi detectat cu o versiune statistic avansat a analizei frecvenei.n aprilie 2006, capul mafiot evadat Bernardo Provenzano a fost capturat n Sicilia parial datorit criptanalizei mesajelor sale scrise ntr-o variant a cifrului Cezar. Cifrul lui Provenzano folosea numere, astfel nct "A" era scris ca "4", "B" ca "5" .a.m.d.Exemplu n criptografie, cifrul lui Cezar, numit i cifru cu deplasare, codul lui Cezar sau deplasarea lui Cezar, este una dintre cele mai simple i mai cunoscute tehnici de criptare. Este un tip de cifru al substituiei, n care fiecare liter din textul iniial este nlocuit cu o liter care se afl n alfabet la o distan fix fa de cea nlocuit. De exemplu, cu o deplasare de 5 poziii, A este nlocuit cu D, devine E i aa mai departe. Aceast metod este numit aa dup Iulius Cezar, care o folosea pentru a comunica cu generalii si.

Aplicarea cifrului lui Cezar asupra unui text oarecare const n nlocuirea fiecrei litere din textul iniial cu una care se afl la o distan fix n alfabet. Acest exemplu este cu o deplasare de trei poziii, astfel nct B din textul iniial devine E n textul criptat. Pasul de criptare al cifrului lui Cezar este de obicei ncorporat n scheme mai complexe precum Cifrul Vigenre, i nc mai are aplicaii moderne n sistemul ROT13. Ca orice alt cifru bazat pe substituii alfabetice, cifrul lui Cezar este simplu de descifrat i n practic nu ofer securitate suficient. Transformarea poate fi reprezentat printr-o aliniere a dou alfabete; alfabetul cifrului este alfabetului normal rotat la stnga sau la dreapta cu un numr de poziii. n exemplul de mai jos cifrul folosete o rotaie la stnga cu cinci poziii (parametrul de deplasare, aici 5, este folosit drept cheia cifrrii):Normal: ABCDEFGHIJKLMNOPQRSTUVWXYZCifru : DEFGHIJKLMNOPQRSTUVWXYZABC Pentru a cripta un mesaj se caut fiecare liter a mesajului n linia "Normal" i se scrie litera corespunztoare din linia "Cifru". Pentru decriptarea unui text cifrat se procedeaz invers.Mesaj iniial: ANA ARE MERE DE LA BUNICA SAMesaj criptat: DSD DU RU I QD GZSMHD VD Criptarea dup cifrul Cezar poate fi reprezentat folosind aritmetic modular prin transformarea literelor n numere conform schemei A = 0, = 1,..., Z = 30[1]. Astfel, alfabetul devine o secven de 31 de numere, iar criptarea unei litere cu poziia din alfabet printr-o deplasare spre dreapta cu n poziii poate fi descris matematic ca[2]

Decriptarea este fcut n mod similar:

(Exist mai multe definiii pentru operaia modulo. n operaia de mai sus, rezultatul se afl n intervalul 0...30. Dac x+n sau x-n nu se afl n intervalul 0...30, atunci prin operaia modulo se scad sau se adun 31 de attea ori pn cnd condiia este ndeplinit).Metoda de nlocuire este aceeai pe ntreg parcursul mesajului, de aceea cifrul este clasificat ca un tip de substituie monoalfabetic, spre deosebire de substituia polialfabetic.

Pelng modelul clasic sunt i un ir de modificri care duc la sporirea securitii cifrului, una din metode pentru aceasta poate fi utilizarea unei chei suplimentare care va permite crearea alfabetului propriu(ordinea literelor n alfabet) i nu utilizarea celui standart. Formulele pentru Codificare i decodificare rmn aceleai doar se creeaz o cheie nou din literele alfabetului , se extrag mai inti caracterele unice din acest cuvnt apoi se adaug restul caracterelor din alfabet care nc nu au fost incluse.

Figura 2 Schimbarea ordinii alfabetului n baza cheiei 2

Dup aceasta operaii au loc exact ca i n modelul Cezar clasic.

Figura 3 Modelul Cezar Modificat

Spargerea cifruluiDeplasare n decriptareText candidat

0dxdhjuydx

1cwcgsxcw

2bvbfirtwbv

...

30eyeiktvzey

Cifrul Cezar poate fi spart uor chiar i avnd la dispoziie numai criptotextul. Dou situaii pot fi luate n considerare:1. atacatorul cunoate (sau ghicete) c a fost folosit un fel de substituie simpl, dar nu neaprat o schem Cezar2. atacatorul tie c s-a folosit cifrul Cezar, dar nu cunoate valoarea de deplasare.n primul caz, cifrul poate fi spart folosind aceeai tehnic ca pentru cazul general de substituie simpl, precum analiza frecvenei sau cuvinte ablon. n timpul decriptrii, este foarte probabil ca atacatorul s observe regularitatea n soluie i s deduc c cifrul Cezar este algoritmul folosit.

Distribuia literelor ntr-un text din limba romn are o form cunoscut i predictibil. Un cifru Cezar "rotete aceast distribuie i de aceea e posibil aflarea valorii de deplasare prin analizarea graficului de frecven rezultat. n al doilea caz, spargerea schemei este mult mai simpl. Deoarece numrul de deplasri posibile e limitat (31 n romn), fiecare din ele poate fi testat printr-un atac prin for brut. O cale de a realiza acest lucru este de a scrie un fiier cu criptotextul ntr-un tabel cu toate deplasrile posibile tehnic numit uneori "completarea componentei normale". Exemplul este dat pentru criptotextul "DXDHJUYDX". Textul normal este imediat recognoscibil de ochi la valoarea cinci. O alt cale de a vizualiza aceast metod este de a scrie sub fiecare liter alfabetul napoi fa de liter. Acest atac poate fi accelerat folosind iruri cu alfabetul scris invers. irurile sunt apoi aliniate astfel nct criptotextul s apar pe un rnd, iar astfel textul iniial va aprea pe un alt rnd. O alt abordare a atacului prin for brut este identificarea literelor conform distribuiei lor n limba n care a fost scris textul. Prin crearea graficului frecvenelor literelor din criptotext i prin cunoaterea distribuiei obinuite, un om poate descoperi valoarea deplasrii prin observarea decalajului dintre anumite caracteristici ale graficului. Aceasta este cunoscut ca analiza frecvenei. i computerele pot determina acest lucru prin msurarea echivalenei dintre distribuia curent i distribuia ateptat; de exemplu, poate fi utilizat testul chi-ptrat. Pentru texte naturale va exista doar o decriptare plauzibil, dei pentru texte normale foarte scurte se poate s existe mai multe versiuni. De exemplu, criptotextul UHU poate, n mod plauzibil, s fie decriptat n "ana" sau n "bob"; similar, "PR" n "ac" sau "ce". Criptri i decriptri multiple nu aduc nimic n plus n ceea ce privete securitatea. Aceasta pentru c dou criptri, de exemplu deplasarea A i deplasarea B, vor fi echivalente cu deplasarea A + B. n termeni matematici, criptarea cu diferite chei formeaz un grup. Cost si timp pentru criptanaliza O schem de criptare este sigur computa ional dac textul cifrat generat are una sau ambele proprieti: Costul de spargere a textului cifrat este mult mai mare dect valoarea informa iei criptate. Timpul necesar pentru spargerea textului cifrat dep e te timpul de via al informa iei.

Bibliografie1.Note de curs Bazele Securitii Informaionale Zgureanu A.2. http://ro.wikipedia.org/wiki/Cifrul_Cezar

AnexeButon pentru generarea Cheiei 2 private void button1_Click(object sender, EventArgs e) {

try { int cheia2 = Convert.ToInt32(textBox1.Text); var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

var random = new Random();

var result = new string( Enumerable.Repeat(chars, cheia2) .Select(s => s[random.Next(s.Length)]) .ToArray()); textBox3.CharacterCasing = CharacterCasing.Upper; textBox3.Text = result; } catch { MessageBox.Show("Introduceti sau generati Cheia 2"); }

}

Butonul pentru Codificarea mesajului

if (textBox2.Text.Length == 0 && textBox3.Text.Length == 0 && textBox4.Text.Length == 0) { MessageBox.Show("Introduceti sau generati Cheia 1 "); }

else {

var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; string a1 = textBox3.Text + chars; string answer = new String(a1.Distinct().ToArray()); label2.Text = answer; label3.Text = a1; label5.Text = textBox3.Text; int KEY = Convert.ToInt32(textBox2.Text);

for (int i = 0; i < textBox4.Text.Length; i++) {

int f12 = label2.Text.IndexOf(textBox4.Text[0 + i].ToString()); int letterindex = (f12 - KEY) % answer.Length;

if (letterindex < 0) {

letterindex = answer.Length - Math.Abs((f12 - KEY) % answer.Length); curat = curat + answer[letterindex].ToString();

} else { curat = curat + answer[letterindex].ToString(); }

textBox5.Text = letterindex.ToString(); }

textBox5.Text = curat;

curat = ""; }2