使用aes 256从密码和salt创建java中的密钥

时间:2014-10-06 08:27:33

标签: java c++ encryption aes jce

我正在编写一段解密java中数据的代码,使用[poco lib](http://pocoproject.org/docs/)在一些C ++代码中加密。

C ++代码类似如下所示:

std::string password = "secret";
std::string salt("asdff8723lasdf(**923412");
CipherKey key("aes-256", password, salt);

迭代次数也为2k。

DEFAULT_ITERATION_COUNT = 2000

如何在java中创建相同的密钥来解密数据? 什么是java中的等效代码?

我正在尝试这样的事情,

    SecretKeyFactory factory = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA1");
    char[] passowrd = "secret".toCharArray();
    byte[] salt = "asdff8723lasdf(**923412".getBytes();

    KeySpec spec = new PBEKeySpec(passowrd,salt, 2000);
    SecretKey tmp = factory.generateSecret(spec);
    SecretKey secret = new SecretKeySpec(tmp.getEncoded(), "AES");

但是,它不起作用。没有给我这样的算法发现异常。我应该使用哪种算法?我需要知道更多要解密的内容吗?

更新
我已经按照user2504380

的指示向我的安全提供商添加了赏金城堡

0 个答案:

没有答案