tietoturva - noppa · tietoturva 811168p 5 op 5. kryptografia oulun yliopisto...
TRANSCRIPT
Tietoturva 811168P 5 op 5. Kryptografia
Oulun yliopisto Tietojenkäsittelytieteiden laitos
Periodi 4 2014 / 2015
Oppimisavoitteet
• tunnistaa kryptografian asema tietoturvassa: missä
käytetään; mitä salaus pystyy takamaan
• määritellä kryptografian peruskäsitteistöä
• analysoida kryptografian keskeisiä periaatteita
• soveltaa yksinkertaisia salausmenetelmiä
• luokitella menetelmiä, joilla salausta vastaan hyökätään
• selittää yleisellä tasolla tekniikoita, joilla nykyai-kaisen
salausmenetelmän turvallisuus pyritään takaamaan
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 2
A. Salaus
Salausta (kuten tietoturvaa yleensäkin) voidaan tarkastella
useasta näkökulmasta; esim. • verkon rakenne: sovellus- (käyttäjä), kuljetus- (istunto), verkko-
(isäntäkone yli verkon), yhteyskerros (solmujen välinen )
• toteutustaso: ohjelmistot, turvaprotokollat, turva-algo-ritmit,
kryptografiset menetelmät, matemaattinen teoria
• organisaatio: johto, IT – asiantuntija, tietoturva-ammattilainen,
ylläpitäjä, loppukäyttäjä
Tietoturva on myös ketju; se muodostuu useasta toisiinsa
liittyvästä osasta; kokonaisuuden turvallisuus = heikoimman
lenkin turvallisuus
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 3
Kommunikointi salausta käyttäen
turvaton kanava
avainpalvelu
vastapuoli
Eve
avaus
Dkd(c)=m
salaus
Eke(m)=c
Alice Bob
turvallinen kanava
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 4
Taustaa
Tietoturvan ymmärtämiseksi täytyy ymmärtää kryptografiaa; mitä sillä voidaan taata ja mitä ei. Kryptografia ei yksin ratkaise tietoturvaongelmaa, mutta se voi olla tärkeä osa ratkaisua. Kryptografisia menetelmiä sovelletaan verkon eri kerroksissa
• SET (turvallinen sähköisen kaupan maksujärjestelmä), S/MIME ja PGP (sähköposti) sovelluskeroksesa
• SSL/TLS, SSL, VPN ja SSH kuljetuskerroksessa • IPSec, VPN verkkokerroksessa • L2TP yhteyskerroksessa
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 5
Terminologiaa
Mitä se on?
- piilotettu, salainen
- kirjoitus
kryptografia – salakirjoitustiede
kryptata – salata
dekryptata – avata
selkoteksti – selväkielinen (salaamaton) teksti
kryptoteksti – kryptattu (salattu) teksti
kryptologia: kryptografia ja kryptoanalyysi
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 6
Käsitteitä
• aakkosto A : äärellinen joukko (abstrakteja) symboleja
• (selko)viestiavaruus M : aakkoston A jokin sanajoukko
• kryptoviestiavaruus C : aakkoston A jokin sanajoukko
• avainavaruus K : parametrijoukko, josta avaimet
valitaan
• salausfunktioiden (kryptausfunktioiden) joukko { Ek | k
K } ; jokaista k K kohti on olemassa yksikäsitteinen
bijektio Ek : M → C
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 7
Käsitteitä (2)
• avausfunktioiden (dekryptausfunktioiden) joukko { Dk |
k K } ; jokaista k K kohti on olemassa
yksikäsitteinen bijektio Dk : C → M ; aina, kun k K
voidaan löytää sellainen yksikäsitteinen k’ K, että
jokaisella m M on voimassa Dk’ (Ek (m)) = m
• salausjärjestelmä (kryptausjärjestelmä) on viisikko
( M, C, K, { Ek | k K }, { Dk | k K } )
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 8
Käsitteitä (3)
• salausjärjestelmä on symmetrinen mikäli aina, kun k
K, on avausfunktion Dk’ määrittäminen salausfunktiosta
Ek (ja vastaavasti Ek:n mää-rittäminen Dk’ :sta)
algoritmisesti helppoa
• salausjärjestelmä on epäsymmetrinen mikäli aina, kun k
K , on avausfunktion Dk’ määrittä-minen
salausfunktiosta Ek (ja vastaavasti Ek:n määritäminen
Dk’ :sta) algoritmisesti vaikeaa
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 9
Salausjärjestelmän varmuus
Salausjärjestelmä on
• ehdottomasti varma, jos vastapuoli ei saa (viestin
pituuden lisäksi) mitään tietoa selkotekstistä huolimatta
siitä kuinka paljon hänellä on käy-tettävissä kryptotekstiä
ja laskentaresursseja
• laskennallisesti varma, jos sen murtaminen ei ole
laskennallisesti toimeenpantavissa tietyllä ennal-
tamäärätyllä laskentakapasiteetilla ja –laadulla
• todistettavasti varma, jos sen murtaminen on yhtä
vaikeaa kuin jonkin vaikeana pidetyn matemaattisen
ongelman ratkaiseminen
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 10
Salauksen murtaminen
Neljä vaihtoehtoa murtamisen suorittamiseksi
• pelkästään kryptoteksti • tunnettu selkoteksti • valittu selkoteksti • valittu kryptoteksti
Pelkästään kryptoteksti Hyökkääjällä käytössään vain kryptotekstiä. Miten erottaa kryptoteksti selkotekstistä? Kryptotekstiä oltava riittävästi. Tunnettu selkoteksti Hyökkääjällä käytössään kryptoteksti ja sitä vastaava selkoteksti.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 11
Murtaminen (2)
Valittu selkoteksti Hyökkääjällä käytössään valit-semansa selkoteksti ja sitä vastaava kryptoteksti. Valittu kryptoteksti Hyökkääjällä käytössä valit-semansa kryptoteksti ja sitä vastaava selkoteksti. Muita murtamisen menetelmiä
• raaka voima • tilastolliset menetelmät • salasanan kaappaaminen • sosiaaliseen manipuloini • kiristys ja lahjonta
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 12
B. Salaisen avaimen kryptografia
Salaisen avaimen kryptografia – klassinen kryptografia
– symmetrinen kryptografia – SKC
• yhtä vanha kuin kirjoitustaito
Kiina 3000 vuotta e.a.a: ainoastaan yläluokka
osasi lukea ja kirjoittaa
Egypti 1900 vuotta e.a.a.
Mesopotamia 1500 vuotta e.a.a.
Palestiina (Juudea) 500 vuotta e.a.a.
Kreikka 500 vuotta e.a.a.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 13
Salaisen avaimen kryptografia (2)
• osapuolet jakavat yhteisen salaisuuden, taval-lisesti
salaisen avaimen k
• avaimen k avulla voidaan määrittää sekä salausfunktio
Ek että vastaava avausfunktio Dk’ • usein samaa avainta k käytetään sekä avaa-miseen että
salaamiseen; tällöin k = k’ ja tietysti Dk’ = Dk
Huom! Olet. seur., että k = k’ eli, että salaus- ja
vastaava avausavain ovat aina samat
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 14
selko-
teksti
kryptaus-
algoritmi
dekryptaus-
algoritmi selko-
teksti
krypto-
teksti
salainen
avain k
salainen
avain k
Salaus symmetrisellä menetelmällä
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 15
Kerckhoffsin salausjärjestelmiä koskevat periaatteet
Auguste Kerckhoffs, 1883
• järjestelmän tulee olla käytännössä, ellei matemaattisesti,
murtamaton
• järjestelmä ei saa olla salainen, sen on voitava joutua
vihollisen käsiin
• avaimen tulee olla välitettävissä ja säilytettävissä ilman
muistiinpanovälineitä ja vaihdettavissa tai muutettavissa
aina tarvittaessa
• salattu viesti tulee voida lähettää sähkösanomana
• salaukseen käytetyn teknillisen välineistön tulee olla
helposti kuljetettavissa, sen käyttö ei saa vaatia useaa
henkilöä
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 16
Kerckhoffsin salausjärjestelmiä koskevat periaatteet (2)
Auguste Kerckhoffs, 1883 (jatkoa ...)
• salausjärjestelmän tulee olla helppokäyttöinen; sen käyttö
ei saa vaatia henkistä ponnistusta tai vaikeasti
muistettavia ohjeita
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 17
Lohkosalaajat
• salaaminen ja avaaminen lohkoina standardi-
menetelmää käyttäen; identtiset selkokielen lohkot
kuvautuvat identtisiksi kryptolohkoiksi
• jos lohkokoko on liian pieni ja vastapuolella on käytössä
useita pareja <selkoteksti,kryptoteksti>, voidaan laatia
taulukko, ja yrittää murtamista
• liian suuri lohkokoko on hankala käyttää ja voi aiheuttaa
implementointiongelmia
• DES ja AES ovat lohkosalaajia
• selkotekstilohko on samanpituinen kuin kryptoteksti-
lohko
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 18
Jonosalaajat
• salaaminen selkotekstivirrassa, mikä tahansa määrä
dataa voidaan salata välittömästi; gene-roidaan
avainvirta; selkotekstivirta ja avainvirta yhdistetään;
symbolijonon salaus riippuu sen paikasta selkotekstissä;
avaaminen vastaavasti
• eivät välttämättä yhtä joustavia käyttää kuin
lohkosalaajat; useimmat verkkopohjaiset klas-siset
salaussovellukset käyttävät lohkosalaajia
• Vigenère ja Vernam voidaan katsoa esimerkeiksi
jonosalaajista
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 19
Symmetrisen salaajan suunnittelu
• salaajan tulee olla tarpeeksi kompleksinen, jotta sitä ei ole helppo murtaa
riittävän yksinkertainen, jotta sen implementointi ei käy
ylivoimaiseksi ja salaus/avaus on nopeaa
• nykyiset symmetriset salaajat käyttävät yksinktaisia
sekoitus- ja hajautusfunktioita; näitä sovelletaan usealla
kierroksella, jotta salaamisen kompleksisuus lisääntyisi,
mutta laskemisen vaatimat resurssit pysyisivät
kohtuullisina
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 20
Sekottaminen (confusion)
• vaikeuttaa selkotekstin, avaimen ja kryptotekstin
yhteyden havaitsemista
• suoritetaan esim. korvaamalla selkotekstilohko
kryptotekstilohkolla
• korvauksen mekanismi ei ole bittikohtainen
• tilastollinen analyysi ja säännöllisyyksien etsiminen
vaikeutuu
• jokainen avaimen bitti vaikuttaa jokaiseen kryptotekstin
bittiin.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 21
Hajauttaminen (diffusion)
• levittää selkotekstin rakenteen kryptotekstiin siten, että
kryptotekstibitti riippuu useasta selkotekstibitistä
• suoritetaan esim. järjestämällä uudelleen selkotekstin
kirjaimet (siirrolla tai permutoimalla muuten)
• jokainen selkotekstin bitti vaikuttaa jokaiseen
kryptotekstin bittiin
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 22
Lumivyöryominaisuus (avalanche)
• liittyy sekottamiseen ja hajauttamiseen
• olkoon f : {0,1}n {0,1}n bijektiivinen funktio; siten f on
joukon {0,1}n permutaatio
• funktiolla f on hyvä lumivyöryominaisuus jos yhden
symbolin (bitin) muutos syöttösanassa (argumenttien
arvot x1 ja x2 poikkeavat toisistaan yhdessä bitissä)
aiheuttaa mahdollisimman monen (> 50 %) bitin
muuttumisen tulostussanassa (funktioarvot f(x1) ja f(x2)
poikkeavat toisistaan yli 50 % bittejä)
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 23
Täydellisyysominaisuus (completeness)
• bijektiolla f : {0,1}n {0,1}n on hyvä täydelli-
syysominaisuus, jos jokaista i {1,2, … ,n } ja jokaista j
{1,2, … ,n } kohti voidaan löytää syöttösanat m1 ja m2,
jotka poikkeavat toisistaan vain i. symbolissa (bitissä),
mutta f(m1) ja f(m2) poikkeavat toisistaan j. symbolissa
(bitissä)
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 24
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
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
Esimerkkejä salaajista
Caesar - salaaja
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
k l p d e f g h i j x a b t u v c q r s m n o y z w
Yksiaakkostosalaaja
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 25
Caesar on siirtosalaaja, yksiaakkostosalaajan
erikoistapaus
aakkosto {a0, a1 , …, an-1}
ai a(i+k) mod n , k = 0,1, …, n-1
Avain k voidaan valita n eri tavalla, joten Caesar on
helppo murtaa.
Siirtosalaajat ovat täysin turvattomia valittu selkoteksti
–hyökkäystä vastaan.
Yksiaakkostosalaajan murtaminen (1)
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 26
Yleinen yksiaakkostosalaaja
aakkosto {a0, a2 , …, an-1}
ai a r(i)
missä r : {a0, a1 , …, an-1} {a0, a1 , …, an-1} on bijektiivinen
funktio.
On n! mahdollisuutta valita avain r, joten salaaja on turvallinen
raa'an voiman murtoa vastaan jopa jos aakkosto ei ole kovin
suuri.
Yksiaakkostosalaaja voidaan murtaa frekvenssianalyysia
käytttäen, jos lähdetekstin ominaisuuksia tunnetaan.
Yksiaakkostosalaajan murtaminen (2)
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 27
Esimerkkejä salaajista: Vigenère
• aakkoston symbolit a0,a1, …, an -1 samaistetaan lukujen
0,1, …, n -1 kanssa
• avain k = k0k1 … km -1 valitaan; kukin ki kuuluu joukkoon
A = {a0,a1, …, an -1}
• kirjoitetaan avain peräkkäin niin monta kertaa, että
muodostuu selkoviestin m pituinen merkkijono k’
• salaaminen: asetetaan m ja k’ allekkain; laske-taan
jokainen selkoviestin symboli yhteen (mod n) avainjonon k’
vastaavan symbolin kanssa; saa-daan kryptoviesti c
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 28
Esimerkkejä salaajista: Vigenère (2)
• avaaminen: asetetaan c ja k’ allekkain; vähennetään
jokaisesta kryptoviestin symbolista (mod n) avainjonon k’
vastaava symboli; saa-daan m
• salaa Vigenère – menetelmällä teksti 'alussa oli suo,
kuokka ja jussi', kun avain on 'akseli'
• kun Vigenère – salaajassa avaimen k pituus on yksi (eli
kA), saadaan Caesar – salaaja
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 29
a l u s s a o l i s u o k u o k k a j a j u s s i
A K S E L I A K S E L I A K S E L I A K S E L I A
A V K X B I O V Ä X D X K O E O V I J K Ö Z B Ä I
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 30
a b c d e f g h i j k l m n o p q r s t u v x y z å ä ö
A B C D E F G H I J K L M N O P Q R S T U V X Y Z Å Ä Ö
B C D E F G H I J K L M N O P Q R S T U V X Y Z Å Ä Ö A
C D E F G H I J K L M N O P Q R S T U V X Y Z Å Ä Ö A B
D E F G H I J K L M N O P Q R S T U V X Y Z Å Ä Ö A B C
E F G H I J K L M N O P Q R S T U V X Y Z Å Ä Ö A B C D
F G H I J K L M N O P Q R S T U V X Y Z Å Ä Ö A B C D E
G H I J K L M N O P Q R S T U V X Y Z Å Ä Ö A B C D E F
H I J K L M N O P Q R S T U V X Y Z Å Ä Ö A B C D E F G
I J K L M N O P Q R S T U V X Y Z Å Ä Ö A B C D E F G H
J K L M N O P Q R S T U V X Y Z Å Ä Ö A B C D E F G H I
K L M N O P Q R S T U V X Y Z Å Ä Ö A B C D E F G H I J
L M N O P Q R S T U V X Y Z Å Ä Ö A B C D E F G H I J K
M N O P Q R S T U V X Y Z Å Ä Ö A B C D E F G H I J K L
N O P Q R S T U V X Y Z Å Ä Ö A B C D E F G H I J K L M
O P Q R S T U V X Y Z Å Ä Ö A B C D E F G H I J K L M N
P Q R S T U V X Y Z Å Ä Ö A B C D E F G H I J K L M N O
Q R S T U V X Y Z Å Ä Ö A B C D E F G H I J K L M N O P
R S T U V X Y Z Å Ä Ö A B C D E F G H I J K L M N O P Q
S T U V X Y Z Å Ä Ö A B C D E F G H I J K L M N O P Q R
T U V X Y Z Å Ä Ö A B C D E F G H I J K L M N O P Q R S
U V X Y Z Å Ä Ö A B C D E F G H I J K L M N O P Q R S T
V X Y Z Å Ä Ö A B C D E F G H I J K L M N O P Q R S T U
X Y Z Å Ä Ö A B C D E F G H I J K L M N O P Q R S T U V
Y Z Å Ä Ö A B C D E F G H I J K L M N O P Q R S T U V X
Z Å Ä Ö A B C D E F G H I J K L M N O P Q R S T U V X Y
Å Ä Ö A B C D E F G H I J K L M N O P Q R S T U V X Y Z
Ä Ö A B C D E F G H I J K L M N O P Q R S T U V X Y Z Å
Ö A B C D E F G H I J K L M N O P Q R S T U V X Y Z Å Ä
Vigenère - taulukko
Kasiskin testi: Vigenère murtuu
• oletetaan, että englanninkielistä selkotekstiä kryptataan Vigenère – salaajalla ja avaimen pituus on m
• Kasiski huomasi vuonna 1863 että kaksi identtistä selkokielistä tekstisegmenttiä salautuu samaksi kryptotekstiksi, jos niiden sijainti selkotekstissä on x aakkoston symbolia erillään ja m jakaa tasan luvun x
• kääntäen: jos löydetään kaksi identtistä, vähin-tään kolmen symbolin pituista kryptotestiseg-menttiä, on kohtalaisen suuri mahdollisuus, että ne vastaavat samaa selkokielitekstiä
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 31
Kasiskin testi: Vigenère murtuu (2)
• siispä etsitään kryptotekstistä identtisiä vähintään kolmen
pituisia merkkijonoja ja kirjataan niiden etäisyydet
toisistaan. On todennäköistä, että m jakaa etäisyyksien
suurimman yhteisen tekijän
• sovelletaan frekvenssianalyysia pituuden m
määrittämiseksi kokeilemalla kaikkia mahdollisia arvoja
luvuksi m
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 32
Esimerkkejä salaajista: Vernam
• aakkoston {0,1} viesteille m1 ja m2 määritetään
bittikohtainen yhteenlasku (yhteenlasku (mod 2))
yhtälöillä 0 0 = 1 1 = 0 , 0 1 = 1 0 = 1 esim. m1 = 1100 ja m2 =1010; m1 m2 = 1100 1010 = 0110.
• Vernam – salaaja on jonosalaaja, jonka aakkosto on A =
{0,1}; avaimet ovat aakkoston A sanoja
• viesti m salataan samanpituisella avaimella
yksinkertaisesti: Ek(m) = m k.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 33
Esimerkkejä salaajista: Vernam (2)
• kryptoviestin c = m k avaaminen:
• Dk(c) = c k = ( m k) k = m ( k k) = m
• jos Vernam – salaajassa avaimen bitit saadaan riippumattomilla Bernoulli – kokeilla, missä molempien bittien todennäköisyys on ½ (esim. harhatonta rahaa heittämällä) ja kutakin kokees-sa saatua bittiä käytetään salaaamiseen vain kerran, on kyseessä one-time pad – salaaja, joka on (ainoa tunnettu) ehdottoman varma salausmenetelmä
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 34
Playfair - salaaja
• Charles Wheatstone, 1854
• symmetrinen salausmenetelmä
• käsikäyttöinen monikirjainsalaaja
• käsittelee selkotekstin kahden kirjaimen lohkoja (eli
digrammeja) yksikköinä ja muuntaa nämä yksiköt (kirjain
kerrallaan) kryptotekstin digrammeiksi
• digrammeja on 2525 = 625 kpl, joten frekvenssianalyysi
vaikeutuu
• Playfair - algoritmi perustuu 55 - kirjainmatriisiin, joka
konstruoidaan avainsanan avulla
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 35
Playfair – kirjainmatriisi; avainsana 'kryptaus'
k/q r y p t
a u s/z b c
d e f g h
i j l m n
o/å v x ä ö
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 36
Kirjainmatriisin konstruointi
• Playfair kirjainmatriisi konstruoidaan sijoittamalla avainsana (jossa sama kirjain voi esiin-tyä
korkeintaan kerran) symboli kerralaan matriisiin paikkoihin
vasemmalta oikealle ja ylhäältä alas; ja
täyttämällä jäljelle jääneet vapaat matriisin paikat lopuilla
(avainsanaan kuulumattomilla) kirjaimilla aakkosjärjestyksessä
• suomalaisessa aakkostossa 28 kirjainta kolme
kirjainta jakaa matriisin paikan jonkin muun kirjaimen
kanssa (parit {k,q}, {s,z} ja {o,å} muodostavat kukin
yhden kirjaimen)
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 37
Playfair - salausalgoritmi
1. Jos selkokielisessä tekstissä kaksi samaa kirjainta on
joutumassa samaan digrammiin, käytetään
täyttösymbolina kirjainta x; esim. halla salataan
merkkijonona ha lx la. 2. Jos selkokielidigrammin kirjaimet sijaitsevat matriisissa
samalla rivillä, kumpikin kirjain kryptataan matriisissa
kirjaimen oikealla puolella olevaksi symboliksi; rivin
viimeinen kirjain koodataan saman rivin ensimmäiseksi
symboliksi.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 38
Playfair - salausalgoritmi (2)
3. Jos selkokielidigrammin kirjaimet sijaitsevat matriisissa samalla sarakkeella, ne kryptataan matriisissa kirjaimen alapuolella olevaksi symboliksi; sarakkeen viimeinen (alin) kirjain koodataan saman sarakkeen ensimmäiseksi (ylimmäksi) symboliksi.
4. Muussa tapauksessa (eli kirjaimet sijaitsevat eri rivillä ja eri sarakkeilla) digrammin kirjain kryp-tataan symboliksi, joka sijaitsee kirjaimen (sijainti)rivin ja digrammin toisen kirjaimen (sijainti)sarakkeen leikkauksessa.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 39
Playfair - avausalgoritmi
• jos digrammin kirjaimet sijaitsevat matriisin samalla rivillä
(vast. sarakkeella), ne säilyvät salauksessa samalla
rivillä (vast. sarakkeella)
• jos digrammin kirjaimet sijaitsevat matriisin eri rivillä ja
eri sarakkeella, ne säilyvät salauksessa eri rivillä ja eri
sarakkeella
• avausalgoritmin operaatiot saadaan salausal-goritmin
operaatioista käänteisillä toimenpiteillä kryptataan seuraavaksi symboliksi - dekryptataan edelliseksi
symboliksi (kohdat 2 ja 3)
kryptataan siirtymällä samalla rivillä, dekryptataan siirtymällä
takaisin (kohta 4)
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 40
Playfair - salaaja: esimerkki
Teht. salaa teksti 'alussa oli suo, kuokka ja jussi', kun
avaisana on 'akseli'
Ratk. Selkotekstidiagrammit
{al}{us}{sa}{ol}{is}{uo}{ku}{ok}{ka}{ja}{ju}{sx}{si}
Kryptotekstidiagrammit
{ka}{rl}{ek}{ua}{ca}{op}{lp}{pa}{sk}{gs}{nr}{qy}{ac}
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 41
Playfair – kirjainmatriisi; avainsana ’akseli’
a k/q s/z e l
i b c d f
g h j m n
o/å p r t u
v x y ä ö
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 42
Kirjainfrekvenssit englannin kielessä
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 43
Kirjainten esiintymisfrekvenssi
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 44
Figure 2.7:n selityksiä
• käyrä plaintext kuvaa Encyclopedia Britannica –
sanakirjan kryptologiaa kuvaavan artikkelin (jos-sa on yli
70 000 kirjainta) kirjainten suhteellisia frekvenssejä siten,
että jokaisen kirjaimen esiintymislukumäärä ko artikkelissa jaettiin
kirjaimen e esiintymislukumäärällä kyseisessä artikkelissa
saatu desimaaliluku kerrottiin sadalla
• Encyclopedia Britannica – artikkeli salattiin sitten sekä
Playfair- että Vigenère-salaajalla
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 45
Figure 2.7:n selityksiä (2)
• salaamisen jälkeen kunkin kirjaimen esiintymislukumäärä kryptotekstissä jaettiin
kirjaimen e lukumäärällä selkotekstissä; ja
saatu desimaaliluku kerrottiin sadalla
• tulos: Playfair cipher –käyrä ja Vigenère –käyrä
• Random polyalphabetic cipher –käyrä kuvaa tilannetta,
jossa teksti on salattu satunnaisella
moniaakkostosalaajalla, jossa kukin selkotekstin symboli
korvataan täysin satunnaisesti valitulla latinalaisen
aakkoston symbolilla
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 46
Feistelin tikapuut: salaaminen
f
m2=m0fk1(m1) m1
mr+1 mr
c=mr +1mr
k2
k1
f
m=m0m1
m1 m0
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 47
Feistelin tikapuut: avaaminen
• Bob (vastaanottaja) tuntee osa – avaimet k1,k2,...,kr sekä
kryptoviestin c = mr+1 mr
• Bob asettaa yr = mr mr+1; tietysti mr -1 = mr
• Bob laskee arvon fkr(mr -1)
• nyt mr+1 = mr-1 fkr(mr), joten
mr+1 fkr(mr-1) = mr-1 fkr
(mr) fkr(mr -1) = mr -1
• Bobilla on nyt tiedossa yr-1 = mr -1 mr
• osa – avaimen kr -1 avulla Bob saa määritettyä luvun yr -1
= mr -1 mr -2
• näin jatkamalla (ylöspäin) Bob saa lopulta lasketuksi
luvun m = y0 = m0m1
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 48
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 49
Yksi DES – kierros
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 50
Lohkosalaajamoodi: Electronic Code Book (ECB)
• olkoon salainen avain k ja oletetaan, että selkokielinen
viesti on jaettu lohkoihin m0, m1, m2, m3, . . .
• tällöin salaaminen ECB-moodissa tapahtuu seuraavasti:
ci = Ek(mi ), kun i = 0,1,2, . . .
• salattu viesti muodostuu lohkoista c0, c1, c2, c3, . . .
• avaaminen ECB-moodissa: mi = Dk(ci ), kun i = 0,1,2,...
• edellä tietysti Ek on lohkosalaajan salausfunktio
avaimella k ja Dk on vastaava avausfunktio
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 51
Alice ja DES:n ECB-moodi
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 52
Lohkosalaajamoodi: Cipher Block Chaining (CBC)
• olkoon salainen avain k, selkokielilohkojen jono m0, m1,
m2, m3, . . . ja IV etukäteen annettu aloitusvektori
• alotusvektori on lohkonpituinen symbolijono
• tällöin salaaminen CBC-moodissa tapahtuu seuraavasti:
c0 = Ek(m0 IV) ja ci = Ek(mi ci -1), kun i = 1,2,3, . . .
• salattu viesti muodostuu lohkoista c0, c1, c2, c3, . . .
• avaaminen CBC-moodissa m0 = Dk(c0) IV ja mi =
Dk(ci) ci -1, kun i = 1,2,3, . . .
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 53
Alice ja DES:n CBC-moodi
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 54
C. Julkisen avaimen kryptografia
Julkisen avaimen kryptografia – epäsymmetrinen
kryptografia – PKC
• salausjärjestelmä on epäsymmetrinen mikäli aina, kun k
K, on avausfunktion Dk’ määrittäminen salausfunktiosta
Ek (ja vastaavasti Ek:n määritäminen Dk’ :sta) algoritmi-
sesti vaikeaa
• kaksi avainta, julkinen ja yksityinen; merkitään X:n
julkista avainta kux ja yksityistä avainta krx
• julkisella avaimella salataan ja varmennetaan digitaalinen
allekirjoitus; c = Ekux(m) , y = Dkux(z)
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 55
Julkisen avaimen kryptografia (2)
• yksityisellä avaimella avataan ja suoritetaan digitaalinen
allekirjoitus; m = Dkrx(c), z = Ekrx(y)
• tietysti m = Dkrx(Ekux(m)) ; yleensä myös c = Ekux(Dkrx(c))
• usein salaus- ja avausalgoritmit ovat samat, vain avain
vaihtuu; tällöin Ek = Dk aina, kun k{kux,krx}
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 56
PKC: luottamuksellisuus
m E m Ekub(m) D
kub krb
A B
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 57
PKC: autentikointi ja digitaalinen allekirjoitus
m E m Ekra(m) D
kra
A B
kua
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 58
PKC: luottamuksellisuus, autentikointi ja digitaalinen allekirjoitus
m E Ekub(Ekra
(m)) Ekra(m) E
kra kub
A
D m Ekra(m) D
krb kua
B
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 59
Jaollisuudesta
Merkintöjä
Z = { . . . , -2 , -1 , 0 , 1 , 2 , 3 , . . . }
kokonaisluvut
N = { 0 , 1 , 2 , . . . } luonnolliset luvut
N+ = Z+ = { 1 , 2 , 3 , . . . } positiiviset
kokonaisluvut
Olkoon m Z ja n N+ . On olemassa yksikäsitteiset q
Z and r {0 , 1 , 2 , . . ., n -1}, joille m = q n + r
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 60
Jaollisuudesta (2)
Edellä r on jakojäännös kun m jaetaan luvulla n.
Jakojäännöstä, joka saadaan, kun m jaetaan n:llä,
merkitään m mod n.
Jos m mod n = 0 sanomme, että n jakaa tasan luvun m,
merkitään n | m. Jos n | m, niin m on jaollinen luvulla n ja
n on luvun m tekijä.
Nollasta poikkeavien kokonaislukujen a ja b suurin
yhteinen tekijä syt(a,b) on suurin sellainen positiivinen
luku, joka jakaa sekä a:n että b:n (siis c | a ja c | b).
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 61
Jaollisuudesta (3)
Kokonaislukujen ominaisuuksien nojalla voidaan
osoittaa, että kahden luvun suurin yhteinen tekijä on
olemassa ja yksikäsitteinen.
Lukujen suurin yhteinen tekijä voidaan määrittää
Eukliden algoritmin avulla.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 62
Eukliden algoritmi
Olkoot a,b Z \ {0}. Koska syt(a,b) = syt(|a|,|b|), voimme
rajoituksetta olettaa, että a b > 0 Jos b jakaa tasan a:n
, niin syt(a,b) = b . Oletetaan, että b ei jaa tasan lukua a .
Tällöin voidaan löytää sellaiset , q0 q1 ,..., qk+1 , r0 , r1 ,...,
rk N+, missä k N , että
a = q0b + r0 0 < r0 < b
b = q1r0 + r1 0 < r1 < r0
r0 = q2r1 + r2 0 < r2 < r1
. . .
rk-2 = qk rk-1 + rk 0 < rk < rk-1
rk-1 = qk+1 rk
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 63
Eukliden algoritmi (2)
Väitämme, että syt(a,b) = rk .
Miksi? Jos c | a ja c | b niin c | r0 . Tästä seuraa, että
c | r1 c | r2 ... c | rk . Toisaalta rk | rk-1 rk | rk-2 . . .
rk | b rk | a . Siispä syt(a,b) = rk .
Ilmeisesti voidaan löytää sellaiset kokonaisluvut x ja y,
että syt(a,b) = x a + y b .
Jos syt(a,b) = 1 , sanomme, että a ja b ovat keskenään
jaottomia tai suhteellisia alkulukuja.
Asetaetaan syt(a,0) = syt(0,a) = a aina, kun a on nollasta
poikkeava kokonaisluku.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 64
Luvun alkulukuesitys
Kokonaisluku p > 1 on alkuluku, jos 1 and p ovat p:n
ainoat positiiviset tekijät.
Olkoon m > 1 kokonaisluku. On olemassa yksikäsitteinen
n N+, yksikäsitteiset alkuluvut p1 < p2 < . . . < pn ja
yksikäsitteiset i1 , i2 , . . . , in N+, joille
m = p1 i1 p2
i2 . . . pn in .
Edellä luvun m esitys muodossa m = p1 i1 p2
i2 . . . pn in
on m:n tekijöihinjako.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 65
Olkoon n > 1 kokonaisluku. Tarkastellaan kokonailukujen a ja
b jakojäännöksiä luvulla n jaettaessa. Selvästi ehto
a mod n = b mod n (eli jakojäännökset ovat samat)
on yhtäpitävä ehdon
n | b – a (eli n jakaa tasan luvun b – a)
kanssa.
Aina, kun a, b, c, d ovat sellaisia kokonaislukuja, että
a mod n = b mod n ja c mod n d mod n, on (a + c) mod n = (b + d ) mod n
(a – c) mod n = (b – d ) mod n
(a c) mod n = (b d ) mod n
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 66
Jakojäännöksistä
Edelleen, jos ja c ovat sellaisia kokonaislukuja, että
(a c) mod n = (b c) mod n ,
on voimassa
a mod [ n / syt (n , c )] = b mod [ n / syt (n , c )] .
Edellisen kalvon tulosten nojalla
(a + b) mod n = (a mod n + b mod n) mod n
(a – b) mod n = (a mod n – b mod n) mod n
(a b) mod n = (a mod n b mod n) mod n
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 67
Jakojäännöksistä (2)
Jäännösluokkalaskentaa
Olkoon n {2,3,4, ... } ja Zn = {0,1,2, . . . , n -1}. Määritellään joukossa Zn operaatiot +n (yhteenlasku modulo n), -n (vähennyslasku modulo n), n (kertolasku modulo n), ja n potenssiinkorotus modulo n), yhtälöillä
x +n y = (x + y) mod n x n y = (x y) mod n x -n y = (x – y) mod n x n y = x y mod n Edellä yhtälöiden oikealla puolella olevat operaatiot ovat tavallisia kokonaislukujen laskutoimituksia. Operaatiot +n
ja n vastaavat jäännösluokkien yhteen- ja kertolaskua.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 68
Jäännösluokkalaskentaa modulo 10: yhteenlasku
+10 0 1 2 3 4 5 6 7 8 9
0 0 1 2 3 4 5 6 7 8 9
1 1 2 3 4 5 6 7 8 9 0
2 2 3 4 5 6 7 8 9 0 1
3 3 4 5 6 7 8 9 0 1 2
4 4 5 6 7 8 9 0 1 2 3
5 5 6 7 8 9 0 1 2 3 4
6 6 7 8 9 0 1 2 3 4 5
7 7 8 9 0 1 2 3 4 5 6
8 8 9 0 1 2 3 4 5 6 7
9 9 0 1 2 3 4 5 6 7 8
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 69
Jäännösluokkalaskentaa modulo 10: kertolasku
10 0 1 2 3 4 5 6 7 8 9
0 0 0 0 0 0 0 0 0 0 0
1 0 1 2 3 4 5 6 7 8 9
2 0 2 4 6 8 0 2 4 6 8
3 0 3 6 9 2 5 8 1 4 7
4 0 4 8 2 6 0 4 8 2 6
5 0 5 0 5 0 5 0 5 0 5
6 0 6 2 8 4 0 6 8 2 4
7 0 7 4 1 8 5 2 9 6 3
8 0 8 6 4 2 0 8 6 4 2
9 0 9 8 7 6 5 4 3 2 1
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 70
Jäännösluokkalaskentaa (2)
Joukon Zn = {0,1,2, . . . , n -1} alkioita voidaan ajatella tavanomaisina kokonaislukuina, kuitenkin yo lasku-toimituksilla varustettuna.
Alkion a Zn vasta-alkio (käänteisalkio yhteenlaskun suhteen) on se yksikäsitteinen y Zn , jolle a +n y = 0 . Merkitään y = – a .
Esim. Alkion 7 Z14 vasta-alkio on 7 , koska
7 +14 7 = 0.
Alkion a Zn käänteisalkio (kertolaskun suhteen), jos se on olemassa, on se yksikäsitteinen z Zn , jolle
a n z = 1.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 71
Jäännösluokkalaskentaa (3)
Esim. Alkion 3 Z14 käänteisalkio on 5, koska 3 14 5 = 1.
Alkiolla 7 Z14 ei ole käänteisalkiota.
Väite: Alkiolla a Zn , a 0, on käänteisalkio
(kertolaskun suhteen) jos ja vain jos syt(a,n) = 1 .
Miksi? Oletetaan aluksi, että syt(a,n) = 1. Tällöin
(yleistettyä Eukleideen algoritmia käyttäen) voidaan löytää
sellaiset kokonaisluvut x ja y että x a + y n = 1.
Rajoituksetta voidaan olettaa, että x Zn (miksi?) Nyt
selvästi x n a = 1 . Oletetaan sitten, että x n a = 1 ,
missä x Zn.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 72
Jäännösluokkalaskentaa (4)
Määritelmän nojalla x a = 1 + k n jollak k Z . Näemme, että x a – k n = 1 , josta seuraa, että syt(a,n) = 1 . mot
Eulerin (totient-) funktio . Jokaisella n N+ , olkoon (n) niiden alkioiden j {1,2,…,n} lukumäärä, joille n ja j ovat jaottomia.
On selvää, että (p) = p – 1 jos p on alkuluku. Jos sekä p että q ovat alkulukuja, saadaan
(p q) = (p – 1)(q – 1) .
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 73
Jäännösluokkalaskentaa (5)
Olkoon Zn kaikkien sellaisten alkioiden x Zn että x ja
n ovat keskenään jaottomia. Ilmeisesti joukossa Zn on
(n) alkiota. Se on myös suljettu kertolaskun n suhteen: kahden n:n kanssa jaottoman luvun tulo on jaoton n:n kanssa. Jokaisella alkiolla x Zn
käänteisalkio kertolaskun suhteen. Siten ( Zn
, n ) on ryhmä.
Eulerin lause. Olkoot a , n N+ sellaisia, että syt(a , n) = 1 . Tällöin a(n) mod n = 1 .
Fermat'n pieni lause. Olkoon a N+ ja p alkuluku, joka ei jaa tasan lukua a. Tällöin ap-1 mod n = 1 .
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 74
Jäännösluokkalaskentaa (6)
Voidaan osoittaa, että jokaista alkulukua p kohti on olemassa sellainen a Zp
että
Zp = {a i | i = 0, 1, 2, … , p –1}
Sanomme tällöin, että a virittää (eli generoi) ryhmän Zp .
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 75
RSA
• Ron Rivest, Adi Shamir ja Len Adleman keksivät RSA:n vuonna 1977
• suosituin PKC-algoritmi, ainoa laajalle levinnyt ja yleisesti hyväksytty julkisen avaimen monikäyttötekniikka
• salaa, avaa, tuottaa digitaalisen allekirjoituksen ja todentaa sen
• muuttuvanpituinen avain (1024 bittiä ja 2048 bittiä tällä hetkellä suosituimmat)
• lohkokoko vaihtelee, selkotekstiblokki lyhempi kuin avain
• kryptotekstiblokki avaimen pituinen
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 76
RSA (2)
• salaaminen ja avaaminen perustuvat jäännösluokkaeksponenttien määrittämiseen (myös Euklideen algoritmiin)
• murtamisen vaikeus perustuu oletukseen kokonaislukujen tekijöihinjaon vaikeudesta
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 77
RSA – algoritmi
1. Avaimen generointi • valitaan kaksi suurta alkulukua p ja q (molemmat
ainakin 256-bittisiä)
• lasketaan n = pq
• lasketaan ( pq ) = ( p - 1 ) ( q - 1 )
• valitaan salauseksponentti, sellainen kokonaisluku
e joukosta {2,3, … , (n) –1}, että syt(e, (n) ) = 1
• määritetään (Euklideen algoritmi) se luku d {2,3,
… , (n)-1}, jolle (de ) mod (n) = 1
• julkinen avain on ku = {e, n}
• yksityinen avain on kr = {d, n}
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 78
RSA – algoritmi (2)
2. Salaaminen • selkoteksti m Zn
• kryptoteksti c = me mod n
3. Avaaminen • kryptoteksti c Zn
• selkoteksti m = cd mod n
Luvun n pituuden tulisi nykyään olla välillä (1024 ,
2048).
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 79
RSA: esimerkki
• alkulukuja p = 53 ja q = 59 käyttäen generoi itsellesi RSA
– avainpari • kryptaa teksti 'olipaker'omalla julkisella avaimellasi
• avaa kryptoteksti yksityisellä avaimellasi
• ratkaisu kotona
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 80
Diffie-Hellman –algoritmi
1. Julkiset parametrit • valitaan suuri alkuluku p (ainakin 1024 bittiä) ja (jokin)
kertolaskuryhmän Zp* generaattori
2. Alice generoi omat parametrinsa avaimeen • Alice valitsee yksityisen luvun xa
• Alice laskee ya = xa mod p ( = p xa )
3. Alice lähettää luvun ya Bobille • Alice valitsee yksityisen luvun xa
• Alice laskee ya = xa mod p ( = p xa )
4. Bob generoi omat parametrinsa avaimeen • Bob valitsee yksityisen luvun xb
• Bob laskee yb = xb mod p ( = p xb )
5. Bob lähettää luvun yb Alicelle
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 81
Diffie-Hellman –algoritmi (2)
6. Alice generoi salaisen avaimen • Alice laskee k = yb
xa mod p (= yb p xa )
7. Bob generoi salaisen avaimen • Bob laskee k = ya
xb mod p (= ya p xb )
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 82
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 83
Diffie-Hellman -avaimenvaihto
Vaikka vastapuoli Eve tuntisi parameetrit p , , ya ja yb ,
hänen on (todennäköisesti) vaikeaa määrittää salainen
avain k ; Even pitäisi kyetä ratkaisemaan niin kutsuttu
Diffie-Hellman –ongelma
Diffie-Hellman –ongelma (DHP) Olkoon annettu alkuluku
p, kertolaskuryhmän Zp* generaattori ja parametrit
x mod p ( = p x ) ja y mod p ( = p y ). Määritä
luku x y mod p ( = p xy ).
DHP on ainakin yhtä vaikea kuin diskreetin logaritmin
ongelma (DLP).
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 84
Diffie-Hellman –avaimenvaihto (2)
Diffie-Hellman –algoritmissa on heikkouksia:
authentikointia ei suoriteta
se on haavoittuva välimieshyökkäykselle
se on haavoittuvs clogging -hyökkäykselle
Välimieshyökkäys (Man-in-the-Middle attack, MiM): 1. Alice lähettää Bobille viestin, joka sisältää parametrit p , ya ja .
2. Eve keskeyttää viestin , valitsee oman lukunsa xe ja laskee arvon
ye sekä salasen avaimen kae = ya p xe .
3. Eve naamioituu Alicen suuntaan Bobiksi ja lähettää Alicelle
parametrin ye .
4. Alice laskee salaisen avaimen kae = ye p xa .
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 85
Diffie-Hellman –avaimenvaihto (3)
Välimieshyökkäys (jatkuu . . . ): 5. Eve naamioituu Bobin suuntaan Aliceksi ja lähettää Bobille
parametrit p , ye and .
6. Bob valitsee oman lukunsa xb ja laskeee aron yb sekä salaisen
avaimen kbe = ye p xb .
7. Uskoen, että Eve on Alice, Bob lähettää parametrin yb to Eve.
8. Eve laskee salasien avaimen kbe = yb p xe .
Eve kykenee nyt välitttämään viestejä Alicen ja Bobin välillä
ja sopivasti salausta vaihtamalla huijaamaan kumpaakin
osapuolta. Alice ja Bob eivät tiedä, että he jakavat viestinsä
Even kanssa.
Periodi 4
2014 / 2015
Tietoturva
Kryptografia 86
Diffie-Hellman –avaimenvaihto (4)
Diffie-Hellman –algoritmi on laskennallisesti intensiivinen
(se vaatii paljon laskentaa). Se on haavoittuva clogging –
hyökkäystä vastaan, jossa vastapuoli hyökkää pyytämällä
suurta määrää avaimia. Uhri kuluttaa huomattavan mää-
rän laskentaresursseja hyödyttömään modulaarilasken-
taan.
Mittayksiköiden kerrannaisia osoittavat etuliitteet, lyhenteet ja koot
eksa E 1018
peta P 1015
tera T 1012
giga G 10 9
mega M 10 6
kilo k 10 3
hehto h 10 2
deka da 10
desi d 10-1
sentti c 10-2
milli m 10-3
mikro 10-6
nano n 10-9
piko p 10-12
femto f 10-15
alto a 10-18
Periodi 4
2014 / 2015
Tietoturva Kryptografia 87