CODEERMACHINES EN CRYPTOGRAFIE
De Klassieke Cryptografie
Home


De klassieke cijfers

In de klassieke cryptografie gebruikt men verschillende vercijferingsmethodes om met behulp van een geheime sleutelwoord of zin een tekst om te zetten in een onleesbare code. De tekst kan enkel ontcijferd worden door de persoon die dezelfde methode gebruikt en in het bezit is van dezelfde geheime sleutel. Er zijn verscheiden technieken ontwikkeld waarvan enkel zeer betrouwbaar bleken. De klassieke vercijferingssystemen noemen we ook wel handcijfers of pen-en-papiercodes.

Hoewel de ontwikkeling van cryptografische machines en computers veel van het handwerk overbodig maakte, bleef er altijd een rol weggelegd voor de handcijfers. Veldcijfers, zo noemen militairen de handcijfers, zoals de dubbele transpositie werden nog zeer veel gebruikt tijdens de Tweede Wereldoorlog. Het grote voordeel van veldcijfers is de eenvoudige toepassing zonder speciale toestellen. Daarom blijven deze veldcijfers tot op vandaag nog steeds een interessant alternatief om een boodschap op eenvoudige wijze toch veilig over te brengen. In dit artikel beschrijven we de bekendste klassieke handcijfers.

In de loop der eeuwen zijn vele verschillende methodes ontwikkeld voor de vercijfering van tekt. Hieronder worden enkele van de bekendste vercijferingsmethodes voorgesteld.

Vercijferingsmethodes

Een methode van vercijfering noemen we een cijfer. De leesbare tekst noemen we klare tekst, en de vercijferde of gecodeerde tekst noemen we cijfertekst. De cijfertekst wordt meestal ingedeeld in groepen van vijf letters. Er zijn drie grote indelingen in de techniek van het vercijferen.

  • Substitutie: vervangen van letters door andere letters
  • Transpositie: verwisselen van de positie van letters binnen een tekst
  • Fractionering: breken van letters in verschillende delen waarna deze verplaatst worden

Vooral de combinatie van transpositie en fractionering blijkt zeer effectief. Hierdoor worden de verschillende delen van één letter verspreid over de ganse tekst, waardoor de vercijfering voldoet aan Claude Shannon's diffusie. Het ideale cijfer is dus een combinatie van de drie vercijferingsprincipes, dat bovendien eenvoudig is in gebruik. Enkele voorbeelden die transpositie en fractionering combineren zijn Bifid, Trifid, en ADFGVX. De principes van substitutie, transpositie en fractionering worden bij de moderne crypto-algoritmes voor computer nog steeds toegepast.

Rotatie

Het rotatiecijfer, ook wel Caesar Shift genoemd, dateert uit de Romeinse tijd waar het gebruikt werd voor geheime berichten tussen de veldheren. Het is een substitutiecijfer dat een vast normaal alfabet gebruikt, dat met een vooraf bepaald aantal letters is verschoven. Dit cijfer wordt ook wel rotatiecijfer genoemd. Een verschuiving van 3 noemt men dan een ROT(3)-cijfer.

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z X Y Z A B C D E F G H I J K L M N O P Q R S T U V W

De letters in de klare tekst, gevonden in het bovenste alfabet, worden eenvoudigweg vervangen door de letter eronder.

Klare tekst: D I T I S Z E E R G E H E I M Cijfertekst: A F Q F P W B B O D B E B F J De cijfertekst: AFQFP WBBOD BEBFJ

Hoewel dit in die tijd voor de doorsnee ongeschoolde en ongeletterde mensen ongetwijfeld een onbreekbaar cijfer was, is dit gewoon een kwestie van uitproberen welk van de 26 mogelijke verschuivingen de juiste is. Tegenwoordig wordt ROT(13) nog veel gebruikt om oplossingen van raadsels of puzzels te verbergen.

Monoalfabetische Substitutie

Het eenvoudigste substitutiecijfer is de monoalfabetische substitutie. Hierbij wordt elke letter vervangen door een andere letter.

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z W Q A E D C X S Z R F V B G T Y H N J U I K L O P M

Als we de klare tekst omzetten vervangen we gewoon de D door E, de I door Z enz.

Klare tekst: D I T I S Z E E R G E H E I M Cijfertekst: E Z U Z J M D D N X D S D Z B De cijfertekst: EZUZJ MDDNX DSDZB

