在java 5中使用AES进行基于密码的加密(仅限JCE)

时间:2010-08-23 08:53:39

标签: java security aes jce

我想使用AES(192或256位),但我仍然坚持如何从用户提供的密码生成密钥。

我已经离开了through this thread,并且能够在Java 6中运行该程序。但是,我需要在Java 5中运行相同的程序,并且在JDK 5中不能使用用于PBKDF2WithHmacSHA1的SecretKeyFactory。

所以,基本上,我需要根据用户密码为SecretKey生成192或256位,我希望在java 5中有一种安全的方法。

帮助表示赞赏!

编辑#1 为了避免卡住,我现在使用来自MD5的128位(用户输入密码+固定盐)作为AES的关键。我知道它很糟糕,并且会在我找到生成密钥的好方法时改变它。

1 个答案:

答案 0 :(得分:-2)

您是否有理由想要PBKDF2WithHmacSHA1?

SecretKeyFactory存在于1.4.2中,因此您可能会看到here