Expand description
Strobe NK hybrid transport: Classic McEliece 8192128f (static server key)
- X25519 (ephemeral forward-secrecy key).
Protocol string: "StrobeNK_CME8192128_X25519/v1"
Handshake layout ────────────────
msg1 (initiator → responder, HYBRID_MSG1_LEN bytes):
| CME ciphertext (208 B) | X25519 ephemeral pk (32 B) | MAC (32 B) |msg2 (responder → initiator, HYBRID_MSG2_LEN bytes):
| X25519 ephemeral pk (32 B) | MAC (32 B) |Transcript (initiator side, responder mirrors recv/send):
STROBE("StrobeNK_CME8192128_X25519/v1")
AD(responder_cme_pk)
AD(prologue)
send_clr(cme_ct) // msg1[0..208]
KEY(ss_cme)
send_enc(init_eph_pk) // msg1[208..240] — encrypts in place
send_mac(32) // msg1[240..272]
recv_enc(resp_eph_pk) // msg2[0..32]
KEY(ss_x25519)
recv_mac(32) // msg2[32..64]Structs§
- Strobe
NkHybrid Handshake - In-progress hybrid handshake — holds the ephemeral key until msg2 arrives.
- Strobe
NkHybrid Initiator - Reusable initiator config for the Strobe NK hybrid handshake.
- Strobe
NkHybrid Responder - Responder side of the Strobe NK hybrid handshake.
Enums§
Constants§
- CME_
CT_ LEN - Classic McEliece 8192128f ciphertext length (bytes).
- HYBRID_
MSG1_ LEN - Length of the first handshake message (initiator → responder). CME ciphertext (208) + X25519 ephemeral pk (32) + MAC (32).
- HYBRID_
MSG2_ LEN - Length of the second handshake message (responder → initiator). X25519 ephemeral pk (32) + MAC (32).