Zephyr API Documentation
2.7.0-rc2
A Scalable Open Source RTOS
|
Crypto Cipher APIs. More...
#include <device.h>
#include <errno.h>
#include <sys/util.h>
#include <sys/__assert.h>
#include "cipher_structs.h"
Go to the source code of this file.
Data Structures | |
struct | crypto_driver_api |
Functions | |
static int | cipher_query_hwcaps (const struct device *dev) |
Query the crypto hardware capabilities. More... | |
static int | cipher_begin_session (const struct device *dev, struct cipher_ctx *ctx, enum cipher_algo algo, enum cipher_mode mode, enum cipher_op optype) |
Setup a crypto session. More... | |
static int | cipher_free_session (const struct device *dev, struct cipher_ctx *ctx) |
Cleanup a crypto session. More... | |
static int | cipher_callback_set (const struct device *dev, crypto_completion_cb cb) |
Registers an async crypto op completion callback with the driver. More... | |
static int | cipher_block_op (struct cipher_ctx *ctx, struct cipher_pkt *pkt) |
Perform single-block crypto operation (ECB cipher mode). This should not be overloaded to operate on multiple blocks for security reasons. More... | |
static int | cipher_cbc_op (struct cipher_ctx *ctx, struct cipher_pkt *pkt, uint8_t *iv) |
Perform Cipher Block Chaining (CBC) crypto operation. More... | |
static int | cipher_ctr_op (struct cipher_ctx *ctx, struct cipher_pkt *pkt, uint8_t *iv) |
Perform Counter (CTR) mode crypto operation. More... | |
static int | cipher_ccm_op (struct cipher_ctx *ctx, struct cipher_aead_pkt *pkt, uint8_t *nonce) |
Perform Counter with CBC-MAC (CCM) mode crypto operation. More... | |
static int | cipher_gcm_op (struct cipher_ctx *ctx, struct cipher_aead_pkt *pkt, uint8_t *nonce) |
Perform Galois/Counter Mode (GCM) crypto operation. More... | |
Crypto Cipher APIs.
This file contains the Crypto Abstraction layer APIs.
[Experimental] Users should note that the APIs can change as a part of ongoing development.