2. Various Algorithms
RSA Cryptoystem - To secure internet, Banking and credit card transaction.
Paillier Algorithm – Used in E voting systems, Threshold Scheme.
Gorti’s Non-interactive Exponential Homomorphic Encryption Scheme [NEHE]
Enhanced Homomorphic Cryptosystem (EHC) - Efficient Secure Message
Transmission in Mobile Ad Hoc Networks.
Algebra Homomorphic Encryption Scheme Based On Updated ElGamal (AHEE) - In
Hybrid systems.
BGV - For the security of integer polynomials.
3. RSA Cryptosystem
1. Key Generation
Step 1: Each user generates a public/private
key pair by selecting two large
primes at random – say p & q.
Step 2: Computing RSA-modulus N = p . q
& ø(N) = (p-1) (q-1).
Step 3: Selecting at random the encryption
key e where, 1 < e < ø(N)
such that GCD (e , ø(N)) = 1.
Step 4: Publish their public encryption key:
KU= { e , N } & keep the secret
private decryption key: KR= {d , N}.
2. Encryption
Step 1: Obtains public key of recipient
KU={e , N}
Step 2: Computes: C = M^e mod N,
where 0≤M<N.
3. Decryption
Step 1: Uses their private key KR={d , N}
Step 2: Computes: M=C.d mod N
4. An Example
1. Key Generation
Step 1: p=11 & q = 13
Step 2: System modulus N = 11 . 13 = 143.
and ø(143) = (11-1) (13-1) = 120.
Step 3: Random Encryption key e ,
where, 1 < e < 120 : GCD (e , 120) = 1 ; e = 23
Step 4: Public Encryption Key: KU = {23,143}
Secret Private Decryption Key: KR= { d ,N }.
To Calculate : 23 . d ≡ 1 mod ø(143), Now,
23 . d + k . 120 = 1 = GCD(e,120) .
Hence from the above equation,
d = 47 & k = -9
Encrypt(message) ≡
Message^pub.key mod RSA-modulus
OR
Encrypt(message) ≡
Message^23 mod 143
Property is :
Encrypt(m) * Encrypt(n) = Encrpyt(m*n)
5. Contd... (Area of a Square)
Width = 7 private key : (47,143)
Height = 3 public key : (23,143)
E(w) = width^e mod N
= 7^23 mod 143
= 2
E(h) = height^e mod N
= 3^23 mod 143
= 126
E(Area) = 252
D(E(Area)) = cipher^d mod N
= 252^47 mod 143
= 21.
VOILA! Area = 21!