Eeuwen lang werd dit cijfer als onbreekbaar beschouwd vanwege de ontelbare mogelijke schikkingen van het alfabet, totdat Arabische wiskundigen in de 9e eeuw het systeem van letterfrequentie-analyse ontwikkelden. Aangezien bij substitutie elke gecodeerde letters steeds voor dezelfde klare letter staat, kan men dit cijfer gemakkelijk breken met behulp van letterfrequentie-analyse. Zie ook Edgar Allan Poe's verhaal The Gold Bug (De Goudkever)

Elke taal heeft een typische frequentietabel van letters. Zo komen de E, N en A het meeste voor in onze taal. Als men de letterfrequenties van een cijfertekst vergelijkt met de normale waarden en ziet dat de X, P en T het meeste voorkomen, kan men besluiten dat X staat voor E, P voor N en T voor A. Hoe meer letters men zo kan vinden, hoe makkelijker de ontbrekende letters in de tekst kunnen bijeen gepuzzeld worden. Zo zien we in bovenstaande cijfertekst dat de codeletter D veruit het meeste voorkomt, en deze inderdaad de meest voorkomende letter E voorstelt. Hoe meer cijfertekst er ter beschikking is, hoe nauwkeuriger frequentie-analyse kan toegepast worden.

| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --------------------------------------------------- A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Typische letterfrequentie-tabel voor Nederlands

Hoewel de monoalfabetische substitutie op zich een zwakke vercijfering is, wordt deze veel gebruikt in ander klassieke vercijferingen in combinatie met andere technieken. Bij vercijferingen zoals Bifid, Trifid en ADFGVX wordt het alfabet eerst door elkaar gehaald met monoalfabetische substitutie alvorens de letters te fractioneren.

Vigenère

Het Vigenèrecijfer werd uitgevonden door Giovanni Batista Belaso in 1553, maar het was door Blaise de Vigenère dat het algemeen bekend raakte, waardoor het zijn naam kreeg. Het werd echter lange tijd zelden gebruikt vanwege zijn complexiteit.

Het is een polyalfabetische substitutie, het vervangen van letters aan de hand van verschillende alfabetische reeksen. Daarbij gebruiken we het zogenaamd Vignèretableau, een tabel waarop op iedere regel een alfabet staat waarbij elk alfabet steeds één letter verschoven is.

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ------------------------------------------------------ A| A B C D E F G H I J K L M N O P Q R S T U V W X Y Z B| B C D E F G H I J K L M N O P Q R S T U V W X Y Z A C| C D E F G H I J K L M N O P Q R S T U V W X Y Z A B D| D E F G H I J K L M N O P Q R S T U V W X Y Z A B C E| E F G H I J K L M N O P Q R S T U V W X Y Z A B C D F| F G H I J K L M N O P Q R S T U V W X Y Z A B C D E G| G H I J K L M N O P Q R S T U V W X Y Z A B C D E F H| H I J K L M N O P Q R S T U V W X Y Z A B C D E F G I| I J K L M N O P Q R S T U V W X Y Z A B C D E F G H J| J K L M N O P Q R S T U V W X Y Z A B C D E F G H I K| K L M N O P Q R S T U V W X Y Z A B C D E F G H I J L| L M N O P Q R S T U V W X Y Z A B C D E F G H I J K M| M N O P Q R S T U V W X Y Z A B C D E F G H I J K L N| N O P Q R S T U V W X Y Z A B C D E F G H I J K L M O| O P Q R S T U V W X Y Z A B C D E F G H I J K L M N P| P Q R S T U V W X Y Z A B C D E F G H I J K L M N O Q| Q R S T U V W X Y Z A B C D E F G H I J K L M N O P R| R S T U V W X Y Z A B C D E F G H I J K L M N O P Q S| S T U V W X Y Z A B C D E F G H I J K L M N O P Q R T| T U V W X Y Z A B C D E F G H I J K L M N O P Q R S U| U V W X Y Z A B C D E F G H I J K L M N O P Q R S T V| V W X Y Z A B C D E F G H I J K L M N O P Q R S T U W| W X Y Z A B C D E F G H I J K L M N O P Q R S T U V X| X Y Z A B C D E F G H I J K L M N O P Q R S T U V W Y| Y Z A B C D E F G H I J K L M N O P Q R S T U V W X Z| Z A B C D E F G H I J K L M N O P Q R S T U V W X Y

