00001
00030 #ifndef POLARSSL_PBKDF2_H
00031 #define POLARSSL_PBKDF2_H
00032
00033 #include <string.h>
00034
00035 #include "md.h"
00036
00037 #if defined(_MSC_VER) && !defined(EFIX64) && !defined(EFI32)
00038 #include <basetsd.h>
00039 typedef UINT32 uint32_t;
00040 #else
00041 #include <inttypes.h>
00042 #endif
00043
00044 #define POLARSSL_ERR_PBKDF2_BAD_INPUT_DATA -0x007C
00046 #ifdef __cplusplus
00047 extern "C" {
00048 #endif
00049
00065 int pbkdf2_hmac( md_context_t *ctx, const unsigned char *password,
00066 size_t plen, const unsigned char *salt, size_t slen,
00067 unsigned int iteration_count,
00068 uint32_t key_length, unsigned char *output );
00069
00076 int pbkdf2_self_test( int verbose );
00077
00078 #ifdef __cplusplus
00079 }
00080 #endif
00081
00082 #endif