Egyszerű rejtjelek: a népszerű kódok és rejtjelek leírása

Tartalomjegyzék:

Egyszerű rejtjelek: a népszerű kódok és rejtjelek leírása
Egyszerű rejtjelek: a népszerű kódok és rejtjelek leírása
Anonim

A levelezés titkosításának szükségessége az ókorban felmerült, és megjelentek az egyszerű helyettesítő titkosítások. A titkosított üzenetek számos csata sorsát meghatározták, és befolyásolták a történelem menetét. Idővel az emberek egyre fejlettebb titkosítási módszereket találtak fel.

A kód és a titkosítás egyébként különböző fogalmak. Az első azt jelenti, hogy az üzenetben minden egyes szót kódszóra kell cserélni. A második az információ minden szimbólumának titkosítása egy adott algoritmus segítségével.

Miután a matematika elkezdte kódolni az információkat, és kidolgozták a kriptográfia elméletét, a tudósok ennek az alkalmazott tudománynak számos hasznos tulajdonságát fedezték fel. Például a dekódoló algoritmusok segítettek feloldani az olyan halott nyelveket, mint az ókori egyiptomi vagy a latin.

Steganográfia

A szteganográfia régebbi, mint a kódolás és a titkosítás. Ez a művészet nagyon régóta létezik. Szó szerint „rejtett írást” vagy „rejtjelírást” jelent. Bár a szteganográfia nem egészen felel meg a kód vagy rejtjel definícióinak, célja, hogy elrejtse az információkat az idegenek elől.szem.

Szteganográfia vagy kriptográfia
Szteganográfia vagy kriptográfia

A szteganográfia a legegyszerűbb titkosítás. Tipikus példa erre a viasszal borított, lenyelt jegyzet, vagy üzenet a borotvált fejen, amely megnőtt haj alatt rejtőzik. A szteganográfia legtisztább példája a sok angol (és nem csak) detektívkönyvben leírt módszer, amikor az üzeneteket egy újságon keresztül továbbítják, ahol a betűk észrevétlenül vannak megjelölve.

A szteganográfia fő hátránya, hogy egy figyelmes idegen észreveszi. Ezért a titkos üzenet könnyen olvashatóságának elkerülése érdekében titkosítási és kódolási módszereket alkalmaznak a szteganográfiával együtt.

ROT1 és Caesar-rejtjel

Ennek a rejtjelnek a neve: ROTate 1 betűvel előre, és sok iskolás ismeri. Ez egy egyszerű helyettesítő rejtjel. Lényege abban rejlik, hogy az egyes betűket ábécé sorrendben 1 betűvel előre tolva titkosítják. A -> B, B -> C, …, Z -> A. Például titkosítjuk a "Nastyánk hangosan sír" kifejezést, és megkapjuk az "általános Obtua dspnlp rmbsheu" kifejezést.

A ROT1 titkosítás tetszőleges számú eltolásra általánosítható, majd ROTN-nek hívják, ahol N az a szám, amellyel a betűk titkosítását el kell tolni. Ebben a formában a rejtjel ősidők óta ismert, és "Caesar-rejtjelnek" hívják.

Cirill korong Caesar rejtjeléhez
Cirill korong Caesar rejtjeléhez

A Caesar titkosítás nagyon egyszerű és gyors, de egy egyszerű permutációs rejtjel, ezért könnyen feltörhető. Ilyen hátránya miatt csak gyerekes csínytevésre alkalmas.

Transzpozíciós vagy permutációs titkosítások

Az ilyen típusú egyszerű permutációs rejtjelek komolyabbak, és nem is olyan régen aktívan használták őket. Az amerikai polgárháború és az első világháború idején üzenetküldésre használták. Algoritmusa abból áll, hogy átrendezi a betűket helyenként - írja az üzenetet fordított sorrendben, vagy rendezze át a betűket párokba. Titkosítsuk például a „A morze kód is titkosítás” kifejezést -> „akubza ezrom – sündisznó rfish”.

Egy jó algoritmussal, amely tetszőleges permutációkat határoz meg minden karakterhez vagy azok csoportjához, a titkosítás ellenállóvá vált az egyszerű feltöréssel szemben. De! Csak a kellő időben. Mivel a rejtjel könnyen feltörhető egyszerű nyers erővel vagy szótári egyeztetéssel, ma már bármelyik okostelefon képes kezelni a visszafejtését. Ezért a számítógépek megjelenésével ez a titkosítás is a gyermekek kategóriájába került.

Morze kód

Az ABC az információcsere médiuma, és fő feladata az üzenetek továbbítása egyszerűbbé és érthetőbbé tétele. Bár ez ellentétes azzal, amire a titkosítást szánják. Ennek ellenére úgy működik, mint a legegyszerűbb titkosítások. A Morse-rendszerben minden betűnek, számnak és írásjelnek saját kódja van, amely kötőjelek és pontok csoportjából áll. Ha távíróval küld üzenetet, a szaggatott vonalak és a pontok hosszú és rövid jeleket jelölnek.

Cirill és latin a Morse-kódban
Cirill és latin a Morse-kódban

Telegráf és Morse-kód… Morse volt az, aki először szabadalmaztatta "találmányát" 1840-ben, bár hasonló eszközöket már előtte feltaláltak Oroszországban és Angliában. De most kit érdekel… Távirat és ábécéA Morse kód nagyon nagy hatással volt a világra, lehetővé téve az üzenetek szinte azonnali továbbítását kontinensnyi távolságra.

Monoalfabetikus helyettesítés

A fent leírt ROTN és Morse kód példák az egyalfabetikus helyettesítő betűtípusokra. A "mono" előtag azt jelenti, hogy a titkosítás során az eredeti üzenet minden betűjét az egyetlen titkosítási ábécé egy másik betűje vagy kódja helyettesíti.

Az egyszerű helyettesítő titkosítások megfejtése nem nehéz, és ez a fő hátrányuk. Ezeket egyszerű felsorolással vagy gyakorisági elemzéssel oldják meg. Például ismert, hogy az orosz nyelv leggyakrabban használt betűi az „o”, „a”, „i”. Feltételezhető tehát, hogy a rejtjelezett szövegben a leggyakrabban előforduló betűk vagy "o", vagy "a", vagy "és" jelentésűek. Ezen megfontolások alapján az üzenet számítógépes keresés nélkül is visszafejthető.

Ismert, hogy I. Mária, a skótok királynője 1561-től 1567-ig egy nagyon összetett monoalfabetikus helyettesítési titkosítást használt, többféle kombinációval. Ennek ellenére ellenségei meg tudták fejteni az üzeneteket, és az információ elegendő volt ahhoz, hogy a királynőt halálra ítéljék.

Gronsfeld-rejtjel vagy többalfabetikus helyettesítés

Az egyszerű rejtjeleket a kriptográfia használhatatlannak nyilvánítja. Ezért közülük sokat javítottak. A Gronsfeld-rejtjel a Caesar-rejtjel egy módosítása. Ez a módszer sokkal ellenállóbb a feltörésekkel szemben, és abban a tényben rejlik, hogy a kódolt információ minden karakterét a különböző ábécék valamelyikével titkosítják, amelyek ciklikusan ismétlődnek. Elmondható, hogy ez egy többdimenziós alkalmazása legegyszerűbb helyettesítő rejtjel. Valójában a Gronsfeld-rejtjel nagyon hasonlít az alább tárgy alt Vigenère-rejtjelre.

ADFGX titkosítási algoritmus

Ez a németek által használt leghíresebb első világháborús titkosítás. A rejtjel azért kapta a nevét, mert a titkosítási algoritmus az összes rejtjelezést ezeknek a betűknek a váltakozására vezette. Maguk a betűk kiválasztását a távíróvonalakon való továbbításuk kényelme határozta meg. A rejtjelben minden betűt kettő jelképez. Nézzük meg az ADFGX négyzet egy érdekesebb változatát, amely számokat tartalmaz és ADFGVX.

A D F G V X
A J Q A 5 H D
D 2 E R V 9 Z
F 8 Y Én N K V
G U P B F 6 O
V 4 G X S 3 T
X W L Q 7 C 0

Az ADFGX négyzetesítési algoritmusa a következő:

  1. Válasszon véletlenszerű n betűt az oszlopokhoz és sorokhoz.
  2. N x N mátrix felépítése.
  3. Írja be az ábécét, számokat, karaktereket véletlenszerűen elszórva a cellák között a mátrixba.

Készítsünk egy hasonló négyzetet az orosz nyelvhez. Például hozzunk létre egy ABCD négyzetet:

