6

I need to create a PBKDF2 key to use in my AES encryption routine in my iPhone Xcode application. I have seen references to using OpenSSL to do this, but not found specific references to what module within OpenSSL to call.

I have scanned various OpenSSL .h files searching for a means to make this call, but have so far been unsuccessful.

The key I will be using is 5-digits, Salt is 12 characters, Iterations is 1000, and I need a 128-bit generated key.

Black Frog
  • 11,595
  • 1
  • 35
  • 66
Steve Reed Sr
  • 2,011
  • 3
  • 18
  • 22

2 Answers2

7

You can use the PKCS5_PBKDF2_HMAC_SHA1() function in openssl/evp.h. Divining how to use the function is pretty easy from the declaration:

int PKCS5_PBKDF2_HMAC_SHA1(const char *pass, int passlen,
               const unsigned char *salt, int saltlen, int iter,
               int keylen, unsigned char *out);
caf
  • 233,326
  • 40
  • 323
  • 462
4

I think p5_crpt2.c is what you are looking for.

Community
  • 1
  • 1
Black Frog
  • 11,595
  • 1
  • 35
  • 66