11/5/09

Practical Encryption Algorithms

Data Encryption Standard (DES)
– Block size is 64 bits.
– Key is 56 bits.
• IDEA
– Block size is 64 bits.
– Key size is 128 bits.
• Advanced Encryption Standard (AES)
– Also known as Rijndael cryptosystem.
– Block size can be 128, 192, or 256 bits.
– Key size can be 128, 192, or 256 bits.


Block Encryption Algorithms

Data Encryption Standard (DES)
– The most widely used encryption scheme.
– Known as the Data Encryption Algorithm (DEA).
– It is a block cipher.
• The plaintext is 64-bits in length.
• The key is 56-bits in length.
• Longer plaintexts are processed in 64-bit blocks.


DES

The overall processing at each iteration:
Li = Ri-1
Ri = Li-1 ⊕ F(Ri-1, Ki)
• Concerns about:
– The algorithm and the key length (56-bits)
– Longer key lengths essential for critical
applications

Applications

Three categories:
a) Encryption/decryption:
• The sender encrypts a message with the recipient’s
public key.
b) Digital signature / authentication:
• The sender signs a message with its private key.
c) Key exchange:
• Two sides cooperate to exhange a session key.

Requirements

Computationally easy for a party B to
generate a key pair
– Public key KUB
– Private key KRB
• Easy for sender to generate ciphertext:
C = E (M, KUB)
• Easy for the receiver to decrypt ciphertext
using private key:
M = D (C, KRB) = D (E (M, KUB), KRB)

Computationally infeasible to determine
KRB knowing KUB.
• Computationally infeasible to recover
message M, knowing KUB and ciphertext C.
• Either of the two keys can be used for
encryption, with the other used for
decryption:
M = D (E (M, KUB), KRB) = D (E (M, KRB), KUB)

The RSA Public Key Algorithm

RSA Algorithm
– Developed by Ron Rivest, Adi Shamir and Len
Adleman at MIT, in 1977.
– A block cipher.
– The most widely implemented.
46
ICDCN’06, IIT Guwahati
The RSA Algorithm – Key Generation
1. Select p,q p and q both prime
2. Calculate n = p x q
3. Calculate
4. Select integer e
5. Calculate d
6. Public Key KU = {e,n}
7. Private key KR = {d,n}
Φ(n) = ( p −1)(q −1)
gcd(Φ(n),e) =1;1< e < Φ(n)
d = e−1 modΦ(n)
φ(n) is the number of positive numbers less than n
and relatively prime to n (called Euler totient).


The Security of RSA

RSA is secure since
– We use large number of bits in e and d.
– The problem of factoring n into two prime factors is
computationally very difficult.
• Knowing p and q will allow us to know Φ(n).
• This will help an intruder to know the values of e and d.
• Until recently, this was felt to be infeasible for numbers in the
range of 100 decimal digits or so (approximately 300 bits).
• A worldwide team cooperating over the internet and using
1600 computers recently cracked the code in eight months.
• Currently, a 1024-bit key size (about 300 decimal digits) is
considered strong enough for virtually all applications.
– Key sizes in the range of 1024 to 2048 bits seems safe.

2 comments:

  1. Thanks for sharing this site. you can download lots of ebooks from here

    http://feboook.blogspot.com

    ReplyDelete
  2. I was looking for some detail using which I can learn the application areas of all these algorithms. Thanks to you for this quick detail and also listing the applications where they are used.
    e-sign act

    ReplyDelete