Introduction à la sécurité informatique
Cours

Non-répudiation de l'origine

Non-répudiation de l'origine

La non répudiation de l'origine assure que l'émetteur du message ne pourra pas nier avoir émis le message dans le futur.

La signature digitale

La signature digitale est un mécanisme cryptographique qui permet d'assurer la non répudiation de l'origine.

Ce mécanisme repose sur un système cryptographique asymétrique

La signature est calculée en utilisant la clé privé de l'émetteur

La signature est vérifiée en utilisant la clé publique de l'émetteur

Comment utiliser la signature digitale pour assurer la non-répudiation de l'origine ?

L'émetteur du message génère sa paire de clés (publique, privée). Il diffuse sa clé publique te maintient sa clé privée secrète. Pour signer un document l'émetteur commence par calculer le code hashage du document puis signe ce code de hashage avec sa clé privée. Le résultat de cette dernière opération (chiffrement avec clé privée dans le cas de RSA) est la signature digitale qui accompagnera le document. Quand le récepteur reçoit le message et la signature digitale, il recalcule le code de hashage, déchiffre la signature avec la clé publique de l'émetteur et compare les deux codes de hshages. Si les deux codes sont similaires alors la signature est valide.

L'émetteur ne pourra pas nier dans le futur avoir émis le message puisque y a que lui qui peut générer la signature digitale avec sa clé privée secrète.

Signature digitale et non-répudiation
Signature digitale et non-répudiation[Zoom...]
Signature digitale avec RSA

Initialisation

  • Choisir deux nombres premiers, p et q, les deux étant plus grands que 10100

  • Calculer n = p · q (n est le modulus)

  • Choisir e aléatoire tel que e et ((p - 1) · (q - 1)) n'aient aucun facteur commun excepté 1

  • Trouver d tel que : ed = 1 mod((p - 1)(q - 1)).

  • Clé publique : (n,e).

  • Clé privée : (n,d) ou (p,q,d) si on désire garder p et q.

Signature digitale

  • L'expéditeur crée la signature s à partir du message m : s = md mod(n), où (n,d) est la clé privée de l'expéditeur.

  • Le destinataire reçoit s et m et effectue la vérification de m : m = se mod(n), où (n,e) est la clé publique de l'expéditeur.

RSA est connu pour être très lent, ayant une clé très longue.

HistoriquesAuthentification de l'origine de données
Accueil Yacine Challal & Hatem Bettahar creativecommons : by-nc-ndRéalisé avec SCENARI