900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > java怎么sha散列算法_Java sha1散列算法的原理解析

java怎么sha散列算法_Java sha1散列算法的原理解析

时间:2023-06-22 12:33:10

相关推荐

java怎么sha散列算法_Java sha1散列算法的原理解析

Java sha1散列算法的原理解析

发布时间:-10-31 00:01:59

来源:亿速云

阅读:101

作者:Leah

今天就跟大家聊聊有关Java sha1散列算法的原理解析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

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

也就是用md.digest()方法解析出来的字节数是160字节长度。

而MD5散列算法生成的字节数是128字节长度,返回的16进制的字符长度是32位

代码如下

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

ret.append(HEX_DIGITS[(bytes[i] >> 4) & 0x0f]);

ret.append(HEX_DIGITS[bytes[i] & 0x0f]);

}

return ret.toString();

}

}

看完上述内容,你们对Java sha1散列算法的原理解析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。