0% found this document useful (0 votes)
6 views40 pages

Understanding Digital Certificates and PKI

Uploaded by

dhruvashetty2332
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views40 pages

Understanding Digital Certificates and PKI

Uploaded by

dhruvashetty2332
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

18CS744-Cryptography

Module-4
CI: Dr. Shanthi M.B.
Assoc. Professor, Dept. of CSE
CMRIT, Bengaluru
Digital Certificates
Question: Write short note on Digital Certificates
Digital Certificates:
● A digital certificate is a signed document used to bind a public key to the identity of a person.
● Identity could be his/her name, national identification number, e-mail .or postal address, employer,
etc. or some combination of these.
● The entity that issues certificates is a trusted entity called a certification Authority (CA)certificate
authority.
● Certificates may be issued to individuals, to organizations, or even to servers.
● The most basic type of certificate may be applied for through regular e-mail with the applicant
stating his/her public key, name, e-mail address, etc. In this case, the CA requires no credentials
from the applicant.
● It simply assumes that the applicant is in possession of the (uncompromised) private key
corresponding to the Public key contained in the application received via e-mail.
● The verifier of such a certificate should realize that the above certificates are "Trust at your own
risk certificates.“
● To carry more weight, certificate issuance would require the CA to perform identity verification of
the applicant. The CA may have to obtain and verify several details of the applicant this task would
be delegated by the CA to the registration Authority (RA)
Question: Explain the structural format of X.509 digital Certificate

X.509 is an ITU (International Telecommunication Union)standard specifying the format for public key
certificates. The fields of an X.509 certificate together with their meaning are as follows:
i. Certificate Serial Number and Version :Each certificate issued by a given CA will have a unique
number.
ii. Issuer information: The distinguished name of an entity includes his/her/its "common name," e-mail
address, organization, country, etc.
iii. Certificate signature and associated signing algorithm information: It is necessary to verify the
authenticity of the certificate. For this purpose, it is signed by the issuer. So, the certificate should
include the issuer's digital signature and also the algorithm used for signing the certificate.
iv. Validity period: There are two date fields that specify the start date and end date between which the
certificate is valid.
v. Subject information :This includes the distinguished name of the certificate's subject or owner
• For example, if a customer intends to communicate with an e-commerce web server at
[Link], then the customer's browser will request B-Mart's certificate.
• Client-side software will check whether the "Common Name" in B-Mart's certificate tallies with
B-Mart's domain name.
• Other information, such as the subject's country, state, and organization, may be included
Certificate Format:
Digital Signature
Question: Write a short note on Digital Signature

A digital signature is a mathematical technique used to validate the authenticity and


integrity of a message, software or digital document.
The steps followed in creating digital signature are :

1. Message digest is computed by applying hash function on the message and


then message digest is encrypted using private key of sender to form the digital
signature.
2. Digital signature is then transmitted with the message.(message + digital
signature is transmitted)
3. Receiver decrypts the digital signature using the public key of sender.(This
assures authenticity,as only sender has his private key so only sender can
encrypt using his private key which can thus be decrypted by sender’s public
key).
4. The receiver now has the message digest.
5. The receiver can compute the message digest from the message (actual
message is sent with the digital signature).
6. The message digest computed by receiver and the message digest (got by
decryption on digital signature) need to be same for ensuring integrity.

Steps involved in Digital Signature Generation


Question: Explain different architectures of PKI (Public key Infrastructure)
● A public key infrastructure (PKI) is a set of roles, policies, hardware, software and
procedures needed to create, manage, distribute, use, store and revoke digital certificates
and manage public-key encryption.
● Supports 4 different architectures
1. PKI with Single CA:
CA1 could issue certificates to multiple users Ul, U2, etc., enabling any pair of these users to
communicate securely using certificates exchanged between them. This is represented in above
Fig.(a). Each arc in the figure is a trust relationship. For example, the arc from the CA1 to U2
expresses the fact that CA1 vouches for U2's public key in the certificate issued by the CA1 to
U2. Such an architecture, however, is not scalable. There are tens of millions of users who may
need certificates. It is not practical for CA1 to issue certificates to all.
[Link] PKI Architecture: Fig.(b)
Supports scalability. The root CA certifies other Cas. These CAs at sublevel are allowed to
certify other set of Cas at the next level and this continues in multiple levels. This
formulates a hierarchical PKI Architecture. As given in Fig.(b). This makes the
architecture scalable easily and makes each CA is responsible for certifying a limited
number of users along CAs. The root CA is always called as ’Trust Anchor’. Every CA in
the tree must be aware of the public key of root CA.
3. Mesh Based PKI: Fig.(c)
Supports dense web of trust between CAs. All the CAs are connected with two directional
links. Include multiple trust paths between different CAs. This architecture is mainly
designed to provide greater resilience against compromising with CAs due to attacks.
4. Bridge Based PKI: Fig.(d)
Is motivated by the need for secure communication between the organizations connected
with a business partnership. Here, partnership organizations will have their own PKIs. A
bridge CA is introduced to establish a trust relationship between them by introducing
representative CAs from each organization. Representative CAs and Bridge CA will issue
certificates to each other. The representative CAs of each organization will connect the
CAs of their own organization.
Two Way Authentication Using private key encryption
A two-level hierarchy of symmetric encryption keys can be used to provide
confidentiality for communication in a distributed environment. Usually involves the use
of a trusted key distribution center (KDC). Each party in the network shares a secret
master key with the KDC.
The KDC is responsible for generating session keys, and for distributing those keys to
the parties involved, using the master keys to protect these session keys.
Question: Explain Needham-Schroeder Protocol for Mutual Authentication
***
● The Needham-Schroeder Protocol is the original, basic key exchange protocol.
Used by 2 parties who both trusted a common key server, it gives one party the
info needed to establish a session key with the other.
Note that all communications is between A&KDC and A&B, B&KDC don't talk directly
(though indirectly a message passes from KDC via A to B, encrypted in B's master key
so that A is unable to read or alter it).
Other variations of key distribution protocols can involve direct
communications between B&KDC. The protocol can be summarized as follows.

