The Most Effective Data Encryption Techniques

Thidasala Demintha Rathnayake
3 min readNov 30, 2020

Due to the exponential increment in cybercrimes, network security plays an important role in today’s organizations. Although there are number of techniques to protect the data from attacks, it is very important to identify correct technique based on the specific situation. Encryption is the conversion of data from a readable format into an encoded format that can only be read or processed after it’s been decrypted. Encryption is widely used by large organizations and individuals to secure the data sent between web browsers and a server. Let’s see how encryption works and different kinds of encryption techniques used in the industry.

Encryption is the process that encodes a message or a file, so that it can only be read by specific people. Encryption uses an algorithm to encrypt the data and uses a key for the receiving party to decrypt the information. The original message we are encrypting is called as the plaintext and the encrypted message is called the ciphertext.There are several data encryption approaches. Most internet security (IS) professionals break down encryption into three distinct methods: symmetric, asymmetric, and hashing. Let’s explore each technique separately.

1. Symmetric encryption

source: https://www.ssl2buy.com/wiki/symmetric-vs-asymmetric-encryption-what-are-differences

In symmetric encryption, same key is used to encrypt and decrypt the data. The communicating parties should exchange the key so that it can be used in the decryption process. At first, the data is converted to a encrypted form using block algorithms or stream algorithms so that it cannot understood by anyone who does not possess the secret key to decrypt it. Once the intended recipients possess the key and the message, the algorithm reverses its action so that the message is returned to its original and understandable form. The secret key could be a specific password/code or it can be random string of letters or numbers that have been generated by a secure random number generator (RNG). Due to the better performance and faster speed of symmetric encryption, it is typically used for bulk encryption of large amounts of data.

2. Asymmetric encryption

source: https://www.ssl2buy.com/wiki/symmetric-vs-asymmetric-encryption-what-are-differences

Asymmetric Encryption encrypts and decrypts the data using two separate, yet mathematically connected cryptographic keys. These keys are known as a ‘Public Key’ and a ‘Private Key.’ As the name implies, public key is freely available to anyone, whereas the private key remains with the intended recipients who need it to decipher the messages. Both keys are simply large numbers that are not identical but are paired with each other. Symmetric cryptography carries a higher risk around key transmission, as the same key need to be shared among others to decrypt the message while asymmetric encryption offers a better security by using two different keys to encrypt and decrypt the messages, because the private key need to be shared publicly. Asymmetric encryption is commonly used for digital signatures and to confirm the identity in cryptocurrency transactions.

3. Hashing

Hashing is the process of converting an input of any length in to a fixed sized string of text using a mathematical function. The message to be hashed is called input, the algorithm used is called the hash function and the output is called hash value. There are many hashing algorithms such as MD5, SHA-1, SHA-2, NTLM and etc. Each message has its unique hash, making minor changes to the information easily traceable. Data encrypted with hashing cannot be deciphered or reversed back into its original form. That’s why hashing is used only as a method of verifying data.

As I explained Symmetric encryption, Asymmetric encryption and hashing are the main encryption techniques used in the industry. Organizations and Individuals should aware of these techniques in order to secure their classified information.

--

--

Thidasala Demintha Rathnayake

Software Engineer @ WSO2, Undergraduate of University of Kelaniya