The Hashing is defined as the transformation of the string of characters into usually shorter or the fixed length value or key which will represent the original string. The method helps to index and retrieve items in the database in a much faster time using the shorter hashed keys. It is also used in several encryption algorithms.
The hashing algorithm is called the hash function as the term derived from the idea that the resulting hash value can be a mixed up version of the represented value. Sometimes, we need digital signatures to authenticate the message sender and the receiver. Hashing can help to encrypt and decrypt the digital signatures.
These digital signatures are transformed with the hash function and then both the hashed value and the signature are sent in the separate transmissions to the receiver. Hence, we can say that hash function is used to index the original value or key and later is used to retrieve the data associated with the value or key.
A hash also denotes the generated summary from the mathematical rule or algorithm. It is a kind of the digital fingerprint to verify the integrity of files and messages. It is said that the hashing algorithms are not the encryption methods,but it provides the additional system security via a signature.
Let us understand this with the help of an example: If you wish to send an email to a friend, and wish that it remains a secret or it should not get altered during the transit. To follow the procedure, you would first use the software that generates a hash value to accompany with the email. Later it will encrypt both the hash and the email. The recipient of the email will use the software to decrypt the email and the hash. It will later produce another hash from the email. Post which it will compare both the hashes and if they match it will prove that the message was not tampered.
How can hashing be attacked?
Hashing is prone to attack by reverse engineering, reverse hash matching, or a birthday attack. These methods are used by password cracking tools.
The “Steganography” is a word of Greek origin,which means “hidden writing”.To put it in correct words, we can understand Steganography as the method for hiding messages so that the unintended recipients of the messages are not even aware of it. For example: If you write a letter using the plain text, but in the invisible ink it would be a perfect example to understand the hiding concept of writing.
Cryptography on the other hand, encrypts the data and make it unreadable by anyone else other than the intended recipients.
The Steganography is best when it is used with the encryption. It is to add a layer of security by not even allowing the attackers to attempt to crack encryption into a readable form. The Steganography helps to hide messages in digital media and digital watermarking.