Expand description
C/C++ FFI bindings for PQC Binary Format
This module provides C-compatible foreign function interface (FFI) for use in C/C++ applications and Go (via cgo).
Structs§
- Byte
Buffer - C-compatible byte buffer
- PqcFormat
Handle - Opaque handle to PqcBinaryFormat
Statics§
- PQC_
ALGORITHM_ CLASSICAL - Algorithm ID for Classical (X25519 + Ed25519 + AES-256-GCM)
- PQC_
ALGORITHM_ HQC_ 128 - Algorithm ID for HQC-128 (NIST Level 1, 128-bit security)
- PQC_
ALGORITHM_ HQC_ 192 - Algorithm ID for HQC-192 (NIST Level 3, 192-bit security)
- PQC_
ALGORITHM_ HQC_ 256 - Algorithm ID for HQC-256 (NIST Level 5, 256-bit security)
- PQC_
ALGORITHM_ HYBRID - Algorithm ID for Hybrid (ML-KEM-1024 + X25519 + ML-DSA-87 + Ed25519)
- PQC_
ALGORITHM_ LATTICE_ CODE_ HYBRID - Algorithm ID for Lattice-Code Hybrid Stack
- PQC_
ALGORITHM_ ML_ DSA_ 44 - Algorithm ID for ML-DSA-44 (NIST Level 2, 128-bit security)
- PQC_
ALGORITHM_ ML_ DSA_ 65 - Algorithm ID for ML-DSA-65 (NIST Level 3, 192-bit security)
- PQC_
ALGORITHM_ ML_ DSA_ 87 - Algorithm ID for ML-DSA-87 (NIST Level 5, 256-bit security)
- PQC_
ALGORITHM_ ML_ KEM_ 512 - Algorithm ID for ML-KEM-512 (NIST Level 1, 128-bit security)
- PQC_
ALGORITHM_ ML_ KEM_ 768 - Algorithm ID for ML-KEM-768 (NIST Level 3, 192-bit security)
- PQC_
ALGORITHM_ ML_ KEM_ 1024 - Algorithm ID for ML-KEM-1024 pure implementation
- PQC_
ALGORITHM_ MULTI_ KEM - Algorithm ID for Multi-KEM (multiple key encapsulation layers)
- PQC_
ALGORITHM_ MULTI_ KEM_ TRIPLE - Algorithm ID for Multi-KEM Triple Layer
- PQC_
ALGORITHM_ PASSWORD_ CLASSICAL - Algorithm ID for Password-based Classical encryption
- PQC_
ALGORITHM_ POST_ QUANTUM - Algorithm ID for Post-Quantum (ML-KEM-1024 + ML-DSA-87)
- PQC_
ALGORITHM_ PQ3_ STACK - Algorithm ID for PQ3-Stack with forward secrecy
- PQC_
ALGORITHM_ QUAD_ LAYER - Algorithm ID for Quad-Layer redundant encryption
- PQC_
ALGORITHM_ SLH_ DSA_ SHA2_ 128F - Algorithm ID for SLH-DSA-SHA2-128f (NIST Level 1, fast signatures)
- PQC_
ALGORITHM_ SLH_ DSA_ SHA2_ 128S - Algorithm ID for SLH-DSA-SHA2-128s (NIST Level 1, small signatures)
- PQC_
ALGORITHM_ SLH_ DSA_ SHA2_ 192F - Algorithm ID for SLH-DSA-SHA2-192f (NIST Level 3, fast signatures)
- PQC_
ALGORITHM_ SLH_ DSA_ SHA2_ 192S - Algorithm ID for SLH-DSA-SHA2-192s (NIST Level 3, small signatures)
- PQC_
ALGORITHM_ SLH_ DSA_ SHA2_ 256F - Algorithm ID for SLH-DSA-SHA2-256f (NIST Level 5, fast signatures)
- PQC_
ALGORITHM_ SLH_ DSA_ SHA2_ 256S - Algorithm ID for SLH-DSA-SHA2-256s (NIST Level 5, small signatures)
Functions§
- pqc_
format_ ⚠free - Free a PqcBinaryFormat handle
- pqc_
format_ ⚠from_ bytes - Deserialize PQC Binary Format from bytes
- pqc_
format_ ⚠get_ algorithm_ id - Get algorithm ID from format
- pqc_
format_ ⚠get_ algorithm_ name - Get algorithm name from format
- pqc_
format_ ⚠get_ data - Get encrypted data from format
- pqc_
format_ ⚠get_ total_ size - Get total size of serialized format
- pqc_
format_ ⚠new - Create a new PQC Binary Format structure
- pqc_
format_ ⚠new_ with_ kem - Create PQC Binary Format with KEM parameters
- pqc_
format_ ⚠to_ bytes - Serialize PQC Binary Format to bytes
- pqc_
format_ ⚠validate - Validate format structure
- pqc_
free_ ⚠buffer - Free a byte buffer allocated by this library
- pqc_
free_ ⚠string - Free a string allocated by this library
- pqc_
get_ binary_ version - Get binary format version
- pqc_
get_ version - Get library version string