Upload
alaire
View
72
Download
3
Embed Size (px)
DESCRIPTION
Maišymo ir šifravimo algoritmai. I dalis S. Kareiva. Turinys. Maišos (hash) funkcijos Kriptografinės maišos funkcijos Kriptavimo raktai. Maiša (hash). Duomenys. Hash algoritmas. H = F(duom) H(A) = H(A) Kolizija: H ( a ) = H ( b ), and a ≠ b. HASH. Paskirtis. Kontrolinė suma - PowerPoint PPT Presentation
Citation preview
Maišymo ir šifravimo algoritmai
I dalisS. Kareiva
Turinys
• Maišos (hash) funkcijos
• Kriptografinės maišos funkcijos
• Kriptavimo raktai
Maiša (hash)Hash reikšmė Duomenys
000001 Jonas Jonaitis
000002 Petras Petraitis
000003 Pranas Pranaitis
…… ……
00000F Vardenis Pavardenis
DuomenysDuomenys
Hash algoritmas
Hash algoritmas
HASHHASH
H = F(duom)
H(A) = H(A)
Kolizija: H(a) = H(b), and a ≠ b
Paskirtis
• Kontrolinė suma
• Pirštų atspaudai
• Laikinoji atmintis
• Kriptografinė maiša (slaptažodžiams)
Kuo skiriasi?Kuo skiriasi?
Off-topic: Frame switching
• Duomenys antrame lygyje (ir kituose) perduodami paketais – ethernet frame
• Kiekvienam duomenų paketui atliekamas CRC patikrinimas (hash)
Preamble Start Dst MAC
Src MAC
VLAN tag Ethertype Data CRC Gap
7x 10101010 10101011 6 bytes 6 bytes 4 bytes 2 bytes 1500 bytes 4 bytes 12 bytes
Encapsulation
Kontrolinė suma
• CRC – cyclic redundancy check
SiuntėjasSiuntėjas 0 1 0 0 1 0 1 0 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 CRC: 0 1 1 0
GavėjasGavėjas 0 1 0 0 1 0 1 0 0 1 0 0 0 0 0 0 1 1 0 1 1 0 1 0 CRC: 0 1 1 0
CRC ERROR!
Algoritmai
• XOR (parity byte)• Modulinė suma• Position-dependent checksum
• Unix įrankiai: cksum, md5sum
Griūties efektas
• Avalanche effect
• Pakeitus vieną duomenų bitą, kontrolinė suma kardinaliai pasikeičia
• Kam to reikia?
MD5
• Message Digest v5 – 16 baitų• 79054025255fb1a26e4bc422aef54eb4
• Neatsparus kolizijoms• Netinkamas naudoti kriptografijai
• Bet puikus hash algoritmas!
MD5 saugumas
• Ką sako wikipedija:– A 2009 attack by Tao Xie and Dengguo Feng
breaks MD5 collision resistance in 220.96 time. This attack runs in a few seconds on a regular computer.
Griūties efektas (MD5)
• MD5("The quick brown fox jumps over the lazy dog") = 9e107d9d372bb6826bd81d3542a419d6
• MD5("The quick brown fox jumps over the lazy dog.") = e4d909c290d0fb1ca068ffaddf22cbd0
MD5
SHA
• Secure hash algorithm (160 bitų)• Kuriamas NIST (JAV)• Kelios versijos:– SHA-0 – pirmoji algoritmo versija su klaida– SHA-1 – originalusis algoritmas– SHA-2 – papildytas ir naudojamas .gov, SSL– SHA-3 – still under development
• sha1sum
SHA-1
• SHA1("The quick brown fox jumps over the lazy dog") = 2fd4e1c6 7a2d28fc ed849ee1 bb76e739 1b93eb12
• SHA1("The quick brown fox jumps over the lazy cog") = de9f2c7f d25e1b3a fad3e85a 0bd17d9b 100db4b3
BASE64 kodavimas
• Algoritmas, skirtas pranešimo transformacijai į 8 bitų simbolių seką
• Naudojamas perduoti duomenis tam tikrais kanalais vien paprastų simbolių pagalba
• Dažnai naudojama tekstiniuose protokoluose, tokiuose kaip HTTP ar pan.
BASE64 algoritmo pvz:Informatika - mokslas apie kompiuterius ir jų taikymus - yra viena iš veržliausiai besivystančių žmogaus veiklos sričių, kurios poveikį mes labai jaučiame savo gyvenime.
SW5mb3JtYXRpa2EgLSBtb2tzbGFzIGFwaWUga29tcGl1dGVyaXVzIGlyIGpzIHRhaWt5bXVzIC0geXJhIHZpZW5hIGlhIHZlcn5saWF1c2lhaSBiZXNpdnlzdGFuDWlzIH5tb2dhdXMgdmVpa2xvcyBzcmkNaXMsIGt1cmlvcyBwb3ZlaWsvIG1lcyBsYWJhaSBqYXUNaWFtZSBzYXZvIGd5dmVuaW1lLg==
Kriptografiniai raktai
• Kriptografinės funkcijos parametrai, be kurių hešavimo (kriptavimo) funkcijos tampa bijekcijomis
• Geriausi raktai yra sugeneruojami random() funkcijos
• Optimalūs dydžiai – nuo 128 bitų
Raktuotas HASH
Vieši ir privatūs raktai
• Raktų pora skirta saugiam bendravimui• Viešas raktas – skirtas kriptografiniam žinutės užkodavimui– galima dalintis su draugais ir kolegomis
• Privatus raktas– tinkamas tik atkodavimui– geriau su niekuom nesidalinti ir apsaugoti
papildomu slaptažodžiu
Public ir private raktai
Raktų naudojimas SSH
SSL sertifikatai