Background:
DES加密会涉及到三个事物:key,data,mode
key 用来存放密钥,data 是加密解密的数据,mode为加解工作方式
首先需要将目标数据通过加密API生成key,设定目标数据key的alias,存储在keyStore中。然后在程序中通过目标数据key的alias去keyStore中获取加密的密钥。
Description:
项 目中使用TripleDES对用户名进行加密,TripleDES是三重DES加密。项目先将不同的用户名生成key,然后在取出key的变体,将key 的变体存储在配置文件中。接着在程序中,加载存储用户名key的keyStore,通过用户名key的alias去KeyStore中取key,将取出的 key和存储在配置文件中的key进行匹配。
期间出现一些问题,现总结如下:
1. 存储keyStore的key.dat文件,可以同时存储多个不同alias的目标数据的key,但在获取密钥的时候就需要注意要用不同的alias了。
2. 对于同一个项目下的不同模块,需求希望所有模块均使用同一个alias来存储目标数据的key,这时候只需要创建一个keyStore(key.dat),将所有的目标数据都按照同一个alias来生成key。只要目标数据不相同,就可以正常生成key。