Wetenschap 17 oktober 2000

Belgen laten IBM
in het zand bijten

Door S. M. de Bruijn
Geheimschrift. Een kwarteeuw lang domineerden de Amerikanen de markt van codeerprogramma's. De methode die het computerbedrijf IBM en veiligheidsorganisatie NSA in 1974 ontwikkelden, is in gebruik voor alle vertrouwelijke documenten van de regering en voor het Amerikaanse betalingsverkeer. Deze standaard is inmiddels ingehaald door de snelgroeiende computertechnologie en er moet een veiliger opvolger komen. IBM zette opnieuw een team programmeurs aan het werk, maar twee Belgische whizzkids zijn het bedrijf deze keer te slim af. Twee weken geleden verkozen de VS hun methode tot standaard voor de komende kwarteeuw.

Mfvl, ffo csjfg tdisjkwfo ejf ojfnboe mfafo lbo! Bmt lmfjo ljoe qspcffs kf ebu bm vju, epps xbu uf tdivjwfo nfu ef mfuufst vju ifu bmgbcfu. Geheime brieven schrijven is niet alleen kinderspel. Soms is het een kwestie van leven of dood. De eerste computers, rond de Tweede Wereldoorlog, zijn niet alleen gebouwd om berekeningen aan projectielbanen uit te voeren, maar ook om geheime codes van de Duitsers te ontcijferen. Daardoor was Churchill vaak eerder op de hoogte van de geheime boodschappen voor Hitler dan de Führer zelf en de Britten zijn ervan overtuigd dat hun decodeerprogramma's de oorlog met enkele jaren bekort hebben.

Geheimschrift is sindsdien alleen maar belangrijker geworden, al valt het misschien minder op. Wie betaalt met zijn bankpas, wil graag dat zijn pincode geheim blijft. Om te voorkomen dat iemand de code via de telefoonlijn aftapt en misbruikt, zal de pinlezer van de winkel de code eerst versleutelen en daarna pas doorbellen naar de centrale die de betaling regelt. Iets dergelijks gebeurt niet alleen bij de geldautomaat en bij betalingen over internet, maar bijvoorbeeld ook bij de afstandsbediening van een autoslot of een garagedeur.

Kubus
Wat gebeurt er precies bij zo'n versleuteling van een code? De twee ingewikkelde zinnen aan het begin van dit artikel bevatten een boodschap die uitstekend leesbaar is als de ontvanger weet dat hij elke letter moet vervangen door de voorafgaande in het alfabet. Voorwaarde is dat zender en ontvanger van de boodschap beiden weten welke truc ze moeten toepassen: ze beschikken samen over de sleutel van de code.

Deze sleutel is na enig staren op de zinnen wel te achterhalen. De kubus van Rubik maakt een veel ingewikkelder codering mogelijk. Als iemand een boodschap schrijft op de kubus door op elk vlakje een letter of een woord te plaatsen, en hij daarna de kubus een aantal keren in allerlei richtingen draait, is er echt geen touw meer aan vast te knopen. De verzender van de boodschap kan bijvoorbeeld met de ontvanger afspreken om de rechterschijf eerst tweemaal rechtsom te draaien, dan de middelste liggende schijf eenmaal linksom en daarna de linkerschijf tweemaal rechtsom. De ontvanger moet precies dezelfde draaiingen in omgekeerde richting uitvoeren om de boodschap te kunnen lezen.

In termen van cryptografie, de wetenschap van het geheimschrift, is de kubus het algoritme dat een pincode of een vertrouwelijke brief bewerkt. De afspraak tussen de zender en de ontvanger over de manier van het draaien van de kubus heet de sleutel. Wie de code wil ontcijferen, moet de sleutel, net als bij een slot, in omgekeerde richting draaien. Het aantal verschillende sleutels is vrijwel oneindig, want de kubus kent 43 miljoen miljoen miljoen verschillende combinaties. De kans dat iemand onbedoeld de sleutel van een ander gebruikt, is vrijwel nihil.

