Este artigo descreve o algoritmo MD5 Digest implementado por Java. Compartilhe -o para sua referência, como segue:
pacote com.soufun.com; importar java.io.unsupportEdEncodingException; importar java.security.messagedigest; importar java.security.nosuchalgorithMexception;/** ** * @author whd * clem public md5test {// md5 unidirirention NosuchalGorithMexception, UnsupportEdEncodingException {String str = "algoritmo do resumo do hellomd"; System.out.println ("valor bruto" + str); System.out.println ("criptografado" + md5test.aftermd5 (str)); String Digest = md5test.aftermd5 (str); System.out.println (Digest.Equals (md5test.aftermd5 (str)); } public Static String Aftermd5 (String str) lança NosuchalgorithMexception, não suportadoEncodingException {// Obtenha o objeto criptografado MD5, e você também pode obter o objeto criptografado SHA MessageGest md5 = Messagedigest.getinstance ("Md5"); // Obtenha as informações de entrada usando o método de codificação especificado byte byte [] bytes = str.getBytes ("utf-8"); // usa a classe MD5 para obter o resumo, ou seja, o byte criptografado md5.Update (bytes); byte [] md5Encode = md5.digest (); StringBuffer buffer = new StringBuffer (); for (int i = 0; i <md5Encode.length; i ++) {// use & 0xff menor que 24 bits altos, porque é responsável apenas por 8 bits baixos int val = ((int) md5Encode [i]) e 0xff; if (val <16) {buffer.append ("0"); } // Retorna a representação da sequência de um parâmetro inteiro no número inteiro não assinado hexadecimal (base 16). Buffer.Append (Integer.ToHexString (VAL)); } retornar buffer.toString (); }}Use org.apache.commons.codec.digest.digestutilsorg.apache.commons.codec.digest.digestutils para implementar a criptografia md5
Configuração no maven:
<Depencency> <voundid> Commons-codec </frugid> <TRAFACTID> Commons-codec </ArtifactId> <versão> 1.4 </version> </dependency>
Observe aqui que a diferença entre a versão 1.2 e a versão 1.4 é muito grande, porque existem muitos métodos estendidos em 1.4.
O código específico é o seguinte:
public static string Aftermd5 (String str) {Try {String md5 = Digestutils.md5hex (str.getBytes ("utf-8")); retornar md5; } Catch (UnsupportEdEnCodingException e) {// TODO BLOCO DE CATAGEM AUTOGERATO E.PRINTSTACKTRACE (); } retornar nulo;}PS: Amigos interessados em criptografia e descriptografia também podem se referir às ferramentas on -line deste site:
Segurança de senha Detecção on -line:
http://tools.vevb.com/password/my_password_safe
Gerador de senha de alta resistência:
http://tools.vevb.com/password/createstrongpassword
Ferramentas de criptografia/descriptografia de Thunder, Express e Tornado URL:
http://tools.vevb.com/password/urlrethunder
Ferramenta de criptografia de algoritmo de hash/hash online:
http://tools.vevb.com/password/hash_encrypt
Online md5/hash/sha-1/sha-2/sha-256/sha-512/sha-3/ripemd-160 ferramenta de criptografia:
http://tools.vevb.com/password/hash_md5_sha
Online SHA1/SHA224/SHA256/SHA384/SHA512 Ferramenta de criptografia:
http://tools.vevb.com/password/sha_encode
Espero que este artigo seja útil para a programação Java de todos.