Digital Signatures, Public Key Certificates, X509

3.11.2016 Digital Signatures, Public Key Certificates, X509 Digital Signatures: The Problem  ◦ A person pays by credit card and signs a bill; the ...
Author: Fay Perkins
1 downloads 0 Views 380KB Size
3.11.2016

Digital Signatures, Public Key Certificates, X509

Digital Signatures: The Problem 

◦ A person pays by credit card and signs a bill; the seller verifies that the signature on the bill is the same with the signature on the card ◦ Contracts: are valid if they are signed.

Ahmet Burak Can Hacettepe University [email protected]



1

Information Security

Digital Signatures  

Can we have a similar service in the electronic world?

Information Security

2

Digital Signatures and Hash

Digital Signature: a data string which associates a message with some originating entity. Digital Signature Scheme:



Digital signatures are generally used with hash functions, hash of a message is signed, instead of the message. ◦ Since public key encryption is costly, signing hash digest is more efficient than signing the whole message. ◦ So, a digital signature generally uses

◦ a signing algorithm: takes a message and a (private) signing key, outputs a signature ◦ a verification algorithm: takes a (public) key verification key, a message, and a signature 

Real-life examples for signatures:

 A hash function: MD5, SHA-1, RIPEMD  A public key encryption algorithm: RSA, El-gamal

Provides: ◦ Authentication ◦ Data integrity ◦ Non-Repudiation

Information Security

3

Information Security

4

1

3.11.2016

RSA Signatures

RSA Signatures (cont.) Signing message M  Verify 0 < M < n  Compute C = Md mod n

Key generation (as in RSA encryption):  Select 2 large prime numbers of about the same size, p and q  Compute n = pq, and ϕ(n) = (q - 1)(p - 1)  Select a random integer e, 1 < e < ϕ, s.t. gcd(e, ϕ (n)) = 1  Compute d, 1