Tabula recta

A Tabula recta a titkosírásban (a latin tabula rēcta szóból) egy négyzet alakú ábécék táblázat, amelynek minden sora az előző sor balra tolásával jön létre. A kifejezést Johann Trithemius német író és szerzetes [1] találta ki 1508-ban, és Trithemius titkosírásában használták.

Trithemius titkosítás

A Trithemius-rejtjelet Johannes Trithemius adta ki „Poligráfia” című könyvében, amely az első kriptológiai nyomtatott munka.

Trithemius a tabula recta segítségével határozta meg a többalfabetikus titkosítást, amely egyenértékű volt Leon Battista Alberti lemezrejtjelével, azzal a különbséggel, hogy a célábécében a betűk sorrendje nem keveredett. A tabula rectára gyakran hivatkoznak, amikor a számítógép előtti rejtjelekről beszélünk, ideértve a Vigenère-rejtjelet és a kevésbé ismert Blaise de Vigenère automatikus kulcsú rejtjeleket. A Caesar -rejtjelen alapuló összes többalfabetikus rejtjel leírható tabula recta segítségével.

A tabula recta egy négyzetet használ az ábécé 26 betűjével, majd 26 további betűsorral, mindegyik az előzőtől balra tolva. Ez lényegében 26 különböző Caesar-rejtjelet hoz létre.

Az eredményül kapott rejtjelezett szöveg véletlenszerű karakterláncnak vagy adatblokknak tűnik. A változó eltolódás miatt a betűk természetes frekvenciái el vannak rejtve. Ha azonban a támadó tudja, hogy ezt a módszert használták, könnyen feltörheti. A titkosítás sebezhető a támadásokkal szemben, mert nincs kulcsa, ami sérti Kerckhoffs kriptológiai elvét.

Fejlesztések

1553-ban Giovan Battista Bellaso kifejlesztette a Trithemius-módszer fontos kiterjesztését, amelyet ma Vigenère -rejtjelnek neveznek . Bellaso hozzáadott egy kulcsot, amellyel a titkosító ábécé kapcsolót diktálják minden betűnél. Ezt a módszert tévesen Blaise de Vigenère-nek tulajdonították, aki 1586-ban adott ki egy hasonló automatikus kulcsot.

A klasszikus Trithemius-rejtjel (egyes eltolást használva) egyenértékű a Vigenère-rejtjellel, amelynek kulcsa "ABCDEFGHIJKLMNOPQRSTUVWXYZ". Ez egyenértékű egy Caesar-rejtjellel is, amelyben az eltolás 1-gyel növekszik, ha minden betű 0-tól kezdődik.

Használat

A tabula recta törzsében minden ábécé egy betűvel balra van tolva a felette lévőtől. Ez 26 sor eltolt ábécét alkot, amelyek egy Z-vel kezdődő ábécével végződnek. Ettől a 26 ábécétől különül el egy címsor a tetején és egy címsoroszlop a bal oldalon, amelyek mindegyike tartalmazza az ábécé betűit AZ sorrendben.

A szöveg titkosításához és visszafejtéséhez a tabula recta többféle egyenértékű módon használható. Leggyakrabban a fejléc bal oszlopát használják egyszerű szöveges betűkhöz, mind a titkosítás, mind a visszafejtés során. Ezt a használatot az alábbiakban ismertetjük. A Trithemius-rejtjel megfejtéséhez először a tabula recta-n kell megtalálni a megfejtendő betűket: az első betűt az első belső oszlopban, a második betűt a második oszlopban stb.; a fejléc oszlopában közvetlenül balra lévő betű a megfelelő megfejtett egyszerű szöveges betű. Feltételezve egy szabványos 1-es eltolást kulcs használata nélkül, a HFNOS titkosított szöveg HELLO-ként lesz dekódolva (H->H, F->E, N->L, O->L, S->O). Így például a szöveg második betűjének megfejtéséhez először keresse meg az F betűt a második belső oszlopban, majd lépjen egyenesen balra, egészen a címsor bal szélső oszlopáig, hogy megtalálja a megfelelő egyszerű szöveges betűt: E.

Az adatok titkosítása ellentétes módon történik, először meg kell keresni az üzenet egyszerű szövegének minden betűjét a tabula recta fejléc bal szélső oszlopában, és párosítani a belső oszlopokban lévő megfelelő betűvel. Például egy üzenet első betűje a fejléc bal oldali oszlopában található, majd az „A” oszlopban közvetlenül szemben lévő betűvel párosul. A következő betűt a rendszer a "B" oszlopban lévő megfelelő betűvel egyezteti, és így tovább, amíg a teljes üzenetet nem titkosítják. Ha a trithemiánus titkosítást ABCDEFGHIJKLMNOPQRSTUVWXYZ kulcsként ábrázoljuk, akkor a titkosítási folyamat úgy ábrázolható, hogy minden betű esetében megtaláljuk a titkosítandó betűt tartalmazó sor metszéspontját a kulcs aktuális betűjének megfelelő oszloppal. Az a betű, ahol ezek a sorok és oszlopok metszik egymást, a titkosított szöveg betűje.

Programozottan a rejtjel kiszámítható úgy, hogy A = 0, B = 1... {\displaystyle A=0,B=1...} {\displaystyle A=0,B=1...}, majd a a titkosítási folyamat a következő lesz: ciphertext = ( egyszerű szöveg + kulcs ) ( mod 26 ) {\displaystyle ciphertext=(plaintext+key)\!\!\!\!\!{\pmod {26)))) {\displaystyle ciphertext=(plaintext+key) )\!\!\!\!\!\!{\pmod {26}}}. A visszafejtés hasonló módon történik, titkosított szöveget és egyszerű szöveget cserélve. A kulcs definiálható a kapcsolódó rejtjelszövegből származó betű értékeként egy futó kulcsrejtjelben, a Caesar-rejtjel állandójaként, vagy egy nulla számként bizonyos ponttal Trithemius használatában.

Jegyzetek

  1. Trithemius, Johann  // Wikipédia. — 2021-09-07.