Ero sivun ”Kryptologia” versioiden välillä

[katsottu versio][katsottu versio]
Poistettu sisältö Lisätty sisältö
Xyzäö (keskustelu | muokkaukset)
Ei muokkausyhteenvetoa
Epiq (keskustelu | muokkaukset)
siirretty tekstiä artikkelista Salaus
Rivi 7:
Moderni kryptografia pohjautuu hyvin paljon matemaattiseen teoriaan ja tietojenkäsittelytieteen käytäntöön. Kryptografiset algoritmit on suunniteltu laskennallisen kovuuden olettamuksien ympärille. Tämä tekee sellaisista algoritmeista vaikeita murtaa käytännössä. On teoreettisesti mahdollista murtaa sellainen järjestelmä, mutta se olisi epäkäytännöllistä tunnetuilla käytännön keinoilla. Näitä järjestelmiä kutsutaan siksi laskennallisesti turvallisiksi. Teorian kehittyminen (kuten edistysaskelet [[kokonaislukujen tekijöihinjako]] -algoritmeissa) ja nopeutuva tietotekniikka vaativat, että näitä ratkaisuja kehitettäisiin jatkuvasti. On olemassa järjestelmiä, jotka on todistettu murtamattomiksi edes rajoittamattomalla määrällä laskentatehoa. Yksi esimerkki on ''[[one-time pad]]''. Nämä järjestelmät ovat kuitenkin vaikeampia toteuttaa kuin parhaat teoreettisesti murrettavat mutta laskennallisesti turvalliset mekanismit.
 
Kryptologian keskeisimpänä maksiimina voidaan pitää ns. ''Kerchoffin periaate''tta. Periaatteen mukaan järjestelmän tulee perustua avainten salassa pitämiseen. Vihollisen on oletettava tuntevan varsinaisen salakirjoitusjärjestelmän. Kerchoffin periaatteen seuraus on se, että kuka tahansa voi avoimesti kokeilla järjestelmän turvallisuutta. Järjestelmän turvallisuus joutuu näin todelliseen koetukseen (''ruuvipenkkiin''). Luotettavimmat julkisissa tietoverkoissa käytettävät salakirjoitusmenetelmät noudattavat Kerchoffin periaatetta. Kuitenkin vielä nykyisin erityisesti mobiilin tietoliikenteen ja sotilassovellutusten puolella pyritään kehittämään järjestelmiä, jotka Kerchoffin periaatteen vastaisesti perustuvat itse salakirjoitusjärjestelmän salassapitämiseen.
==Katso myös==
 
== Salakirjoitusten ja niiden murtamisen historiaa ==
=== Esihistoria ===
Aluksi kirjoitettujen viestien harvinaisuus suojasi viestejä. Kun useampi kuin yksi osasi kirjoittaa, sanoman salakirjoittaminen muuttui tarpeelliseksi.
 
Eräs vanhimmista tiedonsalaustavoista oli käytössä [[Muinainen Egypti|Egyptissä]]. Viesti kirjoitettiin viestinviejän kaljuksi ajettuun päähän. Tukan kasvettua viesti oli valmis lähetettäväksi. Tällä tavalla ymmärrettynä ensimmäiset salakirjoitukset olivat viestin peittämistä, eli [[steganografia]]a.
 
=== Atbash-koodi ja Caesarin salakirjoitus ===
Yksi vanhimmista varsinaisista salakirjoituksista on Atbash-koodi. Siinä kirjaimistossa aakkosjärjestyksessä viimeinen kirjain vaihdetaan ensimmäiseen, toiseksi viimeinen toiseen, ja niin edelleen. Nimi ''atbash'' tulee [[heprealaiset aakkoset|heprean kirjaimista]] [[alef]]-[[tav]]-[[bet]]-[[shin]]. Suomalaisilla aakkosilla se toimisi siten, että '''A''':sta tulisi '''Ö''' ja '''B''':stä '''Ä'''. Atbash-koodausta käytettiin yleisesti tietyissä piireissä satoja vuosia ennen ajanlaskun alkua, ja onpa Raamatussakin [[Jeremian kirja]]ssa Atbash-koodattuja nimiä.{{Lähde|16. syyskuuta 2008}} Koodia käyttävät vieläkin eräät salaseurat tai sen kaltaiset, jotka tahtovat ilmaista olevansa pitkän perinteen vaalijoita.{{Lähde|16. syyskuuta 2008}}
 
[[Suetonius]] kuvaa teoksessaan ''De vita Caesarum'' [[Julius Caesar]]in käyttäneen kenraaliensa kanssa viestiessään [[Caesarin salakirjoitus|salakirjoitusta]], jossa kirjain korvataan aakkosjärjestyksessä 3 kirjainta eteenpäin löytyvällä kirjaimella, ja aakkoston lopussa kierretään takaisin alkuun. Tällöin, '''A''':sta tulee '''D''', '''B''':stä tulee '''E''' ja niin edespäin. Nykyisin Caesar-salauksella tarkoitetaankin tämän yleistystä, jossa aakkostossa siirrytään sovittu määrä kirjainta eteenpäin. Caesar-salauksen erästä muotoa, [[Rot13]], jossa siirrytään 13 kirjainta eteenpäin, käytetään edelleen esimerkiksi Internet-keskusteluissa, koska koodaus toimii samalla purkuna englannin kielen aakkostolla, jossa on 26 merkkiä.
 
