Wie is August Kerkhof?

Hackers hebben de OV chip gekraakt en ‘m daarmee feitelijk nutteloos gemaakt. Moet er een keer van komen zou je denken, weer een bedrijf dat de broncode afschermt voor controle, net als met de stemcomputers een tijdje terug. En dus doet Rob Gonggrijp in de Volkskrant zijn zegje. Same old, same old zeg maar, om een beveiliging te kunnen testen moet je vertellen wat je hebt gedaan zodat de methodiek gecontroleerd kan worden.

Echter: in het ANP bericht dat door Nu.nl en Spits is overgenomen, staat de naam van ene August Kerkhof genoemd, die al in 1883 zou hebben aangetoond dat geheimhouding van de encryptiemethode een verkeerd uitgangspunt is. Okee, interesse gewekt, naam gegoogled en NUL relevante resultaten. Wel drie keer hetzelfde bericht over het kraken van de OV chip en een vermelding van de naam in een artikel over zelfdoding. Maar geen enkele vermelding van een geheimschriftdeskundige.

Via een lijst met cryptografen in Wikipedia blijkt de goede man echter wel te vinden, blijkt hij Auguste Kerckhoffs von Nieuwenhoff, en voornamelijk bekend te zijn vanwege zijn zes vuistregels voor het ontwerp van versleutelingen (zie wikipagina).

Maar Auguste toonde niet aan dat de versleutelingsmethode openbaar moest zijn, hij stelde het als een uitgangspunt op: “de veiligheid van een cryptografisch systeem mag niet mag van de geheimhouding van het versleutelingssysteem maar slechts van de geheimhouding van de sleutel afhangen

