Salakirjoitusta sijoittamalla 2

Muuttuvakirjaimisessa sijoitussysteemissä tiettyä lähdekielen aakkosta ei vastaa aina sama kryptausaakkonen. Tyypillinen esimerkki kyseisestä systeemistä on ns. auto-avain-kryptaussysteemi, jossa käytetään itse selvätekstiä omana avaimenaan jonkin alkuavaimen jälkeen. Alkuavaimen pituus määrää kryptotekstin jakson, ts. teksti kryptataan ja dekryptataan alkuavaimen pituuden suuruisissa jaksoissa. Kryptaus tapahtuu laskemalla avaimen aakkosen ja selvätekstin aakkosen (numerointi 0-27, kts. tehtävä ”Salakirjoitusta sijoittamalla 1” ) summa modulo 28. Olkoon esimerkiksi selvätekstin (pituus n) merkkijono (s1, s2, s3, s4, ..., sn-3, sn-2, sn-1, sn) ja alkuavaimen (pituus 3) merkkijono (a1, a2, a3). Tällöin kryptotekstin (pituus n) merkkijono muodostuu seuraavasti:

k1 = a1 + s1, k2 = a2 + s2, k3= a3 + s3
k4 = s1 + s4, k5 = s2 + s5 ...
kn-2= sn-5 + sn-2kn-1= sn-4 + sn-1kn= sn-3 + sn,

kaikissa (mod 28).

Viesti on kryptattu auto-avain-menetelmällä alkuavaimella ”apua”. Kryptoteksti on

ocanf böfbs tgxoo döbsi ftztk ägäms ölgu

(Tämän harjoitustehtäväkokoelman yhteydessä on joillekin laskentaohjelmille valmiina lisäpaketti krypto, joka muuntaa aakkoset numeroiksi 0-27 ja päinvastoin.)


Vihje 1

Laskut suoritetaan modulo 28 siinä järjestyksessä, kun edellä esimerkissä näytettiin. Laskentaohjelmaa käytettäessä kannattaa hyödyntää listoja. Listoja voidaan kertoa numeroilla (skalaareilla), ja niiden jokaiseen alkioon voidaan lisätä numero kirjoittamalla lista + numero.

Piilota vihje Ratkaisu Vastaus