donderdag - 03 mei 2001
2:48 :: $G :: The final countdown

 

Inhoud

Inleiding
De techniek
Certificering
De doelstellingen
(Niet) Gewenste procedures
Wat anderen zeggen
Wat TTP's zelf zeggen
Tenslotte

Inleiding

In de vorige column heb ik flink geageerd tegen de praktijken van zogenaamde "Trusted Third Parties" (TTP's) en het gebruik van x509 certificaten en de daarmee samenhangende infrastructuur. Gestimuleerd door alle reacties heb ik mezelf nogmaals aan de schrijftafel gezet om een (definitief) overzicht te geven van de door TTP's gehanteerde technieken, voorafgaande doelstellingen, gewenste procedures en huidige praktijken. Tevens geef ik aan wat anderen hiervan vinden en wat de desbetreffende TTP's zelf zeggen.

De techniek

Een digitaal certificaat-paar bestaat uit een publiek en een privé gedeelte en is niets meer of minder dan twee hele grote getallen met daaraan gekoppeld een aantal labels (zoals een emailadres). De twee getallen zijn met elkaar verbonden zoals een Feyenoord-fan aan De Kuip of Willem-Alexander aan Maxima. Twee verschillende certificaten kunnen dezelfde public key hebben. De privé sleutel is in dat geval gelijk. We spreken dan over hetzelfde sleutelpaar. De basis van de betrouwbaarheid van een certificaat ligt in het sleutelpaar dat er voor wordt gebruikt. Specifieker, de algoritmes en sleutellengtes. En daar ligt dus ook een potentieel risico.

Tijdens het aanmaken van een sleutelpaar worden de publieke en privé sleutel van elkaar gescheiden en voorzien van kenmerken zoals Naam, Uitgevende instantie, Gebruikt algoritme en Sleutellengte en (niet te vergeten) de Geldigheidsduur en de Certificaat doeleinden.

Het Publieke Certificaat wordt uitgedeeld aan derden, zodat deze informatie kunnen coderen (versleutelen) voor - en digitale handtekeningen kunnen controleren van het Privé Certificaat.

Het Privé Certificaat wordt niet uitgedeeld. De eigenaar van dit certificaat kan hiermee ontvangen versleutelde informatie decoderen en digitale handtekeningen plaatsen.

Heeft men de beschikking over voldoende computerrekenkracht dan is het mogelijk om met behulp van het Publieke Certificaat (de publieke sleutel) het Privé Certificaat (de privé sleutel) te berekenen. Om dit proces (genaamd factoring) nagenoeg onmogelijk te maken is het van belang dat 1) een betrouwbaar algoritme is gebruikt en 2) de sleutellengte groot genoeg is. Des te groter des te beter is het devies. Voor eindgebruiker sleutels wordt aangenomen dat een Publieke sleutellengte van 1024 bits voldoende is.

Certificering

Een certificaat ontleent zijn geldigheid (en dus betrouwbaarheid) aan de digitale handtekening die er op is geplaatst. Bij het plaatsen ervan wordt gebruik gemaakt van een ander sleutelpaar. Binnen de x509 standaard betekent dit dat een certificaat pas geldig is indien het is getekend door een hogerliggend certificaat. Deze hiërarchische structuur heeft in theorie geen einde, wat wil zeggen dat bovenaan in deze structuur een mythische entiteit het ultieme certificaat bezit dat door iedereen wordt / moet worden vertrouwd. Door het instellen van zogenaamde root certificaten, die zichzelf certificeren, wordt bereikt dat de keten van vertrouwen (certificate chain) kan worden geverifieerd tot aan een bepaald certificaat.

Om vertrouwen tussen organisaties en personen te kunnen delen is het concept van de TTP in het leven geroepen. De TTP is eigenaar van een root certificaat (welke trouwens in meerdere smaken te verkrijgen zijn, allemaal gebaseerd op dezelfde mathematische technieken, maar met verschillende labels of kenmerken). Het idee is dat, indien iedereen de TTP vertrouwt (of beter gezegd, het root certificaat dat deze gebruikt), bedrijven en consumenten sneller en betrouwbaarder zaken met elkaar kunnen doen. De TTP zorgt namelijk voor de verificatie van de klantgegevens zoals de naam, voordat een sleutelpaar met certificaten wordt uitgegeven. Op deze wijze wordt een valide relatie aangebracht tussen het certificaat en de daadwerkelijke eigenaar/gebruiker van dat certificaat.