Men kiest eerst een geheim sleutelwoord, bijvoorbeeld ZODIAK. Dit schrijft men onder de klare tekst. Vervolgens zoekt men de klare letter op in het verticale alfabet en de letter van het sleutelwoord in het horizontale alfabet. De kruising van beiden is de resulterende codeletter. Zo kunnen we zien dat de kruising van D en Z in de tabel de letter C is.

Klare tekst : D I T I S Z E E R G E H E I M Sleutelwoord: Z O D I A K Z O D I A K Z O D ----------------------------- Cijfertekst : C W W Q S J D S U O E R D W P De cijfertekst: CWWQS JDSUO ERDWP

Om te ontcijferen schrijft men het sleutelwoord boven de cijfertekst. Vervolgens zoekt men elke sleutelletter op in het horizontale alfabet en gaat naar beneden tot men de betrokken codeletter tegenkomt. De letter, in het verticale alfabet, die zich op dezelfde rij bevindt is de klare letter.

Merk op dat de letter E kan vercijferd worden als D, maar ook als Q en als E. Als het sleutelwoord 6 letters lang is kan een klare letter tot 6 verschillende coderingen hebben. Dit maakt vigenère moeilijker te breken dan enkelvoudige substitutie, maar het is toch mogelijk. Indien er voldoende cijfertekst is kan men de grootte van het sleutelwoord eruit afleiden door de grootst gemene deler te nemen van alle afstanden tussen identieke stukjes cijfertekst. Indien het sleutelwoord 6 letters lang blijkt hoeft men enkel letterfrequentie-analyse toe te passen op de 6 afzonderlijke stukken van de tekst. Eén analysetekst zou dan de eerste, zevende, dertiende... letter bevatten. De tweede tekst de tweede, achtste, veertiende letter enz.

Autokey

Het Autokey-cijfer, ook wel Autoclave- of Autosleutelcijfer genoemd, werd uitgevonden door Blaise de Vigenère en is een verbetering van het vigenèrecijfer, uitgevonden door Giovanni Batista Belaso in 1553, maar genoemd naar Blaise de Vigenère.

Het is een polyalfabetische substitutie, het vervangen van letters aan de hand van verschillende alfabetische reeksen. Daarbij gebruiken we een tabel waarvan elk alfabet één letter verschoven is. Dit is dezelfde tabel als gebruikt bij het vigenère cijfer.

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ------------------------------------------------------ A| A B C D E F G H I J K L M N O P Q R S T U V W X Y Z B| B C D E F G H I J K L M N O P Q R S T U V W X Y Z A C| C D E F G H I J K L M N O P Q R S T U V W X Y Z A B D| D E F G H I J K L M N O P Q R S T U V W X Y Z A B C E| E F G H I J K L M N O P Q R S T U V W X Y Z A B C D F| F G H I J K L M N O P Q R S T U V W X Y Z A B C D E G| G H I J K L M N O P Q R S T U V W X Y Z A B C D E F H| H I J K L M N O P Q R S T U V W X Y Z A B C D E F G I| I J K L M N O P Q R S T U V W X Y Z A B C D E F G H J| J K L M N O P Q R S T U V W X Y Z A B C D E F G H I K| K L M N O P Q R S T U V W X Y Z A B C D E F G H I J L| L M N O P Q R S T U V W X Y Z A B C D E F G H I J K M| M N O P Q R S T U V W X Y Z A B C D E F G H I J K L N| N O P Q R S T U V W X Y Z A B C D E F G H I J K L M O| O P Q R S T U V W X Y Z A B C D E F G H I J K L M N P| P Q R S T U V W X Y Z A B C D E F G H I J K L M N O Q| Q R S T U V W X Y Z A B C D E F G H I J K L M N O P R| R S T U V W X Y Z A B C D E F G H I J K L M N O P Q S| S T U V W X Y Z A B C D E F G H I J K L M N O P Q R T| T U V W X Y Z A B C D E F G H I J K L M N O P Q R S U| U V W X Y Z A B C D E F G H I J K L M N O P Q R S T V| V W X Y Z A B C D E F G H I J K L M N O P Q R S T U W| W X Y Z A B C D E F G H I J K L M N O P Q R S T U V X| X Y Z A B C D E F G H I J K L M N O P Q R S T U V W Y| Y Z A B C D E F G H I J K L M N O P Q R S T U V W X Z| Z A B C D E F G H I J K L M N O P Q R S T U V W X Y

