RetroArch
Macros | Functions
pkcs5.h File Reference

PKCS#5 functions. More...

#include "asn1.h"
#include "md.h"
#include <stddef.h>
#include <stdint.h>
Include dependency graph for pkcs5.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define MBEDTLS_ERR_PKCS5_BAD_INPUT_DATA   -0x2f80
 
#define MBEDTLS_ERR_PKCS5_INVALID_FORMAT   -0x2f00
 
#define MBEDTLS_ERR_PKCS5_FEATURE_UNAVAILABLE   -0x2e80
 
#define MBEDTLS_ERR_PKCS5_PASSWORD_MISMATCH   -0x2e00
 
#define MBEDTLS_PKCS5_DECRYPT   0
 
#define MBEDTLS_PKCS5_ENCRYPT   1
 

Functions

int mbedtls_pkcs5_pbes2 (const mbedtls_asn1_buf *pbe_params, int mode, const unsigned char *pwd, size_t pwdlen, const unsigned char *data, size_t datalen, unsigned char *output)
 PKCS#5 PBES2 function. More...
 
int mbedtls_pkcs5_pbkdf2_hmac (mbedtls_md_context_t *ctx, const unsigned char *password, size_t plen, const unsigned char *salt, size_t slen, unsigned int iteration_count, uint32_t key_length, unsigned char *output)
 PKCS#5 PBKDF2 using HMAC. More...
 
int mbedtls_pkcs5_self_test (int verbose)
 Checkup routine. More...
 

Detailed Description

PKCS#5 functions.

Author
Mathias Olsson mathi.nosp@m.as@k.nosp@m.ompet.nosp@m.ensu.nosp@m.m.com

Copyright (C) 2006-2015, ARM Limited, All Rights Reserved SPDX-License-Identifier: Apache-2.0

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

This file is part of mbed TLS (https://tls.mbed.org)

Macro Definition Documentation

◆ MBEDTLS_ERR_PKCS5_BAD_INPUT_DATA

#define MBEDTLS_ERR_PKCS5_BAD_INPUT_DATA   -0x2f80

Bad input parameters to function.

◆ MBEDTLS_ERR_PKCS5_FEATURE_UNAVAILABLE

#define MBEDTLS_ERR_PKCS5_FEATURE_UNAVAILABLE   -0x2e80

Requested encryption or digest alg not available.

◆ MBEDTLS_ERR_PKCS5_INVALID_FORMAT

#define MBEDTLS_ERR_PKCS5_INVALID_FORMAT   -0x2f00

Unexpected ASN.1 data.

◆ MBEDTLS_ERR_PKCS5_PASSWORD_MISMATCH

#define MBEDTLS_ERR_PKCS5_PASSWORD_MISMATCH   -0x2e00

Given private key password does not allow for correct decryption.

◆ MBEDTLS_PKCS5_DECRYPT

#define MBEDTLS_PKCS5_DECRYPT   0

◆ MBEDTLS_PKCS5_ENCRYPT

#define MBEDTLS_PKCS5_ENCRYPT   1

Function Documentation

◆ mbedtls_pkcs5_pbes2()

int mbedtls_pkcs5_pbes2 ( const mbedtls_asn1_buf pbe_params,
int  mode,
const unsigned char *  pwd,
size_t  pwdlen,
const unsigned char *  data,
size_t  datalen,
unsigned char *  output 
)

PKCS#5 PBES2 function.

Parameters
pbe_paramsthe ASN.1 algorithm parameters
modeeither MBEDTLS_PKCS5_DECRYPT or MBEDTLS_PKCS5_ENCRYPT
pwdpassword to use when generating key
pwdlenlength of password
datadata to process
datalenlength of data
outputoutput buffer
Returns
0 on success, or a MBEDTLS_ERR_XXX code if verification fails.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mbedtls_pkcs5_pbkdf2_hmac()

int mbedtls_pkcs5_pbkdf2_hmac ( mbedtls_md_context_t ctx,
const unsigned char *  password,
size_t  plen,
const unsigned char *  salt,
size_t  slen,
unsigned int  iteration_count,
uint32_t  key_length,
unsigned char *  output 
)

PKCS#5 PBKDF2 using HMAC.

Parameters
ctxGeneric HMAC context
passwordPassword to use when generating key
plenLength of password
saltSalt to use when generating key
slenLength of salt
iteration_countIteration count
key_lengthLength of generated key in bytes
outputGenerated key. Must be at least as big as key_length
Returns
0 on success, or a MBEDTLS_ERR_XXX code if verification fails.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mbedtls_pkcs5_self_test()

int mbedtls_pkcs5_self_test ( int  verbose)

Checkup routine.

Returns
0 if successful, or 1 if the test failed
Here is the call graph for this function: