|
|
Les PKI
|
Qu'est-ce que c'est
? PKI (Public Key
Infrastructure) est un système de gestion des
clefs publiques qui permet de gérer des listes
importantes de clefs publiques et d'en assurer la
fiabilité, pour des entités généralement dans un
réseau. Elle offre un cadre global permettant
d'installer des éléments de sécurité tels que la
confidentialité, l'authentification, l'intégrité
et la non-répudiation tant au sein de l'entreprise
que lors d'échanges d'information avec
l'extérieur.
Une infrastructure PKI
fournit donc quatre services principaux:
- fabrication de bi-clés. - certification
de clé publique et publication de
certificats. - Révocation de
certificats. - Gestion la fonction de
certification. Techniquement:
Une infrastructure à clé publique
utilise des mécanismes de signature et certifie
des clés publiques qui permettent de chiffrer et
de signer des messages ainsi que des flux de
données, afin d'assurer la confidentialité,
l'authentification, l'intégrité et la
non-répudiation.
- Signature :
Dans la signature nous avons une bi-clé
: une clé (privé) pour la création de siganture
et une clé (publique) pour la vérification de
signature, pour signer un message voici comment
se passe:
- 1) à l'aide de la clé privée de signature de
l'expéditeur, une empreinte connue sous le nom
"message digest" est générée par hachage en
utilisant l'algorithme SHA-1 ou MD5, le plus
utilisé étant SHA-1. Cette empreinte est ensuite
cryptée avec cette clé privée de
signature.
- 2) on joint au message l'empreinte et le
certificat contenant la clé publique de
signature.
- 3) le destinataire vérifie la validité du
certificat et sa non révocation dans
l'annuaire.
- 4) le destinataire transforme l'empreinte
avec la clé publique de signature ainsi validée.
Cette opération permet de s'assurer de
l'identité de l'expéditeur.
- 5) ensuite le destinataire génère une
empreinte à partir de message reçu en utilisant
le même algorithme de hachage. Si les deux
empreintes sont identiques, cela signifie que le
message n'a pas été modifié.
Donc la
signature vérifie bien l'intégrité du message
ainsi que l'identité de l'expéditeur.
Exemples d'algorithme de
signature: RSA,DSA
- Défintions
:
- Confidentialité : Les informations
échangées deviennent illisibles,cette
confidentialité est assurée par le chiffrement
- Authentification : identification de
l'origine de l'information.
- Non-répudiation : l'émetteur des
données ne pourra pas nier être à l'origine du
message.
- Intégrité : fonction permettant
d'assurer que l'information n'a pas subi de
modification .
-Chiffrement
:
Il y a deux types de chiffrement
possible :
- Chiffrement à clé secrète
(symétrique):
L’émetteur utilise une clé
pour chiffrer le message et le destinataire
utilise la même clé (le même algorithme mais en
sens inverse) pour déchiffrer le
message.
- Chiffrement à clé publique (asymétrique)
:
Un message chiffré avec une clé
publique donnée ne peut être déchiffré qu’avec
la clé privée correspondante. Par exemple si
A souhaite envoyer un message chiffré à B, il le
chiffrera en utilisant la clé publique de B (qui
peut être publié dans l'annuaire). La seule
personne qui déchiffre le message est le
détenteur de la clé privée de
B.
Exemples d'algorithme de
chiffrement:
- Symétrique: DES;AES - Asymétrique:
RSA
Organisation d'une
PKI
Organisation
d'une PKI
Dans une
infrastructure à clé publique ; pour obtenir un
certificat numérique, l'utilisateur fait une
demande auprès de l'autorité d'enregistrement.
Celle-ci génère un couple de clé (clé publique,
clé privée), envoie la clé privée au client,
applique une procédure et des critères définis
par l'autorité de certification qui certifie la
clé publique et appose sa signature sur le
certificat, parfois fabriqué par un opérateur de
certification.
La
Structure d'un Certificat numérique selon la
norme X509
- Version : indique à quelle version de
X509 correspond ce certificat
- Numéro de série : Numéro de série du
certificat
- Algorithme de signature: identifiant
du type de signature utilisée
- Emetteur : Distinguished Name (DN) de
l'autorité de certification qui a émis ce
certificat.
- Valide à partir de: la date de début
de validité de certificat
- Valide jusqu'à : la date de fin de
validité de certificat
- Objet: Distinguished Name (DN) de
détenteur de la clef publique
- Clé publique : infos sur la clef
publique de ce certificat
- Contraintes de base : extensions
génériques optionnelles
- Utilisation de la clé : l'objet
d'utilisation de la clé
- Algorithme thumbprint : alogrithme de
signature
- Thumbprint : signature numérique de
l'autorité de certification sur l'ensemble des
champs précédents.
Exemple d'un Certificat
X509 généré par OPENSSL
Gestion des
clefsL'utilisation
de bi-clefs certifiés entraîne la nécessité de
la publication en toute confiance de la clef
publique. Cette publication doit assurer la
validité de clé et l'appartenance de cette clé à
la bonne personne. La publication des
certificats (des clefs publiques) est faite en
utilisant les structures d'annuaires de type
LDAP (Lightweight Directory Access Protocol)
(RFC 2251), les certificats révoqués sont
regroupés dans des listes de révocations (CRL)
qui sont des structures de données signées et
dont le format est défini par le protocole X509
V2, ce format peut permettre une distribution
des CRL via les annuaires LDAP comme Netscape
Directory Server d'iplanet ou bien
openldap. Quelques
offres commerciales d'infrastructure à clé
publique
PKI gratuite ( OpenPKI)
L'utilisation du
PKIPrenons un
exemple de l'authentification mutuelle : la
partie cliente d'une application présente un
certificat à la partie serveur, qui en vérifie
la validité auprès de l'annuaire des certificats
révoqués, à l'inverse, le serveur peut lui-même
envoyer un certificat au client, ce qui permet
une authentification mutuelle, par exemple un
web sécurisé. Une telle procédure est
intéressante pour un VPN (Virtual private
Network), dans le cas des équipements réseaux
cette intégration est normalisée par le
protocole IPSEC IKE (Internet Key Exchange).
Pour les intranets, les éditeurs de PKI
s'appuient sur les protocoles SSL (Secure Socket
Layers) que les navigateurs et les serveurs web
supportent nativement.
Conclusion
Une PKI est une infrastructure
qui se construit, c'est donc une structure à la
fois technique et administrative, avec 80%
d'organisationnelle et 20% de technique. Le
domaine des PKI est intéressant : il est
possible de les utiliser pour des applications
tels que mail chiffré, web sécurisé VPN
(notamment IPSEC), commerce
électronique... Et comme les PKI intègrent la
cryptographie à clef publique et certificat
numérique, elles peuvent se confier à des tiers
de confiance et doivent recevoir l'agrément du
DCSSI
( Direction Central de la Sécurité des
Systèmes d'Information), pour avoir une portée
nationale. Actuellement l'absence de
standards pour l'implantation des PKI, engendre
des problèmes d'interopérabilité entre les
offres du marché. Lexique
Autorité de certification
: entité qui crée des certificats. C'est une
autorité morale qui définit les règles d'entrée
des ressources et des individus dans la PKI. En
pratique, il s'agit de définir les critères et
les modalités d'attribution de certificats
numériques.
Autorité
d'enregistrement : entité chargée de
recueillir les demandes de certificats et de
contrôler l'identité de la personne ainsi que
les critères d'attribution.
Certificat : Une identité
électronique qui est émise par une tierce partie
de confiance pour une personne ou une entité
réseau. Chaque certificat est signé avec la clé
privée de signature d'une autorité de
certification. Il garantit l'identité d'un
individu, d'une entreprise ou d'une
organisation. En particulier, il contient la clé
publique de l'entité et des informations
associées à cette entité.
Certificat
Auto signé : un certificat auto signé
contient comme tout certificat une clé publique.
Sa particularité réside dans le fait que ce
certificat est signé avec la clé secrète
associée. Dans ce cas précis, l'autorité de
certification est donc le détenteur du
certificat.
Certificat X.509 : Il
s'agit d'une norme sur les certificats largement
acceptée et conçue pour supporter une gestion
sécurisée et la distribution des certificats
numériquement signés sur le réseau Internet
sécurisé. Le certificat X.509 définit des
structures de données en accord avec les
procédures pour distribuer les clés publiques
qui sont signées numériquement par des parties
tierces.
Certificat X.509v3 : Les
certificats X.509v3 ont des extensions de
structures de données pour stocker et récupérer
des informations pour les applications, des
informations sur les points de distribution des
certificats, des CRLs et des informations sur
les politiques de certification. Chaque fois
qu'un certificat est utilisé, les capacités de
X.509v3 permettent aux applications de vérifier
la validité de ce certificat. Il permet aussi à
l'application de vérifier si le certificat est
dans une CRL. Ces certificats et CRLs sont
normalisés auprès de l'IETF dans la RFC 2459.
Clé : Une quantité utilisée en
cryptographie pour chiffrer/déchiffrer et
signer/vérifier des données.
CRL
: (Certificat Revocation List) se sont les
listes de révocations de certificats.
Clé Publique : quantité
numérique, attachée à une ressource ou un
individu, qui la distribue aux autres afin
qu'ils puissent lui envoyer des données
chiffrées ou déchiffrer sa signature.
Clé Privée : quantité numérique
secrète attachée à une ressource ou à un
individu, lui permettant de déchiffrer des
données chiffrées avec la clé publique
correspondante ou d'apposer une signature au bas
de messages envoyés vers des
destinataires.
Bi-clé : couple de
clés composé d'une clé privée et d'une clé
publique
MD5 : Message Digest 5
c'est un algorithme de hachage
RSA
: Algorithme de chiffrement à clef publique et
de signature inventé par R.Rivest, A.Shamir et
l.Adleman
DSA :Digital Signature
Algorithm.
AES :Advanced
Encryption Standard.
SHA-1 :
Secure Hash Algorithm Number 1.SHA est un
algorithme de hachage
SSL :
(Secure Socket Layer), c'est un protocole de
sécurisation conçu par Netscape qui se situe
entre la couche transport (TCP) et les
protocoles de la couche application. Il assure
les services de sécurité suivantes :
confidentialité, 'intégrité et 'authentification
du serveur et du client.
|
|
|
|
|
|
|
Les brèves |
|
|
Partenaires |
|
Communautés News |
|
|
|
|
|
|