You must have come across Cloud service claims that they provide bank grade or military grade encryption algorithms to secure your data on their server.
What do they mean?
These service providers are giving you the assurance that they use tested encryption algorithms to encrypt your data in transit and in storage. But, first, we need to define encryption.
What is encryption?
Encryption is the process of encoding messages (or information) in such a way that third parties cannot read it, but only authorized parties can. Encrypted files could be hacked, but, the encryption — with the use of an encryption key — makes the files unreadable. Encryption needs a key-generation algorithm to randomly produce keys.
What are these algorithms?
The most popular algorithms that are currently used by Cloud service providers are Blowfish algorithm, AES algorithm and RSA algorithm. There are other algorithms that are being developed for Cloud computing, but they are yet to be implemented in the Cloud, and are at an experimental stage.
Blow Fish Algorithm
This is a symmetric block cipher encryption algorithm. It executes rapidly and is a Feistel algorithm with a simple encryption function. It uses a single key to encrypt and decrypt information. The process divides the data stream into blocks of a specified length (64 bits) and encrypts and decrypts the block. Wherever the block length is inadequate padding is inserted to make the encryption viable. Since the key used is of a variable length the algorithm is ideal for securing data.
This is another symmetric block cipher that uses the same key for both encryption and decryption. The block can accept keys of the length 128, 192 and 256. The standard is then modified to A.E.S and ten rounds of processing are set in motion. 9 out of the ten rounds perform identical operations. The first four rounds are named SubBytes, ShiftRows, MixColumns and AddRoundKey. All these steps are again repeated without the MixColumns round till all operations are complete and the data is encrypted.
This algorithm is used by web browsers such as Microsoft and Netscape. It uses a public key and a private key in conjunction. The algorithm has three basic steps—Key generation, Encryption and decryption. The algorithm multiplies two large prime numbers and generates a public and private key by performing a number of operations on the product. Decryption can only be done with the private key, though the encryption is done with the public key.
It is interesting to note that newer algorithms like Homomorphic algorithms are in the pipeline for Cloud computing. They hold out a promise for greater security, privacy for the future of Cloud computing.