Geheimschrift/Transposities

Uit Wikibooks

In het vorige hoofdstuk keken we naar substituties, Bij een substitutie vervangen we, of substitueren we, letters door andere letters. In dit hoofdstuk vervangen we letters niet, maar verplaatsen we ze.

Achterstevoren schrijven[bewerken]

Een eenvoudig huis-tuin-en-keuken geheimschrift is het achterstevoren schrijven van een tekst.

“dit is maar een spelletje”

wordt dan:

“ejtelleps nee raam si tid”

Bovenstaande is de simpelste variant, je kunt ook de letters binnen de woorden op zijn plaats laten, maar alleen de volgorde van de woorden in de zin omdraaien. Of je laat de volgorde van de woorden in de zin onveranderd, maar keert alleen de volgorde van de letters in een woord om. Nog een andere mogelijkheid is om de volgorde van de letters in een woord om te draaien, maar de volgorde van de woorden onveranderd te laten.

Herdersstaf / Generaalsstaf / Scytale[bewerken]

Een herdersstaf geheimschrift

De Spartanen gebruikten rond 600 voor Christus een houten staf en een reep leer. Ze wonden het leer om de staf, en schreven dan hun bericht op het leer. Wanneer het leer dan werd losgemaakt, stonden de letters door elkaar.

Bijvoorbeeld het bericht:

MIJN FALANX KOMT MORGEN VROEG BIJ DE PAS AAN

Werd dan:

M A K O O N D A I L O R C D E A J A M G H B P N N N T E T I A F X M N E J S

Dit is nog steeds heel eenvoudig te lezen.

Als je dit wilt gebruiken, kun je ook een 6-kantig potlood gebruiken. Wikkel daar een strook papier omheen, en schrijf er de boodschap op. Zodra je de strook van het potlood haalt, staan de letters ogenschijnlijk door elkaar.

Cryptoanalyse[bewerken]

Deze methode is niet heel moeilijk te ontcijferen. Tel de afstand tussen opeenvolgende letters die vaak achter elkaar staan, zoals I-J en S-C-H. Dat geeft een duidelijke indicatie van de dikte van het voorwerp waar de strook om gewonden is geweest.

Hekwerk[bewerken]

Het Hekjes geheimschrift is een oud voorbeeld van een eenvoudig geheimschrift.

Het bericht wordt op de latten van een hekwerk geschreven, diagonaal op en neer. Daarna wordt het per lat uitgeschreven. In bovenstaand bericht is de tekst: "Ga direct op reis" ingevuld. Versleuteld zou het worden:

GROIA IETPE SDCR

Het geheimschrift is eenvoudig, wat zowel een voordeel is als een nadeel. Er is geen sprake van een code woord of zo, waardoor het kraken een kwestie is van op het idee komen dat dit geheimschrift gekozen is.

De enige variabele is het aantal latten in het hekwerk.

Transpositie met een tabel[bewerken]

Wanneer we een bericht hebben, kunnen we dit in een tabelvorm opschrijven. In dit voorbeeld hebben het bericht "generaal Jansens zal u persoonlijk informeren" in een tabel van 5 breed opgeschreven. Andere breedtes kunnen natuurlijk ook.

Simple dutch text in rectangular layout. Used in wikibook ciphers.

Er zijn nu verschillende mogelijkheden om het bericht versleuteld uit te lezen.

1. De eerste manier is vertikaal: GANZE NIMEA SARLN ENLEL SIFRE JNUOJ OERAS POKRN
2. De tweede manier is diagonaal: GAEUO ASLOK NASJR ZRION ELFER NNREA IENJS MENLP

De eerste manier lijkt het simpelst, maar biedt de beste mogelijkheden tot verbetering.

Wat als?[bewerken]

Wat als het bericht erg lang is? Van te voren kun je afspreken dat er een rechthoek van bijvoorbeeld maximaal 10 rijen wordt gebruikt.

Wat doen we als het bericht niet een hele rechthoek vult? Er zijn verschillende manieren om daar mee om te gaan. Een manier die in boeken veel genoemd wordt, is het aanvullen met 1 of meer X'en. Dat is eerlijk gezegd een heel slechte methode. Want als een kraker dan een bericht krijgt met 1 of meer keer de letter X, is de kans groot dat al die X-en aan het eind moeten. Dat geeft weer een duidelijke hint over de afmeting van de tabel. Hetzelfde geldt als er aan het eind de ontbrekende plekken met spaties worden opgevuld. Die nemen we niet mee, en als we die alleen aan het eind zouden zetten, is dat ook overduidelijk.

