PolarSSL is now part of ARM Official announcement and rebranded as mbed TLS.

API Documentation (Doxygen generated)

These pages are generated with doxygen directly from the source code!

sha512.h File Reference

This file contains SHA-384 and SHA-512 definitions and functions. More...

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

Go to the source code of this file.

Data Structures

struct  mbedtls_sha512_context
 The SHA-512 context structure. More...
 

Macros

#define MBEDTLS_ERR_SHA512_HW_ACCEL_FAILED   -0x0039
 SHA-512 hardware accelerator failed. More...
 
#define MBEDTLS_DEPRECATED
 
#define MBEDTLS_DEPRECATED
 

Typedefs

typedef struct
mbedtls_sha512_context 
mbedtls_sha512_context
 The SHA-512 context structure. More...
 

Functions

void mbedtls_sha512_init (mbedtls_sha512_context *ctx)
 This function initializes a SHA-512 context. More...
 
void mbedtls_sha512_free (mbedtls_sha512_context *ctx)
 This function clears a SHA-512 context. More...
 
void mbedtls_sha512_clone (mbedtls_sha512_context *dst, const mbedtls_sha512_context *src)
 This function clones the state of a SHA-512 context. More...
 
int mbedtls_sha512_starts_ret (mbedtls_sha512_context *ctx, int is384)
 This function starts a SHA-384 or SHA-512 checksum calculation. More...
 
int mbedtls_sha512_update_ret (mbedtls_sha512_context *ctx, const unsigned char *input, size_t ilen)
 This function feeds an input buffer into an ongoing SHA-512 checksum calculation. More...
 
int mbedtls_sha512_finish_ret (mbedtls_sha512_context *ctx, unsigned char output[64])
 This function finishes the SHA-512 operation, and writes the result to the output buffer. More...
 
int mbedtls_internal_sha512_process (mbedtls_sha512_context *ctx, const unsigned char data[128])
 This function processes a single data block within the ongoing SHA-512 computation. More...
 
MBEDTLS_DEPRECATED void mbedtls_sha512_starts (mbedtls_sha512_context *ctx, int is384)
 This function starts a SHA-384 or SHA-512 checksum calculation. More...
 
MBEDTLS_DEPRECATED void mbedtls_sha512_update (mbedtls_sha512_context *ctx, const unsigned char *input, size_t ilen)
 This function feeds an input buffer into an ongoing SHA-512 checksum calculation. More...
 
MBEDTLS_DEPRECATED void mbedtls_sha512_finish (mbedtls_sha512_context *ctx, unsigned char output[64])
 This function finishes the SHA-512 operation, and writes the result to the output buffer. More...
 
MBEDTLS_DEPRECATED void mbedtls_sha512_process (mbedtls_sha512_context *ctx, const unsigned char data[128])
 This function processes a single data block within the ongoing SHA-512 computation. More...
 
int mbedtls_sha512_ret (const unsigned char *input, size_t ilen, unsigned char output[64], int is384)
 This function calculates the SHA-512 or SHA-384 checksum of a buffer. More...
 
MBEDTLS_DEPRECATED void mbedtls_sha512 (const unsigned char *input, size_t ilen, unsigned char output[64], int is384)
 This function calculates the SHA-512 or SHA-384 checksum of a buffer. More...
 
int mbedtls_sha512_self_test (int verbose)
 The SHA-384 or SHA-512 checkup routine. More...
 

Detailed Description

This file contains SHA-384 and SHA-512 definitions and functions.

The Secure Hash Algorithms 384 and 512 (SHA-384 and SHA-512) cryptographic hash functions are defined in FIPS 180-4: Secure Hash Standard (SHS).

Definition in file sha512.h.

Macro Definition Documentation

#define MBEDTLS_DEPRECATED

Definition at line 231 of file sha512.h.

#define MBEDTLS_DEPRECATED

Definition at line 231 of file sha512.h.

#define MBEDTLS_ERR_SHA512_HW_ACCEL_FAILED   -0x0039

SHA-512 hardware accelerator failed.

Definition at line 38 of file sha512.h.

Typedef Documentation

The SHA-512 context structure.

The structure is used both for SHA-384 and for SHA-512 checksum calculations. The choice between these two is made in the call to mbedtls_sha512_starts_ret().

Function Documentation

int mbedtls_internal_sha512_process ( mbedtls_sha512_context ctx,
const unsigned char  data[128] 
)

This function processes a single data block within the ongoing SHA-512 computation.

Parameters
ctxThe SHA-512 context.
dataThe buffer holding one block of data.
Returns
0 on success.
MBEDTLS_DEPRECATED void mbedtls_sha512 ( const unsigned char *  input,
size_t  ilen,
unsigned char  output[64],
int  is384 
)

