Vigenère-rejtjel
A Vigenère-rejtjel híres titkosítás, amely több rejtjelábécét használ, ezért a klasszikus gyakoriságelemzéssel szemben sokkal ellenállóbb.
A titkosítás és a visszafejtés elve
A titkosítás menetét a Caesar-rejtjel segítségével magyarázhatjuk el. A Vigenère-rejtjel kulcsa tetszőleges, az angol ábécé betűiből álló szó, azaz a—z betűkből. Kulcs lehet például a „bcf” szó. A titkosítás úgy történik, hogy felírjuk a nyílt szöveget, és közvetlenül alá a kulcsot, amelyet addig ismételgetünk, amíg olyan hosszú nem lesz, mint a nyílt szöveg. A „joestet” („jó estét” ékezetek nélkül, egybeírva) nyílt szöveg esetén ez így nézne ki:
| Nyílt szöveg: | j | o | e | s | t | e | t |
| Kulcs: | b | c | f | b | c | f | b |
Most a nyílt szöveg minden betűjét a Caesar-rejtjellel titkosítanánk, a megfelelő kulccsal, vagyis az ugyanabban az oszlopban álló kulccsal. A Caesar-rejtjel eltolásos rejtjel, a kulcs megadja, hány betűvel kell eltolni a nyílt szöveg betűjét, az „a” betűtől mérve. A „b” betű például egy betűnyi eltolást jelent az ábécében „jobbra”. A „d” betű három betűnyi eltolást jelent jobbra. A „szia” szót a Caesar-rejtjellel és a „b” kulccsal „tajb” szöveggé titkosítanánk.
Míg a Caesar-rejtjelben az egész szöveget egyetlen betűvel titkosítjuk, a Vigenère-rejtjelben jellemzően több betűvel. A „joestet” szöveg titkosítása a „bcf” kulccsal tehát így alakulna:
| Nyílt szöveg: | j | o | e | s | t | e | t |
| Kulcs: | b | c | f | b | c | f | b |
| Titkosított szöveg: | k | q | j | t | v | j | u |
Az első betűt, a „j”-t a „b” kulccsal titkosítottuk, tehát egy betűnyi eltolással, ezért az eredmény a „k” betű. Az „o” betűt a „c” kulccsal titkosítottuk, tehát két betűnyi eltolással, az eredmény a „q” betű. És így tovább.
Visszafejteni pontosan ugyanígy lehet, csak ahelyett, hogy a betűket „jobbra” tolnánk, „balra” toljuk őket.
Online eszköz a Vigenère-rejtjel titkosítására és visszafejtésére
A Vigenère-négyzet
A titkosítás és a visszafejtés teljes menetét a Vigenère-négyzeten is el lehet magyarázni, amely a titkosítás közben használható segédeszköz. A Vigenère-négyzet egy 26 sorból és 26 oszlopból álló táblázat. Minden sorban az ábécé van beleírva, minden sorban egy betűvel eltolva:
Ha megvan egy ilyen Vigenère-négyzet, a titkosítás így menne: vennénk a nyílt szöveg egy betűjét, és megkeresnénk a sort ezzel a betűvel. Aztán vennénk a kulcs betűjét, és megkeresnénk az oszlopot. A titkosított szöveg betűje a megfelelő sor és oszlop metszéspontjában álló betű lenne.
Az előző példában a „joestet” szót titkosítottuk a „bcf” kulccsal. Megkeressük tehát a „j”-vel kezdődő sort és a „b”-vel kezdődő oszlopot. E sor és oszlop metszéspontjában áll a „k” betű, a titkosított szöveg kapott betűje.
Visszafejtéskor fordítva járnánk el. Ha a „k” betűt akarnánk visszafejteni a „b” kulccsal, megkeresnénk a „b” oszlopot, benne azt a sort, amely a „k” betűt tartalmazza, és a sor elején álló betű lenne a nyílt szöveg betűje.
A Vigenère-rejtjel fő ereje
Miért volt a Vigenère-rejtjel a maga idejében ilyen erős? Mert jelentősen megnehezítette a klasszikus gyakoriságelemzést. A Caesar-rejtjelben például a nyílt szöveg két azonos betűje a titkosított szövegben is azonos betűvé alakul. A Vigenère-rejtjelben ez viszont nem igaz, legalábbis nem mindig.
Ha a „rendben rendben rendben” szöveget titkosítanánk a „stan” kulccsal, a „jxnqtxn ewgdowg rrfwbrf” titkosított szöveget kapnánk. Látjuk, hogy bár a nyílt szöveg háromszor tartalmazza ugyanazt a szót, a kapott titkosított szövegben minden szó teljesen másképp néz ki.
A kulcs megválasztása
A Vigenère-rejtjel biztonságát nagyon jelentősen befolyásolja a kulcs megválasztása. Míg a Caesar-rejtjelnél mindegy volt, melyik betűt választjuk, ha különbözött az „a”-tól, a Vigenère-rejtjelnél a különböző kulcsok különböző mértékű biztonságot jelentenek.
- Az egyetlen betűből álló kulcs a Vigenère-rejtjelet visszavezeti a Caesar-rejtjelre.
- A több azonos betűből álló kulcs, például az „mmm”, szintén a Caesar-rejtjelhez vezet.
- A rövid kulccsal titkosított szöveget nagyon könnyű megfejteni.
- A kellően hosszú titkosított szöveget, amelyet nem egészen rövid kulccsal titkosítottak (úgy ötven karakter körül), szintén nagyon könnyű megfejteni. Számítógéppel másodpercek alatt.
- A teljesen véletlen kulccsal titkosított szöveg, ha a kulcs olyan hosszú, mint maga a szöveg, megfejthetetlen.