Digital signatures

Having seen how encryption is implemented in Whatsapp, let us see the next practical application of cryptography – Digital signatures. Digital signatures are signatures applied digitally. They enforce the concepts of authentication, non-repudiation, and confidentiality. Wikipedia defines digital signatures the following way: “A digital signature is a mathematical scheme for demonstrating the authenticity of a digital message or documents.” (Digital Signature 2016)

With the world being more technically tuned now, business transactions occurring all around the world are fairly common. Manually signing a document and transferring it to different locations is time-consuming. This time lag might not bode well for either the customer or the client. By digitally signing the documents, the business transaction will be completed on time.

Consider another case when two parties are required to sign documents relating to a business transaction. The two parties might never have met each other and might not trust each other. Digital signatures thus ensure timeliness and authenticity of business transactions.

Implementing Digital signatures

A digital signature uses public key encryption. A digital signature is technically a “string of bits.” (Digital Signature Standard (DSS) 2013) Let us assume that ‘A’ would like to send a “digitally signed” message to ‘B.’ Since a digital signature uses public key encryption, ‘A’ and ‘B’ will both have a public-private key pair. To create a digital signature and use it along with a message between two clients, the following steps are followed:

  1. The message that has to be digitally signed is “hashed, ” and a few lines are generated which is known as “message digest.” “Hashing” is the process that is used to enforce data integrity. Hashing functions take the message and add a string value and convert it to another value (message digest). Hashing functions are one-way which means that the message digest cannot be re-converted back to the message.
  2. The message digest is then encrypted by ‘A’s private key. This is “digital signature.”
  3. The “digital signature” is now attached to the message and sent to ‘B.’
  4. ‘B’ verifies the digital signature by decrypting the signature with his public key. This decryption results in a message digest.
  5. ‘B’ also hashes the message which results in the message digest again. If both the message digests are the same, then ‘B’ can be sure that ‘A’ signed the message and had the message indeed.

The encryption algorithm employed in digital signatures ensures confidentiality. The hashing algorithm ensures data integrity in digital signatures. Digitally signing the documents makes sure that the message or document is authenticated. It also enforces non-repudiation (they cannot deny sending it)

Having seen two practical applications of cryptography, let us move onto the next application of cryptography, ‘HTTP Secure.’

Books on Digital Signature

Share
Facebook

Leave a Comment

Your email address will not be published. Required fields are marked *