QSMP: Quantum Secure Messaging Protocol 1.3.0.0a (A3)
A quantum secure encrypted tunneling protocol
|
Internal state for the Duplex key exchange (client-side). More...
#include <kex.h>
Data Fields | |
uint8_t | keyid [QSMP_KEYID_SIZE] |
uint8_t | schash [QSMP_DUPLEX_SCHASH_SIZE] |
uint8_t | prikey [QSMP_ASYMMETRIC_PRIVATE_KEY_SIZE] |
uint8_t | pubkey [QSMP_ASYMMETRIC_PUBLIC_KEY_SIZE] |
uint8_t | rverkey [QSMP_ASYMMETRIC_VERIFY_KEY_SIZE] |
uint8_t | sigkey [QSMP_ASYMMETRIC_SIGNING_KEY_SIZE] |
uint8_t | ssec [QSMP_SECRET_SIZE] |
uint8_t | verkey [QSMP_ASYMMETRIC_VERIFY_KEY_SIZE] |
uint64_t | expiration |
Internal state for the Duplex key exchange (client-side).
This structure holds the state information required by a client participating in a Duplex key exchange. It includes:
keyid:
A unique key identity string (of size QSMP_KEYID_SIZE
) that identifies the key exchange session.schash:
A session token hash (of size QSMP_DUPLEX_SCHASH_SIZE
) used to verify session integrity.prikey:
The client's asymmetric cipher private key (of size QSMP_ASYMMETRIC_PRIVATE_KEY_SIZE
).pubkey:
The client's asymmetric cipher public key (of size QSMP_ASYMMETRIC_PUBLIC_KEY_SIZE
).rverkey:
The remote party's asymmetric signature verification key (of size QSMP_ASYMMETRIC_VERIFY_KEY_SIZE
).sigkey:
The client's asymmetric signature signing key (of size QSMP_ASYMMETRIC_SIGNING_KEY_SIZE
).ssec:
The derived asymmetric shared secret (of size QSMP_SECRET_SIZE
) computed during key exchange.verkey:
The client's local asymmetric signature verification key (of size QSMP_ASYMMETRIC_VERIFY_KEY_SIZE
).expiration:
A timestamp (in seconds from the epoch) indicating when the key exchange session expires. uint64_t expiration |
The expiration time, in seconds from epoch
uint8_t keyid[QSMP_KEYID_SIZE] |
The key identity string
uint8_t prikey[QSMP_ASYMMETRIC_PRIVATE_KEY_SIZE] |
The asymmetric cipher private key
uint8_t pubkey[QSMP_ASYMMETRIC_PUBLIC_KEY_SIZE] |
The asymmetric cipher public key
uint8_t rverkey[QSMP_ASYMMETRIC_VERIFY_KEY_SIZE] |
The remote asymmetric signature verification-key
uint8_t schash[QSMP_DUPLEX_SCHASH_SIZE] |
The session token hash
uint8_t sigkey[QSMP_ASYMMETRIC_SIGNING_KEY_SIZE] |
The asymmetric signature signing-key
uint8_t ssec[QSMP_SECRET_SIZE] |
The asymmetric shared secret
uint8_t verkey[QSMP_ASYMMETRIC_VERIFY_KEY_SIZE] |
The local asymmetric signature verification-key