Encryption in cryptography is a process by which a plain text or a piece of information is converted into cipher text or a text which can only be decoded by the receiver for whom the information was intended. The algorithm that is used for the process of encryption is known as cipher. It helps in protecting consumer information, emails and other sensitive data from unauthorized access to it as well as secures communication networks. Presently there are many options to choose and find out the most secure algorithm which meets our requirements. There are four such encryption algorithms that are highly secured and are unbreakable.
- Triple DES: Triple DES is a block cipher algorithm that was created to replace its older version Data Encryption Standard(DES). In 1956 it was found out that 56 key-bit of DES was not enough to prevent brute force attack, so Triple DES was discovered with the purpose of enlarging the key space without any requirement to change algorithm. It has a key length of 168 bits three 56-bit DES keys but due to meet-in-middle-attack the effective security is only provided for only 112 bits. However Triple DES suffers from slow performance in software. Triple DES is well suited for hardware implementation. But presently Triple DES is largely replaced by AES (Advance Encryption Standard).
- RSA :
RSA is an asymmetric key algorithm which is named after its creators Rivest, Shamir and Adleman. The algorithm is based on the fact that the factors of large composite number is difficult: when the integers are prime, this method is known as Prime Factorization. It is generator of public key and private key. Using public key we convert plain text to cipher text and private key is used for converting cipher text to plain text. Public key is accessible by everyone whereas Private Key is kept secret. Public Key and Private Key are kept different.Thus making it more secure algorithm for data security.
Twofish algorithm is successor of blowfish algorithm. It was designed by Bruce Schneier, John Kesley, Dough Whiting, David Wagner, Chris Hall and Niels Ferguson. It uses block ciphering It uses a single key of length 256 bits and is said to be efficient both for software that runs in smaller processors such as those in smart cards and for embedding in hardware .It allows implementers to trade off encryption speed, key setup time, and code size to balance performance. Designed by Bruce Schneier’s Counterpane Systems, Twofish is unpatented, license-free, and freely available for use.
Advance Encryption Standard also abbreviated as AES, is a symmetric block cipher which is chosen by United States government to protect significant information and is used to encrypt sensitive data of hardware and software. AES has three
128-bit fixed block ciphers of keys having sizes 128, 192 and 256 bits. Key sizes are unlimited but block size is maximum 256 bits.The AES design is based on a substitution-permutation network (SPN) and does not use the Data Encryption Standard (DES) Feistel network.
With advancement in technology it becomes more easier to encrypt data, with neural networks it becomes easier to keep data safe. Neural Networks of Google Brain have worked out to create encryption, without teaching specifics of encryption algorithm. Data Scientist and Cryptographers are finding out ways to prevent brute force attack on encryption algorithms to avoid any unauthorized access to sensitive data.
- Public Key Encryption
- RC4 Encryption Algorithm
- RC5 Encryption Algorithm
- XOR Encryption by Shifting Plaintext
- Difference between Encryption and Decryption
- Data encryption standard (DES) | Set 1
- ElGamal Encryption Algorithm
- Image encryption using cellular automata
- End to End Encryption (E2EE) in Computer Networks
- Rail Fence Cipher - Encryption and Decryption
- Data Structures and Algorithms | Set 3
- Data Structures and Algorithms | Set 31
- Join algorithms in Database
- Data Structures and Algorithms | Set 8
- Data Structures and Algorithms | Set 7
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.