Nothing Special   »   [go: up one dir, main page]

Chapitre 3

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 7

Chapitre 3

Gestion des Clés Publiques (PKI)

L’infrastructure de gestion de clés publiques (PKI : Public Key Infrastructure)


représente l’ensemble des moyens matériels et logiciels assurant la gestion des clés pu-
bliques sur un réseau exposé. Son rôle est de garantir la liaison entre chaque utilisateur
à sa clé publique.

3.1 Certificat d’identité


Un certificat d’identité est un document électronique qui garantit un certain nombre
d’informations décrivant et identifiant d’une manière sure un utilisateur. Les certificats
sont signés et délivrés par une tierce partie de confiance appelée autorité de certifica-
tion. La structure d’un certificat est normalisée par le standard X.509 :
⋆ Version du standard.
⋆ Numéro de série du certificat.
⋆ L’identité de l’utilisateur.
⋆ La clé publique de l’utilisateur.
⋆ L’identité du signataire.
⋆ Algorithme de signature utilisé.
⋆ Fonction de hachage utilisée.
⋆ Période de validité du certificat.
⋆ Signature numérique de l’autorité de certification.

3.2 Certificat d’attribut


Un certificat d’identité est un document électronique qui donne des informations
sur les privilèges d’un utilisateur. Ces informations sont liées aux droits que possède

10
Gestion des Clés Publiques (PKI) c
Dr. OMAR Mawloud ¥

un utilisateur dans une application donnée, qui lui permet de procéder à certaines
opérations techniques ou accéder à certains services ou ressources.

3.3 Autorité de certification


L’autorité de certification est un serveur central qui délivre les certificats pour
les utilisateurs du système. Elle signe les certificats en utilisant sa propre clé privée
pour garantir les informations liées à l’utilisateur. Les certificats générés pour tous les
utilisateurs ne peuvent pas être issus d’une même autorité de certification. Ainsi, il est
nécessaire que ce rôle soit réparti à travers plusieurs autorités de certification.

3.3.1 Modèle hiérarchique

Dans ce modèle, l’autorité de certification racine délivre un certificat d’attribut qui


garantit la délégation du service de certification à une ou plusieurs d’autres autorités,
qui elles-mêmes à leurs tours délivrent des certificats à d’autres, et ainsi de suite.

3.3.2 Modèle croisé

Les relations croisées servent à relier deux hiérarchies d’autorités de certification


de deux organisations différentes. L’autorité de certification racine de chaque organi-
sation signe pour l’autre un certificat d’identité. Ainsi, n’importe quel utilisateur de la

11
Gestion des Clés Publiques (PKI) c
Dr. OMAR Mawloud ¥

première hiérarchie peut vérifier la clé publique de n’importe quel autre utilisateur de
la deuxième.

3.3.3 Modèle en graphe

Dans ce modèle, chaque autorité de certification délivre un certificat d’identité à


l’autorité en qui elle fait confiance.

3.4 Gestion complètement distribuée des certificats


Dans ce type de système, il n’y a pas la notion d’autorité de certification. Chaque
utilisateur se considère comme étant une autorité de certification, où il peut signer
et délivrer des certificats pour les utilisateurs. Ce système permet la création d’un
graphe de confiance entre l’ensemble des utilisateurs. La vérification de la validité d’un

12
Gestion des Clés Publiques (PKI) c
Dr. OMAR Mawloud ¥

certificat se fait à travers la vérification de toute la chaı̂ne de certificats qui relie les
deux utilisateurs en se basant sur le principe : ”Si A fait confiance à B, et ce dernier
fait confiance à C, alors A peut faire confiance à C”.

3.5 Révocation des certificats


Un certificat peut être révoqué en cas de :
⋆ L’expiration de la période de validité.
⋆ La divulgation de la clé privée de l’utilisateur (ce qui sera suivi par la mise à jour
de sa paire de clés).
⋆ L’utilisateur n’est plus considéré digne de confiance.

3.6 Les annuaires de certificats


Les certificats émis par les autorités de certification doivent être rendus accessibles
afin que les utilisateurs du système puissent y accéder. Pour cela, les certificats sont
publiés à travers un annuaire à accès libre. Il constitue en quelque sorte une base de
données centrale accessible en mode de lecture, en mode d’ajout (nouveau certificat)
et en mode de suppression (révocation d’un certificat). Il contient également une liste
de révocation de certificats qui comporte la liste de l’ensemble des certificats révoqués
depuis la création de l’annuaire, datés et signés par les autorités de certification.

