Expand description
Key schedule maintenance for TLS1.3
StructsΒ§
- KeySchedule π
- This is the TLS1.3 key schedule. It stores the current secret and the type of hash. This isnβt used directly; but only through the typestates.
- KeySchedule
Before πFinished - Keys derived (but not installed) before clientβs Finished message.
- KeySchedule
Client πBefore Finished - Client-side key schedule before the finished message is sent.
- KeySchedule
Early π - The βearly secretβ stage of the key schedule WITH a PSK.
- KeySchedule
Handshake π - KeySchedule
Handshake πStart - KeySchedule during handshake.
- KeySchedule
PreHandshake π - The βearly secretβ stage of the key schedule.
- KeySchedule
Resumption π - KeySchedule
Suite π - This is a component part of
KeySchedule
, and groups operations that do not depend on the root key schedule secret. - KeySchedule
Traffic π - KeySchedule during traffic stage. All traffic & exporter keys are guaranteed to be available.
- KeySchedule
Traffic πWith Client Finished Pending - KeySchedule during traffic stage, retaining the ability to calculate the clientβs finished verify_data. The traffic stage key schedule can be extracted from it through signing the client finished hash.
EnumsΒ§
- Secret
Kind π - The kinds of secret we can extract from
KeySchedule
.
FunctionsΒ§
- derive_
traffic_ iv - HKDF-Expand-Label where the output is an IV.
- derive_
traffic_ key - HKDF-Expand-Label where the output is an AEAD key.
- expand_
secret π - hkdf_
expand_ πlabel - HKDF-Expand-Label where the output length is a compile-time constant, and therefore it is infallible.
- hkdf_
expand_ πlabel_ aead_ key - [HKDF-Expand-Label] where the output is an AEAD key.
- hkdf_
expand_ πlabel_ block - [HKDF-Expand-Label] where the output is one block in size.
- hkdf_
expand_ πlabel_ inner - hkdf_
expand_ πlabel_ slice - [HKDF-Expand-Label] where the output is a slice.
- server_
ech_ πhrr_ confirmation_ secret