Invoering van een pki (‘public key infrastructure’) is noodzakelijk voor een goed beveiligde elektronische overheid. Door het ontbreken van een integratiebeleid en uniforme standaarden zitten Amerikaanse overheidsinstellingen straks opgezadeld met pki’s die niet samenwerken. Een onderbemande interdepartementale stuurgroep probeert een warboel aan initiatieven aan elkaar te breien. Teake Zuidema duikt in deze lastige problematiek, waaruit de Nederlandse overheid wellicht lering kan trekken.
In februari 2001 publiceerde de United States General Accounting Office een zeer lezenswaardig en leesbaar rapport ‘Advances and remaining Challenges to Adoption of Public Key Infrastructure Technology’. Het is een rapport over de stand van zaken bij de invoering van pki binnen verschillende onderdelen van de Amerikaanse federale overheid en staat op http://www.gao.gov/cgi-bin/getrpt?rptno=gao-01-277.
Het Amerikaanse Congres heeft een hele rits wetten aangenomen die het gebruik van het web en andere internetapplicaties moeten stimuleren bij transacties tussen overheid en burgers en tussen overheidsinstellingen onderling. Een mooi voorbeeld daarvan is de Government Paperwork Elimination Act van 1998. Het ministerie van Energie, het ministerie van Defensie en Nasa lopen voorop bij het invoeren van elektronische communicatie en transacties. Nu nog de beveiliging.
Kwetsbaar
Om de mogelijkheden van ‘electronic government’ optimaal te benutten is er, volgens de schrijvers van het rapport, voor veel transacties een niveau van beveiliging nodig dat een stuk verder gaat dan het intikken van een wachtwoord of het benutten van het SSL-protocol (Secure Sockets Layer). Een pki moet het de overheid mogelijk maken niet alleen informatie te verspreiden via het web maar ook zaken als beursaanvragen, belastingopgaven, subsidieaanvragen en contracten met leveranciers veilig af te handelen. Zonder een pki zijn deze elektronische transacties veel kwetsbaarder voor fraude en misbruik dan bij een traditioneel op papieren documenten gebaseerd systeem. In de afgelopen jaren is verschillende malen gebleken dat de manier waarop federale overheidsinstellingen gevoelige elektronische data beschermen absoluut onvoldoende is.
Verschillende overheidsinstellingen zijn reeds gestart met proefprojecten. Het gaat om de implementatie van pki’s die moeten zorgen voor de identificatie van de gebruikers, bescherming van de privacy, integriteit van de data en de wettige geldigheid van elektronische communicatie en transacties (zie kader). Elke instantie moet voor zichzelf bepalen welke transacties de volledige bescherming van een pki nodig hebben en welke niet. Dat is een belangrijk onderdeel van de implementatie van pki’s.
De Office of Management and Budget, de instantie die het ict-beleid van de federale overheid coördineert, noemt vier categorieën elektronische transacties die de maximale bescherming nodig hebben die een pki kan bieden. Het gaat dan om: transacties waarbij geld wordt overgemaakt, transacties waarbij de participanten financiële of wettelijke verplichtingen aangaan, transacties waarbij informatie wordt uitgewisseld die valt onder de bescherming van de Privacy Act of die te maken heeft met de nationale veiligheid, en tenslotte transacties waarbij één van de partijen een wettelijke verplichting nakomt. Ieder ministerie zal zelf moeten vaststellen voor welke transacties welk niveau van bescherming nodig is.
Te weinig macht
Om te voorkomen dat de verschillende pki-strategieën van de afzonderlijke ministeries en andere overheidsinstellingen leiden tot chaos is er in 1998 een interdepartementale werkgroep in het leven geroepen. Deze Federal Public Key Infrastructure Steering Committee (Fpkisc) heeft als belangrijkste taak het op poten zetten van een Federal Bridge Certification Authority, een mechanisme dat de verschillende pki’s die (gaan) opereren binnen de overheid laat samenwerken in één netwerk. Zo’n netwerk is nodig om transacties mogelijk te maken tussen ministeries onderling (cross-certification). Let wel, deze Fpkisc is een enigszins onderbemande (drie stafmedewerkers) werkgroep die moet proberen via overreding ministeries op één lijn te krijgen. Dat blijkt in de praktijk niet eenvoudig.
In eerste instantie bepleitte deze Fpkisc het in het leven roepen van een enkele ‘root’ federal Certification Authority, die als enige gerechtigd zou zijn certificaten te verstrekken aan de verschillende overheidsinstellingen. Deze instellingen zouden dan op hun beurt weer certificaten doorgeven aan afdelingen en onderafdelingen, en uiteindelijk aan werknemers, partners in het bedrijfsleven en burgers die met de overheid interacteren. Deze top-down hiërarchische (en uniforme) benadering wordt momenteel ingevoerd door de Canadese overheid. De schrijvers van het rapport concluderen, met nauwelijks verholen spijt, dat de Fpkisc te weinig macht heeft en te laat in actie kwam om dezelfde oplossing door te drukken binnen de Amerikaanse federale overheid.
Eén centrale federale ‘root’ Certification Authority is binnen de Amerikaanse federale overheid niet langer een optie. De overheidsinstellingen zijn al te ver gevorderd met de invoering van pki-producten en -diensten van verschillende leveranciers. De Fpkisc werkt nu aan een lossere structuur die deze verschillende pki’s en pki-producten in één netwerk kan verenigen. In april 2000 werd voor het eerst een prototype van een Federal Bridge Certification Authority getest waarbij digitale certificaten werden uitgewisseld tussen de Certification Authorities van verschillende ministeries en de Canadese overheid. Het programma werkte, maar wel zeer traag.
Een van de grootste problemen bij het aan elkaar breien van verschillende pki’s is uiteraard dat iedere overheidsinstelling zijn eigen criteria ontwikkelt op welk niveau (’trust level’) een bepaalde categorie transacties beschermd moet zijn. Voor het aanvragen van een subsidie bij het ministerie van Landbouw kan een laag niveau van beveiliging bestaan. Dezelfde aanvraag bij het ministerie van Defensie kan een topgeheim zijn met de maximale beveiliging die de pki kan bieden. Het ministerie van Defensie zal niet met het ministerie van Landbouw over de aanvraag willen communiceren zolang het niet de zekerheid heeft dat er een zelfde niveau van beveiliging bestaat.
Hinderpalen
De schrijvers van het rapport ‘Advances and remaining Callenges to Adoption of Public Key Infrastructure Technology’ menen dat er nog heel wat hinderpalen moeten worden opgeruimd voordat er sprake kan zijn van een algehele implementatie van pki’s binnen de federale overheid. Ze zien problemen op de volgende terreinen: interoperabiliteit (gebrek aan technische standaarden), schaalbaarheid van pki’s, hoge implementatiekosten, het formuleren van regels en procedures die vertrouwen moeten genereren in het systeem en tenslotte de kennis omtrent beveiliging bij de gebruikers van pki’s.
De standaarden voor een pki die zijn ontwikkeld door de Internet Engineering Task Force en andere standaardisatiecommissies zijn vaak niet voldoende gedetailleerd om interoperabiliteit te garanderen. Dat betekent dat pki-producten van verschillende leveranciers die schijnbaar conformeren aan een bepaalde standaard, toch niet met elkaar kunnen samenwerken. Een voorbeeld daarvan is de X.509 versie 3 standaard voor digitale certificaten die door verschillende leveranciers anders is uitgewerkt. Het verschil zit’m in verschillende toepassingen van de facultatieve gegevensvelden (‘optional data fields’). Ook het ontbreken van een standaard voor ‘application programming interfaces’ (api’s) voor pki-applicaties leidt tot het gebruik van leveranciersspecifieke toolkits die interoperabiliteit in de weg staan. Een aantal van deze, maar niet alle, problemen worden opgelost wanneer de Federal Bridge Certification Authority operationeel wordt.
Schaalbaarheid van pki’s is een groot vraagteken. Tot nu toe hebben de overheidsinstellingen op zijn best ervaring met kleinschalige proefprojecten, waarbij maximaal enkele honderden digitale certificaten zijn uitgedeeld. Het is nog maar de vraag of dergelijke systemen geschikt zijn voor honderdduizenden, misschien wel miljoenen gebruikers. Niet alleen moet de overheid beschikken over een soepel lopend toewijzingssysteem voor honderdduizenden digitale certificaten, ook zal er een netwerk van samenwerkende online directories moeten zijn waarin gebruikers de status van digitale certificaten kunnen raadplegen voordat transacties plaatsvinden.
Hoge kosten
De totale kosten voor het ontwikkelen van een pki en het geschikt maken van applicaties om met pki’s te werken zijn aanzienlijk. Het Amerikaanse ministerie van Defensie heeft tussen 2000 en 2005 een bedrag van 700 miljoen dollar begroot voor de ontwikkeling van de infrastructuur. Daar bovenop komen nog eens de kosten om bestaande applicaties te laten werken met een pki.. Er zijn allen al tientallen miljoenen dollar nodig om het e-mail programma van Defensie via de ‘public key infrastructure’ in staat te stellen boodschappen te coderen, digitaal te signeren en certificaten te valideren. En dat is nog maar het begin. Het ministerie van Defensie heeft 600 applicaties op de nominatie om ge-pki-d te worden.
Er is een hele serie procedures nodig op het gebied van privacy, vertrouwensniveaus, key recovery en archivering om het vertrouwen in pki’s van gebruikers binnen en buiten de overheid te winnen en te bewaren. Amerikanen zijn als de dood voor een overheid die gegevens verzamelt over burgers. Bij invoering van pki’s moet daarom worden voorkomen dat onnodig informatie over gebruikers wordt opgeslagen. Om de verschillende niveaus van vertrouwen (’trust levels’) te handhaven moeten procedures, zoals onder meer de identificatie van gebruikers, zeer nauwgezet worden omschreven en nageleefd. Het is van belang een beleid te ontwikkelen voor het bewaren van duplicaten van digitale sleutels voor het geval sleutels zoekraken. Ook behoort er een systeem te worden ontwikkeld voor het archiveren van digitaal gesigneerde documenten met de sleutel die gebruikt is voor de signering.
Beveiliging is altijd een keten en de keten is zo sterk als de zwakste schakel. De beveiliging die een pki kan bieden hangt vooral af van de integriteit en de nauwkeurigheid waarmee gebruikers en beheerders de procedures naleven. Slecht geconfigureerde pki-software zet de deur wijd open voor hackers. Gebruikers die hun privé-sleutels niet veilig bewaren of die niet goed interacteren met de programma’s, ondermijnen het systeem. Zonder een goede training en support van systeembeheerders en gebruikers verliest iedere pki zijn effectiviteit. Uit de ervaringen tot nu toe blijkt dat veel gebruikers problemen hebben met het begrijpen en gebruiken van een pki. Dat betekent dat er veel tijd (en geld) nodig is voor training.
Onontwarbare kluwen
Om de eerder beschreven problemen aan te pakken is het volgens de schrijvers van het rapport noodzakelijk dat de overheid een overkoepelend plan (management framework) formuleert. In dat plan moet meer dan nu het geval is aangestuurd worden op uniforme standarden voor de implementatie van een pki en de adoptie van bepaalde producten om te voorkomen dat de elektronische overheid een onontwarbare kluwen spaghetti wordt. Dit lijkt op een open deur maar de eerder genoemde interdepartementale Federal Public Key Infrastructure Steering Committee (Fpkisc) is dus niet bij machte gebleken een beleid te formuleren waaraan de verschillende overheidsinstellingen zich moeten conformeren.
Overheidsinstellingen die nu beginnen met de implementatie van een pki lopen het risico straks opgezadeld te zitten met een infrastructuur die niet aansluit bij die van andere instellingen. Een overkoepelend beleidsplan moet deze risico’s wegnemen. In zo’n plan wordt vastgelegd welke mensen en afdelingen belast zijn met de invoering van een pki, wat het tijdschema is voor de invoering van een overheidsbrede pki en welke middelen de federale overheid ter beschikking stelt voor de invoering van pki’s. Het plan moet ook leiden tot uniforme afspraken over zaken als bescherming van de privacy van de gebruikers, het vaststellen van vertrouwensniveaus, ‘key recovery’ en de archivering van digitaal gesigneerde documenten.
Teake Zuidema Freelance Medewerker
Wat is pki precies?
Een Public Key Infrastructure is een systeem bestaande uit hardware, software, mensen en beleid, dat elektronische transacties met verschillende beveiligingsniveaus beveiliging mogelijk maakt. Zo’n infrastructuur moet volgens het Amerikaanse National Institute of Standards and Technology (Nist) in principe vier soorten van beveiliging bieden: identificatie en authenticatie, privacy, data-integriteit en ‘non repudiation’. Identificatie en authenticatie betekent dat de identiteit van zowel de zender als de ontvanger onomstotelijk is vastgesteld. Privacy is de verzekering dat informatie is beschermd tegen ongeautoriseerde toegang. Data integriteit garandeert dat de informatie niet opzettelijk of per ongeluk is veranderd. ‘Non repudiation’ impliceert dat een derde partij de integriteit en de herkomst van data kan vaststellen. Dat is belangrijk voor de wettelijke geldigheid van een document (de zender kan nooit zeggen dat hij het niet heeft verstuurd en de ontvanger kan niet beweren dat hij het niet heeft gekregen).
Gebruikers in een pki hebben gewoonlijk twee paar sleutels. Het eerste paar is voor het coderen en decoderen van berichten. Het tweede paar is voor het zetten en lezen van digitale handtekeningen. Ieder sleutelpaar bestaat uit een geheime privé-sleutel waartoe alleen de rechtmatige eigenaar toegang heeft en een publieke sleutel die inderdaad publiek, niet geheim, is. Als voorbeeld nemen we Bob en Alice, het paar dat onvermijdelijk opduikt in iedere cryptografische uiteenzetting. Wanneer Alice een bericht wil sturen naar Bob dan gebruikt Alice de publieke sleutel van Bob voor het coderen van (een deel van) haar bericht naar Bob. Het gecodeerde bericht kan alleen worden ontcijferd met de privé-sleutel van Bob en niet met de publieke sleutel van Bob (het systeem heet daarom a-symetrisch). Alice gebruikt haar eigen geheime privé-sleutel voor het zetten van een digitale handtekening onder haar bericht naar Bob. Deze digitale handtekening kan door Bob weer worden gelezen door toepassing van de publieke sleutel van Alice.
De hele pki draait nu om het toewijzen, beheren, gebruiken en beveiligen van de sleutels. Wanneer vier of vijf mensen beveiligd, elektronisch willen communiceren kunnen ze gewoon hun publieke sleutels uitwisselen. Maar voor communicatie tussen mensen die elkaar niet kennen, tussen onderdelen van een organisatie en tussen verschillende organisaties onderling zijn er onafhankelijke en betrouwbare Certification Authorities (CA’s) nodig. De CA is in de eerste plaats verantwoordelijk voor het genereren van digitale certificaten, een elektronisch document waarmee een gebruiker of een computer wordt gekoppeld aan een publieke sleutel of sleutels. Digitale certificaten worden bewaard in een directory waarin men dus de sleutel van een gebruiker kan opzoeken.
Voordat een gebruiker een digitaal certificaat krijgt toegewezen moet zijn identiteit op afdoende wijze worden vastgesteld. Soms gebeurt dit door de CA, maar het is ook mogelijk hiervoor een Registration Authority in te schakelen. De gebruiker moet zich persoonlijk met identificatie melden of kan zich online (minder veilig) identificeren. Hoe deze identificatie wordt uitgevoerd bepaalt in belangrijke mate het niveau van beveiliging van het systeem en uiteraard ook de kosten van de invoering. Na de identificatie krijgt de gebruiker een unieke gebruikersnaam die met de publieke sleutel vermeld wordt op het digitale certificaat.
Om beveiligde transacties mogelijk te maken tussen gebruikers in verschillende organisaties is er een betrouwbaar elektronisch pad (‘certification path’) nodig dat de verschillende CA’s met elkaar verbindt. Hiermee wordt ‘cross-certification’ mogelijk. Er bestaan hiervoor drie modellen: ’trust lists’, ‘hierarchical models’ en ‘mesh architecture’. Een trust list is een bestand in een browser waarin staat vermeld welke certificaten van welke CA’s door die browser worden geaccepteerd. De gebruiker kan zelf namen toevoegen of verwijderen. In een hiërarchisch model is er één centrale ‘root’ Certification Authority die certificaten uitgeeft aan ondergeschikte CA’s. Er ontstaat zo’n een piramidemodel van meerdere lagen waarbij iedere CA zijn betrouwbaarheid ontleent aan een CA op een hoger niveau. Een ‘mesh architecture’ tenslotte is een niet-hiërarchisch (‘peer-to-peer’) systeem waarbij verschillende CA’s elkaars certificaten goedkeuren.
Zoals gezegd is een pki een ketting die bestaat uit hardware, software, mensen en beleid. De ketting is nooit sterker dan de zwakste schakel. Misschien kan de encryptie in nog geen tien miljoen jaar worden gekraakt, wanneer de gebruiker onwetend is dan is zijn sleutel binnen een seconde verdwenen. Zonder een strikte naleving van procedures en een gedegen training van de gebruikers is een pki vrijwel zinloos. Carl Ellison en Bruce Schneier, twee Amerikaanse autoriteiten op het gebied vanbeveiliging, schieten een hoop gaten in de pki-mythe in een stuk getiteld: ‘Ten Risks of PKI: What You’re not Being Told about PKI’ (http://www.counterpane.com/pki-risks-ft.txt).