A B B G D
A E/E N b/b A I/Y
B W V/F G/R З D
B Sh/Sh B L X Én
G R M O Yu P
D F T T S U

Ez a mátrix furcsán néz ki, mert egy cellasor két betűt tartalmaz. Ez elfogadható, az üzenet értelme nem vész el. Könnyen helyreállítható. Titkosítsa a "Tömör titkosítás" kifejezést a következő táblázat segítségével:

1 2 3 4 5 6 7 8 9 10 11 12 13 14
Kifejezés K O M P A K T N S Y Ш & F R
Rejtjel bw gv gb hol ag bw db ab dg pokolba wa pokolba bb ha

Így a végső titkosított üzenet így néz ki: "bvgvgbgdagbvdbabdgvdvaadbbga". Természetesen a németek még több titkosításon keresztül hajtottak végre hasonló sort. És végül nagyon stabilnak bizonyulthogy feltörje a titkosított üzenetet.

Vigenère titkosítás

Ez a titkosítás egy nagyságrenddel jobban ellenáll a repedésnek, mint az egyalfabetikusak, bár ez egy egyszerű szöveghelyettesítő rejtjel. A robusztus algoritmus miatt azonban sokáig lehetetlennek tartották a feltörést. Az első említés a 16. századból származik. Vigenère-t (francia diplomata) tévedésből a feltalálóként tartják számon. Hogy jobban megértsük, mi forog kockán, nézzük meg az orosz nyelvű Vigenère-táblázatot (Vigenère-négyzet, tabula recta).

Vigenère asztal orosz ábécével
Vigenère asztal orosz ábécével

Kezdjük kódolni a „Kasperovich nevet” kifejezést. De ahhoz, hogy a titkosítás sikeres legyen, kulcsszóra van szükség – legyen az „jelszó”. Most kezdjük el a titkosítást. Ehhez annyiszor írjuk le a kulcsot, hogy a benne lévő betűk száma megfeleljen a titkosított kifejezésben lévő betűk számának, a kulcs ismétlésével vagy kivágásával:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Kifejezés: K A С P E R O B & W С M E E T С Én
Kulcs P A R O L b P A R O L b P A R O L

Most a Vigenère táblázatot használva, mint a koordinátasíkban, keresünk egy cellát, amely a betűpárok metszéspontja, és azt kapjuk, hogy: K + P=b, A + A=B, C + P=C stb.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Rejtjel: b B B Yu С N Yu G Sch F E Y X F G A L

Azt kapjuk, hogy "Kasperovich nevet"="bvusnyugschzh eykhzhgal".

A Vigenère titkosítás feltörése olyan nehéz, mert a frekvenciaelemzésnek ismernie kell a kulcsszó hosszát, hogy működjön. Tehát a hack az, hogy véletlenszerűen bedobjuk a kulcsszó hosszát, és megpróbáljuk feltörni a titkos üzenetet.

Azt is meg kell említeni, hogy egy teljesen véletlenszerű kulcs mellett egy teljesen más Vigenère tábla is használható. Ebben az esetben a Vigenère tér egy soronként írt orosz ábécéből áll, egy eltolással. Ami a ROT1 titkosításra utal. És akárcsak a Caesar-rejtjelben, az eltolás bármi lehet. Ezenkívül a betűk sorrendjének nem kell ábécé sorrendben lennie. Ebben az esetben maga a táblázat lehet a kulcs, amelynek ismerete nélkül lehetetlen lesz elolvasni az üzenetet, még a kulcs ismeretében sem.

Kódok

A valódi kódok mindegyikhez egyezést tartalmaznakkülön kód szavai. A velük való munkához úgynevezett kódkönyvekre van szükség. Valójában ez ugyanaz a szótár, amely csak a szavak kódokba történő fordítását tartalmazza. A kódok tipikus és leegyszerűsített példája az ASCII tábla – egyszerű karakterek nemzetközi titkosítása.

ASCII kódtábla
ASCII kódtábla

A kódok fő előnye, hogy nagyon nehéz megfejteni őket. A frekvenciaelemzés szinte nem működik, ha feltörik őket. A kódok gyengesége valójában maguk a könyvek. Először is, ezek elkészítése bonyolult és költséges folyamat. Másodszor, az ellenségek számára a kívánt objektummá válnak, és a könyv akár egy részének lehallgatása arra kényszeríti Önt, hogy az összes kódot teljesen megváltoztassa.