Het sleutelwoord, of in dit geval beter de sleutelzin, is gevormd door een kort sleutelwoord, gevolgd door de klare tekst. Hierdoor vercijfert men, mits een kleine verschuiving, de klare tekst met zichzelf. In ons voorbeeld is het sleutelwoord ZODIAK.

Vervolgens zoekt men de elke klare letter op in het verticale alfabet en de letter van het sleutelwoord in het horizontale alfabet. De kruising van beiden is de resulterende codeletter. Zo kunnen we zien dat de kruising van D en Z in de tabel de letter C is.

Hierbij word de tekst zelf gebruikt om de tekst te vercijferen. De substitutietabel is dezelfde als bij het gewone Vigenère cijfer.

Klare tekst : D I T I S Z E E R G E H E I M . . . . Sleutelwoord: Z O D I A K D I T I S Z E E R G E H E I M.... --------------------------------------------- Cijfertekst : C W W Q S J H M K O W G I M D ..... De cijfertekst: CWWQS JHMKO WGIMD ..... .....

Om de tekst te kunnen ontcijferen dient men te beginnen met het korte sleutelwoord, om dan de ontcijferde tekst beetje bij beetje verder aan te vullen achter het sleutelwoord. Indien er één fout is bij het ontcijferen zal de rest van de vercijfering ook fout zijn.

De sterkte van dit cijfer ligt erin dat niet steeds opnieuw hetzelfde sleutelwoord gebruikt is, maar de steeds variërende klare tekst. Voor de cryptoanalyse van dit cijfer kunnen bepalen van sleutellengte en letterfrequenties hier niet toegepast worden zoals bij de gewone vigenère vercijfering.

Homofone substitutie

Toen de techniek van letterfrequentie-analyse op monoalfabetische substitutie algemeen bekend raakte zocht men naar een alternatief. Hoewel het vigenère cijfer lange tijd onbreekbaar bleef werd het zelden gebruikt vanwege zijn complexiteit. Een tussenoplossing die eenvoudig was, maar toch bestand tegen letterfrequentie-analyse was het homofone substitutie cijfer.

Bij dit cijfer worden de letters vervangen door cijfers. Er worden 100 getallen verdeeld over de 26 letters, waarbij de meest voorkomende letters de meeste getallen krijgen toegewezen. Als de letter E ongeveer 15 procent van de tekst vormt, geven we deze letter 15 getallen. De letter A die 7 procent voorstelt geven we dus 7 getallen. Zeldzame letters zoals de X krijgen slechts één getal. Indien we frequentie-analyse toepassen op de tekst zullen alle getallen ongeveer 1 procent vormen van de totale tekst. Merk op dat de cijfertabel dezelfde vorm heeft als de letter-frequentietabel.

Hoewel deze techniek een hele verbetering is tegenover monoalfabetische substitutie is het breken ervan niet onmogelijk. Dit kan door anagramming toe te passen op de cijfers. Men zoekt naar typische letterparen in de taal, zoals I en J of Q en U, om de relaties met de getallen te vinden.

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ----------------------------------------------------------------------------- 09 42 32 10 00 56 11 34 03 04 44 12 29 05 25 72 26 01 15 06 27 28 39 61 50 17 22 68 71 31 02 94 65 43 19 64 20 45 07 36 90 14 38 16 62 51 86 67 93 41 08 81 99 53 96 35 59 13 58 24 60 48 74 70 69 18 76 95 46 63 37 87 49 78 77 21 79 52 88 47 75 83 23 85 57 98 73 89 97 30 91 80 33 40 54 55 66 82 84 92

Om een tekst te vercijferen vervangen we elke letter afwisselend door één van zijn getallen.

Klare tekst: D I T I S G E H E I M Cijfertekst: 69 19 48 03 87 65 18 43 54 19 29 De cijfertekst: 69194 80387 65184 35419 29

Playfair

