码迷,mamicode.com
首页 > 其他好文 > 详细

数字摘要 (消息摘要)

时间:2020-07-05 09:12:52      阅读:93      评论:0      收藏:0      [点我收藏+]

标签:demo   util   摘要   get   算法   不可   ring   append   hex   

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

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

 

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

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

 

数字摘要 (消息摘要)

标签:demo   util   摘要   get   算法   不可   ring   append   hex   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!