Helyettesítő rejtjelezés a kriptográfia egyik legegyszerűbb és legősibb formája. Lényege, hogy az üzenet minden egyes betűjét egy előre meghatározott szabály szerint egy másik betűvel helyettesítik, így az olvasható szöveg titkosított, látszólag értelmetlen karaktersorozattá válik.

Hogyan működik?

Általában egy helyettesítési táblázat vagy szabály határozza meg, hogy az ábécé mely betűje melyikre cserélődik. Ha a szabály megvan, a titkosítás és visszafejtés egyértelmű (feltéve, hogy ismerjük a szabályt). A legegyszerűbb forma az, amikor minden betű mindig ugyanarra a betűre kerül (monoalfabetikus helyettesítés).

Típusok – rövid áttekintés

  • Monoalfabetikus helyettesítés: egy állandó betű–betű leképezés (például egyszerű helyettesítő táblázat).)
  • Caesar-kód: egy speciális monoalfabetikus eltolás — minden betűt az ábécében ugyanannyival eltolnak. A Caesar-kód klasszikus példája ennek.
  • Polialfabetikus helyettesítés: több különböző ábécét használnak váltakozva (például Vigenère), így csökkentik a frekvenciaelemzés hatékonyságát.
  • Homofonikus helyettesítés: egyes gyakori betűkhöz több lehetséges titkos karakter tartozik, hogy elrejtsék a gyakorisági mintázatokat.

Példa — egyszerű Caesar-eltolás

Például egy 3 helyes eltolásnál (klasszikus Caesar) az A → D, B → E, C → F ... szabály érvényes. Így a "HELLO" titkosítva "KHOOR" lesz (angol ABC-vel). A konkrét helyettesítési szabály határozza meg a titkosított eredményt; különböző szabályokhoz más-más kimenet tartozik. (Gyakori rejtvényekben és példákban találkozhatunk hasonló egyszerű ábrázolásokkal.)

Miért nem elég biztonságos?

A hagyományos helyettesítő kódok sebezhetőek, mert megtartják az eredeti szöveg statisztikai jellemzőit: a betűk előfordulási gyakoriságát és a szó- vagy betűmintázatokat. Ezért viszonylag könnyen feltörhetők a frekvenciaelemzés módszerével.

Frekvenciaelemzés — hogyan működik a feltörés?

A frekvenciaelemzés alapötlete a következő:

  • Számoljuk meg a titkosított szövegben előforduló betűket, és készítsünk gyakorisági listát.
  • Hasonlítsuk össze ezt az eloszlást a célnyelv ismert gyakoriságaival (például angolban az E, T, A, O, I stb. a leggyakoribbak).
  • Kezdjük a legegyszerűbb feltételezésekkel: egyjegyű "szavak" gyakran az A vagy I, a kettős betűk (pl. LL, EE) és a gyakori digramok/trigramok (pl. TH, HE, ING) támpontot adnak.
  • Iteratív módon helyettesítsunk feltevéseket, és nézzük, hogy összeáll-e értelmes szöveg — gyakran a részmegfejtések további feltételezésekre adnak lehetőséget.

Ezt a módszert kiegészítheti szó- és mintázat-összehasonlítás, illetve ma már automatikus algoritmusok (pl. heurisztikák, hill-climbing, genetikus algoritmusok, szimulált temperálás) gyorsítják a keresést.

Gyakorlati tippek rejtvényekhez

  • Kezdjünk a rövid szavaknál és az ismétlődéseknél (egy- és kétszavas szóalakok, kettős betűk).
  • Keressünk gyakori végződéseket (pl. magyarban "-ban/-ben", "-nak/-nek", angolban "-ing", "-ed").
  • Használjuk a kontextust: cím, téma vagy a beküldő stílusa segíthet.
  • Próbáljunk meg egy részletet kinyerni, majd terjesszük ki a megfejtést az egész szövegre.

Az ilyen rejtvények gyakran szerepelnek újságokban és rejtvénymellékletekben; a rejtvény kategória sokszor tartalmaz kriptogram feladatokat.

Mit lehet tenni helyettesítő kódok ellen?

  • Polialfabetikus eljárások (például Vigenère) vagy teljesen véletlen kulcsú módszerek (egyszer használatos kulcs, one-time pad) jelentősen növelik a biztonságot.
  • Ha a cél a valódi titkosság, modern kriptográfiai algoritmusokra (blokkkódok, áramkódok, nyilvános kulcsú rendszerek) kell támaszkodni, nem az egyszerű helyettesítésekre.

Összefoglalva: a helyettesítő rejtjelezés könnyen megérthető és tanulságos a kriptográfia alapjainak bemutatására, de a gyakorlatban egyszerű frekvenciaelemzéssel feltörhető, ezért nem alkalmas fontos vagy hosszú távú titkosításra.