Kraken
Intussen is dit soort 'kubussen' –maar dan in ingewikkelde vorm– algemeen in gebruik om informatie te beveiligen. In 1974 ontwierpen computerbedrijf IBM en de National Security Agency (NSA) een standaardtechniek voor beveiliging, de Data Encryption Standard (DES). Deze sleuteltechniek raakte wereldwijd in gebruik bij de banken ter bescherming van financiële transacties. De sleutels voor DES zijn 56 bit (tekens) lang. Omdat er keuze is uit 256 verschillende tekens zijn er 72.000 miljoen miljoen verschillende sleutels mogelijk.

De glorietijd van de DES is inmiddels voorbij. Twee jaar geleden presteerde de organisatie Electronic Frontiers Foundation het om met 250.000 dollar aan rekenkracht in 56 uur een met DES beveiligde boodschap te kraken, door alle denkbare sleutels te proberen. De ontcijferde boodschap luidde: „Het is hoog tijd voor de 128-, 192- en 256-bit-sleutels.”

Zulke langere sleutels zijn veel veiliger: een 57-bit-sleutel heeft twee keer zoveel mogelijkheden als een 56-bit-sleutel. Een 128-bit-sleutel heeft 340 miljard miljard miljard sleutels (3,4 met 38 nullen). Op het eerste gezicht lijken die grote getallen veel op elkaar, maar het verschil tussen DES en een 128-bit-sleuteltechniek is enorm. Als een supercomputer in staat is om de DES niet in 56 uur maar in één seconde te kraken, dan duurt het uitproberen van alle 128-bit-sleutels door dezelfde computer 149 miljoen miljoen jaar.

Tegenstander minder
Intussen, nu bijna vier jaar geleden, is in de VS inderdaad een 'wedstrijd' gestart voor een nieuwe standaard, de Advanced Encryption Standard (AES), die werkt met langere sleutels. Vijftien teams uit twaalf landen gingen aan de slag. Onder hen waren programmeurs van grote bedrijven als IBM, beveiligingsbedrijf RSA Security, Deutsche Telekom en het Japanse telecombedrijf NTT. Daarnaast waren er diverse kleine teams, zoals dat van twee Vlaamse programmeurs, dr. Joan Daemen (1965) en dr. Vincent Rijmen (1970). Hun algoritme kwam twee weken geleden als beste uit de bus. Vorige week donderdag legde Rijmen aan zijn collega's van de Katholieke Universiteit Leuven uit waarom.

„Na de eerste ronde, tijdens een conferentie in Rome vorig jaar, bleven nog maar vijf van de vijftien teams over. We beproefden ook elkaars algoritmen en een ervan is door ons al gekraakt voor het algoritme bekendgemaakt werd. Dat betekende weer een tegenstander minder. Twee van de vijf overblijvende teams kwamen van buiten de VS. Dat leverde toen al verbazing op, maar vooruit, zeiden ze, dat is goed voor de competitie.” Ook IBM en RSA Security gingen naar de tweede ronde.

Mastodont
Nadat allerlei deskundigen de voorgestelde algoritmen aan de tand voelden, bleek het voorstel van de Vlamingen het beste. Rijmen: „Het algoritme van IBM is heel veilig, maar te ingewikkeld. Daardoor is het onmogelijk te verwerken in bijvoorbeeld een chipkaart. Dan moet je een halve Pentium-processor inbouwen. Het werkt wel zeer snel, maar er is geavanceerde techniek voor nodig. IBM is een groot bedrijf en heeft veel goede ontwerpers, die allemaal nuttige dingen aandragen, maar het resultaat is een mastodont.

Ons uitgangspunt is geweest dat we het zo veilig maken als echt nodig is, maar dat het verder zo eenvoudig mogelijk moet zijn. Als ons algoritme in een chipkaart gebouwd wordt, hebben we maar 36 van de beschikbare 256 bytes nodig. Het werkt daarom ook snel, in de orde van milliseconden.” Het tweetal heeft nog geen felicitaties van IBM ontvangen. „Ze zwijgen nog.”

