SlideShare une entreprise Scribd logo
1  sur  28
Signature
• Fonction de hachage
• Signatures numériques
1
Objectifs
• Identification
• Authentification
• Signature
2
Notion de fonction de hachage
• Définition (Fonction de Hachage) :
Une fonction de hachage H est une application facilement
calculable qui transforme une chaîne binaire de taille
quelconque t en une chaîne binaire de taille fixe n;
appelée empreinte de hachage.
• On parle de collision entre x et x′ lorsque
x ≠ x′ et H(x) = H(x′)
• Si y est tel que y = H(x); alors x est appelé préimage de y
3
Qu'est-ce qu'une fonction de hachage ?
4
Propriétés des fonctions de hachage
•Propriétés de base : compression et facilité de calcul.
•Propriétés additionnelles :
•Resistance à la preimage : étant donné y, il est difficile
de trouver x tel que y = H(x)
•Resistance à la seconde preimage : étant donné x, il est
difficile de trouver x′ ≠ x tel que H(x) = H(x′)
5
• 1990 : MD4, Extended-MD4
• 1991 : MD5
• 1992 : HAVAL, RIPEMD
• 1993 : SHA
• 1994 : SHA-1
• 1996 : RIPEMD-128,160
• 1999 : Whirlpool-0
• 2002 : SHA-256,384,512, Whirlpool-T
• 2003 : SHA-224
• 2004 : Whirlpool
Historique des principales fonctions
de hachage
6
Construction d'une fonction de hachage
Définir une fonction de compression h
Pour calculer l'empreinte d'un message M :
– Application d'un padding à M pour que │M│ = k*b bits
– Découpage du message M en blocs de tailles b
M = M1M2…Mk-1Mk avec |Mi | = b ∀i ∈ [1, k]
– Itération de la fonction h (IV : Initial Value) :
Exemples connus : MD5, SHA-1, SHA-2, Whirlpool...
7
La fonction de compression de MD5
Propose par Rivest en 1991
Blocs de b = 512 bits, sortie de n = 128 bits
16 sous-blocs Mi de 32 bits
64 constantes fixées Ki
64 rondes sur 4 sous-blocs de 32 bits A;B; C;D
4 * 16 sous-rondes ou F prend les valeurs :
1. F = (B AND C) OR (B AND D)
2. F = (D AND B) OR (D AND C)
3. F = B C D
4. F = C (B OR D))
Sécurité de MD5 face aux collisions
Force brute : O(264
) (attaque anniversaire)
MAIS collisions en O(242
) [Wang04] puis O(230
)[Sasaki05]
MD5 n'est plus considérée comme sûr aujourd'hui
8
MD5
9
La fonction de compression de MD5
10
La fonction de compression de SHA-1
Publie dans FIPS PUB 180-1 par NIST en 1995
Blocs de b = 512 bits, sortie de n = 160 bits
16 sous-blocs Mi de 32 bits
Etendus en 80 nouveaux blocs Wt
4 constantes fixées Kt
80 rondes sur 5 sous-blocs de 32 bits A,B,C,D,E
4 * 20 sous-rondes ou F prend les valeurs :
1. F = (B AND C) OR (B AND D)
2. F = B C D
3. F = (B AND C) (B AND D) (C AND D)
4. F = B C D
Sécurité de SHA-1 face aux collisions
Force brute : O(280
)
MAIS collisions possibles en O(263
) 11
La fonction de compression de SHA-256
Publie dans FIPS PUB 180-2 en 2000
Base sur le chiffrement à clé secrète par bloc
Blocs de b = 512 bits, sortie de n = 256 bits
16 sous-blocs Mi de 32 bits
Etendus en 64 nouveaux blocs Wt
64 constantes fixées Kt
64 rondes sur 8 sous-blocs de 32 bits
Sécurité de SHA-256
Force brute : O(2128
) (attaque anniversaire)
Pas d'attaque connues pour le moment
12
Signatures numériques
But des signatures manuscrites :
•prouver l'identité de leur auteur et/ou
•l'accord du signataire avec le contenu du document
La signature électronique dépend du signataire et du
document
Objectifs d'une signature électronique
•Une signature est authentique.
•Une signature ne peut être falsifiée (imitée).
•Une signature n'est pas réutilisable sur un autre
document.
•Un document signe est inaltérable.
•Une signature ne peut pas être reniée.
13
Définitions
Une signature digitale est produite par un algorithme de
génération de signatures digitales et est vérifiée par un
algorithme de vérification de signatures digitales
Un schéma de signatures digitales consiste en un algorithme de
génération de signatures digitales associé à son algorithme de
vérification
Il existe deux classes de schémas de signatures :
avec appendice (où le message original doit être fournit à
l’algorithme de vérification) et avec recouvrement (où le
message original est récupéré à partir de la signature)
14
Idée générale des signatures électroniques
Réalisation pratique :
Cryptosystèmes à clef secrète (et arbitre)
Cryptosystèmes à clef publique + fonction de hachage
On préfère signer le hachage d'un document
Taille fixe suffisamment petite pour être utilisée efficacement
par un cryptosystème à clef publique
15
Idée générale des signatures électroniques
Protocole de signature electronique sûr :
– Impossible de falsifier la signature s(M) d'un document M
• sans connaitre la clef secrète K (resp. Kd )
• même en disposant de signatures d'autres documents.
• Attention : impossibilité pratique
Il existe d'autres conditions nécessaires de sécurité !
– relève davantage des architectures de sécurité des
cryptosystèmes à clef publiques (PKI) ou du secret
entourant la clef secrète.
16
Idée générale des signatures électroniques
Signature utilisant un cryptosystème à clef publique :
– Alice signe M en utilisant :
• hM = H(M) le hachage de M
• sa clé secrète Kd .
• la fonction de déchiffrement D:
• Résultat : s(M) = DKd (hM)
– Document signe : [M, s(M)]
– Vérification de [M, s(M)] :
• utilise la clé publique Ke d'Alice et la fonction de
chiffrement E
• EKe (s(M)) = hM=?H(M)
• Seule Alice a pu générer s(M)
17
Idée générale des signatures électroniques
18
Signature RSA
Génération des paramètres
Identique à la génération des clefs de RSA !
• Alice choisit au hasard deux nombres premiers p et q.
– Alice calcule n = p.q
– Indicatrice d’Euler : Φ(n) = (p − 1)(q − 1)
• Alice choisit au hasard un entier e (impair) tel que
1 < e < Φ(n) et pgcd(e, Φ(n)) = 1
• Alice calcule alors l’entier d tel que e.d ≡1 mod Φ(n).
Clef publique : (n, e)
Clef secrète : d
On suppose disposer d’une fonction de hachage à sens unique H
connue publiquement.
19
Signature RSA
Génération d’une signature RSA
Alice souhaite signer un document M
– Alice calcule hM = H(M) (on suppose 0 ≤ hM < n)
– Signature de M : s(M) = (hM)d
mod n
– Le document signé est alors [M, s(M)].
20
Signature El Gamal
Génération des paramètres
• Alice choisit :
– un nombre premier p
– g une racine primitive modulo p.
– un entier a ∈ {1, . . . , p − 2} au hasard
• Elle calcule alors A = ga
mod p.
Clef publique : (p, g, A).
Clef secrète : a.
On suppose disposer d’une fonction de hachage à sens
unique H connue publiquement.
21
Signature El Gamal
Génération d’une signature El Gamal
Alice souhaite signer un document M
• Alice calcule hM = H(M) (on suppose 0 ≤ hM < p)
• Elle choisit au hasard un entier k ∈ [1, p − 2] tel que
pgcd(k, p − 1) = 1 (⇒ k−1
∈ Zp−1 existe).
• Signature de M : s(M) = (r , s) avec
r = gk
mod p
s = k−1
(hM − a.r ) mod (p − 1)
• Le document signé est alors [M, s(M)].
22
Signature El Gamal
Vérification d’une signature El Gamal
• Bob reçoit un document signé [˜M , s(M)] d’Alice.
– Rappel : s(M) = (r , s)
– Ce document est potentiellement altéré/illégitime
• Il récupère la clé publique d’Alice (p, g, A)
• Il calcule ˜ hM = H(˜M )
• Il vérifie l’identité : Ar
rs
≡ g h˜M
mod p
En effet,
Ar
rs
≡ ga.r
.gkk−1(hM−a.r)
mod p
≡ ghM
mod p
Si le document est authentique : hM = h˜M ⇒ ghM
≡ g h˜M
mod p 23
Signature El Gamal
Vérification d’une signature El Gamal
• Bob reçoit un document signé [˜M , s(M)] d’Alice.
– Rappel : s(M) = (r , s)
– Ce document est potentiellement altéré/illégitime
• Il récupère la clé publique d’Alice (p, g, A)
• Il calcule ˜ hM = H(˜M )
• Il vérifie l’identité : Ar
rs
≡ g h˜
M mod p
En effet,
Ar
rs
≡ ga.r
.gkk−1(hM−a.r)
mod p
≡ ghM
mod p
Si le document est authentique : hM = h˜M ⇒ ghM
≡ g h˜M
mod p
24
Le standard DSA
Génération des paramètres
• Alice génère un nb premier q de 160 bits (2159
≤ q < 2160
)
• Elle génère un nb premier p de 512 à 1024 bits vérifiant :
∃t ∈ [0; 8]/2511+64t
< p < 2512+64t
et q │(p -1)
cela assure que Fp possède un sous-groupe d'ordre q
• Soit g′ une racine primitive modulo p
• Un générateur du sous-groupe de F*
p d'ordre q est alors
25
Le standard DSA
Génération des paramètres (suite)
Une fois choisis (p; q; g) :
• Alice choisit a ∈ {1, …, q -1}
• Elle calcule A = ga
mod p
Clef publique : (p, q, g, A):
Clef secrète : a
26
Le standard DSA
Génération d'une signature DSA
Alice souhaite signer un document M :
– Alice calcule hM = H(M) (on suppose 1 ≤ hM < q -1)
– Elle choisit un entier k ∈ {1, …, q -1}
– Signature de M : s(M) = (r , s) avec
r = (gk
mod p) mod q et s = k-1
(hM + a*r ) mod q
• Le document signé est alors [M; s(M)]:
27
Le standard DSA
Vérification d'une signature DSA
• Bob reçoit un document signe [M′, s(M) = (r ; s)] d'Alice.
• Il récupère la clé publique d'Alice (p, q, g, A)
• Il vérifie que les formats sont respectés : 1 ≤ r ; s ≤ q -1
• Il calcule hM′ = H(M′)
• Il vérifie l'identité :
28

