当前位置:   article > 正文

AES加密算法在Linux下出现随机加密结果_securerandom.setseed(password.getbytes())

securerandom.setseed(password.getbytes())

问题:AES算法在windows下可以正常加密、解密,上传到服务器之后,无法正常工作,每次加密的结果都是随机的

经检查发现,是加密的密钥在Linux下随机生成造成的。

原代码:

KeyGenerator kgen = KeyGenerator.getInstance("AES");
kgen.init(128, new SecureRandom(password.getBytes()));
SecretKey secretKey = kgen.generateKey();

修改后代码:

KeyGenerator kgen = KeyGenerator.getInstance("AES");
SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG"); 
secureRandom.setSeed(password.getBytes());                      
kgen.init(128, secureRandom);
SecretKey secretKey = kgen.generateKey();

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/413328
推荐阅读
相关标签
  

闽ICP备14008679号