PQS: Post Quantum Shell 1.0.0.0a (A1)
A quantum safe shell application
pqs_kex_server_state Struct Reference

The PQS simplex server state structure. More...

#include <kex.h>

Data Fields

uint8_t keyid [PQS_KEYID_SIZE]
 
uint8_t schash [PQS_SCHASH_SIZE]
 
uint8_t prikey [PQS_ASYMMETRIC_PRIVATE_KEY_SIZE]
 
uint8_t pubkey [PQS_ASYMMETRIC_PUBLIC_KEY_SIZE]
 
uint8_t sigkey [PQS_ASYMMETRIC_SIGNING_KEY_SIZE]
 
uint8_t verkey [PQS_ASYMMETRIC_VERIFY_KEY_SIZE]
 
uint64_t expiration
 

Detailed Description

The PQS simplex server state structure.

This structure holds the state information required for the server-side key exchange in the PQS protocol. It includes the server's key identity, a session token hash, the server's private and public keys for the asymmetric cipher, the server's signature key, the server's verification key, and the key expiration time.

Fields:

  • keyid: The key identity string (an array of PQS_KEYID_SIZE bytes).
  • schash: The session token hash (an array of PQS_SCHASH_SIZE bytes).
  • prikey: The asymmetric cipher private key (an array of PQS_ASYMMETRIC_PRIVATE_KEY_SIZE bytes).
  • pubkey: The asymmetric cipher public key (an array of PQS_ASYMMETRIC_PUBLIC_KEY_SIZE bytes).
  • sigkey: The asymmetric signature signing key (an array of PQS_ASYMMETRIC_SIGNING_KEY_SIZE bytes).
  • verkey: The local asymmetric signature verification key (an array of PQS_ASYMMETRIC_VERIFY_KEY_SIZE bytes).
  • expiration: The expiration time, in seconds from epoch.

Field Documentation

◆ expiration

uint64_t expiration

The expiration time, in seconds from epoch

◆ keyid

uint8_t keyid[PQS_KEYID_SIZE]

The key identity string

◆ prikey

The asymmetric cipher private key

◆ pubkey

The asymmetric cipher public key

◆ schash

uint8_t schash[PQS_SCHASH_SIZE]

The session token hash

◆ sigkey

The asymmetric signature signing-key

◆ verkey

The local asymmetric signature verification-key


The documentation for this struct was generated from the following file: