一般情况下采用"消息摘要"技术对密码进行加密处理,避免"明文"保存密码.
明文: 原始文本
是常用的数据完整性检验技术.
消息摘要相当于数据信息(文件, 字符串)的指纹
导入api:commons-codec
<!-- Apache 提供了通用编码包:消息摘要,加密,解密,Bese64编码,HEX编码等 -->
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.10</version>
</dependency>
下面是测试代码:
/** * 计算一个文件的摘要(MD5) * md5sum passwd */ @Test public void testFileDidest() throws Exception{ //文件passwd保存在项目文件夹中 String file = "passwd"; //打开文件 InputStream in = new FileInputStream(file); //计算文件中数据的MD5摘要 String md5 = DigestUtils.md5Hex(in); System.out.println(md5); }
输出结果:7119a2ae9f636c6ffb9029fd71fadb16
以下是通过Spring注解获取盐
加盐到数据库的配置文件(db.properties)中,加盐主要是提高安全性。当注册加上盐和登录的时候加上盐验证就可以了。
salt=\u4ECA\u5929\u4F60\u5403\u4E86\u5417\uFF1F
在Spring-dao.xml文件中配置了数据库连接池
<!-- 加载数据库连接池的配置文件 --> <util:properties id="dbConfig" location="classpath:db.properties" />
这样就可以取到盐了
@Value("#{dbConfig.salt}") private String salt;
如对本文有疑问, 点击进行留言回复!!
[杭电多校2020]第一场 1004 Distinct Sub-palindromes
Swift -- 将本地生成的UIImage进行持久化保存(存到文件中fileManager.createFile)
网友评论