JAVA全系列 教程
3762个小节阅读:7092.3k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
摘要算法就是我们常说的散列函数、哈希函数(Hash Function),它能够把任意长度的数据“压缩”成固定长度、而且独一无二的“摘要”字符串,就好像是给这段数据生成了一个数字“指纹”。
作用:
保证信息的完整性
百度搜索 MySQL
,进入官网下载 ,会经常发现有 sha1
,sha512
, 这些都是数字摘要。
点击signature
public static void main(String[] args) throws Exception{
// 原文
String input = "baizhan";
// 算法
String algorithm = "MD5";
// 获取数字摘要对象
MessageDigest messageDigest = MessageDigest.getInstance(algorithm);
// 获取消息数字摘要的字节数组
byte[] digest = messageDigest.digest(input.getBytes());
System.out.println(new String(digest));
}
注意:
- 加密后编码表找不到对应字符, 出现乱码
xxxxxxxxxx
public static void main(String[] args) throws Exception{
// 原文
String input = "aa";
// 算法
String algorithm = "MD5";
// 获取数字摘要对象
MessageDigest messageDigest = MessageDigest.getInstance(algorithm);
// 消息数字摘要
byte[] digest = messageDigest.digest(input.getBytes());
// System.out.println(new String(digest));
// base64编码
System.out.println(new BASE64Encoder().encode(digest));
}
实时效果反馈
1.下列可以实现消息摘要算法的是__。
A MD5
B DSC
C RSA
D Hash
2.消息摘要算法主要作用_______。
A 保证数据完整性
B 解决安全问题
C 防止别人破解
D 以上都错误
答案
1=>A 2=> A