Het Playfair cijfer werd in 1854 uitgevonden door Sir Charles Wheatstone. De eenvoud in gebruik en zijn veiligheid, vergeleken met substitutiecijfers en polyalfabetische substitutiecijfers zoals Vigenère, maakten van Playfair een populaire cijfermethode die al snel werd overgenomen als veldcijfer.

We beginnen met het opstellen van een vierkant van 5 X 5. We kiezen een sleutelwoord en vullen dit in het vierkant in. Dit kan spiraalgewijs, van onder naar boven, van recht of van links zijn, zolang beide partijen maar een invulmethode afspreken. Hier gebruiken we het woord STALINGRAD. De letters I en J worden als één letter aanzien.

S T A L I/J N G R D B C E F H K M O P Q U V W X Y Z

Eerst breken we de klare tekst op in bigrammen, groepen van twee letters. Indien een bigram uit twee identieke letters bestaat, voegen we een X tussen de tekst in. Indien er één letter overblijft, vullen we aan met een X. Laat ons beginnen met "DIT IS EEN ZEER GEHEIM BERICHT":

DI TI SE EN ZE ER GE HE IM BE RI CH TX

Nu vercijferd we per bigram. Hiervoor maken we een denkbeeldig vierkant met de letters en zoeken de letters in de tegenoverliggende hoeken. We beginnen met de tegenoverliggende letter in dezelfde rij als de eerste letter van het bigram.

. . . L I/J . . . D B . . . . . . . . . . . . . . .

Voor het vierkant DI is dit BL.

DI TI SE EN ZE ER GE HE IM BE RI CH TX BL

Bij het volgend bigram TI liggen beide letters op dezelfde rij. We nemen dan de letters onmiddellijk rechts ervan op diezelfde rij.

S T A . I/J . . . . . . . . . . . . . . . . . . . .

Voor het bigram TI is dit dus AS.

DI TI SE EN ZE ER GE HE IM BE RI CH TX BL AS TC CG WK FG

Bij het bigram GE liggen beide letters in dezelfde kolom. We nemen dan de letters onmiddellijk eronder op diezelfde rij.

. . . . . . G . . . . E . . . . O . . . . . . . .

Voor het trigram GE is dit dus EO.

Alle mogelijke situaties zijn nu beschreven en we kunnen alle bigrammen verder vercijferen.

DI TI SE EN ZE ER GE HE IM BE RI CH TX BL AS TC CG WK FG EO KF SU GK BA EK AW
De cijfertekst: BLAST CCGWK FGEOK FSUGK BAEKA W  


Om de cijfertekst te ontcijferen moeten we enkel het proces omkeren. Voor de vierkanten kiezen we gewoon de tegenover liggende hoeken, voor letters in dezelfde rij kiezen we de letters onmiddellijk links ervan, en voor letters in dezelfde kolom kiezen we de letters onmiddellijk erboven.

Trifid

Trifid is een combinatie van substitutie en fractionering gebaseerd op hetzelfde principe als Bifid, maar hier worden de letters gefractioneerd in drie stukken. Als voorbeeld van opvulling van het alfabet gebruiken we het sleutelwoord LEONARDO DA VINCI waarbij we de dubbele letters weglaten en aanvullen met de rest van het alfabet.

1 2 3 ----- ----- ----- 1 L E O N A R D V I 2 C B F G H J K M P 3 Q S T U W X Y Z / 1 2 3 1 2 3 1 2 3

Vervolgens lezen we voor elke letter het vierkant, de rij en kolom af en schrijven de getallen verticaal onder de klare tekst. Zo heeft de D de waarde 311, omdat zij in vierkant 3, rij 1 en kolom 1 staat.

Klare tekst: D I T I S G E H E I M --------------------- Vierkant : 3 3 1 3 1 2 1 2 1 3 3 Rij : 1 1 3 1 3 2 1 2 1 1 2 Kolom : 1 3 3 3 2 1 2 2 2 3 2

Nu schrijven we de getallen opnieuw, van links naar rechts en boven naar onder, in groepen van drie. Dan zetten we de nieuwe getallen terug om in letters.

331 312 121 331 131 321 211 213 332 122 232 Y V C Y Q K N R Z B W De cijfertekst: YVCYQ KNRZB W

De ontcijfering gebeurt door elke letter van de cijfertekst om te zetten in een getal aan de hand van de tabel. De bekomen getallen worden van links naar rechts en boven naar onder in drie gelijke rijen geschreven. Tenslotte zetten we elke verticale groep van drie getallen terug om in een letter met behulp van de tabel.

