如何在iOS设备上创建PBKDF2密钥

时间:2011-04-03 00:57:40

标签: iphone cocoa-touch encryption

我需要在我的iPhone Xcode应用程序中创建一个用于我的AES加密例程的PBKDF2密钥。我已经看到了使用OpenSSL执行此操作的参考,但未找到OpenSSL中要调用的模块的特定引用。

我已经扫描了各种OpenSSL .h文件,搜索了进行此调用的方法,但到目前为止还没有成功。

我将使用的密钥是5位数,Salt是12个字符,迭代次数是1000,我需要128位生成的密钥。

2 个答案:

答案 0 :(得分:7)

您可以使用PKCS5_PBKDF2_HMAC_SHA1()中的openssl/evp.h功能。从声明中划分如何使用该函数非常简单:

int PKCS5_PBKDF2_HMAC_SHA1(const char *pass, int passlen,
               const unsigned char *salt, int saltlen, int iter,
               int keylen, unsigned char *out);

答案 1 :(得分:4)

我认为p5_crpt2.c正是您所寻找的。