Current location - Quotes Website - Personality signature - MD5? Encryption problem
MD5? Encryption problem
1. If it's normal, it's only 32-16

2. It's theoretically unbreakable, but it seems to have been cracked. You can refer to it.

At present, dm5 cracking on the Internet is all done by establishing a database for query.

It seems that there is no direct cracking tool, and all online methods belong to similar exhaustive methods.

Introduction to p>MD5

. It was developed by Ronald L. Rivest of MIT Laboratory for Computer Science and RSA Data Security Inc in the early 199s, and developed by MD2, MD3 and MD4. Its function is to make large-capacity information "compressed" into a secret format before signing a private key with digital signature software (that is, to transform a byte string of arbitrary length into a large integer with a certain length). Whether MD2, MD4 or MD5, they all need to get a random length of information and generate a 128-bit information digest. Although the structures of these algorithms are more or less similar, the design of MD2 is completely different from that of MD4 and MD5, because MD2 is optimized for 8-bit machines, while MD4 and MD5 are designed for 32-bit computers. The descriptions of these three algorithms and the source code of C language are described in detail in Internet RFC 1321 (/was set up to publicly solicit attacks specifically targeting MD5, and the website announced on August 17, 24: "China researchers have discovered the collision of complete MD5 algorithms; Wang, Feng, Lai and Yu announced the collision of several Hash functions, such as MD5, MD4, HAVAL-128 and RIPEMD-128. This is the most substantial research progress in the field of cryptography in recent years. Using their technology, the MD5 collision can be found in a few hours. ..... Because of this landmark discovery, the MD5CRK project will end in the next 48 hours ".

MD5 uses a hash function, and the irreversible encryption algorithms that are widely used in computer networks include MD5 algorithm invented by RSA and SHA, a secure hash algorithm suggested by the National Institute of Technical Standards of the United States.

[Edit this paragraph] Application of the algorithm

The typical application of MD5 is to generate a Message-digest for a piece of information to prevent tampering. For example, under UNIX, many softwares have a file with the same file name and the file extension of .md5, and there is usually only one line of text in this file, with the approximate structure as follows:

md5 (tanajiya.tar.gz) = ca175b9cf726a 831d895e26932461

This is the digital signature of tanajiya.tar.gz file. MD5 regards the whole file as a large text message, and through its irreversible string transformation algorithm, this unique MD5 message summary is generated. In order to let readers have an intuitive understanding of the application of MD5, the author briefly describes its working process with an example and an example: < P > As we all know, everyone on the earth has his own unique fingerprint, which often becomes the most reliable method for public security organs to identify criminals; Similarly, MD5 can generate an equally unique "digital fingerprint" for any file (regardless of its size, format and quantity). If anyone makes any changes to the file, its MD5 value, that is, the corresponding "digital fingerprint", will change.

We often see the MD5 value in some software information of some software download sites. Its function is that after downloading the software, we can do an MD5 check on the downloaded files with special software (such as Windows MD5 Check) to ensure that the files we obtained are the same as those provided by the site. The scheme of using MD5 algorithm to check files is widely used in software download station, forum database, system file security and so on.

the typical application of MD5 is to generate a fingerprint for a Message (byte string) to prevent it from being tampered with. For example, if you write a paragraph in a file called readme.txt, and generate an MD5 value for this readme.txt and record it, then you can spread this file to others. If others modify anything in the file, you will find it when you recalculate the MD5 of this file (the two MD5 values are different). If there is a third-party certification body, MD5 can also prevent the "denial" of the document author, which is the so-called digital signature application.

So, if you encounter the problem of md5 password, a better way is: you can use the md5 () function in this system to reset a password, such as admin, and just overwrite the generated string of passwords.

MD5 is also widely used in login authentication of operating systems, such as Unix, login passwords of various BSD systems, digital signatures and many other aspects. For example, in UNIX system, the user's password is Hash in MD5 (or other similar algorithms) and stored in the file system. When the user logs in, the system performs MD5 Hash operation on the password entered by the user, and then compares it with the MD5 value saved in the file system to determine whether the entered password is correct. Through such steps, the system can determine the legitimacy of the user's login system without knowing the clear code of the user's password. This can prevent the user's password from being known by users with system administrator rights. MD5 maps a "byte string" of any length to a large integer of 128 bits, and it is difficult to reverse the original string through the 128 bits. In other words, even if you see the description of the source program and algorithm, you can't transform the value of MD5 back to the original string. Mathematically speaking, it is because there are infinite original strings, which is a bit like a mathematical function without inverse function. Therefore, to meet the problem of md5 password, a better way is: you can use the md5 () function in this system to reset a password, such as admin, and just overwrite the original Hash value of the generated string of passwords.

It is precisely for this reason that one of the most commonly used methods to decipher passwords is a method called "running a dictionary". There are two ways to get the dictionary, one is the string table used as password collected daily, and the other is generated by permutation and combination method. First, the MD5 values of these dictionary items are calculated by MD5 program, and then the MD5 values of the target are searched in this dictionary. We assume that the maximum length of the password is 8 Bytes, and the password can only be letters and numbers, ***26+26+1=62 characters, and the number of items in the dictionary is P (62,1)+P (62,2) ...+P (62,8), which is already a very large number. This encryption technology is widely used in UNIX systems, which is also an important reason why UNIX systems are more robust than general operating systems.