Waar vandaan: Technologie & natuur > Wiskunde > Cryptografie

Cryptografie

Cryptografie is het gebied van de wiskunde waarin het maken van geheimschriften wordt bestudeerd. Van Caesar-Cipher uit de tijd van Julius Caesar tot kwantumcryptografie van deze tijd: in dit dossier leiden we je door de geschiedenis van de cryptografie.

Cryptografie is het gebied van de wiskunde waarin het maken van geheimschriften wordt bestudeerd. De cryptografie kent een lange geschiedenis. Net zoals in vroeger tijden de verzegeling van vertrouwelijke berichten, moet een cryptografische techniek helpen de identiteit vast te stellen en een vertrouwensbasis te creëren. De Mesopotamiërs gebruikten zegelrollen om een kleitablet van een ‘handtekening’ te voorzien; later vormden lakzegels een beveiliging.

Een van de oudste bekende geheimschriften is Caesar-Cipher, genoemd naar door Julius Caesar (100 v.Chr. – 44 v.Chr.). Caesar codeerde zijn berichten door de A te vervangen door de D, de B door de E enzovoort. Het gaf niet als zijn vijanden zijn boodschappen onderschepten, zolang ze de sleutel niet hadden konden ze de boodschap niet lezen. Je hoeft echter geen cryptografie-expert te zijn om een dergelijke sleutel te ontrafelen. Het Caesar-Cipher is tegenwoordig dan ook geen gebruikte methode meer.

Enigma-coderingsmachine

De Enigma-coderingsmachine werd tot de Tweede Wereldoorlog veel gebruikt om informatie te versleuetlen. De Duitsers vertrouwden er tot het einde van de Tweede Wereldoorlog op dat de berichten, die door deze machine gecodeerd waren, volstrekt veilig verzonden konden worden. Een fout, die hen fataal is geworden. Velen zien het breken van de Enigma-codering door de Britten en Polen als het grote keerpunt in de Tweede Wereldoorlog.

Het belang van het versleutelen van informatie is toegenomen met de komst van internet. Steeds vaker hebben mensen, bewust of onbewust, te maken met cryptografie, doordat mensen het internet gebruiken om gegevens te versturen die ze alleen aan de geadresseerde toevertrouwen. Denk bijvoorbeeld aan e-mailen on online bankieren. Bankbiljetten bevatten moeilijk na te maken afbeeldingen en een watermerk, en een modern betaalpasje bevat een geheime elektronische vingerafdruk. In feite is er niet zo’n groot verschil tussen betalingen met tastbaar geld en moderne, elektronische betaalwijzen. In alle gevallen gaat het om wederzijds vertrouwen.

De Britse wiskundige G.H. Hardy (1877-1947) deed niets liever dan pure (in zijn ogen: nutteloze) wiskunde. Eind jaren dertig schreef hij in A Mathematician’s Apology dat hij zich in zijn graf zou omdraaien als zijn geliefde getaltheorie alsnog praktisch nut zou hebben. Kort na zijn dood werd Hardy’s spookbeeld realiteit: priemgetallen, waarmee Hardy zich veel had beziggehouden, bleken heel nuttig te zijn in de cryptografie.

Veel gebruikte versleutelingstechnieken zijn de Data Encryption Standard, Advanced Encryption Standard en RSA. De laatste is de afkorting van de drie beroemde cryptologen Ron Rivest, Adi Shamir en Leonard Adleman. De kracht van RSA is erop gebaseerd dat het heel moeilijk is om, gegeven het product van twee grote priemgetallen, de twee priemfactoren te vinden. Met de nu bekende technieken vergt dat jarenlang rekenen met een computer. Maar de wetenschap en de techniek staan niet stil. Het is niet ondenkbaar dat RSA en andere codes die gebaseerd zijn op grote priemgetallen, in de toekomst eenvoudig te kraken zijn met behulp van kwantumcomputers.

Een van de modernste ontwikkelingen in de cryptografie is kwamtum-encryptie. Kwantum-encryptie is gegarandeerd veilig: elke poging tot afluisteren is meteen zichtbaar voor zender en ontvanger. Zo weten ze zeker dat niemand de sleutel tot de code in handen kan krijgen.

