Tools voor de cryptograaf

We houden het hier beknopt, met een focus op de basisprincipes bij het gebruiken en kraken van codes. Voor meer uitleg en veel meer voorbeelden van codetalen, kun je natuurlijk onze EHBO (eerste hulp bij ontcijferen) raadplegen.

Menig puzzelfanaat en codekraker kent ongetwijfeld dcode.fr als een fantastische tool voor het snel uitvoeren van allerhande encrypties en decrypties. Bij inleidende activiteiten met kinderen, kan deze ruime (en Engelstalige) tool echter snel overweldigend zijn. Daarom besloten we enkele kerngedachten omtrent cryptografie en codes kraken, hier met enkele applets en gericht gekozen voorbeelden te illustreren.

Caesarrotaties

Een van de eenvoudigste encryptietechnieken is de Caesarrotatie. Die doet niet meer dan het doorschuiven van de letters in het alfabet over een vast aantal stappen. Zo wordt met drie stappen de letter A vervangen door D, de letter B door E, de letter C door F, de letter D door G, … en de letter Z door C.

Caesarrotatie is cryptografisch absoluut niet sterk: er zijn maar 25 mogelijkheden uit te proberen om een gecodeerde tekst te kraken, ronduit kinderspel met een computer.

    Mono-alfabetische substituties

    We kunnen het alfabet dus maar beter willekeurig door elkaar hutselen en een codealfabet afspreken. Dat heet dan een mono-alfabetische substitutie.

    Codealfabet:

    Voor een algemene mono-alfabetische substitutie zijn er al veel meer mogelijkheden, namelijk 26! = 403 291 461 126 605 635 584 000 000. Nu kan een computer wel snel rekenen, maar als we elke seconde een miljoen opties zouden kunnen uittesten, dan zou elke optie testen nog meer dan 127 miljard jaar duren! Ter referentie: de big bang was 13.8 miljard jaar geleden. Al die mogelijkheden uitproberen is dus zelfs met een computer gewoon onhaalbaar.

    Er is echter een techniek die dit soort codes relatief makkelijk kan kraken: frequentieanalyse.

    Frequentieanalyse

    Uitgaand van de observatie is dat de letters E en N véél vaker voorkomen in het Nederlands dan pakweg U en F, kun je wel eens gericht beginnen gokken. Aangezien dezelfde letters steeds identiek gecodeerd worden, zullen de vaakst voorkomende symbolen wellicht voor de letters E, N en A staan. Ook zijn er bepaalde lettercombinaties zoals SCH die geregeld opduiken. Als de versleutelde tekst nog spaties bevat, dan kun je zelfs op zoek gaan naar veelgebruikte korte woordjes zoals DE, VAN, HET, EEN, EN, IN, … Het is wat zoekwerk maar de conclusie is dat mono-alfabetische substitutie “makkelijk” te breken is, zeker bij langere boodschappen.

    Om je te helpen telt deze applet het aantal keer dat elke letter voorkomt:

    Vaakst voorkomende letters eerst

    Met deze informatie en enkele gegevens over de taal waarin de boodschap geschreven werd (letterfrequenties, vaak voorkomende woorden) kan je aan de slag in een tekstverwerker naar keuze. Gebruik de zoek en vervang functies!

    (Wie zoeken via reguliere expressies al onder de knie heeft, kan dit gebruiken om bijvoorbeeld snel alle twee- of drie-letterwoorden te vinden, maar dit is zeker geen must.)

    Transpositie

    Er zijn verschillende nieuwere en complexere substitutiecodes die minder gevoelig zijn aan dit soort analyse, maar je kan een boodschap ook onleesbaar maken met een heel andere cryptografische techniek — transpositie, oftewel het systematisch door elkaar husselen van alle (afzonderlijke) letters. Frequentieanalyse wordt volledig waardeloos bij dit soort codes: de letters in de onleesbaar gemaakte tekst zijn immers precies dezelfde als de oorspronkelijke boodschap.

    Er bestaan verschillende transpositiecijfers, maar de bekendste is toch wel de kolomtranspositie. Voor kolomtranspositie is een sleutelwoord nodig. Vervolgens nummer je de letters van die sleutel in alfabetische volgorde en van links naar rechts. Daaronder komt de te versleutelen boodschap, rij per rij. De tekst wordt afgelezen, kolom per kolom, in de volgorde bepaald door de nummers bij de sleutel.

    Gelukkig kan je al dat overschrijven aan de computer overlaten:

    Sleutelwoord:
    Sorteren volgens sleutelwoord

    Kolomtranspositie ontcijferen of kraken

    Om een boodschap af te lezen die met een kolomtranspositie versleuteld werd, ga je in de omgekeerde richting door dezelfde stappen. Als je het sleutelwoord echter niet kent, dan wordt het meteen stukken uitdagender. Als je de boodschap correct terug in kolommen kan indelen (bijvoorbeeld omdat alle kolommen netjes vol waren), dan kun je wel een poging wagen door anagrammen te zoeken.

    Sleutelwoord:

    Sorteren volgens sleutelwoord
    Oftewel proberen op lengte:

    Reacties

    Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *