欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java實(shí)現(xiàn)的MD5摘要算法完整實(shí)例

 更新時間:2017年01月05日 14:16:49   作者:QH_JAVA  
這篇文章主要介紹了java實(shí)現(xiàn)的MD5摘要算法,結(jié)合完整實(shí)例形式分析了java實(shí)現(xiàn)md5單項(xiàng)加密的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了java實(shí)現(xiàn)的MD5摘要算法。分享給大家供大家參考,具體如下:

package com.soufun.com;
import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
 * @author WHD
 */
public class MD5Test {
  // MD5 單向加密
  public static void main(String[] args) throws NoSuchAlgorithmException,
      UnsupportedEncodingException {
    String str = "hellomd摘要算法開始";
    System.out.println("原始值" + str);
    System.out.println("加密后的" + MD5Test.afterMD5(str));
    String digest = MD5Test.afterMD5(str);
    System.out.println(digest.equals(MD5Test.afterMD5(str)));
  }
  public static String afterMD5(String str) throws NoSuchAlgorithmException,
      UnsupportedEncodingException {
    // 獲取MD5 加密對象,還可以獲取SHA加密對象
    MessageDigest md5 = MessageDigest.getInstance("MD5");
    // 將輸入的信息使用指定的編碼方式獲取字節(jié)
    byte[] bytes = str.getBytes("UTF-8");
    // 使用md5 類來獲取摘要,也就是加密后的字節(jié)
    md5.update(bytes);
    byte[] md5encode = md5.digest();
    StringBuffer buffer = new StringBuffer();
    for (int i = 0; i < md5encode.length; i++) {
      // 使用&0xff 不足24高位,因?yàn)橹徽剂?低位
      int val = ((int) md5encode[i]) & 0xff;
      if (val < 16) {
        buffer.append("0");
      }
      // 以十六進(jìn)制(基數(shù) 16)無符號整數(shù)形式返回一個整數(shù)參數(shù)的字符串表示形式。
      buffer.append(Integer.toHexString(val));
    }
    return buffer.toString();
  }
}

使用org.apache.commons.codec.digest.DigestUtilsorg.apache.commons.codec.digest.DigestUtils來實(shí)現(xiàn)md5加密

在maven中的配置:

<dependency>
  <groupId>commons-codec</groupId>
  <artifactId>commons-codec</artifactId>
  <version>1.4</version>
</dependency>

這里注意1.2版本和1.4版本的區(qū)別很大,因?yàn)?.4中擴(kuò)展了很多方法.
具體代碼如下:

public static String afterMd5(String str){
      try {
      String md5 = DigestUtils.md5Hex(str.getBytes("UTF-8"));
      return md5;
    } catch (UnsupportedEncodingException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
      return null;
}

PS:關(guān)于加密解密感興趣的朋友還可以參考本站在線工具:

密碼安全性在線檢測:
http://tools.jb51.net/password/my_password_safe

高強(qiáng)度密碼生成器:
http://tools.jb51.net/password/CreateStrongPassword

迅雷、快車、旋風(fēng)URL加密/解密工具:
http://tools.jb51.net/password/urlrethunder

在線散列/哈希算法加密工具:
http://tools.jb51.net/password/hash_encrypt

在線MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.jb51.net/password/hash_md5_sha

在線sha1/sha224/sha256/sha384/sha512加密工具:
http://tools.jb51.net/password/sha_encode

希望本文所述對大家java程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • VsCode搭建Java開發(fā)環(huán)境的方法

    VsCode搭建Java開發(fā)環(huán)境的方法

    這篇文章主要介紹了VsCode搭建Java開發(fā)環(huán)境的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • java web FTPClient實(shí)現(xiàn)上傳文件到指定服務(wù)器

    java web FTPClient實(shí)現(xiàn)上傳文件到指定服務(wù)器

    這篇文章主要為大家詳細(xì)介紹了java web FTPClient實(shí)現(xiàn)上傳文件到指定服務(wù)器,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Java獲取json數(shù)組對象的實(shí)例講解

    Java獲取json數(shù)組對象的實(shí)例講解

    下面小編就為大家分享一篇Java獲取json數(shù)組對象的實(shí)例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • 深入理解Java之HashMap源碼剖析

    深入理解Java之HashMap源碼剖析

    這篇文章主要介紹了深入理解Java之HashMap源碼剖析,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • java協(xié)變返回類型使用示例

    java協(xié)變返回類型使用示例

    在面向?qū)ο蟪绦蛟O(shè)計(jì)中,協(xié)變返回類型指的是子類中的成員函數(shù)的返回值類型不必嚴(yán)格等同于父類中被重寫的成員函數(shù)的返回值類型,而可以是更"狹窄"的類型
    2014-02-02
  • 淺談spring中isolation和propagation的用法

    淺談spring中isolation和propagation的用法

    這篇文章主要介紹了淺談spring中isolation 和propagation的用法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • linux重啟java服務(wù)的腳本

    linux重啟java服務(wù)的腳本

    這篇文章主要介紹了linux重啟java服務(wù)的腳本,本文分步驟通過shell腳本給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • uploadify上傳及后臺文件合法性驗(yàn)證的代碼解析

    uploadify上傳及后臺文件合法性驗(yàn)證的代碼解析

    這篇文章主要介紹了uploadify上傳及后臺文件合法性驗(yàn)證的代碼解析,整段代碼分為后臺上傳方法,文件合法性驗(yàn)證類,前端上傳js,非常不錯具有參考借鑒價值,需要的朋友可以參考下
    2016-11-11
  • 教你在 IntelliJ IDEA 中使用 VIM插件的詳細(xì)教程

    教你在 IntelliJ IDEA 中使用 VIM插件的詳細(xì)教程

    這篇文章主要介紹了在 IntelliJ IDEA 中使用 VIM的教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • SpringBoot?Mail郵件任務(wù)詳情

    SpringBoot?Mail郵件任務(wù)詳情

    這篇文章主要介紹了SpringBoot?Mail郵件任務(wù)詳情,文章通過spring-boot-starter-mail包展開詳細(xì)內(nèi)容,需要的小伙伴可以參考一下
    2022-05-05

最新評論