ADFGVX

Het ADFGVX-cijfer was tijdens de Eerste Wereldoorlog het veldcijfer van het Duitse leger. ADFGVX (6 X 6 matrix) was een uitbreiding op het ADFGX-cijfer (5 X 5 matrix), uitgevonden door Kolonel Fritz Nebel. Dit cijfer combineerde fractionering van een Polybiusvierkant, dat een monoalfabetische substitutie bevat, met een enkelvoudige transpositie. Men koos voor de letters ADFGVX omdat deze zeer duidelijk te onderscheiden zijn in morsecode.

We beginnen met het opstellen van een vierkant van 6 X 6. We kiezen een sleutelwoord en vullen dit in het vierkant in. In ons voorbeeld is het eerste sleutelwoord NACHTBOMMENWERPER waarbij we de dubbele letters weglaten en aanvullen met de rest van het alfabet. Om de getallen aan te vullen kunnen we deze vlak na hun letter plaatsen (1 na A, 2 na B enz...). De kolommen en rijen worden benoemd met de letters ADFGVX..

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

dan zetten we de tekst om in bigrammen, bestaande uit de kopletters van de rij en de kolom.

d i t i s z e e r g e h e i m FX GX DD GX XA XX FA FA FG GG FA AX FA GX DX

Vervolgens word op de gefractioneerde tekst kolomtranspositie toegepast. In ons voorbeeld is het tweede sleutelwoord PILOTEN (in realiteit worden veel langer sleutelwoorden of zinnen gebruikt). Het sleutelwoord is genummerd volgens het alfabet. De bigrammen worden van links naar rechts en van boven naar onder ingevuld.

P I L O T E N 6 2 3 5 7 1 4 ------------- F X G X D D G X X A X X F A F A F G G G F A A X F A G X D X

Nu lezen we de tekst af volgens de nummering per kolom, en verdelen in groepen van vijf.

De cijfertekst: DFGGX XAAXG AFXGA FXXXG FFXFA DDXGA

Om de cijfertekst te ontcijferen moeten we eerst een tabel maken met het sleutelwoord en het juiste aantal kolommen. Uit het aantal letters in de cijfertekst kunnen we dan het aantal lange en korte kolommen afleiden. We vullen de tabel met de cijfertekst, kolom per kolom, in volgorde van het sleutelwoord. Vervolgens lezen we de tekst van links naar recht en boven naar onder af. De bekomen tekst splitsen we op in bigrammen. Aan de hand van het vierkant zetten we de bigrammen terug om in klare tekst.

Transpositie

Er zijn vele verschillende methodes om een transpositietabel te vullen met klare tekst. We beschrijven eerst de gewone kolomtranspositie om vervolgens twee voorbeelden te geven van onderbroken transpositie. Deze methode is beter bestand tegen anagramming dan gewone kolomtranspositie vanwege zijn grillige plaatsing van de klare tekst. Bovendien zijn er vele variaties van invullen mogelijk, volgens een vooraf bepaald patroon, met open gedeeltes, rijen of diagonalen die éérst worden ingevuld enzovoort.

Kolomtranspositie

In ons voorbeeld is het sleutelwoord LEONARDO. De letters van dit woord worden volgens alfabet genummerd, van links naar rechts. Onder dit woord schrijven we de klare tekst van links naar recht en boven naar onder.

De klare tekst: DIT DRINGEND BERICHT IS ZEER GEHEIM. L E O N A R D O 4 3 6 5 1 8 2 7 --------------- D I T D R I N G E N D B E R I C H T I S Z E E R G E H E I M

Vervolgens lezen we de tekst af per kolom, beginnende met het kleinste nummer. Kolom 1 is dus REZI, kolom 2 is NIE. De bekomen tekst verdelen we in groepen.

Cijfertekst: REZIN IEINT EDEHG DBSET DIHGC RIREM

Om de cijfertekst te ontcijferen moeten we eerst een tabel maken met het sleutelwoord en het juiste aantal kolommen. Uit het aantal letters in de cijfertekst kunnen we dan het aantal lange en korte kolommen afleiden. We vullen de tabel met de cijfertekst, kolom per kolom, in volgorde van het sleutelwoord. Dan lezen we de tekst af van links naar rechts en boven naar onder.

