Na de Diginotar-hack is het vertrouwen in de Public Key infrastructure ( PKI) tot een historisch dieptepunt gedaald. Dat zegt technisch adviseur Marco Davids van SIDN. SIDN is de 'registry' van het Nederlandse 'country code top level domain' (TLD).
'Er moet heel wat gebeuren om dat vertrouwen weer te herstellen', zegt Davids. 'Alleen wat? Er is geen pasklare oplossing. DNS based Authentication of Named Entities (DANE) is het meest concrete antwoord op dit moment, zij het dat DANE ook nog in een vroege ontwikkelingsfase verkeert.'
DANE
'DANE is een uitbreiding op het DNS-protocol, net als DNSsec dat is', legt Davids uit. 'Van een PKI-certificaat van een website wordt een soort pasfoto gemaakt, een vingerafdruk zeg maar, ofwel een cryptografische hash. Die wordt in DNS opgenomen. Dat resource record wordt vervolgens beveiligd met een DNSsec-handtekening.'
'Wanneer een browser bijvoorbeeld op https://www.sidn.nl komt, ontvangt hij het certificaat, dat hij kan valideren op de klassieke manier. Maar daarnaast kan de browser ook de cryptografische hash berekenen en via een DNS-query het bijbehorende TLSA record opvragen en vervolgens beide gegevens met elkaar vergelijken.'
'Klopt de vergelijking, dan heeft de browser een extra aanwijzing dat het certificaat in orde is. Op de klassieke manier kan alleen worden vastgesteld of het certificaat geldig is, maar niet of het ook het echte certificaat is (of de uitgever klopt bijvoorbeeld). Met DANE kan dat dus wel.'
Einde SSL-certificaten business
DANE voegt, in combinatie met DNSsec een extra beveiligingslaag toe, aldus Davids. 'En dus wordt het met DANE de kwaadwillenden weer ietsje moeilijker gemaakt. Meer niet vrees ik. Het is dus niet zaligmakend.',
Het protocol heeft wel een 'aardige bijkomstigheid', aldus Davids. 'Met DANE kun je ook self signed-certificaten verifiëren. Dat is de reden dat sommigen denken dat DANE het einde is van de duur betaalde SSL-certificaten business.'
Interview
Lees ook het hele interview met Davids over DNS based Authentication of Named Entities (DANE): 'DANE is extra barrière voor PKI-hacker'.
Dit komt erop neer dat een certificaat niet door één maar door (hooguit) twee partijen die je verondersteld wordt te kunnen vertrouwen wordt ondertekend. Dat geeft inderdaad extra zekerheid, maar dat voordeel valt weer weg als je de CA uit het plaatje verwijdert.
Een certificaat door meerdere partijen laten tekenen levert een web of trust op, zoals we al heel lang van PGP kennen, maar dan met een nadruk op professionele partijen die door de browserleveranciers bij voorbaat als betrouwbaar zijn aangemerkt.
Is het niet verstandig om het mogelijk te maken om certificaten door meerdere CA’s te laten ondertekenen in plaats van slechts een? Het verwijderen van een rootcertificaat raakt dan alleen diegenen die zich maar door één CA hebben laten tekenen, en je kan differentiëren in de betrouwbaarheid van CA’s zodat het bestaan van onzorgvuldige prijsvechters niet het maximale vertrouwensniveau bepaalt, wederom á la PGP.
En zou de overheid niet, op een manier die vergelijkbaar is met het verstrekken van paspoorten en identiteitskaarten (een offline-proces dat werkbaar is omdat het gemeentehuis gewoon in de buurt is), een belangrijke CA voor iedereen moeten zijn?
Dat het vertrouwen in PKI op historisch dieptepunt is aangekomen is terecht zoals bijvoorbeeld te lezen is in het paper dat op http://cryptome.org/ssl-mitm.pdf gedownload kan worden. Een Peer-to-Peer (P2P) security and authentication systeem heeft deze problemen niet in tegenstelling tot een trusted third party (TTP) systeem zoals PKI. Op de link http://bit.ly/fqxwuala is een korte presentatie te vinden van een operationeel systeem dat gebaseerd is P2P security en authentication en true quantum randomness.
Erg bijzonder dat nu de discussie gaat over het PKI mechanisme. De Diginotar hack is ontstaan door nalatigheid van Diginotar, niet door het PKI-instrument.
De waarde van een PKI-mechanisme wordt bepaald door de partij die de certificaten beheerd. Diginotar als organisatie is door de mand gevallen, PKI niet. Als er nu nog organisaties zijn die zaken willen doen met Diginotar, dan moet je deze organisatie niet vertrouwen. De les: Veiligheid is geen retail product en is een combinatie van techniek en afspraken waar je je aan moet houden (=mensenwerk).
Ik ben het roerend met F. eens. het PKI Systeem is niet ineens slecht, het is een bijzonder goed systeem. Echter,als je als trusted third party er een potje van maakt, dan is het einde zoek. Het is een goede practice om een Root CA offline en uitgeschakeld in een beveiligde omgeving te plaatsen (als je Root CA de Issuing CA heeft gesigned, heb je de Root CA niet meer nodig). Daarnaast kan je Issuing CA’s prima beveiligen voor ongeoorloofd gebruik door middel van HSM’s en bijvoorbeeld SMartcard Logons verplicht te stellen. Oke, beheer wordt dan misschien wat lastiger, maar gaat het nu om eenvoudig beheer of hoge veiligheid. Diginotar is het bewijs dat er onvoldoende wettelijke en juridische grondslag ligt voor een organisatie die namens de overheid certificaten mag uitdelen. Oke, de PKI-Overheid Issuing CA van Diginotar was dan wel niet gehacked, maar als ze het ene systeem op een bepaalde manier beheren, doen ze dat ook met het andere. Wat ook laakbaar is, is dat Logius (de overheidsorganisatie die toeziet op CSP’s van PKI-overheid) wel een dik boek heeft met Eisen voor een CSP, maar op geen enkele manier is te achtehalen welke maatregelen zij gaat treffen als een CSP zich niet aan de regels blijkt te houden. De status van CSP van Diginotar is zelfs nog niet ingetrokken. De minister had kunnen getuigen van een hoge mate van zorg omtrent veiligheid op het internet als hij direct de systemen van Diginotar had laten ontmantelen, de Root CA had laten verwijderen uit Root Lists, en de CSP status had ingetrokken. Oke, dan was er een paar dagen last geweest tussen bepaalde diensten, maar dan was het vertrouwen niet zo zwaar beschaamd.
Het wordt tijd dat zowel overheden als internationale organisaties als ISO, IEEE, IETF een pak bindende richtlijnen gaan opzetten voor CA’s, en dat overheden hier juridische eisen (wetgeving en maatregelen) aan gaan verbinden. Normale internet gebruikers zijn namelijk toch afhankelijk van de goede beheersvoorwaarden van security op het internet. Een bank zal jou aansprakelijk houden als iemand via een vals certificaat je verleidt bij hem te bankieren en zo je rekening plundert, daar jij het tegenbewijs moet leveren.