Unit+4
Unit+4
It is a computational problem that involves finding an integer value in a cyclic group that satisfies a
given equation.
Problem:- Given a cyclic group G with generator α and an element β € G*, find element x such that
αx= β
Difficulty:- The discrete logarithmic problem is considered a hard problem, especially when N is a
large prime number.
Discrete Logarithmic Problem is a one way function which is easy in one direction anddifficult in
another.
Now, we use a prime modulus 17, then find primitive root of 17.
Primitive root is a unique no. which is when raise to different no. doesn’t repeat same no. and the
range of number will be between 1 and n, where n is equal to number whose mod.
3xmod17 gives you unique results whose values lie between 1 and 16 (both inclusive), for all values
of x between 1 and 16 (both inclusive)
Now, reverse procedure is hard, which means if we have given value of modulo operation and we
have to determine the value of x then it is a tedious job, it is called as discrete logarithmic problem.
The strength of one way function is it is easy to perform in one direction but is difficult to perform in
opposite direction.
Diffie Hellman key exchange is a method of digital encryption that securely exchanges cryptographic
keys between two parties over a public channel without conversation being transmitted over
internet.
Its goal is to securely establish a channel to create and share a key for symmetric key algorithms.
Steps in Diffie Hellman Key Exchange
Alice and Bob agree on two large prime numbers, p and g and a public key exchange
algorithm.
Alice chooses a secret integer a, and computes A = gamod p and sends A to Bob.
Bob chooses a secret integer b and computes B = gbmod p and sends B to Alice.
Alice computes s = Ba mod p and Bob computes s = Ab mod p.
Alice and Bob now both share secret key which they use to estaiblish a secure
communication channel.
Security of Diffie Hellman relies on fact that it is computationally infeasible for an attacker to
determine the shared key from public value p, g, A and B.
Assumption:-
The computational Diffie Hellman assumption is computational hardness assumption about Diffie
Hellman problem. The CDH assumption involvesthe problem of computing the discrete logarithm in
cyclic groups.
The CDH problem illustrates the attack of an evasdropper in Diffie Hellman key exchange protocol to
obtain exchanges secret key.
Definition:-
Consider a cyclic group G of order q. The CDH assumption states that given (g, ga, gb) for a randomly
chosen generator g and random a, b € {a,….., q-1}, it is computationally intractable to compute the
value
Assumption:-
Its assumption is based on computational hardness assumption about a certain problem involving
discrete logarithms on cyclic group. It is used as basis to prove the security of many cryptographic
protocol, most notably EL Gamal and Cramer Shoup cryptosystem.
Definition
Given a finite cyclic group G with generator g is to decide whether there exists integer x,y such that
a= gx, b= gy and c= gxy
ECC is a asymmetric encryption algorithm that employs the algebraic architecture of elliptical curves
with finite field.
1) ECC Keys:-
Private Key:- ECC cryptography’s private key creation is a simple as safely producing a
random integer in a specific range making it highly quick. Any integer in the field represents a valid
ECC private key.
Public Key:- Public key within ECC are EC points which are pair of integers co-ordinates x and
y that (i.e. on curve) Because of its unique features, EC points can be composed to a single co-
ordinates +-1 bit (odd or even).
2) Generator Point:-
ECC cryptosystem establish a special predefined EC points called generator point G (base point) for
elliptical curve over finite fields which can generate any other position in its sub group over elliptic
curve by multiplying G from some integer in the range [0,……r]
Eg. y2 = x3+ax+b
It is symmetric to x axis
ECC Algorithm
i) Eq (a,b) = Elliptical curve with parameters a,b and q(prime no. or an integer of form 2m)
ECC key exchange algorithm is similar to Diffie Hellman key exchange algorithm.
K = ἡ a X Pb
K =ἡb X Pa
First encode this messege M into point on elliptical curve. Let this point be P m
For encryption chose a random +ve integer k
KG X ἡb
Pm
aΦ(n) = 1 (mod n), where Φ(n) is defined as count of integer 1<a< n such that gcd(a,n) = 1
Example :-
RSA Algorithm
RSA algorithm was proposed by three mathematicians Rivest, Schimer and Aldaman for asymmetric
cryptosystem.
It is asymmetric cryptographic algorithm which works on two keys one is public key and other is
private key.
Public key is use for encryption and private key is use for decryption.
Idea of RSA
The basic idea of RSA is based on fact that it is difficult to factorize a large integer.
Steps in RSA Algorithm
Step 1 Key generation :-A private key and public key are generated. Private key is kept secret while
public key is shared.
Step 2 Key distribution:- The public key is shared between sender and receiver
Step3 Encryption:- Sender uses receiver’s public key to encrypt the message.
Step 4 Choose a small no. e co-prime with Φ(n). In other words, GCD(Φ(n), e) =1 and 1<e<Φ(n)
Example
Step 2 n = p X q so n = 3 X 5 = 15
Step 3 Φ(n) = 2 X4 =8
So e is assume to be 3
73 mod 15 =13
Cipher text is 13
M = 133 mod 15
2197 mod 15
M =7
Slow processing speed RSA is slow when encrypting and decrypting large amounts of data.
Large key size RSA requires large keys for security, which increases the need for storage,
computational power, and resources.
Vulnerability to side-channel attacks Attackers can use information from side channels,
such as power consumption, timing analysis, and electromagnetic radiation, to extract the
private key.
Weak key generation The algorithm is easier to solve if the prime numbers selected are too
close together or if one of the numbers in a key pair is too small.
Not suitable for public data encryption RSA can't be used for public data encryption, like
electoral voting.
Padding is necessary Padding is required when using RSA, but it can be difficult to
implement and can make the system vulnerable to attack