Het RSA-logo

Ook buiten het internet speelt cryptografie een grote rol. Je realiseert het je misschien niet, maar bellen met je mobiele telefoon was niet mogelijk geweest zonder cryptografie. Bij verkiezingen is het rode potlood in de meeste gemeenten verleden tijd. Stemcomputers hebben het rode potlood vervangen, en ook dat was zonder het werk van cryptografen onmogelijk geweest.

Computernetwerk breekt Nazi-code

Onder leiding van de Duitser Stefan Krah breken duizenden PCs drie code-berichten uit de Tweede Wereldoorlog. Britse codespecialisten in Bletchley Park konden de codes tijdens de oorlog niet ontcijferen, maar binnen een maand wist Krah wat duikboot U-264 halverwege de oorlog had verzonden. Nog twee boodschappen te gaan.

Het leest als een thriller. Stefan Krah, een violist van Duitse origine, heeft interesse in cryptografie en open-source software. Hij komt in het blad Cryptologia drie Nazi-boodschappen tegen die met de Enigma-machine versleuteld zijn. De Britse cryptografen in Bletchley Park, waaronder een genie als Alan Turing, wisten de drie berichten niet te ontcijferen, maar Krah besluit een poging te wagen. Hij schrijft M4, een computerprogramma waarmee internetters van over de hele wereld kunnen helpen de codes te breken. Krap een maand na de start van het project bezwijkt de eerste boodschap.

Met zijn programma probeert Krah de oude Duitse Enigma-machine te slim af te zijn. Die versleutelde een bericht door elke letter een aantal plaatsen op te schuiven in het alfabet. A naar C, G naar I, enzovoorts. Het precieze aantal stappen veranderde van dag tot dag, en Enigma gebruikte niet één, maar drie tot vier versleutelingsstappen achtereen. In het apparaat zat een aantal rotoren, draaischijven waarmee een bepaalde code was in te stellen. Ook was er een schakelbord waarmee de gebruiker letters in de codering kon verwisselen.

Drie rotoren uit een Enigma-machine, die de boodschap elk één keer met een vervangingssleutel coderen. Alle code-combinaties samen leidden tot een onbegrijpelijke cijferbrij. Alleen met de juiste instellingen – die in codeboeken werden verspreid onder het Duitse leger – kon een ontvanger wijs uit de boodschap. bron: Wikipedia.

Het eerste code-bericht, op 25 november 1942 verzonden door Kapitein Looks van de U-264.

“NCZW VUSX PNYM INHZ XMQX SFWX WLKJ AHSH NMCO CCAK UQPM KCSM HKSE INJU SBLK IOSX CKUB HMLL XCSJ USRR DVKO HULX WCCB GVLI YXEO AHXR HKKF VDRE WEZL XOBA FGYU JQUK GRTV UKAM EURB VEKS UHHV OYHA BCJW MAKL FKLM YFVN RIZR VVRT KOFD ANJM OLBG FFLE OPRG TFLV RHOW OPBE KVWM UQFM PWPA RMFH AGKX IIBG”

Oftewel:
“Von Looks:
Funktelegramm 1132/19 Inhalt:
Bei Angriff unter Wasser gedrueckt, Wasserbomben. Letzter Gegnerstandort
08:30 Uhr, Marqu AJ 9863, 220 Grad, 8 Seemeilen, stosse nach. 14 Millibar
faellt, NNO 4, Sicht 10.”

“Van [kapitein] Looks:
Radiobericht 1132/19, inhoud:
Bij aanval gedwongen te duiken, [aangevallen met] dieptebommen. Laatste positie van de vijand om 08:30 u: AJ 9863, [koers] 220 graden, [snelheid] 8 knopen. [We] achtervolgen [de vijand]. [Druk op de barometer] valt 14 millibar, [windrichting] noord-noord-oost, [windkracht] 4, zicht 10 [zeemijlen].”

