首页 > 其他 > 详细

数字摘要 (消息摘要)

时间:2020-07-05 09:19:40      阅读:67      评论:0      收藏:0      [点我收藏+]

数字摘要是一个消息或文本的对应的固定的长度的唯一值

为了防止篡改,为了保证文件的安全

 

摘要的长度是固定的,算法不可逆

MD5:128比特位  16字节

SHA-1:160比特位  20字节

 

 

package t2;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Base64;

public class DIgestDemo1 {

public static void main(String[] args) throws NoSuchAlgorithmException {

// 原文
String input = "科學";
// 算法
String algorithm = "MD5";
// 創建消息摘要對象
MessageDigest digest = MessageDigest.getInstance(algorithm);
// 執行消息摘要
byte[] bytes = digest.digest(input.getBytes());
StringBuilder sb = new StringBuilder();
System.out.println(new String(Base64.getEncoder().encode(bytes)));
for (byte b : bytes) {
// 密文转16进制
String string = Integer.toHexString(b & 0xff);
// 如果密文長度為1,需要高位補1
if (string.length() == 1) {
string = "0" + string;
}
sb.append(string);
}
System.out.println(sb.toString());
}
}

 

输出:

P/+b/PaPB8X9hRjuK/S3Hw==
3fff9bfcf68f07c5fd8518ee2bf4b71f

 

数字摘要 (消息摘要)

原文:https://www.cnblogs.com/dengw125792/p/13237371.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!