Tuesday 26 May 2015

Cryptography - Famous Encryption Techniques

Brief Report

Encryption methods

1.     Symmetric vs. Asymmetric Encryption

There are two basic techniques for encrypting information: symmetric encryption (also called secret key encryption) and asymmetric encryption (also called public key encryption.)

Symmetric Encryption

Symmetric encryption is the oldest and best-known technique. A secret key, which can be a number, a word, or just a string of random letters, is applied to the text of a message to change the content in a particular way. This might be as simple as shifting each letter by a number of places in the alphabet. As long as both sender and recipient know the secret key, they can encrypt and decrypt all messages that use this key.

Asymmetric Encryption

The problem with secret keys is exchanging them over the Internet or a large network while preventing them from falling into the wrong hands. Anyone who knows the secret key can decrypt the message. One answer is asymmetric encryption, in which there are two related keys--a key pair. A public key is made freely available to anyone who might want to send you a message. A second, private key is kept secret, so that only you know it. 

Symmetric vs. Asymmetric

Symmetric
Asymmetric
 Symmetric encryption uses the identical key to both encrypt and decrypt the data. 
Asymmetric encryption uses two related keys (public and private) for data encryption and decryption.
Security risks.
Takes away the security risks.
Exposed key.
The private key is never exposed.
Much faster computationally than asymmetric algorithms as the encryption process is less complicated.
Little complicated than symmetric.
 Key is transferred with encrypted data to decrypt data.
Public key is exposed and other user knows the private key.




2.     RSA (Rivest-Shamir-Adleman) - Asymmetric

RSA is a cryptosystem for public-key encryption, and is widely used for security sensitive data, particularly when being sent over an insecure network such as internet.
It is also known as asymmetric cryptography. It has two keys a public key and a private key. The public key can be shared with anyone whereas private key must be kept secret. When encrypting the message, it is raised to the power of the key, and divided with remainder by a fixed product of two primes. By repeating the process with the other key, the plaintext can be retrieved back.

3.     AES (Advanced Encryption Standard) - Symmetric

It is a software and hardware tool to encrypt and decrypt text using AES encryption algorithm. You can chose 128, 192 or 256-bit long key size for encryption and decryption.
AES comprises three block ciphers, AES-128, AES-192 and AES-256. Each cipher encrypts and decrypts data in blocks of 128 bits using cryptographic keys of 128, 192 and 256-bits, respectively. Symmetric or secret-key ciphers use the same key for encrypting and decrypting, so both the sender and the receiver must know and use the same secret key.

4.     RSA vs. AES

RSA is an asymmetric cipher. It is ideal for secure exchange of messages across an untrusted network, because the public key can be known by everyone - a message encrypted with the public key can only be decrypted by the private key. As such, if two parties know each other's public keys, they can exchange messages securely. This means that no secret information has to be transmitted - as long as authenticity and integrity are maintained you're safe. Thankfully, RSA provides a method of generating signatures on data, which help prove that it is authentic. Given a message signed by a private key, it is possible to verify that signature using the corresponding public key.
As a rule of thumb, you can only encrypt data as large as the RSA key length. So, if you've got a 4096-bit RSA key, you can only encrypt messages up to 4096 bits long. Not only that, but it's incredibly slow. RSA isn't designed as a full-speed data transport cipher. RSA is much slower.
AES is a symmetric block cipher, and is incredibly fast. The plaintext is split into chunks called blocks, and each block is encrypted in a chain. There are different ways of doing this, but a common one is called Cipher Block Chaining, or CBC for short. This allows for theoretically infinite message sizes. However, symmetric ciphers like AES require a secret key to be exchanged first. Unlike RSA, the shared key must remain unknown to attackers, so you have to provide authenticity, integrity, and secrecy. That's difficult to do directly.




References:

No comments:

Post a Comment