Skip to ContentSkip to Navigation
OnderwijsStudievoorlichtingMeer keuzeactiviteitenScholierenacademie
Header image Blog: Dit is wetenschap

Kraak de code

Datum:12 januari 2017
Code ontcijfering
Code ontcijfering

Stel je voor: het is oorlog en je wilt weten waar de vijand gaat aanvallen. Je stuurt een spion op pad en onderschept een bericht, maar ontvangt slechts een onsamenhangende combinatie van letters. Geheimtaal, dus. Hoe kraak je de code en achterhaal je de strategie van de vijand?

Ten tijde van Julius Caesar was dat nog niet zo moeilijk. Hij maakte gebruik van het Caesercijfer, waarbij hij het hele alfabet een stukje ‘verschoof’. Iedere letter werd vervangen door een letter een aantal plekken verderop in het alfabet. Versleutel je bijvoorbeeld SCHOLIERENACADEMIE met een verschuiving van 3, dan krijg je VFKROLHUHQDFDGHPLH.

Dat ziet er onleesbaar uit, maar is makkelijk te kraken. Je kunt bijvoorbeeld simpelweg alle verschillende verschuivingen uittesten. Daarnaast kun je het jezelf makkelijker maken door frequentieanalyse te gebruiken. Bepaalde letters komen vaker voor dan andere. Door te kijken hoe vaak letters in de geheimtaal voorkomen, kun je raden welke letters dit zijn geweest.

Moeilijker wordt het als letters niet altijd dezelfde letter coderen. Een K kan dan de ene keer worden omgezet in een E en de andere keer in een P. De sleutel verandert dus tijdens het coderen.

Hier maakten de Duitsers handig gebruik van tijdens de Tweede Wereldoorlog. De Enigma-machine, die ze gebruikten om berichten te versleutelen, bevat drie rotors. Iedere keer dat je een letter intoetst veranderen de rotors van positie. Daardoor verandert de versleuteling na iedere letter.

Nu kom je als spion in de problemen. Je kunt in theorie alle instellingen van de Enigma-machine uitproberen, maar dit zijn er heel veel. 158.962.555.217.826.360.000 om precies te zijn (wil je weten waar dit getal vandaan komt? Kijk dan dit filmpje).

Gelukkig hadden de geallieerden een briljant wiskundige aan hun zijde: Alan Turing. Hij bedacht dat een letter nooit zichzelf kan coderen. Staat er een A in je geheimtaal, dan kan dat iedere letter zijn, behalve de A.

Daarnaast bedacht hij nog iets: bepaalde woorden kwamen bijna altijd voor in de Duitse berichten. Zo stond in het weerbericht vaak het woord WETTERVORHERSAGE en werden berichten vaak afgesloten met HEIL HITLER.

Turing raadde op deze manier een stukje tekst en legde het naast de gecodeerde tekst. Omdat hij wist dat een letter niet zichzelf kon coderen, schoof hij de twee langs elkaar, net zo lang tot hij op een combinatie uitkwam waar geen enkele letter zichzelf codeerde (zie voorbeeld).

WETTERBERICHT
JXATQBGGYWCRYBG -> kan niet

WETTERBERICHT
XATQBGGYWCRYBG -> kan niet

WETTERBERICHT
ATQBGGYWCRYBG -> kan

Dat stukje tekst kon hij gebruiken om de instellingen van de Enigma te achterhalen. Nog steeds een hels karwei, maar samen met Gordon Welchman bouwde hij een machine die alle instellingen van de Enigma automatisch kon uittesten.

De geallieerden kraakten op deze manier dagelijks 3000 Duitse berichten en achterhaalden zo belangrijke informatie over de positie en strategie van de Duitsers. Naar schatting heeft dit de oorlog met ongeveer 2 jaar verkort!

Tijdens de workshop Kraak de code!, leer je zelf geheime berichten te ontcijferen. Meedoen?

Tags: Beta

Reacties

Reacties laden...