Mbed TLS v2.28.8
Loading...
Searching...
No Matches
sha256.h
Go to the documentation of this file.
1
9/*
10 * Copyright The Mbed TLS Contributors
11 * SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
12 */
13#ifndef MBEDTLS_SHA256_H
14#define MBEDTLS_SHA256_H
15
16#if !defined(MBEDTLS_CONFIG_FILE)
17#include "mbedtls/config.h"
18#else
19#include MBEDTLS_CONFIG_FILE
20#endif
21
22#include <stddef.h>
23#include <stdint.h>
24
25/* MBEDTLS_ERR_SHA256_HW_ACCEL_FAILED is deprecated and should not be used. */
27#define MBEDTLS_ERR_SHA256_HW_ACCEL_FAILED -0x0037
29#define MBEDTLS_ERR_SHA256_BAD_INPUT_DATA -0x0074
30
31#ifdef __cplusplus
32extern "C" {
33#endif
34
35#if !defined(MBEDTLS_SHA256_ALT)
36// Regular implementation
37//
38
46typedef struct mbedtls_sha256_context {
47 uint32_t total[2];
48 uint32_t state[8];
49 unsigned char buffer[64];
50 int is224;
52}
54
55#else /* MBEDTLS_SHA256_ALT */
56#include "sha256_alt.h"
57#endif /* MBEDTLS_SHA256_ALT */
58
65
74
82 const mbedtls_sha256_context *src);
83
96
111 const unsigned char *input,
112 size_t ilen);
113
127 unsigned char output[32]);
128
142 const unsigned char data[64]);
143
144#if !defined(MBEDTLS_DEPRECATED_REMOVED)
145#if defined(MBEDTLS_DEPRECATED_WARNING)
146#define MBEDTLS_DEPRECATED __attribute__((deprecated))
147#else
148#define MBEDTLS_DEPRECATED
149#endif
161 int is224);
162
176 const unsigned char *input,
177 size_t ilen);
178
191 unsigned char output[32]);
192
205 const unsigned char data[64]);
206
207#undef MBEDTLS_DEPRECATED
208#endif /* !MBEDTLS_DEPRECATED_REMOVED */
209
231int mbedtls_sha256_ret(const unsigned char *input,
232 size_t ilen,
233 unsigned char output[32],
234 int is224);
235
236#if !defined(MBEDTLS_DEPRECATED_REMOVED)
237#if defined(MBEDTLS_DEPRECATED_WARNING)
238#define MBEDTLS_DEPRECATED __attribute__((deprecated))
239#else
240#define MBEDTLS_DEPRECATED
241#endif
242
263MBEDTLS_DEPRECATED void mbedtls_sha256(const unsigned char *input,
264 size_t ilen,
265 unsigned char output[32],
266 int is224);
267
268#undef MBEDTLS_DEPRECATED
269#endif /* !MBEDTLS_DEPRECATED_REMOVED */
270
271#if defined(MBEDTLS_SELF_TEST)
272
280
281#endif /* MBEDTLS_SELF_TEST */
282
283#ifdef __cplusplus
284}
285#endif
286
287#endif /* mbedtls_sha256.h */
Configuration options (set of defines)
MBEDTLS_DEPRECATED void mbedtls_sha256_process(mbedtls_sha256_context *ctx, const unsigned char data[64])
This function processes a single data block within the ongoing SHA-256 computation....
MBEDTLS_DEPRECATED void mbedtls_sha256(const unsigned char *input, size_t ilen, unsigned char output[32], int is224)
This function calculates the SHA-224 or SHA-256 checksum of a buffer.
struct mbedtls_sha256_context mbedtls_sha256_context
The SHA-256 context structure.
void mbedtls_sha256_free(mbedtls_sha256_context *ctx)
This function clears a SHA-256 context.
MBEDTLS_DEPRECATED void mbedtls_sha256_finish(mbedtls_sha256_context *ctx, unsigned char output[32])
This function finishes the SHA-256 operation, and writes the result to the output buffer.
MBEDTLS_DEPRECATED void mbedtls_sha256_update(mbedtls_sha256_context *ctx, const unsigned char *input, size_t ilen)
This function feeds an input buffer into an ongoing SHA-256 checksum calculation.
void mbedtls_sha256_init(mbedtls_sha256_context *ctx)
This function initializes a SHA-256 context.
int mbedtls_internal_sha256_process(mbedtls_sha256_context *ctx, const unsigned char data[64])
This function processes a single data block within the ongoing SHA-256 computation....
void mbedtls_sha256_clone(mbedtls_sha256_context *dst, const mbedtls_sha256_context *src)
This function clones the state of a SHA-256 context.
#define MBEDTLS_DEPRECATED
Definition sha256.h:148
MBEDTLS_DEPRECATED void mbedtls_sha256_starts(mbedtls_sha256_context *ctx, int is224)
This function starts a SHA-224 or SHA-256 checksum calculation.
int mbedtls_sha256_ret(const unsigned char *input, size_t ilen, unsigned char output[32], int is224)
This function calculates the SHA-224 or SHA-256 checksum of a buffer.
int mbedtls_sha256_finish_ret(mbedtls_sha256_context *ctx, unsigned char output[32])
This function finishes the SHA-256 operation, and writes the result to the output buffer.
int mbedtls_sha256_self_test(int verbose)
The SHA-224 and SHA-256 checkup routine.
int mbedtls_sha256_starts_ret(mbedtls_sha256_context *ctx, int is224)
This function starts a SHA-224 or SHA-256 checksum calculation.
int mbedtls_sha256_update_ret(mbedtls_sha256_context *ctx, const unsigned char *input, size_t ilen)
This function feeds an input buffer into an ongoing SHA-256 checksum calculation.
The SHA-256 context structure.
Definition sha256.h:46
uint32_t state[8]
Definition sha256.h:48
uint32_t total[2]
Definition sha256.h:47
unsigned char buffer[64]
Definition sha256.h:49