Une OpenPKI
Linux-Expo2002, 30.01.02
Les PKI Open Source : Historique, implémentations industrielles, devenir.
Sebastien Abdi et Mathias Brossard, de la société Idealx
La conférence commence par une présentation de Idealx. Cette société à développé une PKI en GPL.
Site de IDX-PKI : http://idx-pki.idealx.org
La PKI Pourquoi ?
Les PKI (Public Key Infrastructure, ICP en français) assurent des fonctions de sécurité.
En particulier des services :
– d’authentification
– de confidentialité
– d’intégrité
– de non-répudiation
Et ce en gérant de façon centralisée des certificats de clés publiques.
La PKI c’est quoi ?
C’est avant tout un cadre organisationnel, qui représente peut-être 80% de l’effort contre 20% de technique.
C’est par exemple une politique de sécurité, une Politique de Certification (PC, document qui définit les exigences de sécurité et le contenu des certificats par exemple), une Déclaration des Pratiques de Certification (DPC, qui dit comment les exigences de la PC sont satisfaites par exemple).
C’est aussi, naturellement, une suite logicielle qui doit avoir les caractéristiques suivantes :
– Ensemble d’outils adaptables
– Implémentation sans équivoque, pour pouvoir véhiculer la confiance
– Evolutive...
La PKI comment ?
Pour une organisation, c’est un projet structurant : la réflexion doit être poussée, tous doivent y participer (utilisateurs compris), la démarche doit être progressive...
Ce sont des choix technologiques : l’interopérabilité est vitale, la pérennité, la rigueur du code, la rapidité des mises à jour...
Recherche et développement :
L’équipe d’Idealx à d’abord regardé les solutions existantes, comme OpenCA. Puis elle à décidé de se lancer dans sa propre implémentation, pour combler des vides et en utilisant des outils existants (OpenSSL pour les librairies crypto par exemple).
IDX-PKI est sous licence GPL, et conforme aux standards PKIX.
Les premiers besoins qui on guidé le développement de cette PKI ont été la volonté d’utiliser des certificats pour :
– La sécurisation intranet/extranet
– La sécurisation des échanges.
Les développements se sont basés sur des normes, standards et outils existants :
– PKIX : ensemble des standards PKI (définissent notamment les échanges entre les composants d’une PKI)
– X509 : format des certificats (version 3 courante, version 4 publiée)
– PKCS : Public Key Cryptography Standards, standards de fait définissant certains formats crypto
– S/MIME : extension de sécurité (crypto) à MIME
– OpenSSL : librairie GPL qui implémente le protocole SSL-TLS (la plus reconnue et répandue)
– OpenLDAP : annuaire LDAP et librairies associées en GPL
– Apache
– Linux
La démarche suivie à consisté à entretenir des échanges avec les communautés du domaine (les gens d’OpenCA par exemple). L’utilisateur à été tenu au centre des préoccupations. Le résultat est une application qui devrait pouvoir servir aux petites infrastructures comme aux très grosses.
La version courante de IDX-PKI est la 1.6.1
La procédure d’installation est conçue pour une RedHat 7.1, mais il est possible de l’installer manuellement sur tout Linux ou OpenBSD.
Des portages sont prévus sur : Debian, Mandrake, OpenBSD.
Shéma :
– Autorité de certification (AC) : Entité informatique qui effectue la signature des certificats, et qui à la responsabilité de l’infrastructure.
– Autorité d’enregistrement (AE) : Entité informatique assurant les tâches administratives, telles que la validation ou la révocation des certificats.
– Entité Client (EC) : Entité assurant l’enregistrement des demandes de certificats des utilisateurs (parfois confondue techniquement avec l’AE).
Quelques applications :
Authentification unique (Sigle Sign On, SSO)
Le but est de :
– Unifier les accès
– Ouvrir de nouveaux services
– Unifier des applications hétérogènes
– Réduire les coûts sur le long terme
Une réponse peut être de mettre en place des accès HTTP avec authentification unique (Web SSO).
Un des gros avantages identifiés est que celui qui utilise une PKI Open Source à la main sur les composants, et peut donc les modifier au besoin.
Sécurisation de données :
Sécuriser des échanges ou assurer un haut niveau de confiance, en chiffrant les données sensibles.
Avec un outil très répandu comme PGP, ou GPG maintenant, se pose le problème de la gestion des clés et des cycles de vie des certificats (création, révocation, expiration, renouvellement, propagation de la confiance, recouvrement...).
Les bi-clés sont générés et stockés sur les postes clients, en logiciel ou éventuellement sur des cartes à puce (ou token USB). Pour ce qui est du chiffrement, il peut se poser la question du recouvrement : possibilité de recouvrer des données chiffrées en cas d’oubli du mot de passe par exemple. Cela implique une gestion centralisée des clés privées de déchiffrement.
Si l’on met en place cette fonctionnalité, elle est en contradiction avec la non-répudiation (on doit avoir l’assurance que seul le signataire à l’accès à sa clé privée). D’ou parfois la nécessité d’utiliser deux paires de clés, avec les certificats associés : une de signature, une de chiffrement.
VPN (Virtual Private Network) :
– Sécurisation du lien entre sites distants au niveau IP
– Utilisateurs mobiles...
Les protocole utilisé est IPSec (extension d’authentification et de chiffrement à IPv4, sera natif en IPv6).
Avec l’utilisation d’une PKI, la gestion des certificats utilisée par les passerelles VPN et les clients VPN est centralisée (pour les passerelles, utilisation du protocole SCEP de Cisco).
Interopérabilité entre divers dispositifs arrive à maturité.
Evolutions :
– Développement de Secras : Service de Crypto et ASN.1
– Extension du registre fonctionnel de la PKI (au lieu de multiplier les interfaces graphiques sur un même cœur fonctionnel).
– Support de nouveaux formats :
o OCSP (Online Certificate Status Protocol, protocole de vérification de l’état de révocation).
o TSP (Time Stamp Protocol, RFC 3161, horodatage)
o X509v4 (nouvelle version du format des certificats, après x509v3)
o ECC (Elliptic Curve Cryptography)
o DNSSec (Domain Name System Security, authentification des serveurs et intégrité des données RFC 2535)
– Intégration de matériels crypto (HSM), via l’interface PKCS#11
– En cours d’évaluation par le DCSSI
Nouvelles fonctionnalités à venir :
– Signature électronique avancée (au sens des décrets récemment parus)
– Archivage de documents signés
– Support des certificats d’attribut, pour une gestion fine des droits et habilitations (certificats d’une durée de vie courte, une session par exemple)
Nouvelles applications à venir :
– Dématérialisation des transactions
– Notariat électronique (séquestre de documents signés)
– M-commerce
– Gestion des droits
11 mai 2004
Partager sur Twitter | Partager sur LinkedIn