Ook de andere concurrerende algoritmen waren niet goed afgestemd op toepassingen in smartcards. Rijmen: „In Amerika zijn chipkaarten niet zo ingeburgerd als hier. Hun creditcards werken met handtekeningen en niet met een chip. Daarom hebben ze er geen prioriteit aan gegeven.” Maar hebben de Belgen door hun eenvoud geen concessies gedaan aan de veiligheid? Duurt het werkelijk zo lang om hun 'kubus' te kraken? „Als je dat echt wilt, kun je beter niet nu beginnen, want dat is zinloos. Je moet minstens vijftig jaar wachten. Als de computers zich net zo snel ontwikkelen als ze nu doen, dus volgens de wet van Moore, dan kun je over vijftig jaar een computer bouwen voor 1 miljoen dollar die in een aantal dagen of een week alle sleutels kan proberen.”

Mobiele telefonie
Als Rijmen gaat uitleggen hoe het algoritme werkt, komt daar toch wat hogere wiskunde bij kijken. Een boodschap wordt eerst in blokken van 128 bit geknipt. Het programma verdeelt elk blok weer in zestien delen, 16 byte. Het resultaat ziet eruit als een Rubik-kubus, maar dan met zestien in plaats van negen blokjes op elk zijvlak, waarbij op elk blokje een woord van acht letters staat. De eerste rekenstap is het vervangen van iedere byte door een andere, volgens een bepaalde regelmaat. Daarna mengt het algoritme de kolommen met getallen door elkaar, en verschuift dan de rijen, net als het draaien aan de kubus. Ten slotte telt het programma bij elke byte een getal op. Het klinkt simpel, maar de Belgen hebben 45 bladzijden nodig om hun algoritme aan de beoordelingscommissie uit te leggen.

Het winnende algoritme van de Vlamingen heet Rijndael, naar de twee auteurs. Rijmen: „Eerst wilden we het Rijndam noemen, maar dat bleek de naam van een psychiatrische inrichting...” De Amerikanen breken er hun tong over en op een van de websites kunnen ze de juiste uitspraak beluisteren. Dat ze eraan moeten wennen, is zeker, want Rijndael gaat een belangrijke plaats innemen. Het instituut voor standaarden in de VS, NIST, verwacht dat Rijndael de komende kwarteeuw voldoet als nieuwe standaard. Als aan een aantal formaliteiten voldaan is, zal Rijndael komend voorjaar uitgeroepen worden tot federale standaard, wat betekent dat de Amerikaanse overheid het programma gaat gebruiken. Intussen is al duidelijk dat andere organisaties ook kiezen voor Rijndael: IPSec, een techniek om internetverkeer –en dus e-business– te beveiligen, de Amerikaanse veiligheidsdienst NSA, chipkaartenfabrikant Digipass, de derde generatie telefonie UMTS en een fabrikant die afstandsbedieningen maakt voor ramen.

Dat de nieuwe standaard door Europeanen gemaakt is, moet voor de Amerikanen extra zuur zijn, omdat die in het verleden erg krampachtig met hun beveiligingstechnologie omgegaan zijn. Export van goede cryptografieprogramma's was streng verboden. Rijmen: „De VS zijn altijd bang geweest dat software voor beveiliging terecht zou komen in programma's als Windows of Word. Als dat gebeurt, kan iedereen zonder enige moeite sterk beveiligde documenten maken. De Amerikanen voelen zich nog steeds de politie van de wereld, en ze tappen op grote schaal e-mail af om bijvoorbeeld terreuraanslagen te voorkomen. Nu kunnen ze nog gewoon 'afluisteren'. Maar nu de nieuwe standaard in Europa ontwikkeld is, zullen ze de exportregels wel verder versoepelen.”

Relevante websites:

National Institute of Standards and Technology:
www.nist.gov

Rijndael-pagina:
www.esat.kuleuven.ac.be

RSA Security, Amerikaans bedrijf dat zich bezighoudt met beveiliging van elektronische gegevens:
www.rsasecurity.com