Assumption here is: hacker


has compromised with the
old master key of user B and
the Session key.

There is a critical flaw in the protocol, as shown. The message in step 3 can be
decrypted, and hence understood only by B. But if an opponent, X, has been
able to compromise an old session key, then X can impersonate A and trick B
into using the old key by simply replaying step 3. Admittedly, this is a much
more unlikely occurrence than that an opponent has simply observed and
recorded step 3.
Denning proposes to overcome this weakness by a modification to the
Needham/Schroeder protocol that includes the addition of a timestamp to steps 2
and 3. Her proposal assumes that the master keys, Ka and Kb are secure, and it
consists of the following steps:
Conversation adds
Timestamp in addition
to the message
exchange

T is a timestamp that assures A and B that the session key has only just been
generated. Thus, both A and B know that the key distribution is a fresh
[Link] Denning protocol seems to provide an increased degree of security
compared to the Needham/Schroeder protocol. However, a new concern is raised:
namely, that this new scheme requires reliance on clocks that are synchronized
throughout the network.
Question: Explain remote user authentication using asymmetric encryption.
This protocol assumes that each of the two parties is in possession of the current
public key of the other. Sequence of dialogues for authentication are given below.

A protocol using timestamps is provided in that uses a central system, referred to


as an authentication server (AS), because it is not actually responsible for secret
key distribution. Rather, the AS provides public-key certificates. The session key
is chosen and encrypted by A; hence, there is no risk of exposure by the AS. The
timestamps protect against replays of compromised keys. See text for details. This
protocol is compact but, as before, requires synchronization of clocks.
Another approach, proposed by Woo and Lam, makes use of nonces.

This protocol provides an effective, secure means for A and B to establish a


session with a secure session key. Furthermore, the protocol leaves A in
possession of a key that can be used for subsequent authentication to B,
avoiding the need to contact the authentication server repeatedly.
Question: What is Kerberos? Explain Kerberos authentication service***
Kerberos is an authentication service developed as part of Project Athena at MIT, and is one
of the best known and most widely implemented trusted third party key distribution
systems.

Note:Kerberos support is built in to all major computer operating systems, including


Microsoft Windows, Apple macOS, FreeBSD and Linux.

Kerberos provides a centralized authentication server whose function is to authenticate


users to servers and servers to users. Unlike most other authentication schemes,
Kerberos relies exclusively on symmetric encryption, making no use of public- key
encryption. Two versions of Kerberos are in common use: v4 & v5.

Following diagram depicts the steps involved in KERBEROS mutual authentication


service.
[Link] client request a ticket-granting ticket on behalf of the user by sending its user’s ID to
the AS, together with the TGS ID, indicating a request to use the TGS service.
[Link] AS responds with a message, encrypted with a key derived from the user’s password
that contains the ticket for the TGS. The encrypted message also contains a copy of the
session key used by C and the TGS. In this way, only the user’s client can read it. The same
session key is included in the ticket, which can be read only by the TGS. Now C and the
TGS share a common key.
3. Armed with the ticket and the session key, C is ready to approach the TGS. C sends the
TGS a message that includes the ticket plus the ID of the requested service. In addition, C
transmits an authenticator, which includes the ID and address of C’s user and a timestamp;
it is encrypted with the session key known only by C and TGS.
The TGS decrypt the authenticator with Kc gained from the ticket and check the name and
the address from the authenticator with that of the ticket and with the network address of
the incoming message. If all match, then the TGS is assured that the sender of the ticket is
indeed the ticket’s real owner.
[Link] the TGS replies to the client, sending a message encrypted with the common
key that they share. It Includes a new session key to be used with the server V that
must provide the service, the ID of V, the ticket valid for a specific service and the
timestamp of the ticket. The ticket itself includes the new session key.

