0% found this document useful (0 votes)
4 views7 pages

Digital Signature Algorithm (DSA) : Pratik Ray

The Digital Signature Algorithm (DSA) is a standard for creating digital signatures to authenticate messages and ensure data integrity. It involves key generation, signing, and verification processes, utilizing parameters such as large primes and random integers. DSA is widely used for securing digital communications and verifying the authenticity of messages.

Uploaded by

sandeshspk46
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views7 pages

Digital Signature Algorithm (DSA) : Pratik Ray

The Digital Signature Algorithm (DSA) is a standard for creating digital signatures to authenticate messages and ensure data integrity. It involves key generation, signing, and verification processes, utilizing parameters such as large primes and random integers. DSA is widely used for securing digital communications and verifying the authenticity of messages.

Uploaded by

sandeshspk46
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Digital Signature Algorithm (DSA)

Pratik Ray

Kathmandu University

January 31, 2025

Pratik Ray (Kathmandu University) Digital Signature Algorithm (DSA) January 31, 2025 1/7
Introduction

The Digital Signature Algorithm (DSA) is a Federal Information


Processing Standard for digital signatures.
It is used to authenticate the origin of messages and ensure data
integrity.

Pratik Ray (Kathmandu University) Digital Signature Algorithm (DSA) January 31, 2025 2/7
Key Generation

Parameters:
A large prime p.
A prime divisor q of p − 1.
A generator g of order q.
Private Key: x, where 0 < x < q.
Public Key: y = g x mod p.

Pratik Ray (Kathmandu University) Digital Signature Algorithm (DSA) January 31, 2025 3/7
Signing Process

Choose a random integer k such that 1 < k < q.


Compute r = (g k mod p) mod q.
Compute s = (k −1 (H(m) + xr )) mod q.
The signature is the pair (r , s).

Pratik Ray (Kathmandu University) Digital Signature Algorithm (DSA) January 31, 2025 4/7
Verification Process

Compute w = s −1 mod q.
Compute u1 = (H(m)w ) mod q and u2 = (rw ) mod q.
Compute v = ((g u1 y u2 ) mod p) mod q.
The signature is valid if v = r .

Pratik Ray (Kathmandu University) Digital Signature Algorithm (DSA) January 31, 2025 5/7
Example of DSA
Given: p = 23, q = 11, g = 2, x = 6
Public key: y = g x mod p = 26 mod 23 = 64 mod 23 = 18
Signing:
Choose k = 3
Compute r = (g k mod p) mod q = (23 mod 23) mod 11 = 8
mod 11 = 8
Compute s = (k −1 (H(m) + xr )) mod q, assume H(m) = 9
Compute s = (3−1 (9 + 6 × 8)) mod 11 = (3−1 × 57) mod 11
Since 3−1 ≡ 4 mod 11, s = (4 × 57) mod 11 = 228 mod 11 = 8
Signature: (r , s) = (8, 8)
Verification:
Compute w = s −1 mod q = 8−1 mod 11 = 7
Compute u1 = (H(m)w ) mod q = (9 × 7) mod 11 = 63 mod 11 = 8
Compute u2 = (rw ) mod q = (8 × 7) mod 11 = 56 mod 11 = 1
Compute v = ((g u1 y u2 ) mod p) mod q
v = ((28 × 181 ) mod 23) mod 11
Simplifying, v = 8, which matches r , so the signature is valid.
Pratik Ray (Kathmandu University) Digital Signature Algorithm (DSA) January 31, 2025 6/7
Conclusion

DSA is widely used for securing digital communications.


It provides a reliable method for verifying the authenticity of digital
messages.

Pratik Ray (Kathmandu University) Digital Signature Algorithm (DSA) January 31, 2025 7/7

You might also like