13
Gestion des Clés Publiques (PKI) c
Dr. OMAR Mawloud ¥

3.7 La procédure de certification


L’infrastructure de gestion de clés publiques fournit trois services principaux :
⋆ La génération et la mise à jour des paires de clés.
⋆ La certification des clés publiques et la publication des certificats.
⋆ La révocation des certificats.

La procédure de certification se fait principalement en trois étapes :


(1) L’utilisateur s’enregistre auprès de l’autorité d’enregistrement en donnant des
justifications concrètes vis-à-vis son identité.
(2) L’autorité d’enregistrement génère la paire de clés de l’utilisateur et envoie une
requête de certification à l’autorité de certification.
(3) L’autorité de certification génère un certificat pour l’utilisateur et publie ce
dernier sur l’annuaire.

3.8 Le partage du pouvoir de certification

3.8.1 La cryptographie à seuil

Le partage de secret repose sur le concept de détention d’une portion d’une infor-
mation secrète par plusieurs entités. La cryptographie à seuil permet le partage d’une
valeur secrète S à un ensemble de n serveurs, sans que chacun d’eux connaisse sa
valeur. A partir d’au moins k serveurs on peut reconstruire le secret (k ≤ n). Si le

14
Gestion des Clés Publiques (PKI) c
Dr. OMAR Mawloud ¥

nombre de serveurs est inférieur à k, aucune information n’est obtenue sur le secret S.
La cryptographie à seuil s’exécute en deux étapes :
(1) Le partage du secret : Cette étape permet de mettre en commun un secret S
entre n serveurs. On crée un polynôme F (x) de degré k − 1 avec des coefficients
arbitraires en mettant a0 = S. On choisit ensuite publiquement n points distincts
xi , et on distribue secrètement à chaque serveur une part privée (xi , F (xi )). Le
point xi pourrait être n’importe quelle valeur publique qui identifie le serveur si
d’une manière unique. Pour simplifier la notation, on met xi = i, par conséquent
les parts privées sont dénotées par F (1), F (2), ..., F (n).
(2) La reconstruction du secret : Cette étape permet de reconstruire le secret S
à partir d’un sous-ensemble de k parts : {F (1), F (2), ..., F (k)}. Etant donné k
points distincts (i, F (i)), il existe un polynôme unique F (x) de degré k−1 passant
par tous les points. Ce polynôme peut être calculé à partir des points (i, F (i))
en utilisant l’interpolation de Lagrange.

3.8.2 Certification avec la cryptographie à seuil à base de RSA

La certification s’exécute comme suit :


(1) Générer les paramètres d’une paire de clés RSA : e, d, n, φ(n).
(2) Définir un polynôme F(x) = d + a1 x + ... + ak−1 xk−1 , ensuite calculer pour
chaque serveur si sa part privée : Si = F (i) mod φ(n).
(3) Chaque serveur si génère une signature partielle SPi du certificat comme suit :
SPi = C Si mod n.
(4) Pour combiner l’ensemble des signatures partielles, calculer l’interpolation de
Ù
j=k
j
Lagrange de chaque serveur : Li = mod φ(n). Ensuite, calculer la
j=1,jÓ=i j − i
Ù
i=k
signature complète SC du certificat : SC = SPiLi mod n.
i=1
(5) Si l’égalité C = SC e mod n est vérifiée, alors la signature est valide.

3.8.2.1 Exemple

⋆ e = 11, d = 131, n = 527, φ(n) = 480.


⋆ F(x) = 131 + x + x2 . S1 = F(1) mod 480 = 133, S2 = F(2) mod 480 = 137, et

15
Gestion des Clés Publiques (PKI) c
Dr. OMAR Mawloud ¥

S3 = F(3) mod 480 = 143.


⋆ Pour C = 6 : SP1 = 6133 mod 527 = 347, SP2 = 6137 mod 527 = 181, et SP3 =
6143 mod 527 = 88.
⋆ L1 = 3, L2 = 477, et L3 = 1. SC = 3473 × 181477 × 881 mod 527 = 522.
⋆ 52211 mod 527 = 6.

16

Vous aimerez peut-être aussi