0% found this document useful (0 votes)
79 views16 pages

Asymmetric Key Cryptography Overview

This document summarizes asymmetric key cryptography and the RSA cryptosystem. It discusses how asymmetric key cryptography uses two separate keys, a private key and a public key. It then describes the general idea and processes of encryption and decryption in asymmetric key cryptography. A major section discusses the RSA cryptosystem in detail, including its introduction, procedure for key generation, encryption and decryption, examples, and applications.

Uploaded by

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

Asymmetric Key Cryptography Overview

This document summarizes asymmetric key cryptography and the RSA cryptosystem. It discusses how asymmetric key cryptography uses two separate keys, a private key and a public key. It then describes the general idea and processes of encryption and decryption in asymmetric key cryptography. A major section discusses the RSA cryptosystem in detail, including its introduction, procedure for key generation, encryption and decryption, examples, and applications.

Uploaded by

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

Cryptography(CS F463)

BITS Pilani Dr. Raja Muthalagu


Dubai Campus Department of Computer Science
Chapter 9- Asymmetric-Key Cryptography

BITS Pilani, Dubai Campus


Keys
Asymmetric key cryptography uses two separate keys: one
private and one public.

Figure 10.1 Locking and unlocking in asymmetric-key cryptosystem

10.3
BITS Pilani, Dubai Campus
General Idea

Figure 10.2 General idea of asymmetric-key cryptosystem

10.4
BITS Pilani, Dubai Campus
Plaintext/Ciphertext
Unlike in symmetric-key cryptography, plaintext and
ciphertext are treated as integers in asymmetric-key
cryptography.
Encryption/Decryption
C = f (Kpublic , P) P = g(Kprivate , C)
Figure 6.1 Encryption and decryption with DES

Symmetric
Key
10.5
BITS Pilani, Dubai Campus
RSA CRYPTOSYSTEM

The most common public-key algorithm is the RSA


cryptosystem, named for its inventors (Rivest, Shamir,
and Adleman).

Topics discussed in this section:


10.2.1 Introduction
10.2.2 Procedure
10.2.3 Some Trivial Examples
10.2.4 Attacks on RSA
10.2.5 Recommendations
10.2.6 Optimal Asymmetric Encryption Padding (OAEP)
10.2.7 Applications
10.6
BITS Pilani, Dubai Campus
Introduction

Complexity of operations in RSA

10.7
BITS Pilani, Dubai Campus
Procedure

Encryption, decryption, and key generation in RSA

10.8
BITS Pilani, Dubai Campus
Continued

Two Algebraic Structures

Encryption/Decryption Ring: R = <Zn , +, × >

Key-Generation Group: G = <Z (n)∗, × >

10.9
BITS Pilani, Dubai Campus
10.2.2 Continued

10.10
BITS Pilani, Dubai Campus
10.2.2 Continued

Encryption

10.11
BITS Pilani, Dubai Campus
10.2.2 Continued

Decryption

