mbed TLS v2.2.0
Data Structures | Functions
sha512.h File Reference

Detailed Description

SHA-384 and SHA-512 cryptographic hash function.

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)

Definition in file sha512.h.

#include <config-sl-crypto-all-acceleration.h>
#include <stddef.h>
#include <stdint.h>
Include dependency graph for sha512.h:

Go to the source code of this file.

Data Structures

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

Functions

void mbedtls_sha512_init (mbedtls_sha512_context *ctx)
 Initialize SHA-512 context. More...
 
void mbedtls_sha512_free (mbedtls_sha512_context *ctx)
 Clear SHA-512 context. More...
 
void mbedtls_sha512_clone (mbedtls_sha512_context *dst, const mbedtls_sha512_context *src)
 Clone (the state of) a SHA-512 context. More...
 
void mbedtls_sha512_starts (mbedtls_sha512_context *ctx, int is384)
 SHA-512 context setup. More...
 
void mbedtls_sha512_update (mbedtls_sha512_context *ctx, const unsigned char *input, size_t ilen)
 SHA-512 process buffer. More...
 
void mbedtls_sha512_finish (mbedtls_sha512_context *ctx, unsigned char output[64])
 SHA-512 final digest. More...
 
void mbedtls_sha512 (const unsigned char *input, size_t ilen, unsigned char output[64], int is384)
 Output = SHA-512( input buffer ) More...
 
int mbedtls_sha512_self_test (int verbose)
 Checkup routine. More...
 
void mbedtls_sha512_process (mbedtls_sha512_context *ctx, const unsigned char data[128])
 

Function Documentation

void mbedtls_sha512 ( const unsigned char *  input,
size_t  ilen,
unsigned char  output[64],
int  is384 
)

Output = SHA-512( input buffer )

Parameters
inputbuffer holding the data
ilenlength of the input data
outputSHA-384/512 checksum result
is3840 = use SHA512, 1 = use SHA384
void mbedtls_sha512_clone ( mbedtls_sha512_context dst,
const mbedtls_sha512_context src 
)

Clone (the state of) a SHA-512 context.

Parameters
dstThe destination context
srcThe context to be cloned
void mbedtls_sha512_finish ( mbedtls_sha512_context ctx,
unsigned char  output[64] 
)

SHA-512 final digest.

Parameters
ctxSHA-512 context
outputSHA-384/512 checksum result
void mbedtls_sha512_free ( mbedtls_sha512_context ctx)

Clear SHA-512 context.

Parameters
ctxSHA-512 context to be cleared
void mbedtls_sha512_init ( mbedtls_sha512_context ctx)

Initialize SHA-512 context.

Parameters
ctxSHA-512 context to be initialized
void mbedtls_sha512_process ( mbedtls_sha512_context ctx,
const unsigned char  data[128] 
)
int mbedtls_sha512_self_test ( int  verbose)

Checkup routine.

Returns
0 if successful, or 1 if the test failed
void mbedtls_sha512_starts ( mbedtls_sha512_context ctx,
int  is384 
)

SHA-512 context setup.

Parameters
ctxcontext to be initialized
is3840 = use SHA512, 1 = use SHA384
void mbedtls_sha512_update ( mbedtls_sha512_context ctx,
const unsigned char *  input,
size_t  ilen 
)

SHA-512 process buffer.

Parameters
ctxSHA-512 context
inputbuffer holding the data
ilenlength of the input data