TuyaOS
cipher_wrapper.h
1#ifndef __CRYPTO_WRAPPER_H_
2#define __CRYPTO_WRAPPER_H_
3
4#ifdef __cplusplus
5extern "C" {
6#endif
7
8#include <stdint.h>
9#include "mbedtls/platform.h"
10#include "mbedtls/cipher.h"
11#include "mbedtls/md.h"
12
13typedef struct {
14 unsigned char *key;
15 unsigned char *nonce;
16 unsigned char *ad;
17 unsigned char *data;
18 size_t key_len;
19 size_t nonce_len;
20 size_t ad_len;
21 size_t data_len;
22 mbedtls_cipher_type_t cipher_type;
24
25
26int mbedtls_cipher_auth_encrypt_wrapper(const cipher_params_t* input,
27 unsigned char *output, size_t *olen,
28 unsigned char *tag, size_t tag_len);
29
30int mbedtls_cipher_auth_decrypt_wrapper(const cipher_params_t* input,
31 unsigned char *output, size_t *olen,
32 unsigned char *tag, size_t tag_len);
33
34int mbedtls_message_digest(mbedtls_md_type_t md_type,
35 const uint8_t* input, size_t ilen,
36 uint8_t* digest);
37
38int mbedtls_message_digest_hmac(mbedtls_md_type_t md_type,
39 const uint8_t* key, size_t keylen,
40 const uint8_t* input, size_t ilen,
41 uint8_t* digest);
42
43#ifdef __cplusplus
44}
45#endif
46#endif
Definition: cipher_wrapper.h:13