Expand description
Strobe KK hybrid transport: Classic McEliece 8192128f (static keys, mutual auth)
- X25519 (ephemeral forward-secrecy key).
Protocol string: "StrobeKK_CME8192128_X25519/v1"
Handshake layout ────────────────
msg1 (initiator → responder, KK_HYBRID_MSG1_LEN bytes):
| CME ciphertext (208 B) | X25519 ephemeral pk (32 B) | MAC (16 B) |msg2 (responder → initiator, KK_HYBRID_MSG2_LEN bytes):
| X25519 ephemeral pk (32 B) | CME ciphertext to initiator (208 B) | MAC (16 B) |Transcript (initiator side; responder mirrors recv/send):
STROBE("StrobeKK_CME8192128_X25519/v1")
AD(responder_cme_pk)
AD(initiator_cme_pk)
AD(prologue)
send_clr(ct_cme_r) // msg1[0..208]
KEY(ss_cme_r)
send_enc(init_eph_pk) // msg1[208..240]
send_mac(16) // msg1[240..256]
recv_enc(resp_eph_pk) // msg2[0..32]
KEY(ss_x25519)
recv_enc(ct_cme_i) // msg2[32..240]
KEY(ss_cme_i)
recv_mac(16) // msg2[240..256]Structs§
- Strobe
KkHybrid Handshake - In-progress KK hybrid handshake — holds the ephemeral and static keys until msg2 arrives.
- Strobe
KkHybrid Initiator - Reusable initiator config for the Strobe KK hybrid handshake.
- Strobe
KkHybrid Responder - Responder side of the Strobe KK hybrid handshake.
Enums§
Constants§
- KK_
HYBRID_ MSG1_ LEN - Length of the first handshake message (initiator → responder). CME ciphertext (208) + X25519 ephemeral pk (32) + MAC (16).
- KK_
HYBRID_ MSG2_ LEN - Length of the second handshake message (responder → initiator). X25519 ephemeral pk (32) + CME ciphertext to initiator (208) + MAC (16).