=== Atbash-koodin ja Caesar-salakirjoituksen murtaminen ===
Atbash-koodilla on vain yksi mahdollinen avain, joten se on hyvin heikko salakirjoitus.
 
Caesar-koodi ja sen muunnokset on murrettavissa kokeilemalla kaikki N siirrosta aakkosistossa (N = aakkosiston kirjainten määrä), siis esimerkiksi englannin kielessä (= 26 aakkosta) maksimissaan 26 kokeilulla.
 
Kehittyneempi versio eli sekoitettu Caesar, jossa selväkielistä A:ta vastaa mielivaltainen salakirjoitettu kirjain, B:tä mielivaltainen jäljellä olevista kirjaimista jne., sisältää periaatteessa A! (A-[[kertoma]]) määrän mahdollisia avaimia. Englantilaisella aakkosistolla (26 aakkosta) erilaisia sekoitettuja Caesar- avaimia on 26! eli 4,0329 * 10<sup>26</sup> mahdollisuutta. Tällaista määrää on liki mahdotonta käydä yksitellen läpi.
 
Kuitenkin mikäli tiedetään, millä kielellä salattu viesti on kirjoitettu, on sekoitettu Caesar helppo murtaa yhden vähänkin pidemmän sanoman perusteella [[frekvenssianalyysi]]llä. Eri kielille voidaan muodostaa tilastollinen jakauma eri kirjainten käytöstä. Esimerkiksi englannin kielessä yleisin kirjain on E. Jos siis englanninkielisessä sekoitettua Caesaria käyttävässä koodatussa sanomassa on eniten W- kirjaimia, hyvä arvaus on, että W vastaa E-kirjainta. Vastaavasti suomen kielessä A on yleisin kirjain.
 
=== Kehittyneemmistä versioista ===
Seuraava kehittyneempi versio on muuttaa salakirjoitusaakkosistoa esimerkiksi viiden kirjaimen jälkeen, jolloin tilastollinen ratkaisumenetelmä vaikeutuu oleellisesti. Tätä versiota käytti esimerkiksi suomalainen [[Salakirjoitusviivain|salakirjoitusviivain]] eli ns. "matolaatikko"- menetelmä. Tämän menetelmän kehittyneempään muunnelmaan perustui myös saksalaisten toisen maailmansodan aikana käyttämä [[Enigma (salauslaite)|ENIGMA-salauslaite]].
Edellä mainituista esimerkeistä selviää, että salakirjoituksen murtaminen on ainakin [[matematiikka]]a, [[kielitiede]]ttä ja [[tilastotiede]]ttä, ja myös yleistä älykkyyttä.
 
== Murtamaton koodi ja sen ongelmat ==
Toisin kuin yleensä luullaan on olemassa myös kryptografisesti murtamaton salausmenetelmä: ''kerta-avain'' (engl. ''one-time pad, OTP'') -- kertakäyttöinen todellisista [[satunnaisluku|satunnaisluvuista]] koostuva avain, joka on yhtä pitkä kuin salattava viesti. Jokainen viestin merkki yhdistetään avaimen vastaavan merkin kanssa. Murtamattomuus perustuu siihen, että jokainen mahdollinen ratkaisu on yhtä todennäköinen, eikä oikeaa selvätekstiä voi erottaa muista vaihtoehdoista.
 
Historia on osoittanut, että kertakäyttöisiksi tarkoitettuja avainlistoja viitsitään käyttää harvoin vain yhden kerran. Jos "kertakäyttöistä" avainta käytetään useamman kerran, salateksti voidaan murtaa helposti.
 
Kertakäyttöisten avainlistojen käyttö on valitettavan epäkäytännöllistä suurien tietomäärien ja monien vastaanottajien kohdalla. Haasteina ovat avainlistojen turvallinen toimittaminen vastaanottajalle sekä niiden alkuperäisen valmistuksen vaatima työ. Avainlista, jonka joku on päässyt kopioimaan matkalla käyttäjälle, on täysin arvoton.
 
Mikäli avain on lyhyempi kuin viesti tai satunnaisluvut eivät ole aidosti satunnaisia, salaus ei voi olla täydellinen. Silti hyvin tehty salaus voi olla käytännössä äärimmäisen vaikea murtaa.
 
Arkikielessä murtamattomalla salauksella voidaan tarkoittaa myös salausmenetelmää, jolla salatun viestin purkuun ei tunneta muuta menetelmää kuin kokeilla kaikkia salausmenetelmän sallimia avaimia. Kyseistä purkamismenetelmää kutsutaan ''raa'alla voimalla'' ({{k-en|brute force}}) purkamiseksi. Esimerkiksi [[AES]]-salausta pidetään nykyään murtamattomana.
 
== Katso myös ==
* [[Steganografia]]
 
== Lähteet ==
{{viitteet}}
 
{{tynkä/Tiede}}
 
[[Luokka:Salakirjoitustekniikka|*]]
[[Luokka:Sovellettu tiede]]