Contenu connexe

Tendances (17)

RSA
RSARSA
RSA
 
Elliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
Elliptic curvecryptography Shane Almeida Saqib Awan Dan PalacioElliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
Elliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
 
SHA
SHASHA
SHA
 
Asymmetric Cryptography
Asymmetric CryptographyAsymmetric Cryptography
Asymmetric Cryptography
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
 
M1_exercices_corriges.pdf
M1_exercices_corriges.pdfM1_exercices_corriges.pdf
M1_exercices_corriges.pdf
 
Digital Signature Standard
Digital Signature StandardDigital Signature Standard
Digital Signature Standard
 
Cryptographic hash function md5
Cryptographic hash function md5Cryptographic hash function md5
Cryptographic hash function md5
 
Kmeans
KmeansKmeans
Kmeans
 
Resumo função quadrática
Resumo função quadráticaResumo função quadrática
Resumo função quadrática
 
Distribution of public keys and hmac
Distribution of public keys and hmacDistribution of public keys and hmac
Distribution of public keys and hmac
 
Number Theory for Security
Number Theory for SecurityNumber Theory for Security
Number Theory for Security
 
Digital Signature
Digital SignatureDigital Signature
Digital Signature
 
EuroSciPy 2019 - GANs: Theory and Applications
EuroSciPy 2019 - GANs: Theory and ApplicationsEuroSciPy 2019 - GANs: Theory and Applications
EuroSciPy 2019 - GANs: Theory and Applications
 
Huffman Encoding Pr
Huffman Encoding PrHuffman Encoding Pr
Huffman Encoding Pr
 
Capítulo 7: Firma digital
Capítulo 7: Firma digitalCapítulo 7: Firma digital
Capítulo 7: Firma digital
 
Digital Signature.ppt
Digital Signature.pptDigital Signature.ppt
Digital Signature.ppt
 

Similaire à Signatures numériques

dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...
dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...
dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...SamiraElMargae1
 
Inf_theory_lect3.pdf
Inf_theory_lect3.pdfInf_theory_lect3.pdf
Inf_theory_lect3.pdfkohay75604
 
Joue à la crypto ! (french)
Joue à la crypto ! (french)Joue à la crypto ! (french)
Joue à la crypto ! (french)Ange Albertini
 
Un algorithme de chiffrement a flot base sur le probleme des 3 corps.
Un algorithme de chiffrement a flot base sur le probleme des 3 corps.Un algorithme de chiffrement a flot base sur le probleme des 3 corps.
Un algorithme de chiffrement a flot base sur le probleme des 3 corps.Samir Crypticus
 

Similaire à Signatures numériques (8)

dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...
dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...
dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...
 
Les ransomwares jouiniahmed
Les ransomwares jouiniahmedLes ransomwares jouiniahmed
Les ransomwares jouiniahmed
 