Dubbele Transpositie

Het dubbele transpositie cijfer, ook wel veldcijfer genoemd vanwege zijn militair gebruik, was één van de veiligste handcijfers dat door alle partijen gebruikt werd tijdens de Tweede Wereldoorlog. De zwakke schakel in dit cijfers is wanneer vele berichten met dezelfde sleutelwoorden vercijferd worden, deze door een ingewikkelde techniek van multiple-anagramming kunnen gebroken worden. Indien men echter regelmatig van sleutelwoorden wisselt is deze methode zeer veilig.

Het dubbele transpositie cijfer bestaat uit twee verschillende kolom-transposities. Men kan hierbij hetzelfde sleutelwoord voor beide stappen gebruiken, of twee verschillende sleutelwoorden kiezen. Men kiest best twee sleutelwoorden van verschillende lengte, het ene met even en het andere met oneven lengte. In ons voorbeeld is het eerste sleutelwoord LEONARDO. De letters van dit woord worden volgens alfabet genummerd, van links naar rechts. Onder dit woord schrijven we de klare tekst van links naar recht en boven naar onder.

L E O N A R D O 4 3 6 5 1 8 2 7 --------------- D I T I S E E N Z E E R G E H E I M B E R I C H T

Vervolgens lezen we de tekst af per kolom, beginnende met het kleinste nummer. Kolom 1 is dus SGR, kolom 4 is DZIT. De nieuwe tekst schrijven we onder het tweede sleutelwoord DAVINCI eveneens van links naar rechts en van boven naar onder.

D A V I N C I 3 1 7 4 6 2 5 ------------- S G R E H C I E M D Z I T I R E T E B N E H E E I

Tenslotte lezen we de tekst nogmaals af per kolom en volgens nummer. Daarna verdelen we in groepen van vijf.

De cijfertekst: GMEEC TNSER HEZEI IIEHI BRDTE

Om de cijfertekst te ontcijferen moeten we eerst een tabel maken met het tweede sleutelwoord en het juiste aantal kolommen. Uit het aantal letters in de cijfertekst kunnen we dan het aantal lange en korte kolommen afleiden. We vullen de tabel met de cijfertekst, kolom per kolom, in volgorde van het sleutelwoord. Dan lezen we de tekst af van links naar rechts en boven naar onder, en plaatsen die dan in een tweede tabel, met het eerste sleutelwoord. Ook hier vullen we de tabel kolom per kolom, in volgorde van het sleutelwoord. Tenslotte lezen we een laatste keer de tekst af van links naar rechts en boven naar onder om zo de klare tekst te bekomen.

Aangezien berichten normaal veel langer zijn dan deze voorbeelden worden voor de sleutelwoorden van kolom-transpositie dikwijls woorden of zinnen gebruikt met een lengte van 20 of meer letters.

Sleutelwoorden

Een vereiste voor een goed cijfer is dat het eenvoudig is in gebruik. Daarom gebruikt men veelal sleutelwoorden om een substitutie-alfabet of een matrix, ook welf cijferalfabet genoemd, te vullen. Doorgaans noteert men het sleutelwoord, of de zin, schrapt de letters die er dubbel in voorkomen, en vult achter dit sleutelwoord de resterende letters van het alfabet aan. Hoe langer het sleutelwoord of de zin, des te minder men alfabetisch dient aan te vullen.

Sleutelwoord : SLEUTELWOORD Cijferalfabet: SLEUTWORDABCFGHIJKMNPQVXYZ

Voor een matrix kan men vele verschillende manieren van vullen gebruiken die zender en ontvanger overeen kunnen komen. In de voorbeelden hieronder zien we in de eerste matrix het sleutelwoord van links naar rechts en boven naar onder. De tweede matrix is spiraalgewijs tegen de klok in van buiten naar binnen gevuld. De derde matrix is van boven naar onder en van rechts naar links. De vierde matrix is van linksboven zigzaggend naar rechtsonder. Vele andere combinaties, richtingen en figuren zijn mogelijk. Zoals u kunt zien kan men van één sleutelwoord veel totaal verschillende matrixen maken.

