19#ifndef RADIOLINK_CRYPTO_ENABLE
20#define RADIOLINK_CRYPTO_ENABLE (1)
26#define RADIOLINK_DEBUG_TAMPER_ENABLE 0
28#define RADIOLINK_DEBUG_REPLAY_REJECT_ENABLE 0
29#define RADIOLINK_DEBUG_TX_REPLAY_ONESHOT_ENABLE 0
32#define RL_PERSIST_ENABLE 1
33#define RL_PERSIST_DISABLE_WHEN_DEBUGGER 1
36#define RADIOLINK_WIRE_V3_HDR_LEN (RADIOLINK_WIRE_V3_HDR_LEN_DERIVED)
39#define RADIOLINK_W3_VERSION (RADIOLINK_WIRE_V3_VERSION)
40#define RADIOLINK_W3_HDR_LEN (RADIOLINK_WIRE_V3_HDR_LEN_DERIVED)
41#define RADIOLINK_W3_TAG_LEN (RADIOLINK_WIRE_V3_TAG_LEN)
99 uint32_t sessionSeqId,
101 const uint8_t *plain, uint8_t plainLen,
114 uint8_t *outPlain, uint8_t outPlainMax,
115 uint8_t *outPlainLen);
MB85RS64B SPI FRAM public interface.
SX1262_Handle sx
Definition main.c:65
: Header for main.c file.This file contains the common defines of the application.
bool RadioLink_SendString(SX1262_Handle *sx, const char *s)
Encrypt, authenticate, and send a string payload.
Definition radio_link.c:1124
bool RadioLink_ParseWireV3Frame(const uint8_t *rx, uint8_t rxLen, uint8_t *outPlain, uint8_t outPlainMax, uint8_t *outPlainLen)
Parse, authenticate, replay-check, and decrypt a Wire v3 frame.
Definition radio_link.c:1064
bool RadioLink_BuildWireV3Frame(uint8_t *out, uint8_t outMax, uint8_t nodeId, uint32_t sessionSeqId, uint32_t msgCounter, const uint8_t *plain, uint8_t plainLen, uint8_t *outLen)
Build a Wire v3 frame from plaintext input.
Definition radio_link.c:991
struct radioLinkCryptoCtx_t radioLinkCryptoCtx_t
Runtime crypto context for RadioLink key material.
bool RadioLink_SendBytes(SX1262_Handle *sx, const uint8_t *buf, uint8_t len)
Encrypt, authenticate, and send a raw byte payload.
Definition radio_link.c:1177
bool RadioLink_TryDecodeToString(const uint8_t *rx, uint8_t rx_len, char *out, uint8_t out_max)
Parse and decrypt a received Wire v3 frame into a string buffer.
Definition radio_link.c:1150
Wire v3 on-wire layout and derived offsets.
Hardware binding for a single SX1262 instance.
Definition sx1262.h:20
Runtime crypto context for RadioLink key material.
Definition radio_link.h:49
uint8_t encKey[16]
Definition radio_link.h:51
uint8_t masterKey[16]
Definition radio_link.h:50
uint8_t keyIsValid
Definition radio_link.h:53
uint8_t macKey[16]
Definition radio_link.h:52
SX1262 LoRa radio driver public interface.