1 / 22

Luku 2

Luku 2. * avainavaruus efektiivinen avainavaruus klassisia salauksia Caesar Affiini salaus Vigenère One time pad Hyökkäyksiä: * “Brute force” * frekvenssianalyysi * sanakirjahyökkäys. Avainavaruus. Key space = mahdollisten avainten joukko.

leoma
Download Presentation

Luku 2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Luku 2 • * avainavaruus • efektiivinen avainavaruus • klassisia salauksia • Caesar • Affiini salaus • Vigenère • One time pad • Hyökkäyksiä: • * “Brute force” • * frekvenssianalyysi • * sanakirjahyökkäys

  2. Avainavaruus Key space = mahdollisten avainten joukko Jos salausalgoritmi on hyvä, Brute Force on tehokkain hyökkäys. Siinä vihollinen käy kaikki mahdolliset avaimet, kunnes löytää oikean. V. 2006 turvallisuusraja Brute – force – hyökkäystä vastaan on 80 bits DES – salaimen avain oli 64 bittinen ( efektiivisesti 56). Siksi DES ei ole enää turvallinen. Vaikka avainpituus olisi 128 bittiä, efektiivinen avainavaruus voi olla pienempi, mikäli algoritmissa on jokin rakenteellinen heikkous ( = annetulle salakirjoitukselle kaikki avaimet eivät ole yhtä todennäköisiä). Eräs merkki heikkoudesta on se, että salakirjoitusta vastaava bittijono ei täytä tilastollisia satunnaisuuden vaatimuksia ( esim. 60% ykkösiä, 40% nollia)

  3. Requirements of a good cipher 1. Kerckhoff ’n sääntö: “ Algoritmin turvallisuus tulisi perustua yksinomaan avaimeen”. Ts. Menetelmän vuotaminen ei saa heikentää turvallisuutta Auguste Kerckhoffs (1835 - 1903) was a Dutchlinguist and cryptographer who was professor of languages at the School of Higher Commercial Studies in Paris in the late 19th century(source: Wikipedia) 2. Algoritmin tuottamien bittien tulisi jakautua satunnaisesti • Samuel W Golombin satunnaisuuspostulaatit • 1. Jonossa tulisi olla 50% ykkösiä, 50% nollia • Todennäköisyys k:n mittaiseksi juoksuksi = (1/2)k. • 3. Kun jonoa pyöräytetään, jonon ja sen rotaation erotusvektorissa on sama määrä nollia ja ykkösiä riippumatta rotaation määrästä S.W.Golomb is an emeritus professor in Western California University. He is a developer the theory of Linear Feedback Shift Registers and defined randomness.

  4. Kuva… 1 0 0 1 1 0 1 0 1 1 1 0 0 1 0 0 0 0 10 1 1 0 0 1 0 1 0 1 0 1 0 0 1 P = 1 / 16 P = 1/2 P = 1/ 4 P = 1 / 8 Lisäksi: Yhden bitin muuttaminen selvätekstissä pitäisi muuttaa n. puolet salakirjoituksen biteistä. Hyökkäys, nimeltä differential cryptoanalysis analysoi, miten eri bittien muuttaminen vaikuttaa salakirjoitukseen. Jos vain muutama bitti muuttuu, on algoritmi ehkä murrettavissa.

  5. DES DES on kuuluisin lohkosalain, jonka kehitti IBM ja NSA v. 1977 USA:n hallinnon ja liike-elämän standardiksi. Standardina se oli 1977 - 2001 . Erinomaista DES:ssä • Sen tuottama bittijono on erinomaisen satunnaista => Voidaan käyttää salasanatiivisteiden luontiin ( Unix), sekä jopa pseudorandom bittigeneraattorina. Vikoja DES: * Liian lyhyt avain (efektiivisesti 56 bittiä) * Algoritmi vuoti julkisuuteen, jolloin se oli vapaata riistaa koko maailman analyytikoille.

  6. Avainavaruuden laskeminen Esim. salasanoista • 8 merkin salasana, joka käyttää englantilaisia merkkejä (26). • 268 = 2*1011 • 8 merkin salasana: engl. aakkoset (a…z,A…Z) + luvut 0,1,…9. ( 62) • 628 = 2.2*1014 • Kuinka pitkä salasana on turvallinen ( turvaraja = 80 bittiä) • 280 = 1.2*1024 . Vast. 14 merkkiä 6214 = 1.3*1025 Hakkerit käyttävät useimmin “sanakirjahyökkäystä”, joka perustuu listoihin yleisimmistä salasanoista.

  7. Klassiset salaimet • Caesar • Affiini salaus • Satunnainen aakkoston permutaatio • Vigenère • One Time Pad (“ainoa täydellinen”)

  8. 1. Caesar salaus • Cipher perustuu aakkoston sykliseen (aste k) permutaatioon • Roomalaiset käyttivät korvaustaulukkoa: Esim. Korvaustaulukosta , kun k = 7 a b c d e f g h i j k l mno p q r s t u v w x y z h i j k l m n o p q r s tuv w x y z a b c d e f g Avainavaruus on 25 Avauksessa avain on k = - 7 Softasovelluksessa voidaan käyttää moduloaritmetiikkaa, kun merkit koodataan ensin kokonaisluvuiksi.

  9. Esim: Salaa “rovaniemi” käyttäen Caesar salausta , k = 7 message r o v a n i e m i 17 14 21 0 13 8 4 12 8 + 7 mod 26 24 21 2 7 20 15 11 19 15 cipher y v c h u p l t p

  10. 2. Affiini salaus 1. Koodaa merkit luvuiksi : a = 0, …, z = 25 Salaus: • Salaa (luvut m) • c = a*m + b mod 26 • a ja b ovat avaimia. 3. Dekoodaa luvut takaisin merkeiksi Avaus: 1. Koodaa salakirjoitus luvuiksi : a = 0, …, z = 25 • Dekryptaa kaavalla • m = a-1*c +a-1*b mod 26 • missä a-1 on a:n käänteisluku mod 26 3. Dekoodaan luvut takaisin merkeiksi

  11. Esim: Salaa “rovaniemi” avaimilla ( a = 7, b = 3) message r o v a n i e m i 17 14 21 0 13 8 4 12 8 c = 7 m + 3 mod 26 0 23 20 3 16 7 5 9 7 cipher a x u d q h f j h Esim: O = 14 7*14 + 3 mod 26 = 101 mod 26 = 23 = x

  12. Avaus: a x u d q h f j h m = a’ c - a’b = 7’*c – 7’*3 mod 26 0 23 20 3 16 7 5 9 7 7’ on luvun 7 käänteisluku mod 26 = 15 17 14 21 0 13 8 4 12 8 Esim: Avauskaava: m = 15 c – 45 mod 26 = 15 c + 7 c = 16 avataan muodossa 15*16 + 7 mod 26 = 247 mod 26 = 13 = n r o v a n i e m i

  13. Käänteisluvun laskeminen ? Tapa 1. Käytä 7:n kertotaulua mod 26 Tapa 2. ExtendedGCD (laajennettu Eukleides) Lineaarikombinaatio GCD:lle on: 1 = 3*26 – 11*7 => Käänteisluku = -11 mod 26 = 26-11 =15 Tapa 3. Eulerin lauseella a(n) = 1 mod n => a-1 =a (n)-1

  14. Affiinin salauksen avainavaruus • b voi olla mikä tahansa väliltä 0 – 25 • a:lla täytyy olla käänteisluku mod 26 => vaihtoehtoja on (26) = 12 • => avainavaruus on 26*12 = 312 (helppo murtaa) Key space size = n * (n), where n is the size of alphabet

  15. 3. Satunnainen permutaatio Avain ja samalla algoritmi on aakkoston satunnainen permutaatio Avainavaruus on n ! ( n on aakkoston koko) Jos n = 26, 26! = 4 *1026 joka ylittää 80 bitin turvarajan Brute Forcea vastaan Frekvenssianalyysi murtaa tämän salauksen helpohkosti.

  16. 4. Vigenère salaus Blaise de Vigenère (April 5, 1523 - 1596) was a Frenchdiplomat and cryptographer. • Vigenère Algorithm • Tarvitsee salasanan, jonka pituus on vapaavalintainen. • Koodaa viestin merkit luvuiksi (esim. 0 – 25) • Kopioi salasanaa viestin mittaiseksi, koodaa myös se • Laske viesti ja salasaluvut yhteen mod 26. • Dekoodaa tulos merkeiksi Dekryptauksessa avainjono vähennetään salakirjoituksesta mod 26

  17. Esim. Salaa “rovaniemi” . Avain = “oulu” message r o v a n i e m i key oulu 14 20 11 20 17 14 21 0 13 8 4 12 8 14 20 11 20 14 20 11 20 14 Addition mod 26 5 8 6 20 1 2 15 6 22 cipher f i g u b c p g w Example: 21 + 11 mod 26 = 32 mod 26 = 6

  18. Vigenèren turvallisuus Jos hyökkääjä ei tunne salasanan pituutta, Brute Force on melko mahdoton. Vigenèren salausta pidettiin mahdottomana murtaa vuoteen 1863, jolloin Preussin armeijan majuri Kasiski keksi murtomenetelmän. If in the ciphertexts appears the same character or the same group of characters in several positions with distances D, it is very likely that D is a multiple of the key word length. ( see Wikipedia: Vigenere, Kasiski ) If we manage to find the key word length n, then it is not very difficult to break the cipher, because the cryptoanalysis is then equivalent with the cryptoanalysis of n Caesar ciphers. Breaking can be done with frequency analysis.

  19. One Time Pad Vigenère salausta sovelletaan myös aakkostoon 0 , 1. Olkoon m = binääriviesti ja k = binääriavain Salaus c = m + k mod 2 ( c = mk ) (XOR) Avaus m = c + k mod 2 ( m = ck ) Huom! k + k = 0 kaikille binäärivektoreille k Jos k on täysin satunnainen, kertakäyttöinen avain, jonka pituus on sama kuin viestin pituus, meillä on todistettavasti 100% turvallisuus. Tätä sanotaan One Time Pad :ksi. Moskova – Washington kuuma linja käytti sitä.

  20. One Time Pad: turvallisuus on ilmenen, koska Jokaista salakirjoitusta c ja jokaista mahdollista viestiä m kohden löytyy avain k jolle c = m  k * Brute Force ei auta, koska käymällä läpi avainavaruus saadaan kaikki mahdolliset viestit, joista kukaan ei voi päätellä oikeaa Mutta jos käytät samaa avainta kahdesti, salaus murtuu.

  21. Esim Brute force Caesaria vastaan Murra salaus y v c h u p l t p Kokeillaan kaikkia avaimia 1 .. 25 Ainoa järkevä on: no 7 = rovaniemi - Viesti oli “rovaniemi” ja k = 7.

  22. Frekvenssianalyysi Murra Caesar salakirjoitus “ yfxmpcespzcjtdfdpqfwqzcpyntaspctyrxpddlrpd " Oletus: e kuvautuu merkiksi p => k = 11 Kokeillaan avainta 11 ja saadaan viesti “Number theory is useful for enciphering messages” Salakirjoituksen merkkien tiheydet Vertaa Englannin kielen merkkien esiintyminen

More Related