Android 如何从字符串生成javax.crypto.SecretKey

Android 如何从字符串生成javax.crypto.SecretKey,android,string,encryption,cryptography,secret-key,Android,String,Encryption,Cryptography,Secret Key,下面的行允许我生成一个SecretKey SecretKey key = KeyGenerator.getInstance("DES").generateKey(); 但是我想生成一个与特定字符串相关的SecretKey 比如说 String myKeyStr="abcde"; SecretKey mykey2=keyGeneratedFrom(myKeyStr); 显然,SecretKey生成应该有一个1:1的链接,以避免解密过程中出现问题 我不知道如何解决这个问题 你能帮我吗?密码不

下面的行允许我生成一个SecretKey

 SecretKey key = KeyGenerator.getInstance("DES").generateKey();
但是我想生成一个与特定字符串相关的SecretKey

比如说

String myKeyStr="abcde";

SecretKey mykey2=keyGeneratedFrom(myKeyStr);
显然,SecretKey生成应该有一个1:1的链接,以避免解密过程中出现问题

我不知道如何解决这个问题


你能帮我吗?

密码不是钥匙。您必须使用类似PBKDF2的方法从密码中派生密钥。即便如此,拥有安全的密码也是值得的。在Java中使用PBKDF2时,有很多信息,BouncyCastle库也可以提供帮助

等等


不要忘记使用随机盐。

您还需要其他信息吗?