Este artículo describe el algoritmo Digest MD5 implementado por Java. Compártelo para su referencia, como sigue:
paquete com.soufun.com; import java.io.unsupportedEncodingException; import java.security.messageGest; import java.security.nosuchalgorithMexxception;/** * @author whd */public class md5Test Nosuchalgorithmexception, no comportedEncodingException {string str = "algoritmo de digest de hellomd comienza"; System.out.println ("valor bruto" + str); System.out.println ("cifrado" + md5test.aftermd5 (str)); String Digest = md5test.aftermd5 (str); System.out.println (digest.equals (md5test.aftermd5 (str))); } public static String Aftermd5 (String Str) arroja NosuchalgorithMexxception, no apoyo a laCodingException {// Obtener el objeto cifrado MD5, y también puede obtener el objeto cifrado SHA Messagedigest md5 = MessageDigest.getInstance ("MD5"); // Obtenga la información de entrada utilizando el método de codificación especificado byte byte [] bytes = str.getbytes ("utf-8"); // Use la clase MD5 para obtener el resumen, es decir, el byte cifrado MD5.Update (bytes); byte [] md5encode = md5.digest (); StringBuffer Buffer = new StringBuffer (); para (int i = 0; i <md5encode.length; i ++) {// use & 0xff menos de 24 bits altos, porque solo representa 8 bits bajos int val = ((int) md5encode [i]) & 0xff; if (val <16) {buffer.append ("0"); } // Devuelve la representación de cadena de un parámetro entero en hexadecimal (base 16) sin signo entero. buffer.append (integer.tohexstring (val)); } return buffer.ToString (); }}Use org.apache.commons.codec.digest.digestutilsorg.apache.commons.codec.digest.digestutils para implementar el cifrado MD5
Configuración en Maven:
<Spendency> <MoupRoMID> Commons-Codec </GroupId> <AtifactId> Commons-Codec </artifactId> <versión> 1.4 </versión> </dependencia>
Tenga en cuenta aquí que la diferencia entre la versión 1.2 y la versión 1.4 es muy grande, porque hay muchos métodos extendidos en 1.4.
El código específico es el siguiente:
public static String Aftermd5 (String Str) {try {String md5 = digestUtils.md5hex (str.getBytes ("utf-8")); regresar MD5; } Catch (UnsupportedEnCodingException e) {// TODO Auto Generado Bloque E.PrintStackTrace (); } return null;}PD: Los amigos interesados en el cifrado y el descifrado también pueden referirse a las herramientas en línea de este sitio:
Detección en línea de seguridad de la contraseña:
http://tools.vevb.com/password/my_password_safe
Generador de contraseñas de alta resistencia:
http://tools.vevb.com/password/createstrontepassword
Herramientas de cifrado/descifrado de URL de Thunder, Express y Tornado:
http://tools.vevb.com/password/urlrethunder
Herramienta de cifrado de algoritmo de hash/hash en línea:
http://tools.vevb.com/password/hash_encrypt
MD5 en línea/hash/sha-1/sha-2/sha-256/sha-512/sha-3/ripemd-160 herramienta de cifrado:
http://tools.vevb.com/password/hash_md5_sha
En línea SHA1/SHA224/SHA256/SHA384/SHA512 Herramienta de cifrado:
http://tools.vevb.com/password/sha_encode
Espero que este artículo sea útil para la programación Java de todos.