Rapport tp RSA
Rapport  tp  RSARapport  tp  RSA
Rapport tp RSA
 
Inf_theory_lect3.pdf
Inf_theory_lect3.pdfInf_theory_lect3.pdf
Inf_theory_lect3.pdf
 
Joue à la crypto ! (french)
Joue à la crypto ! (french)Joue à la crypto ! (french)
Joue à la crypto ! (french)
 
chap4 codes-en-ligne
chap4 codes-en-lignechap4 codes-en-ligne
chap4 codes-en-ligne
 
Un algorithme de chiffrement a flot base sur le probleme des 3 corps.
Un algorithme de chiffrement a flot base sur le probleme des 3 corps.Un algorithme de chiffrement a flot base sur le probleme des 3 corps.
Un algorithme de chiffrement a flot base sur le probleme des 3 corps.
 
2 codage source
2 codage source2 codage source
2 codage source
 

Signatures numériques

  • 1. Signature • Fonction de hachage • Signatures numériques 1
  • 3. Notion de fonction de hachage • Définition (Fonction de Hachage) : Une fonction de hachage H est une application facilement calculable qui transforme une chaîne binaire de taille quelconque t en une chaîne binaire de taille fixe n; appelée empreinte de hachage. • On parle de collision entre x et x′ lorsque x ≠ x′ et H(x) = H(x′) • Si y est tel que y = H(x); alors x est appelé préimage de y 3
  • 4. Qu'est-ce qu'une fonction de hachage ? 4
  • 5. Propriétés des fonctions de hachage •Propriétés de base : compression et facilité de calcul. •Propriétés additionnelles : •Resistance à la preimage : étant donné y, il est difficile de trouver x tel que y = H(x) •Resistance à la seconde preimage : étant donné x, il est difficile de trouver x′ ≠ x tel que H(x) = H(x′) 5
  • 6. • 1990 : MD4, Extended-MD4 • 1991 : MD5 • 1992 : HAVAL, RIPEMD • 1993 : SHA • 1994 : SHA-1 • 1996 : RIPEMD-128,160 • 1999 : Whirlpool-0 • 2002 : SHA-256,384,512, Whirlpool-T • 2003 : SHA-224 • 2004 : Whirlpool Historique des principales fonctions de hachage 6
  • 7. Construction d'une fonction de hachage Définir une fonction de compression h Pour calculer l'empreinte d'un message M : – Application d'un padding à M pour que │M│ = k*b bits – Découpage du message M en blocs de tailles b M = M1M2…Mk-1Mk avec |Mi | = b ∀i ∈ [1, k] – Itération de la fonction h (IV : Initial Value) : Exemples connus : MD5, SHA-1, SHA-2, Whirlpool... 7
  • 8. La fonction de compression de MD5 Propose par Rivest en 1991 Blocs de b = 512 bits, sortie de n = 128 bits 16 sous-blocs Mi de 32 bits 64 constantes fixées Ki 64 rondes sur 4 sous-blocs de 32 bits A;B; C;D 4 * 16 sous-rondes ou F prend les valeurs : 1. F = (B AND C) OR (B AND D) 2. F = (D AND B) OR (D AND C) 3. F = B C D 4. F = C (B OR D)) Sécurité de MD5 face aux collisions Force brute : O(264 ) (attaque anniversaire) MAIS collisions en O(242 ) [Wang04] puis O(230 )[Sasaki05] MD5 n'est plus considérée comme sûr aujourd'hui 8
  • 10. La fonction de compression de MD5 10
  • 11. La fonction de compression de SHA-1 Publie dans FIPS PUB 180-1 par NIST en 1995 Blocs de b = 512 bits, sortie de n = 160 bits 16 sous-blocs Mi de 32 bits Etendus en 80 nouveaux blocs Wt 4 constantes fixées Kt 80 rondes sur 5 sous-blocs de 32 bits A,B,C,D,E 4 * 20 sous-rondes ou F prend les valeurs : 1. F = (B AND C) OR (B AND D) 2. F = B C D 3. F = (B AND C) (B AND D) (C AND D) 4. F = B C D Sécurité de SHA-1 face aux collisions Force brute : O(280 ) MAIS collisions possibles en O(263 ) 11
  • 12. La fonction de compression de SHA-256 Publie dans FIPS PUB 180-2 en 2000 Base sur le chiffrement à clé secrète par bloc Blocs de b = 512 bits, sortie de n = 256 bits 16 sous-blocs Mi de 32 bits Etendus en 64 nouveaux blocs Wt 64 constantes fixées Kt 64 rondes sur 8 sous-blocs de 32 bits Sécurité de SHA-256 Force brute : O(2128 ) (attaque anniversaire) Pas d'attaque connues pour le moment 12
  • 13. Signatures numériques But des signatures manuscrites : •prouver l'identité de leur auteur et/ou •l'accord du signataire avec le contenu du document La signature électronique dépend du signataire et du document Objectifs d'une signature électronique •Une signature est authentique. •Une signature ne peut être falsifiée (imitée). •Une signature n'est pas réutilisable sur un autre document. •Un document signe est inaltérable. •Une signature ne peut pas être reniée. 13
  • 14. Définitions Une signature digitale est produite par un algorithme de génération de signatures digitales et est vérifiée par un algorithme de vérification de signatures digitales Un schéma de signatures digitales consiste en un algorithme de génération de signatures digitales associé à son algorithme de vérification Il existe deux classes de schémas de signatures : avec appendice (où le message original doit être fournit à l’algorithme de vérification) et avec recouvrement (où le message original est récupéré à partir de la signature) 14
  • 15. Idée générale des signatures électroniques Réalisation pratique : Cryptosystèmes à clef secrète (et arbitre) Cryptosystèmes à clef publique + fonction de hachage On préfère signer le hachage d'un document Taille fixe suffisamment petite pour être utilisée efficacement par un cryptosystème à clef publique 15
  • 16. Idée générale des signatures électroniques Protocole de signature electronique sûr : – Impossible de falsifier la signature s(M) d'un document M • sans connaitre la clef secrète K (resp. Kd ) • même en disposant de signatures d'autres documents. • Attention : impossibilité pratique Il existe d'autres conditions nécessaires de sécurité ! – relève davantage des architectures de sécurité des cryptosystèmes à clef publiques (PKI) ou du secret entourant la clef secrète. 16
  • 17. Idée générale des signatures électroniques Signature utilisant un cryptosystème à clef publique : – Alice signe M en utilisant : • hM = H(M) le hachage de M • sa clé secrète Kd . • la fonction de déchiffrement D: • Résultat : s(M) = DKd (hM) – Document signe : [M, s(M)] – Vérification de [M, s(M)] : • utilise la clé publique Ke d'Alice et la fonction de chiffrement E • EKe (s(M)) = hM=?H(M) • Seule Alice a pu générer s(M) 17
  • 18. Idée générale des signatures électroniques 18
  • 19. Signature RSA Génération des paramètres Identique à la génération des clefs de RSA ! • Alice choisit au hasard deux nombres premiers p et q. – Alice calcule n = p.q – Indicatrice d’Euler : Φ(n) = (p − 1)(q − 1) • Alice choisit au hasard un entier e (impair) tel que 1 < e < Φ(n) et pgcd(e, Φ(n)) = 1 • Alice calcule alors l’entier d tel que e.d ≡1 mod Φ(n). Clef publique : (n, e) Clef secrète : d On suppose disposer d’une fonction de hachage à sens unique H connue publiquement. 19
  • 20. Signature RSA Génération d’une signature RSA Alice souhaite signer un document M – Alice calcule hM = H(M) (on suppose 0 ≤ hM < n) – Signature de M : s(M) = (hM)d mod n – Le document signé est alors [M, s(M)]. 20
  • 21. Signature El Gamal Génération des paramètres • Alice choisit : – un nombre premier p – g une racine primitive modulo p. – un entier a ∈ {1, . . . , p − 2} au hasard • Elle calcule alors A = ga mod p. Clef publique : (p, g, A). Clef secrète : a. On suppose disposer d’une fonction de hachage à sens unique H connue publiquement. 21
  • 22. Signature El Gamal Génération d’une signature El Gamal Alice souhaite signer un document M • Alice calcule hM = H(M) (on suppose 0 ≤ hM < p) • Elle choisit au hasard un entier k ∈ [1, p − 2] tel que pgcd(k, p − 1) = 1 (⇒ k−1 ∈ Zp−1 existe). • Signature de M : s(M) = (r , s) avec r = gk mod p s = k−1 (hM − a.r ) mod (p − 1) • Le document signé est alors [M, s(M)]. 22
  • 23. Signature El Gamal Vérification d’une signature El Gamal • Bob reçoit un document signé [˜M , s(M)] d’Alice. – Rappel : s(M) = (r , s) – Ce document est potentiellement altéré/illégitime • Il récupère la clé publique d’Alice (p, g, A) • Il calcule ˜ hM = H(˜M ) • Il vérifie l’identité : Ar rs ≡ g h˜M mod p En effet, Ar rs ≡ ga.r .gkk−1(hM−a.r) mod p ≡ ghM mod p Si le document est authentique : hM = h˜M ⇒ ghM ≡ g h˜M mod p 23
  • 24. Signature El Gamal Vérification d’une signature El Gamal • Bob reçoit un document signé [˜M , s(M)] d’Alice. – Rappel : s(M) = (r , s) – Ce document est potentiellement altéré/illégitime • Il récupère la clé publique d’Alice (p, g, A) • Il calcule ˜ hM = H(˜M ) • Il vérifie l’identité : Ar rs ≡ g h˜ M mod p En effet, Ar rs ≡ ga.r .gkk−1(hM−a.r) mod p ≡ ghM mod p Si le document est authentique : hM = h˜M ⇒ ghM ≡ g h˜M mod p 24
  • 25. Le standard DSA Génération des paramètres • Alice génère un nb premier q de 160 bits (2159 ≤ q < 2160 ) • Elle génère un nb premier p de 512 à 1024 bits vérifiant : ∃t ∈ [0; 8]/2511+64t < p < 2512+64t et q │(p -1) cela assure que Fp possède un sous-groupe d'ordre q • Soit g′ une racine primitive modulo p • Un générateur du sous-groupe de F* p d'ordre q est alors 25
  • 26. Le standard DSA Génération des paramètres (suite) Une fois choisis (p; q; g) : • Alice choisit a ∈ {1, …, q -1} • Elle calcule A = ga mod p Clef publique : (p, q, g, A): Clef secrète : a 26
  • 27. Le standard DSA Génération d'une signature DSA Alice souhaite signer un document M : – Alice calcule hM = H(M) (on suppose 1 ≤ hM < q -1) – Elle choisit un entier k ∈ {1, …, q -1} – Signature de M : s(M) = (r , s) avec r = (gk mod p) mod q et s = k-1 (hM + a*r ) mod q • Le document signé est alors [M; s(M)]: 27
  • 28. Le standard DSA Vérification d'une signature DSA • Bob reçoit un document signe [M′, s(M) = (r ; s)] d'Alice. • Il récupère la clé publique d'Alice (p, q, g, A) • Il vérifie que les formats sont respectés : 1 ≤ r ; s ≤ q -1 • Il calcule hM′ = H(M′) • Il vérifie l'identité : 28