Download presentation
Presentation is loading. Please wait.
1
Digital Signature Algorithm (DSA) Kenan Gençol presented in the course BIL617 Cryptology instructed by Asst.Prof.Dr. Nuray AT Department of Computer Engineering, Anadolu University 19,April,2010
2
Agenda Digital Signature: The Big Picture Digital Signature: The Big Picture Digital Signature Process Digital Signature Process Digital Signature Standard (DSS) Digital Signature Standard (DSS) Digital Signature Algorithm (DSA) Digital Signature Algorithm (DSA) Appendix: Discrete Logarithm Appendix: Discrete Logarithm
4
Digital Signature: The Big Picture
6
Digital Signature Process: Evolution Signing and verifying algorithms Signing and verifying algorithms Need for keys Need for keys Signing the Digest Signing the Digest Need for CAs (trusted third parties) Need for CAs (trusted third parties)
8
Need for CAs (trusted third parties)
9
Services provided Digital Signatures Message Authentication Message Authentication Message Integrity Message Integrity Nonrepudation (CAs) Nonrepudation (CAs) Does not provide privacy (confidentiality) Does not provide privacy (confidentiality)
10
Digital Signature Standard (DSS) US Govt approved signature scheme US Govt approved signature scheme designed by NIST & NSA in early 90's designed by NIST & NSA in early 90's published as FIPS-186 in 1991 published as FIPS-186 in 1991 revised in 1993, 1996 & then 2000 revised in 1993, 1996 & then 2000 uses the SHA hash algorithm (original SHA-1) uses the SHA hash algorithm (original SHA-1) DSS is the standard, DSA is the algorithm DSS is the standard, DSA is the algorithm FIPS 186-2 (2000) includes alternative RSA & elliptic curve signature variants FIPS 186-2 (2000) includes alternative RSA & elliptic curve signature variants Latest version is FIPS 186-3 (June 2009) Latest version is FIPS 186-3 (June 2009)
11
Digital Signature Algorithm (DSA) creates a 320 bit signature creates a 320 bit signature with 512-1024 bit key security with 512-1024 bit key security smaller and faster than RSA smaller and faster than RSA a digital signature scheme only a digital signature scheme only security depends on difficulty of computing discrete logarithms security depends on difficulty of computing discrete logarithms variant of ElGamal [ELGA85] & Schnorr [SCHN91] schemes variant of ElGamal [ELGA85] & Schnorr [SCHN91] schemes
12
Digital Signature Algorithm (DSA)
13
Glossary
14
Digital Signature Algorithm (DSA): Key Generation have shared global public key values (p,q,g): have shared global public key values (p,q,g): choose q, a 160 bit choose q, a 160 bit choose a large prime p = 2 L choose a large prime p = 2 L where L= 512 to 1024 bits and is a multiple of 64 where L= 512 to 1024 bits and is a multiple of 64 and q is a prime factor of (p-1) and q is a prime factor of (p-1) choose g = h (p-1)/q choose g = h (p-1)/q where h 1 where h 1 users choose private & compute public key: users choose private & compute public key: choose x<q choose x<q compute y = g x (mod p) compute y = g x (mod p)
15
Digital Signature Algorithm (DSA): Signing to sign a message M the sender: to sign a message M the sender: generates a random signature key k, k<q generates a random signature key k, k<q nb. k must be random, be destroyed after use, and never be reused nb. k must be random, be destroyed after use, and never be reused then computes signature pair: then computes signature pair: r = (g k (mod p))(mod q) s = (k -1.H(M)+ x.r)(mod q) sends signature (r,s) with message M sends signature (r,s) with message M
16
Digital Signature Algorithm (DSA): Verification having received M & signature (r,s) having received M & signature (r,s) to verify a signature, recipient computes: to verify a signature, recipient computes: w = s -1 (mod q) u1= (H(M).w)(mod q) u2= (r.w)(mod q) v = (g u1.y u2 (mod p)) (mod q) if v=r then signature is verified if v=r then signature is verified
18
Correctness of the algorithm
19
Digital Signature Algorithm (DSA): An Example Alice chooses q = 101 and p = 8081. Alice selects e 0 = 3 and calculates e 1 = e 0 (p−1)/q mod p = 6968. Alice chooses d = 61 as the private key and calculates e 2 = e 1 d mod p = 2038. Now Alice can send a message to Bob. Assume that h(M) = 5000 and Alice chooses r = 61: Alice sends M, S 1, and S 2 to Bob. Bob uses the public keys to calculate V.
20
Digital Signature Algorithm (DSA) Please refer to the following document for further information: Please refer to the following document for further information: http://csrc.nist.gov/publications/fips/fips1 86-3/fips_186-3.pdf http://csrc.nist.gov/publications/fips/fips1 86-3/fips_186-3.pdf
21
A last word..
22
Appendix: Discrete Logarithm If g and h are elements of a finite cyclic group G then a solution x of the equation g x = h is called a discrete logarithm to the base g of h in the group G. If g and h are elements of a finite cyclic group G then a solution x of the equation g x = h is called a discrete logarithm to the base g of h in the group G.finitecyclic groupfinitecyclic group
23
Thank You
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.