This function calculates the SHA-512 or SHA-384 checksum of a buffer.

The function allocates the context, performs the calculation, and frees the context.

The SHA-512 result is calculated as output = SHA-512(input buffer).

Deprecated:
Superseded by mbedtls_sha512_ret() in 2.7.0
Parameters
inputThe buffer holding the data.
ilenThe length of the input data.
outputThe SHA-384 or SHA-512 checksum result.
is384Determines which function to use: 0: Use SHA-512, or 1: Use SHA-384.
void mbedtls_sha512_clone ( mbedtls_sha512_context dst,
const mbedtls_sha512_context src 
)

This function clones the state of a SHA-512 context.

Parameters
dstThe destination context.
srcThe context to clone.
MBEDTLS_DEPRECATED void mbedtls_sha512_finish ( mbedtls_sha512_context ctx,
unsigned char  output[64] 
)

This function finishes the SHA-512 operation, and writes the result to the output buffer.

Deprecated:
Superseded by mbedtls_sha512_finish_ret() in 2.7.0.
Parameters
ctxThe SHA-512 context.
outputThe SHA-384 or SHA-512 checksum result.
int mbedtls_sha512_finish_ret ( mbedtls_sha512_context ctx,
unsigned char  output[64] 
)

This function finishes the SHA-512 operation, and writes the result to the output buffer.

This function is for internal use only.

Parameters
ctxThe SHA-512 context.
outputThe SHA-384 or SHA-512 checksum result.
Returns
0 on success.
void mbedtls_sha512_free ( mbedtls_sha512_context ctx)

This function clears a SHA-512 context.

Parameters
ctxThe SHA-512 context to clear.
void mbedtls_sha512_init ( mbedtls_sha512_context ctx)

This function initializes a SHA-512 context.

Parameters
ctxThe SHA-512 context to initialize.
MBEDTLS_DEPRECATED void mbedtls_sha512_process ( mbedtls_sha512_context ctx,
const unsigned char  data[128] 
)

This function processes a single data block within the ongoing SHA-512 computation.

This function is for internal use only.

Deprecated:
Superseded by mbedtls_internal_sha512_process() in 2.7.0.
Parameters
ctxThe SHA-512 context.
dataThe buffer holding one block of data.
int mbedtls_sha512_ret ( const unsigned char *  input,
size_t  ilen,
unsigned char  output[64],
int  is384 
)

This function calculates the SHA-512 or SHA-384 checksum of a buffer.

The function allocates the context, performs the calculation, and frees the context.

The SHA-512 result is calculated as output = SHA-512(input buffer).

Parameters
inputThe buffer holding the input data.
ilenThe length of the input data.
outputThe SHA-384 or SHA-512 checksum result.
is384Determines which function to use: 0: Use SHA-512, or 1: Use SHA-384.
Returns
0 on success.
int mbedtls_sha512_self_test ( int  verbose)

The SHA-384 or SHA-512 checkup routine.

Returns
0 on success.
1 on failure.
MBEDTLS_DEPRECATED void mbedtls_sha512_starts ( mbedtls_sha512_context ctx,
int  is384 
)

This function starts a SHA-384 or SHA-512 checksum calculation.

Deprecated:
Superseded by mbedtls_sha512_starts_ret() in 2.7.0
Parameters
ctxThe SHA-512 context to initialize.
is384Determines which function to use: 0: Use SHA-512, or 1: Use SHA-384.
int mbedtls_sha512_starts_ret ( mbedtls_sha512_context ctx,
int  is384 
)

This function starts a SHA-384 or SHA-512 checksum calculation.

Parameters
ctxThe SHA-512 context to initialize.
is384Determines which function to use: 0: Use SHA-512, or 1: Use SHA-384.
Returns
0 on success.
MBEDTLS_DEPRECATED void mbedtls_sha512_update ( mbedtls_sha512_context ctx,
const unsigned char *  input,
size_t  ilen 
)

This function feeds an input buffer into an ongoing SHA-512 checksum calculation.

Deprecated:
Superseded by mbedtls_sha512_update_ret() in 2.7.0.
Parameters
ctxThe SHA-512 context.
inputThe buffer holding the data.
ilenThe length of the input data.
int mbedtls_sha512_update_ret ( mbedtls_sha512_context ctx,
const unsigned char *  input,
size_t  ilen 
)

This function feeds an input buffer into an ongoing SHA-512 checksum calculation.

Parameters
ctxThe SHA-512 context.
inputThe buffer holding the input data.
ilenThe length of the input data.
Returns
0 on success.