Cet article décrit l'algorithme MD5 Digest implémenté par Java. Partagez-le pour votre référence, comme suit:
Package com.soufun.com; Importer java.io.unsuppordencodingException; Importer java.security.Messagedigest; import java.security.nosuchalgorithmexception; / ** * @author whd * / public class md5test {// md5 unidirection incryption publip public strethy NosuchalgorithMException, UnsupportDenCcodingException {String str = "L'algorithme de digestion Hellomd démarre"; System.out.println ("Valeur brute" + Str); System.out.println ("Ecrypted" + md5test.aftermd5 (str)); String digest = md5test.aftermd5 (str); System.out.println (digest.equals (md5test.aftermd5 (str))); } public static String AfterMD5 (String Str) lève des NosuchalgorithMexception, UnpportEdenCoDingException {// Obtenez l'objet crypté MD5, et vous pouvez également obtenir l'objet SHA crypté MessagediGest MD5 = MessagediGest.getInstance ("MD5"); // Obtenez les informations d'entrée en utilisant la méthode de codage spécifiée octet octet [] bytes = str.getBytes ("utf-8"); // Utilisez la classe MD5 pour obtenir le digest, c'est-à-dire l'octet crypté MD5.Update (octets); octet [] md5encode = md5.digest (); StringBuffer Buffer = new StringBuffer (); pour (int i = 0; i <md5encode.length; i ++) {// use & 0xff moins de 24 bits élevés, car il ne représente que 8 bits bas int val = ((int) md5encode [i]) & 0xff; if (val <16) {buffer.append ("0"); } // Renvoie la représentation de chaîne d'un paramètre entier dans HexaDecimal (base 16) entier non signé. Buffer.APPEND (Integer.tohexString (Val)); } return buffer.toString (); }}Utilisez org.apache.commons.codec.digest.digesttutilsorg.apache.commons.codec.digest.digesttutils pour implémenter le cryptage MD5
Configuration en maven:
<Dependance> <GroupId> Commons-codec </proupId> <ArtefactId> Commons-codec </retifactid> <version> 1.4 </ version> </Dependency>
Notez ici que la différence entre la version 1.2 et la version 1.4 est très grande, car il existe de nombreuses méthodes étendues dans 1.4.
Le code spécifique est le suivant:
public static String Aftermd5 (String str) {try {String md5 = digestutils.md5hex (str.getBytes ("utf-8")); retour MD5; } catch (UnportEnCoDingException e) {// Bloc de catch généré automatiquement de TODO E.PrintStackTrace (); } retourner null;}PS: Les amis qui sont intéressés par le cryptage et le décryptage peuvent également se référer aux outils en ligne de ce site:
Détection en ligne de sécurité de mot de passe:
http://tools.vevb.com/password/my_password_safe
Générateur de mots de passe à haute résistance:
http://tools.vevb.com/password/createstrongpassword
Outils de chiffrement / décryptage des URL express et express et de tornade:
http://tools.vevb.com/password/urlrethunder
Outil de chiffrement en ligne de hachage / hachage de hachage:
http://tools.vevb.com/password/hash_encrypt
MD5 / HASH / SHA-1 / SHA-2 / SHA-256 / SHA-512 / SHA-3 / RIMEMD-160 Tool:
http://tools.vevb.com/password/hash_md5_sha
En ligne SHA1 / SHA224 / SHA256 / SHA384 / SHA512 Outil de cryptage:
http://tools.vevb.com/password/sha_encode
J'espère que cet article sera utile à la programmation Java de tous.