S L E U T S IJ H G F Q IJ B W S S L E U T W O R D A L K Y X C V K C O L A D R O W B C F G H E M Z V B X M F R E B C F G H IJ K M N P U N P Q A Y N G D U P N M K IJ Q V X Y Z T W O R D Z P H A T Q V X Y Z

Om de veiligheid te verhogen en een betere spreiding van het alfabet te verkrijgen kan men twee sleutelwoorden 'mixen'. In het voorbeeld hieronder gebruiken we de sleutelwoorden ARENA en SLEUTELWOORD. ARENA wordt gebruikt als hoofding van de tabel waarin SLEUTELWOORD is ingevuld. Daarna lezen we de kolommen van ARENA in alfabetische volgorde af. Indien twee letters identiek zijn nemen we de meest linkse eerst. In wezen word hier met ARENA een kolomtranspositie uitgevoerd op het cijferalfabet.

A R E N A ------------- S L E U T W O R D A B C F G H IJ K M N P Q V X Y Z

Afgelezen volgens de ARENA hoofding:

S W B IJ Q T A H P Z E R F M X U D G N Y L O C K V

Natuurlijk zijn er vele variaties en combinaties mogelijk. Belangrijk is steeds dat het sleutelwoord of woorden makkelijk te onthouden zijn en zij op een eenvoudige maar degelijke manier gemixt worden.

Veiligheid

Alle hierboven beschreven handcijfers werden vroeg of laat met succes gebroken door cryptoanalyse. Sommige van de veldcijfers zijn desondanks nuttig indien de tijd, nodig voor cryptoanalyse, zo lang is dat de verkregen informatie achterhaald en nutteloos blijkt. In de Verenigde Staten is de informatie over cryptoanalyse van de dubbele transpositie geheim gebleven tot voor enkele jaren. Enkele meer complexe handcijfers zijn het SECOM-cijfer en het beruchte VIC-cijfer, gebruikt door de Russische spion Reino Hayhanen, codenaam Victor. Het VIC-cijfer bleef ongebroken. Berichten, vercijferd met VIC konden pas ontcijferd worden na het overlopen van Hayhanen. Zowel SECOM als VIC gebruiken een combinatie van dubbele onderbroken transpositie en een checkerboard variant.

Succesvolle cryptoanalyse is enkel mogelijk indien genoeg cijfermateriaal ter beschikking is dat met dezelfde sleutel werd vercijferd. Over het algemeen geldt dat grotere sleutelwoorden een betere veiligheid geven en hoe minder tekst vercijferd is, des te moeilijker de cijfertekst te kraken is. Letterfrequentie-analyse is bijvoorbeeld onbetrouwbaar als er slechts één zin werd gecodeerd, of er verhoudingsgewijs veel zeldzame letters in de tekst zitten. Zo is het eenvoudige Vigenère onbreekbaar indien één korte zin met een lang sleutelwoord vercijferd werd, maar is het breken van het veel veiliger dubbele transpositie minder moeilijk indien er genoeg cijfertekst voorhanden is.

Indien men de sterkte van een bestaand cijfer wil verhogen kan men het combineren met andere cijfers. Zo kunt u bijvoorbeeld bij Trifid na omzetting in een getallenreeks deze eerst bewerken met een dubbele transpositie vóór de gefractioneerde letters terug worden samengevoegd. Door een enkele kolomtranspositie te gebruiken vóór vercijfering met Playfair trekt men de veelgebruikte digrammen in de klare tekst uit elkaar.

Meer informatie op deze website

  • Handcijfers Technieken voor meer complexe manuele vercijfering, ook wel pen-en-papier cijfers genoemd of veldcijfers door militairen
  • One-time pads Het enige manuele cijfer dat echt onbreekbaar is wanneer correct toegepast.
  • Straddling Chekerboards Een systeem om tekst om te zetting in getallen als voorbereiding voor bepaalde types vercijfering.
  • Rasterschlüssel 44 Een Duits handcijfer van tijdens de Tweede Wereldoorlog
  • The Gold-Bug Edgar Allan Poe's verhaal van de Goudkever waarin hij een monoalfabetische substitutie-cijfer kraakt.
  • Cipher Classics Tool om tekst vercijferen waarbij u kunt hierbij kiezen uit een lijst van klassieke cijfermethodes.

Web Analytics Made Easy -
StatCounter

© Dirk Rijmenants 2004. Last changes: 28 April 2022

Home