00001
00025 #ifndef MBEDTLS_PKCS5_H
00026 #define MBEDTLS_PKCS5_H
00027
00028 #include "asn1.h"
00029 #include "md.h"
00030
00031 #include <stddef.h>
00032 #include <stdint.h>
00033
00034 #define MBEDTLS_ERR_PKCS5_BAD_INPUT_DATA -0x2f80
00035 #define MBEDTLS_ERR_PKCS5_INVALID_FORMAT -0x2f00
00036 #define MBEDTLS_ERR_PKCS5_FEATURE_UNAVAILABLE -0x2e80
00037 #define MBEDTLS_ERR_PKCS5_PASSWORD_MISMATCH -0x2e00
00039 #define MBEDTLS_PKCS5_DECRYPT 0
00040 #define MBEDTLS_PKCS5_ENCRYPT 1
00041
00042 #ifdef __cplusplus
00043 extern "C" {
00044 #endif
00045
00059 int mbedtls_pkcs5_pbes2( const mbedtls_asn1_buf *pbe_params, int mode,
00060 const unsigned char *pwd, size_t pwdlen,
00061 const unsigned char *data, size_t datalen,
00062 unsigned char *output );
00063
00078 int mbedtls_pkcs5_pbkdf2_hmac( mbedtls_md_context_t *ctx, const unsigned char *password,
00079 size_t plen, const unsigned char *salt, size_t slen,
00080 unsigned int iteration_count,
00081 uint32_t key_length, unsigned char *output );
00082
00088 int mbedtls_pkcs5_self_test( int verbose );
00089
00090 #ifdef __cplusplus
00091 }
00092 #endif
00093
00094 #endif