digital signature

Contributor(s): Michael Cobb

A digital signature (not to be confused with a digital certificate) is a mathematical technique used to validate the authenticity and integrity of a message, software or digital document.

The digital equivalent of a handwritten signature or stamped seal, but offering far more inherent security, a digital signature is intended to solve the problem of tampering and impersonation in digital communications. Digital signatures can provide the added assurances of evidence to origin, identity and status of an electronic document, transaction or message, as well as acknowledging informed consent by the signer.

In many countries, including the United States, digital signatures have the same legal significance as the more traditional forms of signed documents. The United States Government Printing Office publishes electronic versions of the budget, public and private laws, and congressional bills with digital signatures.

How digital signatures work

Digital signatures are based on public key cryptography, also known as asymmetric cryptography. Using a public key algorithm such as RSA, one can generate two keys that are mathematically linked: one private and one public. To create a digital signature, signing software (such as an email program) creates a one-way hash of the electronic data to be signed. The private key is then used to encrypt the hash. The encrypted hash -- along with other information, such as the hashing algorithm -- is the digital signature. The reason for encrypting the hash instead of the entire message or document is that a hash function can convert an arbitrary input into a fixed length value, which is usually much shorter. This saves time since hashing is much faster than signing.

The value of the hash is unique to the hashed data. Any change in the data, even changing or deleting a single character, results in a different value. This attribute enables others to validate the integrity of the data by using the signer's public key to decrypt the hash. If the decrypted hash matches a second computed hash of the same data, it proves that the data hasn't changed since it was signed. If the two hashes don't match, the data has either been tampered with in some way (integrity) or the signature was created with a private key that doesn't correspond to the public key presented by the signer (authentication).

A digital signature can be used with any kind of message -- whether it is encrypted or not -- simply so the receiver can be sure of the sender's identity and that the message arrived intact. Digital signatures make it difficult for the signer to deny having signed something (non-repudiation) -- assuming their private key has not been compromised -- as the digital signature is unique to both the document and the signer, and it binds them together. A digital certificate, an electronic document that contains the digital signature of the certificate-issuing authority, binds together a public key with an identity and can be used to verify a public key belongs to a particular person or entity.

digital signature process
If the two hash values match, the message has not been tampered with, and the receiver knows the message is from sender.

Most modern email programs support the use of digital signatures and digital certificates, making it easy to sign any outgoing emails and validate digitally signed incoming messages. Digital signatures are also used extensively to provide proof of authenticity, data integrity and non-repudiation of communications and transactions conducted over the Internet.

This was last updated in November 2014

Continue Reading About digital signature

Dig Deeper on PKI and digital certificates

Join the conversation


Send me notifications when other members comment.

Please create a username to comment.

What about  cybercriminals develop B mining malware
authentication code used especially in email which can be used as a traditional written signature cannot be forged because the signature is created with a sender's secret key verified afterward too
People normally use electronic signature and digital signature interchangeably. However, they are quite different. Electronic signatures, which are provided by lots of vendors these days, cannot ensure document integrity and non-repudiation. Signority has a patent-pending SaaS PKI technology that ensures the highest level of security but eliminates the complexity of traditional PKI technology. Several law firms use their solution to deal with highly sensitive contracts.
How can digital signatures be more widely used to improve the security of email, which is still one of the dominant forms of communication in the world today?
In my mind, the question isn't so much "how can they be used to protect email communications". The bigger question is "how can we streamline the process of creating them and encouraging they be used in a way that will signal wide adoption". For people who program or who set up environments to share keys on a regular basis, this is not a big deal, but for the average computer user, setting up keys is seen as a monumental pain, and then having tools that readily recognize them and use them without a lot of hand holding are essential. In short, we need to make it easy to implement and then easy to use, with as little monitoring as possible. Perhaps a model like LastPass but for cryptography?
As Michael says - and I agree - the process of getting people to understand and use signature security is the real issue. We're still living in a business environment that leverages at least three major email services. And these don't really play nice together. So until we get Gmail and Exchange and Apple Mail to coordinate some of their code, will we really have the groundwork in place to start using digital signatures that are platform agnostic? Until that happens, we'll be like the spy groups in time of war. The guys we're sending code to will have to have the unlock code right in front of them...and all that does is makes things more convoluted and difficult.
I think the question should be more along the lines of "What types of email communications require the security of digital signatures?" I don't see any use whatsoever in using digital signatures in my personal email correspondence unless I am discussing legal matters with my lawyer or financial matters with my accountant. Most of my day-to-day business emails do not contain anything that requires digital signatures.

Michael and Jeff also raise good points: Digital signatures must be easy to use and they must work seamlessly on all platforms. It's the same issue I see every day trying to convince people of ways to come up with good passwords: "Too much work." And I think that is the fundamental difficulty in getting people to adopt good security measures.
I find myself asking the question.  Why.   Too many already use email without digital signatures.  Only in very strict settings are they utilized at all.  Michael is right, could they help?  Maybe, but I'm worried about spoofing and I'm worried about them getting stolen and what that could imply.
This is an inaccurate description of a cryptographic digital signature. Digital signatures are not an encryption of the hash. It is a mathematical function which takes the private key, the hash, and a unique random number to create a result which can be verified by using the signer's public key. The result of the verify is essentially a Yes/No result. There is no way to recover the hash and match it as described above.
Also, no other information typically accompanies the digital signature.. The author says the kind of hash algorithm used is also sent with the signature. If the receiver doesn't already know, then a certificate is more appropriate, which contains the signature, the algorithm(s) used and more (Google X.509 certificate).
Thank you.
Decryption is only possible with the private keys. I was confused how the digital signature works by using a public key to decrypt the message.

@Maikai - The article is simplifying things but that doesn't make it incorrect. For instance, you are right that an IV is often used in generating a signature. However, that is a detail that increases security but does not invalidate the basic method of generating a signature from a hashed digest.
Good basic explaination but I got some more questions. What property of a hash function is needed for the digital signature scheme to work correctly; what could go wrong if this property does not hold? According to the above text I think the property is that the encrypted and decrypted hash have to be the same. Is this right?
And also; do you need to use block modes for signing larger messages? 
Lot of information here, I'm curious as to what methods are being used when you sign for a UPS/FedEx package or to pick up some Rx at the pharmacy. The thing they have you sign with your finger never looks like your written signature. You have no idea if it was me or someone else.
I've never heard that private key can be used to encrypt and public key can be used to decrypt. I think there are something wrong in this article.
That is how public private encryption works. If you trust the public key from the sender (i.e. a certificate authority) then you can authenticate the sender. What you may be misunderstanding is that inside that message is a message with the keys the other way around. That is, a message signed with your published key, that only you can decrypt with your secret private key. Generally this is only done once and the message itself is some secret cipher (i.e. AES) to encrypt messages faster going forward. Hope that helps. 
what are the documents will be required for making a digital signature?



File Extensions and File Formats

Powered by: