Salaus

Wikipedia
Loikkaa: valikkoon, hakuun
Enigma-salauslaite

Salaus tarkoittaa viestin salaamista siten, että sen haltuunsa saava ulkopuolinen ei kykene sitä avaamaan. Salausta tutkivaa tieteenalaa sanotaan puolestaan kryptografiaksi. Se on informaatioteorian eräs osa-alue, joka on saanut vaikutteita myös muilta matematiikan alueilta. Tutkimuksen tavoitteina ovat menetelmät ja periaatteet, joilla informaatio voidaan salata siten, ettei sivullisen ole helppo saada alkuperäistä viestiä selville.

Salausta, salakirjoitusta eli kryptografiaa käytetään yleisimmin nykyisin Internet-liikenteen suojaamiseen, tietoturvaan. Siellä sitä käytetään PKI-järjestelmissä, suosituimpina kohteina verkkopankkien ja -kauppojen selainyhteyksien salaus, sähköpostin salaus ja allekirjoitus sekä yritysten sisäiset yhteyksien suojaustarpeet.

Kryptografian vastakohta on salakirjoitusten murtaminen eli kryptoanalyysi. Molemmat ovat kryptologian osa-alueita.

Sanastoa[muokkaa | muokkaa wikitekstiä]

Salauksella tarkoitetaan prosessia, jossa selväkielinen teksti eli selkoteksti muutetaan sellaiseksi, ettei sitä pysty tulkitsemaan (salattu teksti, salateksti). Salauksen purkaminen on vastakkainen prosessi, jossa salattu teksti muutetaan selkotekstiksi. Salain on algoritmipari, jolla nämä muutokset tehdään. Algoritmien toimintaa säätelee salausavain, jonka vain viestin lähettäjä ja vastaanottaja tuntevat. Enkryptaus tarkoittaa kryptaamista (salaamista). Dekryptaus tarkoittaa kryptauksen purkamista (salauksen ratkaiseminen).

Yleistä[muokkaa | muokkaa wikitekstiä]

Jo antiikin aikana tunnettujen symmetristen salakirjoitusmenetelmien ideana oli se, että viestin lähettäjä ja vastaanottaja käyttivät viestin salaamiseen ja salakirjoitetun viestin purkamiseen samaa avainta. Nykyisten, 1970-luvulta lähtien kehitettyjen epäsymmetristen salakirjoitusmenetelmien avulla voidaan kuitenkin toteuttaa aivan uudentyyppinen järjestelmä. Kuka tahansa voi salakirjoittaa viestin tietyn vastaanottajan julkisella salakirjoitusjärjestelmällä hänen ilmoittamaansa julkista avainta käyttäen. Kuitenkin ainoastaan viestin vastaanottaja voi purkaa viestin omalla salaisella avaimellaan.

Nykyisten tietoverkkojen, erityisesti Internetin, toiminta perustuu epäsymmetrisiin (julkisiin) salakirjoitusjärjestelmiin pohjautuviin PKI- (public key infrastructure) protokolliin. Jo klassisia esimerkkejä käytetyistä järjestelmistä ovat Diffie-Hellman-avaimenvaihtoprotokolla ja RSA- ja ElGamal-kryptosysteemit.

Protokollien tehtävä on määrittää, miten luonteeltaan matemaattisia salakirjoitusjärjestelmiä käytetään. Niiden tavoitteena on varmistaa tietoliikenteen turvallisuus. Varsin yleinen tietoturvaongelma on protokollasta poikkeaminen, jonka syynä voi olla vaikkapa ns. social engineering -tyyppinen tiedusteluyritys (ks. Kevin Mitnick). Protokollat on tarkoitettu sellaisiksi selkeiksi ohjesäännöiksi, että kuka tahansa tietoverkon käyttäjä voi niitä käyttäen varmistua oman tietoliikenteensä turvallisuudesta. Protokollien suunnittelu ja niiden syvällinen ymmärtäminen edellyttää kuitenkin pitkällistä matemaattista koulutusta. Protokolla-asiantuntijan tulee olla perehtynyt lukuteorian, algebran ja erityisesti algoritmiteorian viimeisimpiin tutkimustuloksiin.

Kryptologian keskeisimpänä maksiimina voidaan pitää ns. Kerchoffin periaatetta. 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.

Salakirjoitusten ja niiden murtamisen historiaa[muokkaa | muokkaa wikitekstiä]

Esihistoria[muokkaa | muokkaa wikitekstiä]

Aluksi kirjoitettujen viestien harvinaisuus suojasi viestejä. Kun useampi kuin yksi osasi kirjoittaa, sanoman salakirjoittaminen muuttui tarpeelliseksi.

Eräs vanhimmista tiedonsalaustavoista oli käytössä 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 steganografiaa.

Atbash-koodi ja Caesarin salakirjoitus[muokkaa | muokkaa wikitekstiä]

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 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 kirjassa Atbash-koodattuja nimiä.lähde? Koodia käyttävät vieläkin eräät salaseurat tai sen kaltaiset, jotka tahtovat ilmaista olevansa pitkän perinteen vaalijoita.lähde?

Suetonius kuvaa teoksessaan De vita Caesarum Julius Caesarin käyttäneen kenraaliensa kanssa viestiessään 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[muokkaa | muokkaa wikitekstiä]

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 * 1026 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. 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[muokkaa | muokkaa wikitekstiä]