10.12
BITS Pilani, Dubai Campus
10.2.3 Some Trivial Examples
Example 10. 5
Bob chooses 7 and 11 as p and q and calculates n = 77. The
value of (n) = (7 − 1)(11 − 1) or 60. Now he chooses two
exponents, e and d, from Z60∗. If he chooses e to be 13, then
d is 37. Note that e × d mod 60 = 1 (they are inverses of each
Now imagine that Alice wants to send the plaintext 5 to Bob.
She uses the public exponent 13 to encrypt 5.

Bob receives the ciphertext 26 and uses the private key 37 to


decipher the ciphertext:

10.13
10.2.3 Some Trivial Examples
Example 10. 6

Now assume that another person, John, wants to


send a message to Bob. John can use the same
public key announced by Bob (probably on his
website), 13; John’s plaintext is 63. John calculates
the following:

Bob receives the ciphertext 28 and uses his private key 37 to


decipher the ciphertext:

10.14
10.2.3 Some Trivial Examples
Example 10. 7

Jennifer creates a pair of keys for herself. She


chooses p = 397 and q = 401. She calculates
n = 159197. She then calculates (n) = 158400. She
then chooses e = 343 and d = 12007. Show how Ted
can send a message to Jennifer if he knows e and n.

Suppose Ted wants to send the message “NO” to


Jennifer. He changes each character to a number
(from 00 to 25), with each character coded as two
digits. He then concatenates the two coded
characters and gets a four-digit number. The plaintext
is 1314. Figure 10.7 shows the process.
10.15
10.2.3 Continued

Figure 10.7 Encryption and decryption in Example 10.7

10.16

Common questions

Powered by AI

The RSA cryptosystem is preferred for public-key encryption due to its mathematical foundation based on the difficulty of factoring large composite numbers. This problem is computationally intensive, offering a high level of security as breaking the encryption would require an infeasible amount of computational power to factor the large modulus n . Additionally, the algorithm's flexibility in key size allows for scalable security levels, enhancing its applicability in various security contexts .

The RSA algorithm ensures secure communication by using a public key for encryption and a private key for decryption. The public key, which consists of a modulus n (product of two large primes, p and q) and an exponent e, is used to encrypt messages . Only the intended recipient has access to the private key, determined by the decryption exponent d, which is the modular inverse of e mod (n).

A potential vulnerability of the RSA algorithm is its susceptibility to attacks if the same modulus n is used across different systems or instances. This can allow attackers to leverage mathematical relationships between the public keys and perform modulus attacks . One recommendation to mitigate this vulnerability is to ensure that each user's key pair uses distinct prime factors p and q to produce a unique modulus n .

Asymmetric key cryptography uses two separate keys: one private and one public, whereas symmetric key cryptography uses a single key for both encryption and decryption . In asymmetric cryptography, plaintext and ciphertext are treated as integers, contrasting with symmetric cryptography where the representation can vary .

In the RSA encryption process, the sender first converts the plaintext into an integer. Using the recipient's public key (e, n), the sender calculates the ciphertext C = P^e mod n, where P is the plaintext as an integer. For decryption, the recipient uses their private key d to compute the plaintext P = C^d mod n . For example, if p = 7, q = 11, and n = 77, with public key e = 13 and private key d = 37 (where e \* d mod 60 = 1), encrypting plaintext 5 gives ciphertext C = 5^13 mod 77, while decryption involves calculating P = C^37 mod 77 .

Large prime numbers are crucial in the RSA cryptosystem because they form the basis of the modulus n, which is used in the encryption and decryption processes . The security of RSA is heavily reliant on the difficulty of factoring this modulus into its prime components. If the primes were small or easily factorable, attackers could efficiently reverse-engineer the private key, compromising the encryption .

The RSA cryptosystem facilitates secure communication over an insecure channel by allowing the sender to encrypt the message with the recipient's public key, ensuring that only the recipient can decrypt it using their private key . This method ensures confidentiality as only the intended recipient has the means (private key) to reverse the encryption process . The separation of keys ensures that even if the public key and ciphertext are intercepted, the message remains secure .

When choosing exponents in RSA key generation, it is important that the public exponent e and the private exponent d are multiplicative inverses mod (n), ensuring that e \* d mod (n) = 1 . A common choice for e is 65537, which simplifies calculations and provides good security. However, e must be coprime to (n). The private exponent d should be large enough to prevent certain attacks but not so large that decryption becomes computationally burdensome .

The RSA cryptosystem uses Optimal Asymmetric Encryption Padding (OAEP) to enhance security by embedding randomness in the messages before encryption. Padding is necessary because it prevents attackers from exploiting predictable structures in the plaintext, thereby thwarting attacks that employ chosen plaintexts or exploit deterministic encryption properties .

In RSA character encoding, each character is typically assigned a numeric value and concatenated to form a larger integer for encryption. For instance, Ted sends the message 'NO' to Jennifer by encoding N as 13 and O as 14, resulting in the plaintext 1314 . Jennifer's public key, consisting of n = 159197 and e = 343, is used for encryption, and Ted computes the ciphertext by raising 1314 to the power of 343 modulo 159197. Jennifer then decrypts the ciphertext using her private key d = 12007 .

You might also like