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

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

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

服務器之家 - 編程語言 - Java教程 - Java SHA-256加密的兩種實現方法詳解

Java SHA-256加密的兩種實現方法詳解

2020-12-22 15:38lemontree1993 Java教程

這篇文章主要介紹了Java SHA-256加密的兩種實現方法,結合實例形式分析了java實現SHA-256加密的實現代碼與相關注意事項,需要的朋友可以參考下

本文實例講述了Java SHA-256加密的兩種實現方法。分享給大家供大家參考,具體如下:

最近在做注冊的一個功能,密碼要進行加密,一開始想用MD5加密,但是聽說被破解了已經,于是想玩玩SHA-256加密。學習了下,總結兩種方法供后面參考:

1、利用Apache的工具類實現加密:

maven:

?
1
2
3
4
5
<dependency>
 <groupId>commons-codec</groupId>
 <artifactId>commons-codec</artifactId>
 <version>${common-codec.version}</version>
</dependency>

實現代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/***
* 利用Apache的工具類實現SHA-256加密
* @param str 加密后的報文
* @return
*/
public static String getSHA256Str(String str){
 MessageDigest messageDigest;
 String encdeStr = "";
 try {
  messageDigest = MessageDigest.getInstance("SHA-256");
  byte[] hash = messageDigest.digest(str.getBytes("UTF-8"));
  encdeStr = Hex.encodeHexString(hash);
 } catch (NoSuchAlgorithmException e) {
  e.printStackTrace();
 } catch (UnsupportedEncodingException e) {
  e.printStackTrace();
 }
 return encdeStr;
}

2、利用Java自帶的實現加密:

?
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
/**
* 利用java原生的摘要實現SHA256加密
* @param str 加密后的報文
* @return
*/
public static String getSHA256StrJava(String str){
 MessageDigest messageDigest;
 String encodeStr = "";
 try {
  messageDigest = MessageDigest.getInstance("SHA-256");
  messageDigest.update(str.getBytes("UTF-8"));
  encodeStr = byte2Hex(messageDigest.digest());
 } catch (NoSuchAlgorithmException e) {
  e.printStackTrace();
 } catch (UnsupportedEncodingException e) {
  e.printStackTrace();
 }
 return encodeStr;
}
/**
* 將byte轉為16進制
* @param bytes
* @return
*/
private static String byte2Hex(byte[] bytes){
 StringBuffer stringBuffer = new StringBuffer();
 String temp = null;
 for (int i=0;i<bytes.length;i++){
  temp = Integer.toHexString(bytes[i] & 0xFF);
  if (temp.length()==1){
  //1得到一位的進行補0操作
  stringBuffer.append("0");
  }
  stringBuffer.append(temp);
 }
 return stringBuffer.toString();
}

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

原文鏈接:http://blog.csdn.net/u012188107/article/details/69267054

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久久精品国产免费播放 | 精品福利一区 | 男人狂躁女人下面狂叫图片 | 亚洲图片综合区 | 特黄特色大片免费视频大全 | 亚洲欧美午夜 | 美女污视频在线观看 | 国产精品久久现线拍久青草 | 精品99一区二区三区麻豆 | 午夜视频一区 | 97影院伦理 | 国产拍拍拍免费专区在线观看 | 5g影院天天爽 | 欧美日韩国产一区二区三区伦 | 久久国产主播福利在线 | 加勒比一本大道在线 | 韩国日本香港毛片免费 | 亚洲AV精品一区二区三区不卡 | 8x8x极品国产在线 | 东北恋哥在线播放免费播放 | 精品国产免费第一区二区 | 动漫精品午夜在线播放 | 国产小嫩模好紧 | jm漫天堂破解版 | 欧美一级视 | 亚洲欧美日韩另类精品一区二区三区 | 花房乱爱在线观看 | 亚洲人成毛片线播放 | 农村妇女野外牲交一级毛片 | 爆操萝莉| spy2wc48美女撒尿 | 国产精品 视频一区 二区三区 | 精品视频中文字幕 | 精品欧美一区二区三区久久久 | 黑人又大又硬又粗再深一点 | 免费看男人使劲躁女人小说 | 亚洲女人国产香蕉久久精品 | 欧美成人第一页 | 2015台湾永久免费平台 | 67194在线免费观看 | 久久久无码精品亚洲A片软件 |