00001
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef MBEDTLS_PKCS12_H
00025 #define MBEDTLS_PKCS12_H
00026
00027 #include "md.h"
00028 #include "cipher.h"
00029 #include "asn1.h"
00030
00031 #include <stddef.h>
00032
00033 #define MBEDTLS_ERR_PKCS12_BAD_INPUT_DATA -0x1F80
00034 #define MBEDTLS_ERR_PKCS12_FEATURE_UNAVAILABLE -0x1F00
00035 #define MBEDTLS_ERR_PKCS12_PBE_INVALID_FORMAT -0x1E80
00036 #define MBEDTLS_ERR_PKCS12_PASSWORD_MISMATCH -0x1E00
00038 #define MBEDTLS_PKCS12_DERIVE_KEY 1
00039 #define MBEDTLS_PKCS12_DERIVE_IV 2
00040 #define MBEDTLS_PKCS12_DERIVE_MAC_KEY 3
00042 #define MBEDTLS_PKCS12_PBE_DECRYPT 0
00043 #define MBEDTLS_PKCS12_PBE_ENCRYPT 1
00044
00045 #ifdef __cplusplus
00046 extern "C" {
00047 #endif
00048
00063 int mbedtls_pkcs12_pbe_sha1_rc4_128( mbedtls_asn1_buf *pbe_params, int mode,
00064 const unsigned char *pwd, size_t pwdlen,
00065 const unsigned char *input, size_t len,
00066 unsigned char *output );
00067
00084 int mbedtls_pkcs12_pbe( mbedtls_asn1_buf *pbe_params, int mode,
00085 mbedtls_cipher_type_t cipher_type, mbedtls_md_type_t md_type,
00086 const unsigned char *pwd, size_t pwdlen,
00087 const unsigned char *input, size_t len,
00088 unsigned char *output );
00089
00111 int mbedtls_pkcs12_derivation( unsigned char *data, size_t datalen,
00112 const unsigned char *pwd, size_t pwdlen,
00113 const unsigned char *salt, size_t saltlen,
00114 mbedtls_md_type_t mbedtls_md, int id, int iterations );
00115
00116 #ifdef __cplusplus
00117 }
00118 #endif
00119
00120 #endif