|
UDIF: Universal Digital Identification Framework 1.1.0.0a (A1)
A quantum-secure cryptographic identification
|
Per-connection UDIF state layered atop a QSTP channel. More...
#include <tunnel.h>
Data Fields | |
| uint8_t | peerserial [UDIF_SERIAL_NUMBER_SIZE] |
| uint8_t | treatyid [UDIF_SERIAL_NUMBER_SIZE] |
| qstp_connection_state * | qstpcns |
| uint64_t | txsequence |
| uint64_t | rxsequence |
| uint64_t | epoch |
| uint64_t | lastrxsecs |
| uint64_t | lasttxsecs |
| uint64_t | keepalivedeadline |
| uint64_t | idledeadline |
| uint64_t | ratchetdeadline |
| udif_rolepair | rolepair |
| udif_tunnel_side | side |
| bool | closing |
Per-connection UDIF state layered atop a QSTP channel.
The qstpcns field is held by reference; its lifetime is managed through the QSTP API. The tunnel record pairs it with UDIF-specific policy state for the duration of the session.
| bool closing |
Set true once a close has been initiated
| uint64_t epoch |
Current UDIF tunnel epoch
| uint64_t idledeadline |
UTC seconds past which session is torn down
| uint64_t keepalivedeadline |
UTC seconds at which next keepalive should be sent
| uint64_t lastrxsecs |
UTC seconds of last successful receive
| uint64_t lasttxsecs |
UTC seconds of last successful send
| uint8_t peerserial[UDIF_SERIAL_NUMBER_SIZE] |
Remote entity certificate serial
| qstp_connection_state* qstpcns |
Underlying QSTP channel; not owned
| uint64_t ratchetdeadline |
UTC seconds at which next ratchet is scheduled; 0 if non-ratcheting
| udif_rolepair rolepair |
Role relationship
| uint64_t rxsequence |
Next required receive sequence for the current UDIF epoch
| udif_tunnel_side side |
Client or server end
| uint8_t treatyid[UDIF_SERIAL_NUMBER_SIZE] |
Treaty identifier; all-zero if rolepair != treaty
| uint64_t txsequence |
Next transmit sequence for the current UDIF epoch