PIC32CM LS00/LS60 hardware cryptographic accelerator. More...
#include "core/crypto.h"
Go to the source code of this file.
Macros | |
#define | CRYA_SHA_ADDR 0x02006800 |
#define | CRYA_AES_ENC_ADDR 0x02006804 |
#define | CRYA_AES_DEC_ADDR 0x02006808 |
#define | CRYA_GF_MULT128_ADDR 0x0200680C |
#define | crya_sha_process ((crya_sha_process_t) (CRYA_SHA_ADDR | 1)) |
#define | crya_aes_encrypt ((crya_aes_encrypt_t) (CRYA_AES_ENC_ADDR | 1)) |
#define | crya_aes_decrypt ((crya_aes_decrypt_t) (CRYA_AES_DEC_ADDR | 1)) |
#define | crya_gf_mult128 ((crya_gf_mult128_t) (CRYA_GF_MULT128_ADDR | 1)) |
Typedefs | |
typedef void(* | crya_sha_process_t) (uint32_t digest[8], const uint8_t data[64], uint32_t buffer[64]) |
typedef void(* | crya_aes_encrypt_t) (const uint8_t *key, uint32_t keyLen, const uint8_t *src, uint8_t *dest) |
typedef void(* | crya_aes_decrypt_t) (const uint8_t *key, uint32_t keyLen, const uint8_t *src, uint8_t *dest) |
typedef void(* | crya_gf_mult128_t) (const uint32_t *block1, const uint32_t *block2, uint32_t *dest) |
Functions | |
error_t | pic32cmlsCryptoInit (void) |
Initialize hardware cryptographic accelerator. More... | |
Variables | |
OsMutex | pic32cmlsCryptoMutex |
Detailed Description
PIC32CM LS00/LS60 hardware cryptographic accelerator.
License
SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2010-2024 Oryx Embedded SARL. All rights reserved.
This file is part of CycloneCRYPTO Open.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- Version
- 2.4.4
Definition in file pic32cm_ls_crypto.h.
Macro Definition Documentation
◆ CRYA_AES_DEC_ADDR
#define CRYA_AES_DEC_ADDR 0x02006808 |
Definition at line 40 of file pic32cm_ls_crypto.h.
◆ crya_aes_decrypt
#define crya_aes_decrypt ((crya_aes_decrypt_t) (CRYA_AES_DEC_ADDR | 1)) |
Definition at line 64 of file pic32cm_ls_crypto.h.
◆ CRYA_AES_ENC_ADDR
#define CRYA_AES_ENC_ADDR 0x02006804 |
Definition at line 39 of file pic32cm_ls_crypto.h.
◆ crya_aes_encrypt
#define crya_aes_encrypt ((crya_aes_encrypt_t) (CRYA_AES_ENC_ADDR | 1)) |
Definition at line 63 of file pic32cm_ls_crypto.h.
◆ crya_gf_mult128
#define crya_gf_mult128 ((crya_gf_mult128_t) (CRYA_GF_MULT128_ADDR | 1)) |
Definition at line 65 of file pic32cm_ls_crypto.h.
◆ CRYA_GF_MULT128_ADDR
#define CRYA_GF_MULT128_ADDR 0x0200680C |
Definition at line 41 of file pic32cm_ls_crypto.h.
◆ CRYA_SHA_ADDR
#define CRYA_SHA_ADDR 0x02006800 |
Definition at line 38 of file pic32cm_ls_crypto.h.
◆ crya_sha_process
#define crya_sha_process ((crya_sha_process_t) (CRYA_SHA_ADDR | 1)) |
Definition at line 62 of file pic32cm_ls_crypto.h.
Typedef Documentation
◆ crya_aes_decrypt_t
typedef void(* crya_aes_decrypt_t) (const uint8_t *key, uint32_t keyLen, const uint8_t *src, uint8_t *dest) |
Definition at line 55 of file pic32cm_ls_crypto.h.
◆ crya_aes_encrypt_t
typedef void(* crya_aes_encrypt_t) (const uint8_t *key, uint32_t keyLen, const uint8_t *src, uint8_t *dest) |
Definition at line 52 of file pic32cm_ls_crypto.h.
◆ crya_gf_mult128_t
typedef void(* crya_gf_mult128_t) (const uint32_t *block1, const uint32_t *block2, uint32_t *dest) |
Definition at line 58 of file pic32cm_ls_crypto.h.
◆ crya_sha_process_t
typedef void(* crya_sha_process_t) (uint32_t digest[8], const uint8_t data[64], uint32_t buffer[64]) |
Definition at line 49 of file pic32cm_ls_crypto.h.
Function Documentation
◆ pic32cmlsCryptoInit()
error_t pic32cmlsCryptoInit | ( | void | ) |
Initialize hardware cryptographic accelerator.
- Returns
- Error code
Definition at line 49 of file pic32cm_ls_crypto.c.
Variable Documentation
◆ pic32cmlsCryptoMutex
|
extern |
Definition at line 41 of file pic32cm_ls_crypto.c.