Misschien dat er lezers zijn die meer weten van encryptie en die hun licht hier op zouden kunnen laten schijnen, want is dit nou een persbericht dat half onjuist is of is wat er in Wikipedia staat onvolledig?

  1. 1

    Auguste gebruikt gewoon common sense; is je beveiliging gebaseerd op het geheimhouden van de methode, dan hoeft ie maar 1x gekraakt te worden en de hele methode is onbruikbaar. Voorbeelden zijn DVDs (CSS), WEP en WAP (Wifi beveiliging) en nog veel meer. Eenmaal gekraakt, altijd gekraakt.

    Is je beveiliging echter gebaseerd op het geheimhouden van een code dan kunnen individuele geencrypte ‘berichten’ altijd middels brute force worden gevonden (je weet immers de methode en kunt ‘gewoon even’ alle sleutels proberen). Je moet echter wel voor ieder bericht opnieuw beginnen. Het risico is dus aanmerkelijk kleiner.

    Oftewel, in termen van chipkaarten: is je beveiliging gebaseerd op een geheime methode dan is ie waterdicht tot de methode bekend wordt. Daarna is van beveiliging feitelijk geen sprake meer. Is je beveiliging echter gebaseerd op een geheime sleutel dan zal hier en daar iemand misschien wel vals kunnen spelen door middels brute force 1 chipkaart te kraken, maar de totale schade blijft dan natuurlijk veel beperkter.

    Dit alles gaat feitelijk om computer-capaciteit. Als het uitlekken van de methode voldoende is dan kun je in zeer korte tijd iedere chip ‘kraken’; een computer kan de methode immers heel snel uitvoeren. Is de beveiliging gebaseerd op een geheime sleutel, dan kun je die kraken door alle combinaties te proberen. Dat kost veel meer computer-capaciteit en je kunt derhalve ook uitrekenen hoeveel procent van de chipkaarten met de huidige totale computer-capaciteit ter wereld te kraken is en daar rekening mee houden.

    Om die reden zie je in de praktijk ook dat steeds grotere sleutels worden gebruikt naarmate de computer-capaciteit toeneemt. Dat gebeurt simpelweg om het brute force risico te minimaliseren. Er zijn algorithmes waarbij je langer bezig bent dan het universum bestaat om 1 sleutel te kraken.

  2. 7

    @JSK
    Dat is de tijd die economen claimen als er geroepen wordt om efficiëntie als er geld mee verdient kan worden.

    Om kort te gaan: creativiteit voordat het economie wordt.

    Om kort te gaan: economie is de dood van de creativiteit.

    Om kort te gaan: economie is de dood van de tijd.

  3. 8

    Jean-Guillaume-Hubert-Victor-François-Alexandre-Auguste Kerckhoffs von Nieuwenhof is dan ook lastig te googlen.

    Aanvulling op zmc: ook slechte systemen gebruiken sleutels, maar die sleutels zijn gewoon sneller te berekenen (slechte random-number generators zijn hier ook oorzaak van), of je kan er gewoon omheen zonder de sleutel nodig te hebben. Systemen waarvan openlijk wordt bekendgemaakt hoe ze werken, maar waar je de sleutels niet van kan berekenen in een mensenleven zijn gewoon veiliger.

  4. 9

    Het verhaal van zmc klopt, maar er is een extra probleem met chipkaarten. Dat zijn zwakke processoren op een minuscuul batterijtje. Een brute force aanval van een laptop op een chipkaart wordt altijd (en razendsnel) gewonnen door de laptop.

    Daarom moet de methodiek van een chipkaart geheim blijven. Het is niet de beste manier van encryptie, maar de beste is in dit geval niet realiseerbaar.

    De processoren van chipkaarten worden zo ontworpen dat je de werking niet kunt achterhalen, bijvoorbeeld omwoeling met staaldraad om te voorkomen dat de elektrische activiteit te meten valt. Op die laatste manier zijn de eerste chipkaarten gekraakt: kijken hoeveel warmte de chip per rekenstap genereert en daaruit afleiden welke bewerking werd uitgevoerd (vermenigvuldigen kost bijvoorbeeld meer energie dan optellen).

  5. 10

    @Christian: Hoewel in de praktijk 100% waar, is er natuurlijk heel wat winst te boeken door de methodiek in hardware te implementeren in plaats van in software die dan weer draait op generieke hardware. Maar dat is een theoretisch verhaal;-|

  6. 14

    Jargon, bah. In het VP (rara) is ooit een resolutie gestemd tegen afkortingen en hoofdletteritis. Niet democratisch, maatschappelijk vervreemdend, niet in overeenstemming met actieplan geletterdheid, enz.

  7. 15

    Zie ook: http://www.kerckhoffs-institute.org/
    Een instituut (samenwerking tussen UT, TU/e en RU) dat onderzoek doet naar beveiling in de breedste zin van het woord.

    “Is je beveiliging echter gebaseerd op het geheimhouden van een code dan kunnen individuele geencrypte ‘berichten’ altijd middels brute force worden gevonden (je weet immers de methode en kunt ‘gewoon even’ alle sleutels proberen). Je moet echter wel voor ieder bericht opnieuw beginnen. Het risico is dus aanmerkelijk kleiner.”

    Juist, het idee achter moderne encryptie-algoritmes is dan ook dat het niet feasible is om het brute-force te doen. Voor een goede introductie tot 1 van de meest gebruikte publieke-key-encryptie-algoritmes kijk op: http://en.wikipedia.org/wiki/RSA.

  8. 16

    @ 1 en @ 15.

    Eh ja, what 15 said…

    Dat “altijd middels brute force” van 1 wordt in de praktijk “altijd met een kans van 1 op N binnen de komende M jaar” voor N zeer, zeer groot en M willekeurig.

    Of anders gezegd, in de praktijk kun je als je een goede technologie gebruikt die “altijd” simpelweg vervangen door “niet” — met gebruik van goede algoritmes kun je N namelijk zo verschrikkelijk groot maken dat ook X keer snelle verwerking (computers die X keer zo snel worden) geen nuttig effect meer heeft op de te verwachtte tijd om het bericht te ontcijferen. Een half miljoen jaar is net zo nutteloos als als een heel miljoen.

    Alleen nog uitkijken voor onverwachtte doorbraken in de wiskunde… ;-)

  9. 18

    @Christian: Er valt in zeldzame gevallen wat te zeggen voor het geheimhouden van methodieken. Dat zouden situaties zijn met gevaarlijke techniek of techniek die niet beschikbaar is voor het algemene publiek, waaraan gewerkt wordt door een team van experts en waar er geen noemenswaardige veiligheidsbijdrage te verwachten is uit peer review. Voorbeeld: codesleutels voor het lanceren van raketten.

    In dit geval als ze een zinnige manier van hardware obfuscatie hadden gebruikt had het misschien iets langer geduurd, maar gekraakt was ie toch. Vooral ook omdat het ontwerp lijkt op iets wat door een stagiair in elkaar is gegooid (voor een snelle Time to Market). Ik weet het niet zeker maar met de genoemde (bizar korte) sleutellengtes zou de boel misschien zelfs te kraken te zijn door te luisteren naar de communicatie in de lucht.
    RFID is een (nu al) ontzettend wijdverspreide technologie waar chips, lezers (vanaf €120 ofzo) en schrijvers voor het publiek beschikbaar zijn. In dit geval valt er zeker veel te verwachten van het open gooien van specificaties en fouten zoals die hier gemaakt zijn te vermijden.

    Ja, er zijn technische beperkingen op formaat en stroomverbruik, maar ja, er worden nu al open onderzoeken gedaan naar welke concessies er gedaan kunnen worden om te komen tot veilige systemen.

    Mijn stukje: http://alper.nl/dingen/2008/01/mifare-gekraakt/