De berichten die Krah met zijn computernetwerk ontcijfert zijn gecodeerd met de M4, een variant van de Enigma-machine die het bericht vier keer achter elkaar versleutelt. Als eerbetoon aan dat apparaat noemde Krah zijn programma naar de machine. M4 heeft, nadat Krah op twee nieuwsgroepen en een mailing-lijst om deelnemers vroeg, 2500 PCs tot zijn beschikking. “Ik sta er nog steeds verbaasd van dat het aantal deelnemers zo snel groeit”, vertelt hij op de BBC-site.

Enigma-machine.

Bruut geweld en slimmigheden

Bij gebrek aan de originele sleutel moet M4 andere methodes gebruiken om de boodschappen te ontcijferen. Volgens Krah werkt het programma op een combinatie van bruut geweld en slimme algoritmes. Eerst gaat M4 alle mogelijke rotor-standen af om de code terug te vertalen. Omdat de Duitse gebruikers ook letters konden verwisselen met een schakelbord, wordt daarna geprobeerd de beste stand van het bord te bepalen.

Alle standen van het schakelbord doorrekenen is geen optie: er zijn zoveel mogelijkheden dat M4 dan een eeuwigheid bezig zou zijn. Daarom probeert M4 een aantal standen en borduurt voor op veelbelovende verwisselingen. De beste oplossingen worden teruggestuurd naar de centrale database. Volgens Krah is het hele proces volautomatisch; er wordt op geen enkel moment gegokt wat de inhoud van het bericht is om de code sneller te breken.

@Home

M4 is niet het eerste project dat duizenden PCs gebruikt om gigantische berekeningen te maken. Distributed computing brak in 1999 door met het project SETI@Home, een programma waarmee gebruikers meezoeken naar radiosignalen van buitenaardse beschavingen. Het programma gebruikt alleen rekencapaciteit als de gebruiker nergens mee bezig is; daardoor heeft die geen hinder van het programma en wordt de computer toch nuttig gebruikt als de eigenaar iets anders aan het doen is.

Sinds SETI@Home zijn allerlei projecten verenigd in BOINC: Berkeley Open Infrastructure for Network Computing. Gebruikers kunnen rekenen aan onder andere gravitatiegolven, zich opvouwende eiwitten en klimaatmodellen. Zulke projecten zijn de eerste stappen op weg naar het grid, een toekomstvisie waarin datatransport zo snel en goedkoop is dat computers over de hele wereld werken als één gigantische supercomputer.

Capaciteit van een grid: test van de glasvezelverbinding vanuit het Geneefse deeltjeslab CERN. Het laboratorium exporteert vanaf medio 2007 jaarlijks een petabyte (miljard megabyte) aan gegevens over deeltjesbotsingen naar samenwerkende instituten over de hele planeet. Tijdens deze testdag (24-1-2006) haalde het centrum een snelheid van zo’n 600 megabyte per seconde. Het is de bedoeling dat de nieuwe deeltjesversneller LHC 250 dagen per jaar met die snelheid data oplevert.
bron: CERN.
Klik op de afbeelding voor een grotere versie.

Eerbetoon

Krah’s project zal het beeld van de Tweede Wereldoorlog niet omver gooien; volgens experts is het historische belang van de boodschappen laag. Het overgrote deel van de geheime berichten die de Nazi’s verstuurden is al wél vertaald, hoofdzakelijk door de Britse cryptografen in Bletchley Park. Historici hebben daarom een goed beeld van de manier waarop de Duitse Wehrmacht, Luftwaffe en Kriegsmarine met hun geheime codes werkten. Een woordvoerdster van Bletchley Park, nu een museum over de cryptografie tijdens WO II, liet weten het M4-project met veel interesse te hebben gevolgd: “een geweldig eerbetoon aan de Britse codebrekers”, zei ze tegen de BBC.

Cryptografie in de echte wereld

Hoe slim een cryptografisch systeem ook is, er zijn altijd manieren om het te omzeilen.

Wiskunde alleen is niet genoeg om belangrijke geheimen te beschermen. In ‘de echte wereld’ zijn er manieren om systemen te kraken, waar wiskunde geen bescherming tegen biedt.