Een iets betere manier is om de laatste regel aan te vullen met willekeurige letters. En met willekeurige letters bedoelen we precies dat. Dus niet een 'tot ziens', 'bye', 'doei' of zo. Dat soort woorden wordt gauw een routine om te gebruiken, en dat geeft de mensen die codes kraken een handvat.

Een mogelijk iets betere manier is om gewoon met de onvolledige tabel te werken. De persoon die het bericht moet ontcijferen, kan gemakkelijk uitrekenen wanneer hij of zijn niet meer de hele kolom moet gebruiken.

Cryptoanalyse[bewerken]

De eerste aanwijzing komt uit de lengte van een kort bericht. Wanneer dat bijvoorbeeld 30 lang is, ligt het voor de hand om als eerste eens te onderzoeken of er tabellen van 5, 6 of 10 breed zijn gebruikt. Het zal duidelijk zijn dat om deze reden het beter is om een bericht dat bijvoorbeeld 28 letters lang is, niet aan te vullen tot de 30 die je bij een tabel van 6 breed zou verwachten.

Een tweede aanwijzing wordt gevormd door de afstanden tussen de letters van veel voorkomende groepjes van 3 of 4 letters. In het Nederlands zijn dat bijvoorbeeld 'sch', 'schr' en str'. Er zijn tabellen met de frequentie van 3-letter groepen samengesteld, en elke professionele organisatie op het gebied van decoderen heeft de beschikking over zulke tabellen voor de belangrijkste talen.

Variaties[bewerken]

In plaats van berichten in kolommen uit uit te lezen, kun je ook over andere patronen nadenken. Bijvoorbeeld in spiraalvorm, of als diagonalen.

Transpositie met sleutelwoord[bewerken]

De kolommen hoeven niet van links naar rechts te worden uitgelezen. Laten we als voorbeeld het bericht: HET SCHANDAAL OVER MINISTER X LIGT MORGEN OP STRAAT nemen.

We kiezen een gemakkelijk te onthouden sleutelwoord, in dit voorbeeld STRAND, en nummeren de kolommen aan de hand van dit sleutelwoord. De kolom waar de A boven staat wordt kolom 1. De D is alfabetisch gezien de tweede letter, dus dat wordt kolom 2. Zo gaan we door tot en met de T voor kolom 6.

voorbeeld bericht transpositie

We lezen het bericht nu regel voor regel uit, in de volgorde die door de letters van het sleutelwoord worden aangegeven.

SHCTHE ALADAN RIMEOV TRESNI GMTIXL NPOERG ATARST

Het nadeel van het werken per regel is dat de letters allemaal vrij dicht bij elkaar blijven.

Enkele kolomtranspositie[bewerken]

Net als bij de vorige methode, schrijven we het bericht in een tabel met een sleutelwoord er boven.

sample message single column transposition

Het verschil is dat we nu een hele kolom uitlezen, in plaats van per regel te werken. Hierdoor komen de letters verder van elkaar weg te staan.

Het gecodeerde bericht wordt dan: SARTGNA HLIRMPT CAMETOA TDESIER HAONXRS ENVILGT. Gegroepeerd in groepjes van 5 wordt dit: SARTG NAHLI RMPTC AMETO ATDES IERHA ONXRSE NVILGT.

Ontcijferen volgt natuurlijk gewoon het omgekeerde proces.

Merk op dat de vorige methode als een speciaal geval van deze methode kan worden gezien, namelijk als tabel van 1 regel.


Cryptoanalyse[bewerken]

Merk op dat de S, C en H van de SCH van schandaal op de plaatsen 1, 8 en 15 van het gecodeerde bericht voorkomen. De S, T en R van STR in STRAAT staan op de plaatsen 35, 42 en 28. De verschillen zijn telkens 8, wat een aanwijzing is dat de lengte van de tabel 7 is. Bij een bericht dat 42 lang is, is dat een aanwijzing dat de tabel 6 breed is.

Merk op dat we niet precies weten welke letter bij de woord combinatie hoort. Behalve op plek 42 staat er ook een T op de plaatsen 4, 14, en 17. Er is dus veel telwerk voor een goede analyse nodig. Nu kan dit allemaal geautomatiseerd worden uitgevoerd, maar vroeger was dit allemaal handwerk.

Dubbele kolomtranspositie[bewerken]

De dubbele kolom transpositie bestaat uit het twee keer uitvoeren van de kolom transpositie, met verschillende kolombreedtes en dus verschillende sleutelwoorden. Het Duitse leger gebruikte de dubbele kolom transpositie in de eerste maanden van de Eerste Wereldoorlog.

Het twee maal uitvoeren met verschillende afmetingen, komt neer op het gebruik van een grotere tabel met als afmeting het kleinste gemene veelvoud van de afmetingen. Dus wanneer er een 4 x 5 rechthoek gecombineerd wordt met een 5 x 7 rechthoek, komt dit overeen met het gebruik van een 20 x 35 rechthoek. Door sleutelwoorden te kiezen waarvan de lengtes geen gemeenschappelijke delers hebben, wordt een optimaal effect bereikt.

Cryptoanalyse[bewerken]

We zagen bij de enkele kolomtranspositie al dat er behoorlijk wat analyse werk nodig was om een bericht te ontcijferen. Bij de dubbele kolom transpositie is dat nog meer.

Aan de Britse kant waren tijdens de Eerste Wereldoorlog twee afdelingen aan het werk met het ontcijferen van berichten. "Room 40" was de marine arm. MI1(b) was de diplomatieke en leger afdeling. En mocht je je afvragen of er een verband is tussen MI1 en de veel bekendere MI5 en MI6, ja, de nummers 5 en 6 zijn niet zomaar uit de lucht komen vallen. MI1 t/m MI4 hebben bestaan, maar zijn opgeheven of opgegaan in andere organisatie onderdelen. Na de Eerste Wereldoorlog gingen Room 40 en MI1(b) op in "Bletchley Park", waar de cryptoanalyse tijdens de Tweede Wereldoorlog gebeurde.

De Eerste Wereldoorlog was op het gebied van geheimschriften een fundamenteel andere oorlog dan de oorlogen daarvoor. Tot en met de Napoleontische oorlogen werden legerbevelen meestal overgebracht door koeriers of ordonnansen. De 19e eeuw was relatief arm aan grote oorlogen.

In de Eerste Wereldoorlog waren de fronten statisch in plaats van beweeglijk. Bij een beweeglijke oorlog, zoals de verschillende napoleontische oorlogen, en ook de Pruisisch-Franse oorlog van 1870, kon met ordonnansen worden gewerkt voor het overbrengen van gegevens. In de Eerste Wereldoorlog waren radio en telegraaf nieuwe communicatiemiddelen. In de loopgraven aan het westelijk front werden vele honderden kilometers aan telegraaf en telefoonleiding uitgerold. Wanneer een loopgraaf werd veroverd, waren soms de kabels nog in takt en konden berichten worden afgeluisterd. Radio berichten waren nog ongestuurd en konden dus altijd worden opgevangen.

Het overbrengen van berichten via telegraaf en radio ging vele malen sneller dan met berichten die moesten worden bezorgd. Het was ook een zekerder methode van overbrengen, want de ontvanger kon direct de ontvangst van een bericht bevestigen. Wanneer een jonge luitenant door de loopgraven naar voren moest, wist de generaal nooit of het bericht was bezorgd of dat de luitenant op de heen- of op de terugweg was gesneuveld.

Hiernaast waren de aantallen troepen en de aantallen legeronderdelen vele malen groter dan in eerdere conflicten.

Al deze factoren samen zorgden voor een stortvloed aan vijandelijke, versleutelde, berichten.


(@@@nog te verplaatsen: Omdat veel mannen aan het front vochten, namen deze organisaties de stap om vrouwen te recruteren. Deze werden in eerste instantie aan het routine werk van tellen en vergelijke gezet. Geleidelijk aan werkten ze zich omhoog naar functies met meer verantwoordelijkheid en bevoegdheden. Iedereen, ook de personen die alleen 'eenvoudig' telwerk deden, kregen absolute geheimhouding opgelegd. Ze mochten ook thuis niet vertellen wat voor werk ze deden. Daar was en is een heel goede reden voor: cryptoanalyse is een uiterst gevoelig onderwerp. Het ontcijferen van een bericht, laat staan het kraken van een code, kan in een oorlog het verschil maken tussen het winnen of verliezen van een veldslag, met duizenden of tienduizenden slachtoffers meer of minder.)

Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.