以下行允许我生成一个SecretKey
SecretKey key = KeyGenerator.getInstance("DES").generateKey();
但我想生成一个与特定String相关的SecretKey。
例如
String myKeyStr="abcde";
SecretKey mykey2=keyGeneratedFrom(myKeyStr);
显然,SecretKey生成应该有一个1:1链接,以避免在解密过程中出现问题。
我不知道如何解决这个问题。
你能帮帮我吗?
答案 0 :(得分:1)
密码不是密钥。您必须使用类似PBKDF2的东西从密码派生密钥。即使这样,拥有安全密码也是值得的。在Java中使用时,有很多关于PBKDF2的信息,而Bouncy Castle库也可以提供帮助。
等等。
不要忘记使用随机盐。