Salauksessa on monia eri osia. Jos kuitenkin haluat salata joitakin tietoja, voit käyttää kahdenlaisia algoritmeja: symmetrisiä salausalgoritmeja ja epäsymmetrisiä salausalgoritmeja. Kokonaiskonsepti on sama, ne voivat salata tietoja, mutta ne toimivat eri periaatteilla ja niillä on erilaisia käyttötapauksia. Nimellinen ero kuitenkin kuvaa salausavaimia. Symmetrinen salausalgoritmi käyttää yhtä jaettua avainta sekä tietojen salaamiseen että salauksen purkamiseen. Epäsymmetrinen salausalgoritmi käyttää kahta linkitettyä avainta, toista salauksen purkamiseen ja toista salauksen purkamiseen.
Symmetristen salausalgoritmien ominaisuudet
Kuten edellä todettiin, symmetrisen salausalgoritmin avaimen erottava piirre on se, että käytät yhtä avainta sekä tietojen salaamiseen että salauksen purkamiseen. Tämä ei tarkoita, että on olemassa vain yksi mahdollinen salausavain, vain jos salaat jotain yhdellä avaimella, sinun on käytettävä samaa avainta salauksen purkamiseen. Sitä kutsutaan joskus jaetun avaimen salaukseksi. Tämä johtuu siitä, että jokaisen osallistujan on tiedettävä sama avain, joten sinun on jaettava se.
Tämä ominaisuus käyttää samaa avainta salaamiseen ja salauksen purkamiseen voi olla hieman ongelmallinen. Jotta voit käyttää symmetristä salausalgoritmia, sinun on pystyttävä viestimään se turvallisesti. Mutta et voi tehdä sitä ilman, että sinulla on jo turvallinen viestintäkeino. Onneksi tämä ongelma voidaan ratkaista epäsymmetrisellä salauksella, mutta se on ymmärtämisen arvoinen.
Symmetristen salausalgoritmien avaimet ovat yleensä melko pieniä, ainakin verrattuna epäsymmetriseen salaukseen. Tämä tekee niistä suhteellisen helppoja lähettää jopa hitaalla verkkoyhteydellä ja vähemmän alttiita virheille epäluotettavassa verkossa. Symmetrinen salausalgoritmit ovat myös nopeita verrattuna epäsymmetrisiin algoritmeihin.
Kaikki nämä ominaisuudet tekevät symmetrisistä salausalgoritmeista erityisen hyödyllisiä tiedon joukkosalauksessa. Tämä pätee erityisesti silloin, kun nopeus on ongelma.
Suoratoista salauksia ja estä salauksia
AES on luultavasti tunnetuin symmetrinen salausalgoritmi. Sitä käytetään melkein kaikessa, joka salaa paljon tietoa, ja se on vakiona HTTPS: ssä käytettävissä salaussarjoissa. AES on lohkosalaus, jossa on 128-bittisiä lohkoja. Lohkosalaus toimii salaamalla tietolohkoja kerrallaan. Jokaisen lohkon on oltava samankokoinen. Tämä on hyvä, jos jäljellä oleva data on suurempi kuin lohkon koko, mutta tarkoittaa, että lohkon täydentämiseen on käytettävä jonkinlaista täyttöä.
Virtasalaus toimii salaamalla paljon pienempiä tietomääriä kerrallaan, tyypillisesti tavu kerrallaan. Tämän käsitteen muunnelma on korvaussalaus, joka toimii kirjaimissa. Korvaussalaukset ovat herkkiä taajuusanalyysille, joten ne ovat tyypillisesti epäluotettavia ja käyttämättömiä. Stream-salauksilla ei kuitenkaan ole tätä ongelmaa.
Symmetriset algoritmit ovat yleensä haavoittuvia tunnetun selkotekstin hyökkäyksille, valitun selkotekstin hyökkäyksille, differentiaaliselle kryptausanalyysille ja lineaariselle kryptausanalyysille. Nykyaikaiset algoritmit on kuitenkin suunniteltu huolellisesti tätä ajatellen, joten nämä ongelmat eivät ole ongelma.
Johtopäätös
Symmetrinen salaus on salauksen muoto, joka käyttää samaa avainta sekä tietojen salaamiseen että salauksen purkamiseen. Joissakin tapauksissa itse algoritmi on sama sekä salauksessa että salauksen purkamisessa, vaikka näin ei välttämättä ole. Salausavaimet ovat yleensä suhteellisen lyhyitä ja helppoja lähettää. Avain on kuitenkin välitettävä suojatun kanavan kautta, koska se on välitettävä kaikkien osapuolten välillä. Symmetriset salausalgoritmit ovat yleensä paljon nopeampia kuin epäsymmetriset salausalgoritmit.