Cloud security is built around encryption methodologies. These are of three kinds: hashing encryption, symmetric cryptography, and asymmetric cryptography. Each method has several advantages and disadvantages and is used by Cloud service providers to ensure that user data is not tampered with or compromised in any fashion.
Hashing: This method uses a unique, fixed length signature to encrypt a data set. The hash is created using a hash function or an algorithm and each hash is compared with other hash sets to verify uniqueness of the data set. Since a small change in the data will result in the generation of a new hash, the data owner will be alerted to any security breaches that may have occurred.
Unlike other kinds of encryptions, the hash encryption is irreversible. This means that there are no decryption or de-hashing keys that can be used to reverse the process of hashing. This makes hashing secure. Hackers who have accessed the data will not be able to discover the contents of the data set even if the hash system is understood. A few hashing algorithms that are commonly in use are detailed in Message Digest 5 (MD5).
Symmetric Encryption: A Symmetric encryption uses the same key for both encryption and decryption. The key is known as the “private key” and must be kept secure by the user if the data set is to remain secure. This key may be ‘user defined’ or ‘system generated’. The encryption operation maybe performed on a “stream of data” (encryption of one byte at a time) or a “block of data” (encryption of one block at a time). Commonly used symmetric algorithms are DES, AES, and Blowfish.
Asymmetric encryption: An Asymmetric encryption uses two different keys for encryption and decryption of a data set. The encrypting key is known as the “public key” and the decrypting key is known as the “private key”. The public key is freely available and the private key is available only to the person authorized to decrypt the message. This use of two keys is said to be the weakness of the system. Examples of asymmetric algorithms are RSA and Diffle-Hellman.
Homomorphic algorithms are making their appearances with the growing popularity of the Cloud. A homomorphic algorithm is an encryption algorithm that allows the user to perform mathematical operations on the data set without decrypting the data.