Salaus

Sanastoa

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ä

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-avaintenvaihtoprotokolla ja RSA- ja ElGamal-salausjärjestelmät.
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.

Satunnaisluvut

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 ympäristössä tapahtuvien tapahtumien satunnaisuuden keräämiseen. 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

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).