Presentation is loading. Please wait.

Presentation is loading. Please wait.

Digital Signatures Last Updated: Oct 14, 2017.

Similar presentations


Presentation on theme: "Digital Signatures Last Updated: Oct 14, 2017."— Presentation transcript:

1 Digital Signatures Last Updated: Oct 14, 2017

2 Digital Signatures Diagram illustrating how to digitally sign a message Why do we use a one-way hash? How does this relate to a collision or 2nd pre-image attack?

3 Digital Signatures What assurances do we get with a digital signature?
Authentication Confidentiality Integrity Non-repudiation MAC vs. Digital Signature MAC does not offer non-repudiation. Why? With a MAC, either Alice or Bob could have generated the mac.

4 Message Authentication
Three approaches Benefits of each? Drawbacks? Third option is broken, use HMAC

5 HMAC Government standard for HMAC H(K || H(K || M))
Prevents extension attack

6 Public Key Distribution Problem
Symmetric encryption – exponential key distribution problem (n^2 key pairs for group of size n) Public keys – we all distribute our own public key (n keys) How can I trust that I have received your public key? Trusted third party hands out signed documents containing user ID and public key Signed documents are known as certificates

7 Digital Certificates Who has a digital certificate?
Which private key is used to sign a certificate? Whose public key is in the certificate? What are common uses for certificates?

8 Performance of Crypto Primitives

9 Performance Test Goal: figure out the relative computing time for algorithms (one block) SHA-1 AES RSA Encrypt RSA Signature Order the above, fastest to slowest

10 Performance Test Average of 10, 000 iterations SHA-1 – 0.0017 ms
AES – ms RSA encrypt – ms 3515x slower than a hash RSA signature – ms 8x slower than a hash 215x slower than a hash 26x slower than AES 421x slower than AES 16x slower than RSA enc.

11 Or: “How RSA should really be used”
RSA Padding Or: “How RSA should really be used” (See PKCS #1)

12 RSA Primitives RSA Encryption : me = c (mod n)
RSA Decryption : cd = m (mod n) Pitfalls of using RSA What if m is very small? Remember that e is usually small. Take the e’th root of c Brute force the domain of m Solution: RSA Padding Before encrypting/signing a key/hash, pad it so that it is a large number and comparable to the modulus n Implementation flaws – timing attacks Insert constant delays or binding RSA Labs publishes the standards for using RSA Public Key Cryptography Standard #1 (PKCS #1)


Download ppt "Digital Signatures Last Updated: Oct 14, 2017."

Similar presentations


Ads by Google