What has been recognized as an unsafe hash algorithm is as follows:
A hash algorithm that has been recognized as unsafe is MD5.
MD5 (MessageDigestAlgorithm5) is a hash encryption algorithm that can compress messages of any length into a 128-bit digest. However, due to its design flaws and the continuous evolution of attack methods, MD5 has been proven to be vulnerable to types of security attacks such as Collision Attack and Preimage Attack. Therefore, it is no longer safe and is recognized as insecure. Hash algorithm.
MD5, Message Digest Algorithm (English: MD5 Message-Digest Algorithm). It is a widely used cryptographic hash collision function that converts data (such as a piece of text) into another fixed-length value. It is the basic principle of the hash algorithm and can produce a 128-bit (16-byte) Hash value is used to ensure that information transmission is complete and consistent.
MD5 was designed by American cryptographer Ronald Linn Rivest and made public in 1992 to replace the MD4 algorithm. The procedures for this algorithm are specified in RFC 1321.
After 1996, it was confirmed that there are weaknesses that can be decrypted. For data that requires high security, experts generally recommend using other algorithms, such as SHA-2. In 2004, it was confirmed that MD5 The algorithm cannot prevent collisions, so it is not suitable for security authentication, such as SSL public key authentication or digital signatures.
Extended information
MD5 applications in reality
MD5 has been widely used to provide a certain degree of reliability for file transfers. For example, the server provides an MD5 checksum in advance. After the user downloads the file, the MD5 algorithm is used to calculate the MD5 checksum of the downloaded file. Then, by checking whether the two checksums are consistent, it can be judged whether the downloaded file has errors.
MD5 is also used in some online casinos to ensure the fairness of gambling. The principle is that the system has generated the result of the game before the player places a bet, and matches or checks the string of the result with a random set. The string is encrypted using MD5. The encrypted string is displayed to the player before the player places a bet. The unencrypted string is displayed to the player after the result is announced. The player can then use the MD5 tool to encrypt and verify whether the string matches. .