Seuraava kehittyneempi versio on muuttaa salakirjoitusaakkosistoa esimerkiksi viiden kirjaimen jälkeen, jolloin tilastollinen ratkaisumenetelmä vaikeutuu oleellisesti. Tätä versiota käytti esimerkiksi suomalainen 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.

Edellä mainituista esimerkeistä selviää, että salakirjoituksen murtaminen on ainakin matematiikkaa, kielitiedettä ja tilastotiedettä, ja myös yleistä älykkyyttä.

Transpositiosalaus[muokkaa | muokkaa wikitekstiä]

  • Transpositiosalaus on menetelmä, jossa kirjainten järjestystä muutetaan sovitulla tavalla.

Satunnaisluvut[muokkaa | muokkaa wikitekstiä]

Salauksessa käytettyjen satunnaislukujen tulisi olla mahdollisimman aidosti satunnaisia. Aidosti satunnaisten lukujen tuottaminen on kuitenkin vaikeaa. Nykyään parhaina tapoina tuottaa todellisia satunnaislukuja pidetään luonnollisia systeemejä, kuten radioaktiivisten aineiden luonnollisen hajoamisen tuottamat säteilyhiukkaset, tai esimerkiksi laavalampun vahan liike. Useimmiten tietokoneissa käytetään näennäissatunnaislukugeneraattoreita, jotka eivät välttämättä kelpaa salauskäyttöön. Tietokoneiden salauksessa käytetty satunnaisuus perustuu yleensä käyttäjän tekemien toimenpiteiden ja verkossa tapahtuvien tapahtumien satunnaisuuden keräämiseen.lähde? Käytännön esimerkkejä edellä mainitusta ovat esimerkiksi käyttäjän hiiren liikkeiden tai mikrofonin vastaanottaman kohinan käyttäminen salausavaimen luomiseen.

Salauksen käyttökohteita[muokkaa | muokkaa wikitekstiä]

Tietokoneiden myötä kryptografia sai uuden sovelluskohteen datan salauksen, allekirjoitusten ja eheyden varmistamisesta. Tästä esimerkkejä ovat erilaiset sovellukset ja protokollat etäyhteyksien (SSH) ja www-liikenteen (HTTPS) salaamiseen sekä sähköpostiviestien salaamiseen ja allekirjoittamiseen (PGP).

Salausalgoritmeja[muokkaa | muokkaa wikitekstiä]

Symmetrisiä salausalgoritmeja

Epäsymmetrisiä eli julkisen avaimen salausalgoritmeja

Yksisuuntaisia tiivisteitä

  • MD5 (Message digest)
  • SHA-1 (Secure Hash Algorithm)

Sähköisen allekirjoituksen menetelmiä

  • DSA (Digital Signature Algorithm)
  • X.509 Varmenteet

Kryptografiaa käyttäviä sovelluksia

Salaaminen sotilaallisena terminä[muokkaa | muokkaa wikitekstiä]

Salaaminen, (OPSEC, Operational Security) sotilaallisena terminä tarkoittaa salakirjoitusta laajempaa omaan toimintaan liittyvän tiedon salaamista viholliselta. Salaaminen on tietoon liittyvä toiminta ja osa nykyaikaisten asevoimien sotilaallista doktriinia, osa johtamissodankäyntiä.

Salaaminen (OPSEC) on prosessi, jota käytetään kieltämään vastustajalta tieto omista aikomuksista, resursseista tai rajoituksista. Se tekee tämän määrittämällä, mitkä toimet vastustaja voi havaita tiedonkeruujärjestelmällään, määrittämällä mitä indikaattoreita voidaan tulkita tai yhdistää omien tarkoitusten paljastamiseksi ja sitten kehittämällä ja ottamalla käyttöön menetelmät, jotka eliminoivat tai vähentävät omien toimien haavoittuvuutta ko. toimille.

Oikein käytettynä OPSEC on erinomainen menetelmä saavuttaa operatiivinen tai strateginen yllätys. Yhdistettynä harhauttamisen, joidenkin elson elementtien ja/tai psykologisen sodankäynnin kanssa, OPSEC voidaan käyttää peittämään omia kriisin tai sodan valmisteluja. Se käsittää "keltaisen" osan ottamisen mukaan oman johtamissodankäynnin strategian kehittämiseen.

Salaamisen osa-alueita ovat:

  • vastatiedustelu
  • tietoturvallisuus (INFOSEC)
  • lähetysturvallisuus (TRANSEC)
  • viestiturvallisuus (COMSEC) ja
  • signaaliturvallisuus (SIGSEC).

Murtamaton koodi ja sen ongelmat[muokkaa | muokkaa wikitekstiä]

Toisin kuin yleensä luullaan on olemassa myös kryptografisesti murtamaton salausmenetelmä: kerta-avain (engl. one-time pad, OTP) -- kertakäyttöinen todellisista 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 (engl. brute force) purkamiseksi. Esimerkiksi AES-salausta pidetään nykyään murtamattomana.

Katso myös[muokkaa | muokkaa wikitekstiä]

Kirjallisuutta[muokkaa | muokkaa wikitekstiä]