|
ProtoCore v0.0.2
Deterministic, zero-heap network stack for embedded targets
|
AES-256-GCM AEAD - stateless implementation (see aesgcm.h). More...
#include "crypto/aead/aesgcm.h"#include "crypto/crypto_opt.h"#include "crypto/crypto_scratch.h"#include "crypto/mac/ghash.h"#include "server/mmgr/secure.h"#include <string.h>Go to the source code of this file.
Functions | |
| PC_CRYPTO_HOT void | pc_aesgcm_iv_increment (uint8_t iv[PC_AESGCM_IV_LEN]) |
| Advance the RFC 5647 invocation counter: the low 8 bytes of the 12-byte nonce as a big-endian integer; the 4-byte fixed field never changes. SSH calls this after each sealed/opened packet. | |
AES-256-GCM AEAD - stateless implementation (see aesgcm.h).
All working memory (AES key schedule, GHASH table, keystream, accumulator, tag mask, counters) lives in the secure pool, laid out as a GcmWork on the software path or an The working set is a pool borrow, wiped when released. No cipher state ever touches the stack or BSS.
The implementation lives in a backend under board_drivers/, chosen by the vendor's PC_HAS_HW_AESGCM: the accelerated AEAD where the silicon has one, the portable software AES + table GHASH where it does not. This file names no vendor and no cipher
Definition in file aesgcm.cpp.
| PC_CRYPTO_HOT void pc_aesgcm_iv_increment | ( | uint8_t | iv[PC_AESGCM_IV_LEN] | ) |
Advance the RFC 5647 invocation counter: the low 8 bytes of the 12-byte nonce as a big-endian integer; the 4-byte fixed field never changes. SSH calls this after each sealed/opened packet.
Definition at line 30 of file aesgcm.cpp.
References PC_AESGCM_IV_LEN.
Referenced by ssh_pkt_send().