激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

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

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

服務器之家 - 編程語言 - Java教程 - Java sha1散列算法原理及代碼實例

Java sha1散列算法原理及代碼實例

2020-09-29 00:43海綿般汲取 Java教程

這篇文章主要介紹了Java sha1散列算法原理及代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

直接調用HashKit.sha1(String str)方法就可以了,,返回的是16進制的字符串長度是40,

也就是用md.digest()方法解析出來的字節數是160字節長度。

而MD5散列算法生成的字節數是128字節長度,返回的16進制的字符長度是32位

代碼如下

?
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
public class HashKit {
  private static final char[] HEX_DIGITS = "0123456789abcdef".toCharArray();
  
  public static String sha1(String srcStr){
    return hash("SHA-1", srcStr);
  }
  
  public static String hash(String algorithm, String srcStr) {
      try {
        MessageDigest md = MessageDigest.getInstance(algorithm);
        byte[] bytes = md.digest(srcStr.getBytes("utf-8"));
        return toHex(bytes);
      }
      catch (Exception e) {
        throw new RuntimeException(e);
      }
    }
  
  public static String toHex(byte[] bytes) {
      StringBuilder ret = new StringBuilder(bytes.length * 2);
      for (int i=0; i<bytes.length; i++) {
        ret.append(HEX_DIGITS[(bytes[i] >> 4) & 0x0f]);
        ret.append(HEX_DIGITS[bytes[i] & 0x0f]);
      }
      return ret.toString();
    }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://www.cnblogs.com/gne-hwz/p/9549292.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 一级毛片在线免费观看视频 | 看中国一级毛片 | 亚洲特黄妇女高潮 | 免费网站看v片在线a | 国产精品久久久久久久不卡 | 粉嫩粉嫩一区二区三区在线播放 | 91精品国产综合久久男男 | 国产一国产一级毛片视频在线 | 爱高潮www亚洲精品 欧美黄色一级片视频 | 欧美交在线| 日韩精品网站在线观看 | 色视频91 | 极品xxxx欧美一区二区 | 国产99精品视频 | 国产啊v在线观看 | 全黄裸片武则天一级第4季 偿还电影免费看 | 成人免费在线视频播放 | 天天夜夜操操 | 欧美一级在线免费 | 久久综合九色 | 91色琪琪电影亚洲精品久久 | 羞羞视频免费网站含羞草 | 日本中文字幕久久 | 一级一片免费看 | cosplay裸体福利写真 | 亚洲精品久久久久久久久久久 | 99精品视频在线观看免费播放 | 国产一区二区高清在线 | 亚洲成人欧美在线 | 亚洲国产精品一区二区精品 | 亚洲一区在线视频观看 | 草久影视 | 精品亚洲国产视频 | 韩国精品视频在线观看 | 亚洲生活片 | 日韩男人的天堂 | 亚洲精品一区二区三区在线看 | 天天操很很操 | 久久吊 | 免费h片 | 四季久久免费一区二区三区四区 |