Doordat de TTP het certificaat voorziet van een digitale handtekening voordat het wordt overhandigd aan een klant, kan een derde partij (die de klant van de TTP nog nooit heeft ontmoet, laat staan een onderzoek heeft gedaan naar de betrouwbaarheid ervan) blind varen op het gedelegeerde vertrouwen dat in de TTP wordt gesteld. Het enige dat deze nieuwe klant moet doen om het vertrouwen te krijgen, is het controleren van de handtekening.

<< een certificate chain, met aangegeven hoe digitale handtekeningen worden geplaatst op onderliggende certificaten.

>>het controle traject. Nadat de handtekening op het certificaat van CA3 is gecontroleerd met het Publieke certificaat van CA1 wordt de handtekening op CA1 certificaat gecontroleerd met het Publieke root certificaat.

Vanuit theoretisch oogpunt is dit natuurlijk een fantastische techniek, want het haalt een zware administratieve last weg bij organisaties die aan het e-commerce geweld willen deelnemen. Voorwaarde is dan natuurlijk wel dat iedereen zichzelf conformeert aan de regels die er zijn met betrekking tot de gebruikte techniek en procedures (oftewel het vertrouwen).

De praktijk wijst echter anders uit. Allereerst is het zo dat een organisatie zelf de verantwoordelijkheid neemt tot het controleren van de zakenpartner, bijvoorbeeld door uittreksels op te vragen bij de KvK of naar de klantenkring van desbetreffende potentiële partner te kijken. Als tweede moet worden opgemerkt dat het een organisatie niets in de weg staat om haar eigen root certificaten te maken en aldus een certificate chain op te zetten die volledig in eigen beheer is. Op dit moment ontbreekt het aan regelgeving voor een duidelijke, definitieve, controle op de validiteit van een certificaat door de eindgebruiker (organisatie of persoon).

Als voorbeeld noem ik de on-line banking diensten die op dit moment via het internet worden aangeboden. Op 25 April j.l. heb ik een aantal (binnen- en buitenlandse) online sites getest. De resultaten zijn hier te vinden. Zonder een oordeel te geven over de kwaliteit en betrouwbaarheid van de dienstverlening op deze sites kan in ieder geval één conclusie worden getrokken: het op een juiste, correcte wijze inzetten van cryptografie is ogenschijnlijk veel moeilijker dan men denkt. Zo moeilijk, dat zelfs de meest gerenommeerde organisaties geen uniforme aanpak hiervan kunnen laten zien. En dat is vreemd, want het controleren van het beveiligingsniveau is alleen mogelijk indien duidelijk is hoe en waarom voor een bepaalde aanpak is gekozen en hoe daar vervolgens uitvoering aan is gegeven (vraag dat maar eens na bij uw lokale EDP-auditor). Willekeur lijkt hoogtij te vieren in dit segment van de e-conomy en dat brengt de veiligheid en het vertrouwen niet dichterbij.

De doelstellingen

De Nederlandse overheid heeft vrij precies omschreven wat zij onder een TTP verstaat en waar een TTP aan moet voldoen. Door staatssecretaris de Vries van het Ministerie van Verkeer en Waterstaat werd op 3 Juni 1999 in een notitie aan de tweede kamer het nationale TTP-project voorgesteld. In dit kamerstuk wordt de rol van een TTP als volgt omschreven: "Een Trusted Third Party (TTP) is een vertrouwde derde die diensten aanbiedt om elektronische gegevensuitwisseling betrouwbaar te maken en is in die zin een belangrijk middel om elektronische handel tot bloei te laten komen". En "TTP's kunnen door het leveren van specifieke diensten een centrale rol spelen bij de ontwikkeling van een betrouwbare infrastructuur voor electronic commerce". Verder wordt een onderscheid gemaakt bij het stellen van randvoorwaardes tussen verschillende TTP-diensten, namelijk TTP-diensten voor authenticiteit en integriteit (digitale handtekening) en TTP-diensten voor vertrouwelijkheid (versleuteling).

