Crate ytls_traits

Crate ytls_traits 

Source
Expand description

§ytls-traits

Traits for ytls

Structs§

HandshakeComplete
Marker for Handshake being complete
ShutdownComplete
Marker for Shutdown being complete

Enums§

AeadError

Traits§

ClientHandshakeFinishedBuilder
Client handshake finished is provided through trait implementation
ClientHelloBuilder
Use to generate ClientHello with the Handshake builder. Provide the optional / required data to construct it.
ClientHelloProcessor
CryptoChaCha20Poly1305Processor
ChaCha20Poly1305 AEAD Processor
CryptoConfig
Cryptography configuration is provied through implmenting this trait. Typically providers provide implementation or implementer can provide a mix of used primitives.
CryptoRng
A marker trait over RngCore for securely unpredictable RNGs
CryptoSha256HkdfExtractProcessor
HKDF (Hashing Key Derivation Function) Extract Processor
CryptoSha256HkdfGenProcessor
HKDF Gen Processor, e.g. to Expand
CryptoSha256HmacProcessor
HMAC (Hash-based Message Authentication Code) SHA256. @At Handshake Finished
CryptoSha256TranscriptProcessor
Transcript processor used to hash handshakes. Typically implemented by the crypto provider.
CryptoSha384HmacProcessor
HMAC (Hash-based Message Authentication Code) SHA384. @At Handshake Finished
CryptoSha384TranscriptProcessor
Transcript processor used to hash handshakes. Typically implemented by the crypto provider.
CryptoSignerP256Processor
ECDSA Signature Processor secp256p1
CryptoX25519Processor
X25519 processor used to calculate the shared secret with the given input public key and returning the shared secret.
CtxApplicationProcessor
Implement to process application data part
CtxHandshakeProcessor
Implement to process handshaking part
EncryptedExtensionsBuilder
Encrypted Extensions are provided through trait implementation if any
HandshakeBuilder
Non-typed Handshake Builder with raw data inputs. This is implemented by the [ytls_record::Record] where as the required inputs are through the client/server contextes.
SecretStore
up old secrets when not needed anymore beyond their purpose. When context upgrades we need to store/load generated ap secrets
ServerApRecordProcessor
ServerCertificateProcessor
ServerCertificateVerifyBuilder
Server certificate verification is provided through trait implementation
ServerCertificateVerifyProcessor
ServerCertificatesBuilder
Server certificates are provided through trait implementation
ServerFinishedProcessor
ServerHandshakeFinishedBuilder
Server handshake finished is provided through trait implementation
ServerHelloBuilder
Use to generate ServerHello with the HandshakeBuilder. Provide the optional / required data to construct it.
ServerHelloProcessor
ServerRecordProcessor
ServerWrappedRecordProcessor
Tls13KeyScheduleApSha256
TLS1.3 “Main” Key Schedule for Application Traffic post-handshake.
Tls13KeyScheduleDerivedSha256
TLS1.3 “derived” Key Schedule
Tls13KeyScheduleHandshakeSha256
TLS1.3 “handshake” Key Schedule
Tls13KeyScheduleInit
Initialize TLS1.3 Key Schedule
TlsLeftIn
TLS State Machine Left (Ciphertext) or “Network” I/O ingress side
TlsLeftOut
TLS State Machine Left (Ciphertext) or “Network” I/O egress side
TlsRight
TLS State Machine Right (Cleartext) or “Application” I/O side
WrappedApplicationBuilder
Wrapped Application data within Application context builder
WrappedHandshakeBuilder
Same except non-wrapped but where we wrap the record into TLS 1.2 Application Data layer, typically encrypted when written to wire.