5.C now has a reusable service-granting ticket for V. When C presents this ticket, it
also sends an authenticator. The server can decrypt the ticket, recover the session key
and decrypt the authenticator.

Finally, at the conclusion of this process, the client and the server share a secret key.
This key can be used to encrypt future messages between the two or to exchange a
new session key for that purpose.
Question: Explain Kerberos version-4 authentication Dialogues***
The Version 4 Authentication Dialogue:
● Kerberos V4 is a basic third-party authentication scheme.
● The core of Kerberos is the Authentication server (AS) and Ticket Granting
Servers (TGS) – these are trusted by all users and servers and must be
securely administered.
● The protocol includes a sequence of interactions between the client, AS,
TGT and desired server. Version 4 of Kerberos makes use of DES, in a
rather elaborate protocol, to provide the authentication service
Kerberos Version-4 message exchange for authentication service are listed
below.
Table a shows the technique for distributing the session key. As before, the client
sends a message to the AS requesting access to the TGS.
The AS responds with a message,encrypted with a key derived from the user’s
password (Kc) that contains the ticket. The encrypted message also contains a copy of
the session key,( Kc,tgs), where the subscripts indicate that this is a session key for C
and TGS. Because this session key is inside the message encrypted with (Kc), only the
user’s client can read [Link] same session key is included in the ticket, which can be
read only by the TGS. Thus, the session key has been securely delivered to both C and
the TGS.
Note that several additional pieces of information have been added to this first phase of
the dialogue. Message (1) includes a timestamp, so that the AS knows that the message
is timely. Message (2) includes several elements of the ticket in a form accessible to C.
This enables C to confirm that this ticket is for the TGS and to learn its expiration
time. Note that the ticket does not prove anyone's identity but is a way to distribute
keys securely. It is the authenticator that proves the client's identity.
C sends the TGS a message that includes the ticket plus the ID of the requested
service (message (3) in Table b). In addition, C transmits an authenticator, which
includes the ID and address of C’s user and a timestamp. Unlike the ticket, which is
reusable, the authenticator is intended for use only once and has a very short lifetime.
The TGS can decrypt the ticket with the key that it shares with the AS. This ticket
indicates that user C has been provided with the session key Kc,tgs. In effect, the
ticket says,“Anyone who uses Kc,tgs must be C.”The TGS uses the session key to
decrypt the authenticator.
The reply from the TGS, in message (4), follows the form of message (2). C now has a
reusable service-granting ticket for V. When C presents this ticket, as shown in
message (5), it also sends an authenticator. The server can decrypt the ticket, recover
the session key, and decrypt the authenticator. If mutual authentication is required, the
server can reply as shown in message (6).
Finally, at the conclusion of this process, the client and server share a secret key. This
key can be used to encrypt future messages between the two or to exchange a new
random session key for that purpose.
Question: Discuss about Kerberos Realms
Reference video:[Link]

A Kerberos realm is a set of managed nodes that share the same Kerberos database,
and are part of the same administrative domain. If have multiple realms, their Kerberos
servers must share keys and trust each other.

The details of the exchanges illustrated in below Figure are as follows


Kerberos:[Link]
[Link]
ELECTRONIC MAIL SECURITY
In virtually all distributed environments, electronic mail is the most heavily used
network-based [Link] expect to be able to, and do, send email to others who are
connected directly or indirectly to the Internet, regardless of host operating system or
communications suite.
Pretty Good Privacy:
PGP is an open-source, freely available software package for email security.
It provides authentication through the use of digital signature, confidentiality through the
use of symmetric block encryption, compression using the ZIP algorithm, and e-mail
compatibility using the radix-64 encoding scheme.
PGP has grown explosively and is now widely used because of following reasons:
1. It is available free worldwide in versions that run on a variety of platforms, including
Windows, UNIX, Macintosh, and many more.
2. It is based on algorithms that are considered extremely secure such as RSA, DSS, and
Diffie-Hellman for public-key encryption; CAST-128, IDEA, and 3DES for symmetric
encryption; and SHA-1 for hash coding.
3. It has a wide range of applicability, from corporations that wish to select and enforce a standardized scheme for encrypting
files and messages to individuals who wish to communicate securely with others worldwide over the Internet and other
networks.

4. It was not developed by, nor is it controlled by, any governmental or standards organization.

5. PGP is now on an Internet standards track (RFC 3156; MIME(Multipurpose Internet Mail Extensions) Security withOpenPGP.

PGP Services:
the hash code.
5. The receiver generates a new hash code for the message and compares it with the decrypted
hash code. If the two match, the message is accepted as authentic.
Transmission and Reception of PGP Message:

You might also like