In de Memorie van toelichting op de miljoenen nota 2001 van het Ministerie van Justitie wordt op pagina 9 de overheidsbemoeienis met betrekking tot TTP's als volgt omschreven: "Met de ministeries van Economische Zaken en Verkeer en Waterstaat en relevante marktpartijen [LK, wie zijn dat dan??? Degenen met de beste "lobby"?] werkt justitie mee aan een Nederlandse infrastructuur van gecertificeerde TTP's. Deze infrastructuur die begin 2001 operationeel moet zijn, moet waarborgen dat het in TTP's gestelde vertrouwen gerechtvaardigd is."

Wat echter blijkt is dat we, doordat er geen directe regulering is vanuit de overheid, te maken krijgen met een wildgroei van TTP's die er allemaal hun eigen procedures en richtlijnen op na houden. Weliswaar wordt voldaan aan de bepalingen die wettelijk zijn vastgelegd, maar voor de gebruiker van de certificaten wordt het alleen maar moeilijker gemaakt. En dat druist linea recta tegen mijn drie gouden vuistregels in.

(Niet) Gewenste Procedures

In TTP land is het common practice om risico's daar te leggen waar ze thuis horen. De Certificate Practice Statements die door TTP's worden gebruikt om de eindgebruiker duidelijkheid te verschaffen over de gehanteerde normen en waarden waar het het uitdelen van certificaten betreft, zijn doorspekt met juridische termen en beslaan gemiddeld meer dan 50 A4 pagina's. In elke CPS die ik tot nu toe gelezen heb (die van Verisign, KPN Telecom en Globalsign) wordt aangehaald dat de gebruiker, door het accepteren van een certificaat, verklaart dat hij/zij op de hoogte is van alle ins- en outs van public-key cryptografie. Het grote aantal exoneratieclausules legt uiteindelijk het risico volledig bij de certificaat accepterende partij. U.

Echter, zonder deze procedures is het helemaal niet mogelijk om het werk van een TTP te controleren.

Wat anderen zeggen

In 1998 schreef mr. Pieter Kleve een artikel voor het tijdschrift Computerrecht over het nut van TTP's. Op fijnzinnige wijze wordt daarin aangegeven dat het dienstenportfolio van TTP's voor het overgrote deel van nul of generlei waarde is.

Simone van der Hof schreef in 1998 een artikel in hetzelfde tijdschrift over het CPS van BelSign met als titel "Zwartepieten met certificatenaanbieders; De risicoverdeling in de Certification Practice Statement van BelSign". Hierin valt het volgende te lezen "Tijdens de aanvraagprocedure wordt de (URL van de) CPS genoemd in de gebruikersovereenkomst en kan de aanvrager meteen doorklikken naar het document om het te raadplegen. Een aspect dat in dezen van invloed kan zijn, is het uitgebreide karakter van de CPS. Zoals gezegd omvat de CPS meer dan alleen de rechten en plichten van partijen en wordt hierin tevens uitgelegd hoe het certificeringsproces in zijn werk gaat. Dat betekent dat de CA in dit document een enorme hoeveelheid informatie verstrekt; de BelSign CPS omvat uitgeprint dan ook 80 pagina's die door de wederpartij moeten (kunnen) worden bestudeerd alvorens tot het afsluiten van een overeenkomst wordt overgegaan".

Roger Clarke is nog veel kritischer dan ik en ventileert zijn mening via zijn eigen website (gehost door de Australian National University). Hij haalt heel terecht aan dat het onmogelijk is om te detecteren dat een Privé certificaat is gestolen, gekraakt of op een andere manier openbaar is geraakt als daar geen ruchtbaarheid aan is gegeven. Tevens zijn er grote problemen met het op een zodanige manier vastleggen van een Certificate Revocation List dat deze ook werkelijk gebruikt kan worden. En de enorme hoeveelheid specificaties die bij het x509 protocol horen maken de zaak ook alleen maar complexer.

