一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java實現的MD5摘要算法完整實例

java實現的MD5摘要算法完整實例

2020-07-23 11:49QH_JAVA Java教程

這篇文章主要介紹了java實現的MD5摘要算法,結合完整實例形式分析了java實現md5單項加密的具體步驟與相關操作技巧,需要的朋友可以參考下

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
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");
    // 將輸入的信息使用指定的編碼方式獲取字節
    byte[] bytes = str.getBytes("UTF-8");
    // 使用md5 類來獲取摘要,也就是加密后的字節
    md5.update(bytes);
    byte[] md5encode = md5.digest();
    StringBuffer buffer = new StringBuffer();
    for (int i = 0; i < md5encode.length; i++) {
      // 使用&0xff 不足24高位,因為只占了8低位
      int val = ((int) md5encode[i]) & 0xff;
      if (val < 16) {
        buffer.append("0");
      }
      // 以十六進制(基數 16)無符號整數形式返回一個整數參數的字符串表示形式。
      buffer.append(Integer.toHexString(val));
    }
    return buffer.toString();
  }
}

使用org.apache.commons.codec.digest.DigestUtilsorg.apache.commons.codec.digest.DigestUtils來實現md5加密

在maven中的配置:

?
1
2
3
4
5
<dependency>
  <groupId>commons-codec</groupId>
  <artifactId>commons-codec</artifactId>
  <version>1.4</version>
</dependency>

這里注意1.2版本和1.4版本的區別很大,因為1.4中擴展了很多方法.
具體代碼如下:

?
1
2
3
4
5
6
7
8
9
10
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;
}

希望本文所述對大家java程序設計有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美整片完整片视频在线 | 欧美 亚洲 综合 卡通 另类 区 | 福利一区二区在线观看 | 亚洲网站在线播放 | 美女女女女女女bbbbbb毛片 | 色人阁导航 | 亚洲精品国产AV成人毛片 | 亚洲欧美日韩成人一区在线 | 精品日韩欧美一区二区三区 | 国产在线观看99 | 91久久国产成人免费观看资源 | 欧美激情综合 | 欧美日韩国产成人精品 | 九九99精品 | 国产91精品久久久久久 | 免费观看欧美性一级 | 香蕉国产精品偷在线播放 | 国产caoni555在线观看 | 女同学用白丝脚玩我的故事 | 成人免费播放器 | 高清男的插曲女的 欢迎你老狼 | 四缺一的小说 | 亚洲精品国产精品麻豆99 | 婷婷在线成人免费观看搜索 | 歪歪视频在线播放无遮挡 | 亚洲国产成人99精品激情在线 | 特黄特级高清免费视频毛片 | 羞羞漫画免费漫画页面在线看漫画秋蝉 | 91一区二区在线观看精品 | 狠狠干在线观看 | 特级毛片全部免费播放器 | 日本在线小视频 | 久9视频这里只有精品123 | 好大好硬好深好爽想要小雪 | 成人午夜在线视频 | 青青青青青国产免费手机看视频 | 欧美乱理伦另类视频 | tobu8中国在线播放免费 | 美女在线看永久免费网址 | 被强上后我成瘾了小说 | 亚洲精品乱码久久久久久蜜桃欧美 |