Un
certificat est un document électronique qui atteste qu'une clé
publique est bien liée à une organisation ou personne. Il
permet la vérification de la propriété d'une clé
publique pour prévenir la contrefaçon de clés publiques.
Un certificat contient généralement une clé publique,
un nom ainsi que d'autre champs pour identifier le propriétaire,
une date d'expiration, un numéro de série, le nom de l'organisation
qui contresigne le certificat et la signature elle-même. Le format
des certificats est définie par la norme X509.
Le certificat
est donc une attestation que les informations qu'il contient sont exactes.
Pour cela, le certificat doit être généré par
un tiers de confiance, c'est-à-dire un organisme indépendant
qui contrôle la véracité de ces informations. Le CA
(Certifying Authority, autrement dit l'organisme certificateur) donne la
crédibilité au certificat.
Il existe
typiquement deux types de certificats utilisés avec SSL : pour serveur
et pour client. Techniquement ils utilisent le même format mais diffèrent
par l'information qu'ils contiennent. Ainsi un certificat coté client
sert à identifier un utilisateur, il contiendra donc des information
sur cet utilisateur. Coté serveur, le certificat a pour but d'authentifier
le serveur et l'organisme qui l'exploite. C'est ce type de certificat dont
vous avez besoin pour mettre en place un serveur "sécurisé"
HTTPS. Il ne sera pas expliqué ici comment obtenir un certificat
serveur. Il existe plusieurs fournisseurs de certificats serveurs SSL.
Pour plus d'informations sur ce sujet, consulter le site de Netscape
et celui de SSL
hosting.