A 20. században sok állam használt kódokat titkos adatok átvitelére, és egy bizonyos idő elteltével megváltoztatta a kódkönyvet. És aktívan vadásztak a szomszédok és ellenfelek könyveire is.

Enigma

Mindenki tudja, hogy az Enigma volt a nácik fő titkosítógépe a második világháború alatt. Az Enigma szerkezete elektromos és mechanikus áramkörök kombinációját tartalmazza. A titkosítás módja az Enigma kezdeti konfigurációjától függ. Ugyanakkor az Enigma működés közben automatikusan megváltoztatja konfigurációját, és egy üzenetet többféleképpen titkosít annak teljes hosszában.

A legegyszerűbb titkosításokkal ellentétben az "Enigma" billió lehetséges kombinációt adott, ami szinte lehetetlenné tette a titkosított információk feltörését. A nácik viszont minden napra elkészítettek egy bizonyos kombinációt, amit őkegy adott napon üzenetek küldésére használják. Ezért még ha az Enigma az ellenség kezébe is került, semmit sem tett az üzenetek visszafejtésére anélkül, hogy minden nap megadta volna a megfelelő konfigurációt.

Náci Enigma titkosítógép
Náci Enigma titkosítógép

Hack "Enigma"-t aktívan megpróbálták Hitler teljes katonai hadjárata alatt. Angliában 1936-ban erre építették az egyik első számítástechnikai eszközt (Turing-gépet), amely a jövőben a számítógépek prototípusa lett. Feladata több tucat Enigma működésének szimulálása volt egyidejűleg, és az elfogott náci üzenetek futtatása rajtuk keresztül. De még a Turing-gép is csak alkalmanként tudta feltörni az üzenetet.

Nyilvános kulcsú titkosítás

A titkosítási algoritmusok közül a legnépszerűbb, amelyet mindenhol használnak a technológiában és a számítógépes rendszerekben. Lényege általában két kulcs jelenlétében rejlik, amelyek közül az egyik nyilvános, a másik pedig titkos (privát). A nyilvános kulcs az üzenet titkosítására, a privát kulcs pedig a visszafejtésére szolgál.

Nyilvános kulcsú titkosítási algoritmus
Nyilvános kulcsú titkosítási algoritmus

A nyilvános kulcs legtöbbször egy nagyon nagy szám, amelynek csak két osztója van, nem számítva egyet és magát a számot. Ez a két osztó együtt egy titkos kulcsot alkot.

Vegyünk egy egyszerű példát. Legyen a nyilvános kulcs 905. Osztói az 1, 5, 181 és 905 számok. Ekkor a titkos kulcs például az 5181 szám lesz. Azt mondod, túl könnyű? Mi van, ha a szerepbena nyilvános szám 60 számjegyű lesz? Matematikailag nehéz kiszámítani nagy szám osztóit.

Egy szemléletesebb példa érdekében képzelje el, hogy pénzt vesz fel egy ATM-ből. A kártya leolvasása során a személyes adatok egy bizonyos nyilvános kulccsal, a banki oldalon pedig egy titkos kulccsal dekódolásra kerülnek. És ez a nyilvános kulcs minden művelethez megváltoztatható. És nincs mód arra, hogy gyorsan megtalálja a kulcsosztókat, amikor elfogja.

Betűtartósság

A titkosítási algoritmusok kriptográfiai erőssége abban rejlik, hogy képes ellenállni a hackelésnek. Ez a paraméter minden titkosításnál a legfontosabb. Nyilvánvaló, hogy az egyszerű helyettesítő titkosítás, amely bármely elektronikus eszközzel visszafejthető, az egyik leginstabilabb.

Ma nincsenek egységes szabványok, amelyek alapján fel lehetne mérni a titkosítás erősségét. Ez fáradságos és hosszú folyamat. Vannak azonban olyan bizottságok, amelyek szabványokat dolgoztak ki ezen a területen. Például a NIST USA által kifejlesztett Advanced Encryption Standard vagy AES titkosítási algoritmus minimális követelményei.

Referenciaként: a Vernam-rejtjel a legellenállóbb rejtjel a töréssel szemben. Ugyanakkor előnye, hogy algoritmusa szerint ez a legegyszerűbb titkosítás.

Ajánlott: