nRF Connect SDK API 3.3.99
Loading...
Searching...
No Matches
cracen_psa_cipher.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2026 Nordic Semiconductor ASA
3 *
4 * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5 */
6
13#ifndef CRACEN_PSA_CIPHER_H
14#define CRACEN_PSA_CIPHER_H
15
16#include <psa/crypto.h>
17#include <stddef.h>
18#include <stdint.h>
19#include <string.h>
21
41psa_status_t cracen_cipher_encrypt(const psa_key_attributes_t *attributes,
42 const uint8_t *key_buffer, size_t key_buffer_size,
43 psa_algorithm_t alg, const uint8_t *iv, size_t iv_length,
44 const uint8_t *input, size_t input_length, uint8_t *output,
45 size_t output_size, size_t *output_length);
46
64psa_status_t cracen_cipher_decrypt(const psa_key_attributes_t *attributes,
65 const uint8_t *key_buffer, size_t key_buffer_size,
66 psa_algorithm_t alg, const uint8_t *input, size_t input_length,
67 uint8_t *output, size_t output_size, size_t *output_length);
68
81 const psa_key_attributes_t *attributes,
82 const uint8_t *key_buffer, size_t key_buffer_size,
83 psa_algorithm_t alg);
84
97 const psa_key_attributes_t *attributes,
98 const uint8_t *key_buffer, size_t key_buffer_size,
99 psa_algorithm_t alg);
100
111 size_t iv_length);
112
127 size_t input_length, uint8_t *output, size_t output_size,
128 size_t *output_length);
129
142 size_t output_size, size_t *output_length);
143
151
154#endif /* CRACEN_PSA_CIPHER_H */
int32_t psa_status_t
Definition error.h:26
psa_status_t cracen_cipher_encrypt(const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size, psa_algorithm_t alg, const uint8_t *iv, size_t iv_length, const uint8_t *input, size_t input_length, uint8_t *output, size_t output_size, size_t *output_length)
Encrypt a message using a symmetric cipher.
psa_status_t cracen_cipher_encrypt_setup(cracen_cipher_operation_t *operation, const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size, psa_algorithm_t alg)
Set up a cipher encryption operation.
psa_status_t cracen_cipher_decrypt_setup(cracen_cipher_operation_t *operation, const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size, psa_algorithm_t alg)
Set up a cipher decryption operation.
psa_status_t cracen_cipher_abort(cracen_cipher_operation_t *operation)
Abort a cipher operation.
psa_status_t cracen_cipher_finish(cracen_cipher_operation_t *operation, uint8_t *output, size_t output_size, size_t *output_length)
Finish a cipher operation.
psa_status_t cracen_cipher_update(cracen_cipher_operation_t *operation, const uint8_t *input, size_t input_length, uint8_t *output, size_t output_size, size_t *output_length)
Process input data in a cipher operation.
psa_status_t cracen_cipher_decrypt(const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size, psa_algorithm_t alg, const uint8_t *input, size_t input_length, uint8_t *output, size_t output_size, size_t *output_length)
Decrypt a message using a symmetric cipher.
psa_status_t cracen_cipher_set_iv(cracen_cipher_operation_t *operation, const uint8_t *iv, size_t iv_length)
Set the initialization vector for a cipher operation.
Definition cracen_psa_primitives.h:282