Een berucht voorbeeld van een geheim dat niet bewaard werd, is het ontwerp van de Concorde. In maart 1969 werd de eerste testvlucht met de Franse Concorde gemaakt. Vlak daarvoor (op 31 december, zodat net het jaartal 1968 in de geschiedenisboeken belandde) maakten de Russen een testvlucht met Tupolev Tu-144, die zo verdacht veel op de Concorde leek, dat hij ook wel “Concordsky” genoemd werd: op het bovenste plaatje zie je de concorde, daaronder de Tupolev. Een fraai staaltje spionage…

Zelfs als een systeem wiskundig gezien niet te kraken is, dan kan er nog van alles misgaan. Op een computer kan bijvoorbeeld een programma draaien dat elke toetsaanslag opslaat en naar iemand toestuurt. Zo is het wel heel makkelijk om wachtwoorden te kraken. Ook kunnen beveiligde computerchips met speciale ionenstralen gekraakt worden. Nog sterker: uit de straling die elektronische apparaten uitzenden kunnen ook een heleboel gegevens gehaald worden. Iemand kan op 100 meter van je huis zien wat jij op je computer doet door deze straling. Deze techniek komt ook voor in de roman Cryptonomicon van Neal Stephenson. Dat heeft Stephenson dus niet uit zijn duim gezogen!

De menselijke factor

Menselijke fouten zijn een zwakke plek van elk systeem. Er is bijvoorbeeld bewezen dat een bepaalde vorm van stroomversleuteling (genaamd One-Time Pad) wiskundig perfect veilig is. Bij deze specifieke stroomversleuteling wordt elke sleutel willekeurig aangemaakt op het moment van versleutelen en is deze even lang als het te versturen bericht. Elke sleutel wordt maar één keer gebruikt. Tijdens de koude oorlog gebruikte de Russische KGB dit systeem om belangrijke geheime berichten te versturen. Bij het gebruik werden echter fouten gemaakt en daardoor werden sommige sleutels verschillende keren gebruikt. Hierdoor was het veel makkelijker om de geheime boodschappen te ontsleutelen. Het resultaat: meer dan 3000 boodschappen werden ontcijferd, de Russische atoomspionage werd bekend en KGB-spionnen als de Rosenbergs werden ontmaskerd.

In de 19de eeuw formuleerde Auguste Kerckhoffs zes eisen waaraan een cryptografiesysteem moet voldoen. De bekendste eis is, dat een systeem ook veilig moet zijn als de vijand weet hoe het systeem werkt. Het enige dat geheim moet blijven is de sleutel die gebruikt is, niet de manier waarop de codering gemaakt wordt. De volledige lijst van Kerckhoffs’ eisen is:
1. Het systeem moet praktisch, liefst wiskundig, onbreekbaar zijn.
2. Het systeem moet ook veilig zijn als het niet geheim is: Als het in handen van de vijand valt, moet deze zonder sleutel nog steeds niets kunnen.
3. De gebruikte sleutel moet over te dragen en te verkrijgen zijn zonder geschreven briefjes. De sleutel moet ook veranderd kunnen worden als de gebruikers dat willen.
4. Het systeem moet bruikbaar zijn met de telegraaf.
5. Het systeem moet draagbaar zijn en bij het gebruiken van systeem moet geen hele groep verschillende mensen nodig zijn.
6. Als laatste is het nodig, gezien de omstandigheden waaronder het systeem gebruikt zal worden, dat het systeem makkelijk te gebruiken is, zonder zwaar denkwerk of een lijst ingewikkelde regels.

Kortom: alleen slimme wiskundige cryptografie is niet genoeg om veiligheid te garanderen. Een beveiligd systeem is eigenlijk nooit af, want de mensen die het willen kraken, zullen steeds nieuwe dingen blijven verzinnen. Bakker benadrukte maandag dat het belangrijk is, dat wiskundigen zich daar bewust van zijn. Keiharde versleuteling, training van de gebruikers en afschermen van de computers aan begin en eind van een beveiligde lijn zijn allemaal nodig om een gecodeerde boodschap uit onbevoegde handen te houden.

 


Bron: Kennislink