Digital certificates are the
digital equivalent (i.e. electronic format) of physical or paper certificates.
Examples of physical certificates are driver's licenses, passports or membership
cards. Certificates serve as identity of an individual for a certain purpose,
e.g. a driver's license identifies someone who can legally drive in a particular
country. Likewise, a digital certificate can be presented electronically to
prove your identity or your right to access information or services on the
The same reason you trust
what is stated in a driver's license: endorsement by the relevant authority
(Department of Transport) in the form of a difficult to forge signature or stamp
of approval. Digital certificates are endorsed in a similar manner by a trusted
authority empowered by law to issue them, appropriately known as the Certifying
Authority or CA. The CA is responsible for vetting all applications for digital
certificates, and once satisfied, "stamps" its difficult to forge digital
signature on all the digital certificates it issues, attesting to their
Three uses are outlined
here. Your digital certificate could be used to allow you to access
membership-based web sites automatically without entering a user name and
password. It can allow others to verify your "signed" e-mail or other electronic
documents, assuring your intended reader(s) that you are the genuine author of
the documents, and that the content has not been corrupted or tampered with in
any way. Finally, digital certificates enables others to send private messages
to you: anyone else who gets his/her hands on a message meant for you will not
be able to read it.
Digital certificates and the
CA are just two elements of the Public Key Infrastructure (PKI), an overall
Internet security system. Once the PKI is operational, everyone who has a
digital certificate can be traced and held accountable for their actions.
Consequently, uses for the Internet, which could not be fully realized before,
will finally take off: electronic banking and commerce (funds transfer, buying
and paying on-line), on-line transactions with government agencies (applying for
and renewing ICs, licenses, paying fines and bills), and on-line transactions
between businesses. The day when the only way to do some of these transactions
is through the Internet may not be too far off. Everyone who wants to be part of
it will need digital certificates.
Personal certificates serve
to identify a person. It follows that the contents of this type of certificate
include the full name and personal particulars of an individual. Among other
uses of personal certificates some are: Secure e-mail correspondence, and
Enhanced access control to sensitive or valuable information.
Server certificates identify
a server (computer). Hence, instead of a name of a person, server certificates
contain the host name e.g. "www.tcs-ca.tcs.co.in". Server certificates are used
to ensure that on-line transactions are secure.
The PKI is the overall
system of identifying parties on the Internet using their certificates. It is
headed by a Certifying Authority that is responsible for issuing and verifying
the validity of the digital certificates.
Cryptography is the science
of enabling secure communications between a sender and one or more recipients.
This is achieved by the sender scrambling a message (with a computer program and
a secret key) and leaving the recipient to unscramble the message (with the same
computer program and a key, which may or may not be the same as the sender's
There are two types of cryptography: Secret/Symmetric Key
Cryptography and Public Key Cryptography
The emphasis of cryptography is
on data confidentiality, data integrity, sender authentication, and
non-repudiation of origin/data accountability.
Physical keys are used for
locking and unlocking. In cryptography, the equivalent functions are encryption
and decryption. A key in this case is an algorithmic pattern or rule(s) to
render the message unreadable. Below is a simple example of how key is used in a
rupees five thousand
Key:forward shift all letters by 1
position, i.e. a becomes b, b becomes c, etc
Ciphered text (after
encryption):usbtgfs svqfet gjwf uipvtboe
To decipher text:backward shift all letters by 1 position,
giving: transfer rupees five thousand
In practice the key has to
be much more complicated than this.
(symmetric/conventional) cryptography is a system based on the sender and
receiver of a message knowing and using the same secret key to encrypt and
decrypt their messages. One weakness of this system is that the sender and
receiver must trust some communications channel to transmit the secret key to
prevent from disclosure.
Example: You use a
strongbox to send a valuable gift to your friend, locking it with a key. No one
can get to the gift without the key, including your friend. Your lock uses a
symmetric key: the same key used to lock the box must be used to unlock it.
Problem: you must find some method to deliver the key safely to your friend.
Public key (asymmetric)
cryptography is a system based on pairs of keys called public key and private
key. The public key is published while the private key is kept secret with the
owner. The need for a sender and a receiver to share a secret key and trust some
communications channel is eliminated. This concept was introduced in 1976 by
Whitfield Diffie and Martin Hellman.
Example: In order to
get around the problem introduced in the above example of symmetric key
cryptography, a new kind of lock must be created which requires two keys to
operate, say A and B. If A is used to lock, B must be used to unlock, and vice
versa - this is known as an asymmetric key system. To send a gift to a distant
friend, first request your friend's (empty) strongbox, equipped with this new
lock and one of his/her keys. We will call this the public key, to differentiate
from the other (private) key that never leaves him/her. Put your gift in her box
and lock it with his/her public key. Send him/her the box. Only he/she will be
able to unlock the box and get the gift.
If a message received is the
same as that which was sent - i.e. it is unaltered during transmission - data
integrity is said to have been achieved. This can be verified using a message
digest attached to the message, which acts as the digital fingerprint of the
It's a process to ensure
that a message does not originate from someone other than its purported sender.
Sender authentication is achieved through two related mechanisms: digital
signature and digital certificate.
Message digest, also known
as the hash of a message, is a small piece of data that results from performing
a particular mathematical calculation (hashing function) on the message during
encryption. Two properties of message digests to note: (i) a small alteration in
the original message would cause a big change in the message digest; (ii)
derivation of the original message is not possible from the message digest. It
acts as a "fingerprint" of the message and is used to ensure data integrity.
Just as a handwritten
signature is affixed to a printed letter for verification that the letter
originated from its purported sender, digital signature performs the same task
for an electronic message. A digital signature is an encrypted version of a
message digest, attached together with a message.
A secure digital
signature system consists of two parts: 1. A method of signing a document
such that forgery is detected, and 2. A method of verifying that a signature
was actually generated by whomever it represents
A combination of both. The
action of encrypting information with public-key cryptography is significantly
slower than encrypting with a secret key. However the drawback of the secret-key
system is that, secret keys must be transmitted either manually or through a
communication channel, and there may be a chance that others can discover the
secret keys during transmission. This is not a problem with public-key
cryptography, as private keys never need to be transmitted or revealed to
anyone. Each user has sole responsibility for protecting his or her private key.
So, in practice public-key cryptography is used with secret-key
cryptography to get the best of both worlds. A system that uses public-key
cryptography first generates a secret key and uses the secret key to encrypt the
message. Public-key cryptography key is then used to encrypt the secret key,
which then is attached to the secret key-encrypted message.
Typically certificates are
used to generate confidence in the legitimacy of a public key. In addition to
verifying a signature, verifying the signer's certificate increase the
confidence of the receiver in ensuring that attempted forgery or impersonation
has not occurred.
Digital certificates can be used as to verify
someone's (or some company's) identity. It can be used in a variety of ways
including to control access on web sites, to create virtual private networks, to
secure e-mail, and to guarantee the authenticity of downloaded software.
Examples: 1. A corporation can grant/deny access to the employees,
customers, suppliers and other business partners to sensitive network resources
on the corporate intranet by using the digital certificate.
web-based merchant can install the digital certificate to its web server. A
customer shopping at this site will be able to verify (authenticate) the
identity of the web server and the content provided by the merchant. Without
this authentication, the shopper would not be able to trust the merchant with
sensitive information like credit card number.
A CA is a trusted third
party willing to verify the ID of entities and their association with a given
key, and later issue certificates attesting to that identity. In the passport
analogy, the CA is similar to the Ministry of external affairs, which verifies
your identification, creates a recognized and trusted document which certifies
who you are, and issues the document to you.
A CA can be within the
organization itself or outside organization depending on the purpose of the
certificates. A company may issue certificates to its employees for reason that
only its employees can access to the company database but an internet user might
request for a certificate from a well-known and trusted CA in order for him to
do on-line transaction securely.
Figure illustrates the
certificate request and issuance process by a CA:
applicant must generate his/her own key pair and send the public key to the CA
with some proof of his/her identification.
The CA will put the public
key in a new certificate, digitally sign the certificate using its private key
and then send the certificate to the applicant.
Note: The CA will check
the certificate applicant's identification before it generates the certificate
and signs the request. Different CAs may issue certificates with varying levels
of identification requirements. One CA may insist on seeing the Identity card,
another may want a signed letter authorizing certification from anyone
requesting a certificate.
wants to send a signed data/message to the recipient. He creates a message
digest (which serves as a "digital fingerprint") by using a hash function on the
message. Sender then encrypts the data/message digest with his own private key.
This encrypted message digest is called a Digital Signature and is attached to
sender's original message, resulting in a signed data/message. The sender sends
his signed data/message to the recipient.
When the recipient receives
the signed data/message, he detaches sender's digital signature from the
data/message and decrypts the signature with the sender's public key, thus
revealing the message digest.
The data/message part will have to be
re-hashed by the recipient to get the message digest. The recipient then
compares this result to the message digest he receives from the sender. If they
are exactly equal, the recipient can be confident that the message has come from
the sender and has not changed since he signed it. If the message digests are
not equal, the message may not have come from the sender of the data/message, or
was altered by someone, or was accidentally corrupted after it was signed.
When a certificate is
installed in a web server, it allows users to check the server's authenticity
(server authentication), ensures that the server is operated by an organization
with the right to use the name associated with the server's digital certificate.
This safeguard's users from trusting unauthorized sites.
A secure web
server can control access and check the identity of a client by referring to the
client certificate (client authentication), this eliminates the use of password
dialogs that restrict access to particular users.
The phenomenon that
allows the identities of both the server and client to be authenticated through
exchange and verification of their digital certificate is called mutual
server-client authentication. The technology to ensure mutual server-client
authentication is Secure Sockets Layer (SSL) encryption scheme.
1. The user
visits a secure web site. 2. The server asserts its site identity by sending
its server certificate to the client (browser) 3. The user verifies the
server authenticity to ensure that it is an exact site the user is visiting.
4. The server requests a client certificate from the client. 5. The user
selects an appropriate certificate to present. 6. The server verifies the
client authenticity to ensure that it is an authorized user. 7. When
authentication is complete, the client sends the server a session key encrypted
using the server's public key. 8. A secure channel is established between
the client and server with the following three fundamental security services.
Copyright 2019 All rights reserved to the ICAI. No part of the contents available in any ICAI publication may be reproduced, stored in a retrieval system, or transmitted, in any form, or by any means, electronic, mechanical, photocopying, recording, or otherwise, without prior permission, in writing, from the Institute.