of messages and their corresponding digests. For example, for up to 5 characters, they can easily compute all the possible messages and their corresponding hashed digests. They call this table a ‘Rainbow Table’.
When the hackers hack a server or somehow gain access to the hashed digests of passwords in the database, they can simply look into the digest of a certain message and match it with that of one stored in the rainbow table. If it matches, then from the table itself, they will come to know what the original message is.
How can we prevent this?
We can use salt to prevent this type of attack that uses the Rainbow Table.
What is salt?
We can add a number of extra characters at the end of the original message. Then, we can hash it and store it in the database. These few extra characters will change the hashed value of the message completely and make it difficult to hack the message. These extra characters stored at the end of the message are called ‘salt’. As it is easy to construct rainbow tables up to certain characters only, storing hashed values of passwords along with salts can improve security significantly.
Do we use the same salt for all the passwords stored on the server?
No. If we do so, hackers may make another rainbow table for salt and hack the salt and the passwords. Instead, we use different random salts for different users so that it would be very difficult for hackers to hack the salt and the password.
So, this is the reason why we should always store salts with hashed values of passwords. I hope the article was helpful.
Security Fundamentals Practice Tests
The Security Fundamentals Practice Tests test one’s fundamental knowledge of cyber security. The practice tests are good for those who are preparing for various certification exams like the CCNA, CCNP, or CompTIA. They are also good for students and IT/security professionals who want to improve their understanding of cybersecurity.






0 Comments