In dit laatste opzicht herinner ik mezelf nog de legendarische woorden die een oud baas van me ooit tegen me zei: "KISS". Ik reageerde met "Pardon?", waarop me werd verteld "Keep It Simple Stupid!". Mijn leven werd nooit meer hetzelfde.

Bruce Schneier heeft al meerdere malen de mogelijkheden en onmogelijkheden van PKI systemen aangehaald. Zijn "10 Risks of PKI" zijn een begrip (tenminste voor mij dan).

Adrian McCullagh (National Director for Electronic Commerce) geeft in dit artikel duidelijk aan dat zonder een 100% betrouwbaar systeem i.h.g.v. een geschil de partijen die wederzijds op een digitale handtekening vertrouwen juridisch zeer zwak staan.

Carl Ellison geeft een kort overzicht over de mogelijkheden van SPKI/SDSI in relatie tot een web of trust.

Ed Gerck schreef een vrij compleet overzicht van de verschillende certificatie systemen die er zijn in "Overview of Certification Systems: X.509, PKIX, CA, PGP and SKIP". Wie wil weten wat er nog meer te koop is kan hiermee beginnen. De "normale mensentaal"-vertaling die hij heeft gegeven van de disclaimer die gebruikt wordt door diverse TTP's is ook goed voor een minzame glimlach.

De lijst is nog veel langer...

Wat TTP's zelf zeggen

In de FAQ van Thawte (a Verisign company) wordt letterlijk aangegeven dat zogenaamde server certificaten (waarmee men verbindingen tussen uw computer en een web site versleutelt) en persoonlijke certificaten (waarmee email kan worden versleuteld en digitale handtekeningen kunnen worden gezet) exact hetzelfde formaat gebruiken. De technieken die worden gebruikt om beide type certificaten te maken zijn dus gelijk. De garantie (tegen gevolgen van misbruik en fraude) die men bij beide certificaten verkrijgt kan echter verschillen. Hiermee kan dus het prijsverschil worden verklaard dat voor de diverse type certificaten geldt. Het is de verzekeringspremie die men betaalt. Alleen, hoe zat het ook alweer met de risicoverschuiving in een CPS?

Tenslotte

Iedereen die denkt dat ik niet geloof in e-commerce en PKI systemen kan ik vertellen dat dit niet het geval is. Ik verafschuw de systemen niet, noch wantrouw ik de toekomst ervan. Ik denk alleen dat de wijze waarop ze aan de man worden gebracht wel eens mag veranderen. Iedereen die mij kent weet dat ik er een duidelijke filosofie op na houd. Ik ben recht door zee en zeg waar het op staat. Af en toe ben ik wel eens "grof in de bek" en mag ik wel eens "onverwachts van rechts komen". Dit doet echter niets af aan de feitelijke, inhoudelijke discussie die ik op gang breng. Ik heb een hekel aan geld verbranden en voor zover het politiek betreft: graag, maar dan wel waar het thuis hoort; in de politiek.

Ik ben ervan overtuigd dat we het beter kunnen doen, als we maar willen. Twintig jaar ontwikkeling op dit gebied heeft ons alleen maar verder van ons doel gebracht. Dit is niet alleen een gigantische verkwisting van tijd en geld, maar (en voor al mijn concullega's uit het veld:) het houdt ook "de business" tegen. De algemene acceptatie van cryptografische technieken is nog ver weg en als we niet beginnen met uniformiteit bieden aan, dus betrouwbaarheid wekken bij, onze klanten, dan lopen we over 5 jaar nog steeds te ploeteren. We hebben een lange weg te gaan en als ik voorop kan lopen, dan zal ik het niet laten.

Als afsluiter een quote van Carl Ellison's homepage. De quote maakt 1 facet van het probleem overduidelijk:

"Humans are incapable of securely storing high-quality cryptographic keys, and they have unacceptable speed and accuracy when performing cryptographic operations. (They are also large, expensive to maintain, difficult to manage, and they pollute the environment. It is astonishing that these devices continue to be manufactured and deployed. But they are sufficiently pervasive that we must design our protocols around their limitations.)"

Leon Kuunders