28 const uint8_t* pa = (
const uint8_t*)a;
29 const uint8_t* pb = (
const uint8_t*)b;
31 for (
size_t i = 0U; i < len; ++i) {
32 diff = (uint8_t)(diff | (uint8_t)(pa[i] ^ pb[i]));
49 volatile uint8_t* dst = (
volatile uint8_t*)ptr;
50 for (
size_t i = 0U; i < len; ++i) {
bool ra8_ct_equal(const void *a, const void *b, size_t len)
Constant-time equality of two byte buffers.
void ra8_secure_memzero(void *ptr, size_t len)
Securely zero a buffer such that the write cannot be optimised away.
Secure-comparison primitives for the crypto / secure-boot paths.