OpenPGP en X.509 Leon Kuunders Nedsecure Consulting OpenPGP als PKI voor bedrijven
Nedsecure Consulting / Biodata Information Technology Introductie •Het klassieke OpenPGP web of trust is niet geschikt voor bedrijven. •Het web of trust kan in een zeer flexibele hiërarchie worden omgezet. •Het OpenPGP web of trust is eigenlijk beter dan het X.509 systeem.
Nedsecure Consulting / Biodata Information Technology Historie •X.509 is bedoelt voor een hiërarchische structuur, met een CA als centraal vertrouwenspunt. •OpenPGP is ontwikkelt met de mens als centraal vertrouwenspunt.
Nedsecure Consulting / Biodata Information Technology OpenPGP Web of Trust •Alice ontmoet Bob en tekent zijn sleutel. Deze wordt daardoor voor haar geldig. •Alice tekent de sleutel van Bob met een Trusted Introducer handtekening. Hierdoor vertrouwt ze sleutels die door Bob worden getekend. Als Bob vervolgens de sleutel van Charlie tekent wordt deze automatisch geldig voor Alice. Normal Signature BobAlice Trusted Introducer Signature Normal Signature AliceBobCharlie
Nedsecure Consulting / Biodata Information Technology OpenPGP Web of Trust •Alice tekent de sleutel van Bob met een Meta Introducer handtekening. Hierdoor is Bob in staat voor Alice sleutels te tekenen als Trusted Introducer. Sleutels die door deze Trusted Introducer worden getekend worden automatisch door Alice vertrouwd. Alice Trusted Introducer Signature Charlie Normal Signature David Meta Introducer Signature Bob
Nedsecure Consulting / Biodata Information Technology OpenPGP Web of Trust •Dit waren de eenvoudigste voorbeelden. De geldigheid van sleutels en vertrouwen wordt via elke gebruiker doorgegeven waardoor een stervormige structuur ontstaat. •Of een sleutel geldig is of niet wordt bepaald vanuit het gebruikers standpunt. •Het model komt goed overeen met de menselijke handelswijze als het om vertrouwen gaat. •Het maakt op een pijnlijke manier duidelijk waarom bedrijven een hiërarchische structuur willen.
Nedsecure Consulting / Biodata Information Technology Hiërarchie en anarchie •We kijken nog eens naar het eerste voorbeeld, maar hernoemen de sleutel van Bob naar “CA”: Trusted Introducer Signature Alice CA Normal Signature Charlie
Nedsecure Consulting / Biodata Information Technology Hiërarchie en anarchie •Met deze aanpassing van de basis van een web of trust kunnen we een hiërarchische structuur opzetten. •Het is dus de eenvoudigste vorm van een OpenPGP PKI structuur en volledig conform de OpenPGP standaard. •Het X.509 model ziet er precies hetzelfde uit. In X.509 wordt de sleutel echter niet door Alice getekend, maar slaat ze hem op in haar “Trusted Root CA” folder.
Nedsecure Consulting / Biodata Information Technology Een multi-level PKI •Een eenvoudige hiërarchy is in de meeste gevallen niet flexibel genoeg. •Een extra niveau is nodig voor deze flexibiliteit. •We hernoemen de Meta Introducer en de Trusted Introducer. Alice Normal Signature David Root CA Trusted Introducer Signature Normal Signature Meta Introducer Signature User CA
Nedsecure Consulting / Biodata Information Technology Een multi-level PKI •We kunnen meerdere Sub CA‘s introduceren voor bijvoorbeeld: –Afdelingen –Buitenlandse vestigingen –Eigen / inhuur werknemers –Werknemers / partners •De beveiliging van het Root CA certificaat is belangrijk. Gebruik voor het tekenen en valideren van sleutels de eigen bedrijfs Sub CA.
Nedsecure Consulting / Biodata Information Technology OpenPGP en Cross-Certificeren •Doordat een OpenPGP sleutel meerdere handtekeningen kan bevatten is dit eenvoudiger en flexibeler uit te voeren. •Cross-certificeren kan door een Sub CA certificaat van een partner te tekenen met een Trusted Introducer handtekening van het eigen Root Certificaat. •Deze Sub CA sleutel bevat op dat moment twee handtekeningen, die van de partner en die van de eigen organisatie. •Er kan een geldigheidsduur worden meegegeven. •Het beëindigen van de cross-certificering kan door de Trusted Introducer handtekening in te trekken.
Nedsecure Consulting / Biodata Information Technology OpenPGP en Cross-Certificeren Alice Normal Signature Bob CA Trusted Introducer Signature Normal Signature Meta Introducer Signature Charlie Normal Signature David CA Trusted Introducer Signature Normal Signature Meta Introducer Signature Trusted Introducer Signature Organisatie Alpha Organisatie Beta Sub CA
Nedsecure Consulting / Biodata Information Technology Web of trust? •Op de bedrijfs PKI is geen enkele invloed van buitenaf. •Doordat vertrouwen wordt verleend vanuit het gebruikersperspectief heeft het tekenen van een sleutel allen invloed op de persoon die tekent, niet op de ander. •Als een partner besluit het Root CA certificaat te tekenen met een Meta Introducer handtekening dan worden automatisch alle sleutels van de organisatie door de partner vertrouwd. Dit kan gebeuren zonder tussenkomst van de eigen organisatie. •Het is belangrijk het importeren van sleutels in de eigen sleutelring tegen te gaan. Hierdoor kan het intrekken van sleutels moeilijker worden.
Nedsecure Consulting / Biodata Information Technology Gecentraliseerde sleutelgeneratie •De traditionele manier met OpenPGP: Sleutels worden door gebruikers aangemaakt (decentraal) •Bedrijven: Gecentraliseerd sleutels aanmaken –Beschikbaarheid: Backup sleutels •De privé sleutel kan worden teruggehaald i.h.g.v. verlies sleutel of wachtwoord. •De privé sleutel kan worden teruggehaald als een werknemer het bedrijf verlaat. –Sleutels kunnen op een veilige manier worden opgeslagen –Sleutels voldoen aan het bedrijfsbeleid –Publieke sleutels kunnen direct in de PKI kenbaar worden gemaakt.
Nedsecure Consulting / Biodata Information Technology CMR vs. CKR •CMR: Coporate Message Recovery (ADK: Additional Decryption Key) Elk bericht wordt minimaal gecodeerd voor de ontvanger en de bedrijfssleutel. –Single point of failure –Geldt alleen voor berichten die worden verstuurd, niet voor berichten die worden ontvangen –De kans zit er in dat deze sleutel zeer vaak gebruikt moet gaan worden (wachtwoord vergeten, etc...)
Nedsecure Consulting / Biodata Information Technology CMR vs. CKR •CKR: Coporate Key Recovery Van elke encryptie sleutel wordt een backup veilig opgeslagen –Omdat er voor het versleutelen van berichten en het plaatsen van een handtekening verschillende sleutels worden gebruikt blijft de integriteit van de privé sleutel gewaarborgt. –Een sleutel kan worden ingetrokken op het moment dat men de backup nodig heeft.
Nedsecure Consulting / Biodata Information Technology Publiceren van sleutels •OpenPGP biedt twee mogelijkheden: –HTTP keyservers •Tien jaar geleden geïntroduceerd •Benaderbaar met vrijwel elk OS •Extra database •Replicatie issues •Goed inzetbaar voor kleinere installaties en pilots
Nedsecure Consulting / Biodata Information Technology Publiceren van sleutels –X.500 LDAP directories •Sneller, eleganter •Ondersteuning voor onder andere Microsoft Active Directory, Siemens Dir.X, Netscape Directory, Novell NDS •Veel bedrijven hebben reeds een directory infrastructuur •Het inbedden van de PKI in de directory infrastructuur reduceert de kosten gemoeid met het onderhoud
Nedsecure Consulting / Biodata Information Technology Conclusie •Het klassieke Web of trust is voor grotere organisaties niet geschikt •Met een Web of trust kan echter een zeer flexibele hiërarchische structuur worden opgezet •Doordat OpenPGP certificaten meerdere handtekeningen kunnen bevatten is het flexibeler (en pragmatischer) •Als CA model kiezen voor een multi- level ontwerp gebruiken •Het centraal genereren van sleutels biedt duidelijke voordelen •OpenPGP sleutels kan men het beste opslaan in de X.500 directory services