How does a public key verify a signature?

Your understanding of “public keys encrypt, private keys decrypt” is correct… for data/message ENCRYPTION. For digital signatures, it is the reverse. With a digital signature, you are trying to prove that the document signed by you came from you. To do that, you need to use something that only YOU have: your private key.

A digital signature in its simplest description is a hash (SHA1, MD5, etc.) of the data (file, message, etc.) that is subsequently encrypted with the signer’s private key. Since that is something only the signer has (or should have) that is where the trust comes from. EVERYONE has (or should have) access to the signer’s public key.

So, to validate a digital signature, the recipient

  1. Calculates a hash of the same data (file, message, etc.),
  2. Decrypts the digital signature using the sender’s PUBLIC key, and
  3. Compares the 2 hash values.

If they match, the signature is considered valid. If they don’t match, it either means that a different key was used to sign it, or that the data has been altered (either intentionally or unintentionally).

Hope that helps!

Leave a Comment

techhipbettruvabetnorabahisbahis forumuedueduseduseduseduedueduedueduedu