Little white C # form series-06. MD5 series encryption gadgets,
Encryption and decryption have been paid attention to since the leakage of millions of users. In the past two years, encryption has been nothing more than nothing, A strong ciphertext can be obtained through one idea. When your database is stolen by hackers, your powerful encryption will consume a lot of time, this leaves a lot of space for saving your website and saving servers. MD5 has been very popular for several years. Later, XMD5 gradually became popular with various abnormal encryption methods, today, we provide you with a few simple ideas (that is, this simple idea makes a lot of decrypted websites crash ...)
In order to meet the requirements of the webmaster, the variant md5 is changed again to generate a fixed-digit ciphertext, coupled with international standards and resource savings requirements, 1.01 version was born in this way [update] 1.01 download (4.0 framework) http://pan.baidu.com/s/1gdvfXkR [Source Code look below] software download (. NET 4.0 framework) http://pan.baidu.com/s/1kT5LvCF [source code to see the following] Second kill all mainstream anti md5 website below the variant MD5 anti-day ciphertext I am not happy to try again... And so on... I. design drawings: (more ideas) II. Code Analysis:
1. 32-bit MD5 encryption: if (! String. isNullOrEmpty (inputTxt. text) {MD5 md5 = MD5.Create (); // MD5 is an abstract class and cannot be instantiated. Use the Create () static method to Create the object byte [] buffer = Encoding. default. getBytes (inputTxt. text); // convert the Text to be converted to buffer [] byte [] bufferMd5 = md5.ComputeHash (buffer) in the default encoding format; // convert StringBuilder sbMd5 = new StringBuilder (); // considering memory and other factors, I used stringbuilder for (int I = 0; I <bufferMd5.Length; I ++) {sbMd5.Append (bufferMd5 [I]. toString ("x2"); // authentic MD5 32-bit} MD5Txt. Text = sbMd5.ToString ();} 2. MD5 32-bit enhanced: if (! String. isNullOrEmpty (inputTxt. text) {MD5 md5 = MD5.Create (); byte [] buffer = Encoding. default. getBytes (inputTxt. text); byte [] bufferMd5 = md5.ComputeHash (buffer); StringBuilder sbMd5 = new StringBuilder (); for (int I = bufferMd5.Length-1; I> = 0; I --) // This is not the same. Reverse-order conversion is just [one idea] {sbMd5.Append (bufferMd5 [I]. toString ("x2");} MD5Txt2. text = sbMd5.ToString ();} 3. MD5 32-bit variant: if (! String. isNullOrEmpty (inputTxt. text) {MD5 md5 = MD5.Create (); byte [] buffer = Encoding. default. getBytes (inputTxt. text); byte [] bufferMd5 = md5.ComputeHash (buffer); StringBuilder sbMd5 = new StringBuilder (); for (int I = bufferMd5.Length-1; I> = 0; I --) {int x = int. parse (bufferMd5 [I]. toString (); // convert int x-= 1 first; // you can call this operation to expand sbMd5.Append (x. toString ("x2");} MD5Txt3. text = sbMd5.ToString ();} 4. Train of Thought Scalability: provides a way to customize 0 ~ 9, a-Z represents the meaning, and then convert it to md5 (md5 ($ pass) and so on... With some ideas, you can constantly simplify the Code. For those things that require thousands of lines of dead code to implement, one idea usually only requires several hundred lines of code and is more efficient! The idea is very important, whether it's learning programming, penetration, or cracking! Iii. source code sharing: Version 1.0 source code sharing: http://pan.baidu.com/s/1pJLmraj 1.01 source code sharing: http://pan.baidu.com/s/1hqEaQ0W 4. video sharing: Wait ~~~
Recommended for this issue: DNiD. v0.12b (shell scanning) next phase: build your own C # remote control series software