tls13
packagestandard libraryThis package is not in the latest version of its module.
Details
Validgo.mod file
The Go module system was introduced in Go 1.11 and is the official dependency management solution for Go.
Redistributable license
Redistributable licenses place minimal restrictions on how software can be used, modified, and redistributed.
Tagged version
Modules with tagged versions give importers more predictable builds.
Stable version
When a project reaches major version v1 it is considered stable.
- Learn more about best practices
Repository
Links
Documentation¶
Overview¶
Package tls13 implements the TLS 1.3 Key Schedule as specified inRFC 8446,Section 7.1 and allowed by FIPS 140-3 IG 2.4.B Resolution 7.
Index¶
- func ExpandLabel[H hash.Hash](hash func() H, secret []byte, label string, context []byte, length int) []byte
- func TestingOnlyExporterSecret(s *ExporterMasterSecret) []byte
- type EarlySecret
- type ExporterMasterSecret
- type HandshakeSecret
- type MasterSecret
- func (s *MasterSecret) ClientApplicationTrafficSecret(transcript hash.Hash) []byte
- func (s *MasterSecret) ExporterMasterSecret(transcript hash.Hash) *ExporterMasterSecret
- func (s *MasterSecret) ResumptionMasterSecret(transcript hash.Hash) []byte
- func (s *MasterSecret) ServerApplicationTrafficSecret(transcript hash.Hash) []byte
Constants¶
This section is empty.
Variables¶
This section is empty.
Functions¶
funcExpandLabel¶
func ExpandLabel[Hhash.Hash](hash func() H, secret []byte, labelstring, context []byte, lengthint) []byte
ExpandLabel implements HKDF-Expand-Label fromRFC 8446, Section 7.1.
funcTestingOnlyExporterSecret¶
func TestingOnlyExporterSecret(s *ExporterMasterSecret) []byte
Types¶
typeEarlySecret¶
type EarlySecret struct {// contains filtered or unexported fields}
funcNewEarlySecret¶
func NewEarlySecret[Hhash.Hash](h func() H, psk []byte) *EarlySecret
func (*EarlySecret)ClientEarlyTrafficSecret¶
func (s *EarlySecret) ClientEarlyTrafficSecret(transcripthash.Hash) []byte
ClientEarlyTrafficSecret derives the client_early_traffic_secret from theearly secret and the transcript up to the ClientHello.
func (*EarlySecret)EarlyExporterMasterSecret¶
func (s *EarlySecret) EarlyExporterMasterSecret(transcripthash.Hash) *ExporterMasterSecret
EarlyExporterMasterSecret derives the exporter_master_secret from the early secretand the transcript up to the ClientHello.
func (*EarlySecret)HandshakeSecret¶
func (s *EarlySecret) HandshakeSecret(sharedSecret []byte) *HandshakeSecret
func (*EarlySecret)ResumptionBinderKey¶
func (s *EarlySecret) ResumptionBinderKey() []byte
typeExporterMasterSecret¶
type ExporterMasterSecret struct {// contains filtered or unexported fields}
typeHandshakeSecret¶
type HandshakeSecret struct {// contains filtered or unexported fields}
func (*HandshakeSecret)ClientHandshakeTrafficSecret¶
func (s *HandshakeSecret) ClientHandshakeTrafficSecret(transcripthash.Hash) []byte
ClientHandshakeTrafficSecret derives the client_handshake_traffic_secret fromthe handshake secret and the transcript up to the ServerHello.
func (*HandshakeSecret)MasterSecret¶
func (s *HandshakeSecret) MasterSecret() *MasterSecret
func (*HandshakeSecret)ServerHandshakeTrafficSecret¶
func (s *HandshakeSecret) ServerHandshakeTrafficSecret(transcripthash.Hash) []byte
ServerHandshakeTrafficSecret derives the server_handshake_traffic_secret fromthe handshake secret and the transcript up to the ServerHello.
typeMasterSecret¶
type MasterSecret struct {// contains filtered or unexported fields}
func (*MasterSecret)ClientApplicationTrafficSecret¶
func (s *MasterSecret) ClientApplicationTrafficSecret(transcripthash.Hash) []byte
ClientApplicationTrafficSecret derives the client_application_traffic_secret_0from the master secret and the transcript up to the server Finished.
func (*MasterSecret)ExporterMasterSecret¶
func (s *MasterSecret) ExporterMasterSecret(transcripthash.Hash) *ExporterMasterSecret
ExporterMasterSecret derives the exporter_master_secret from the master secretand the transcript up to the server Finished.
func (*MasterSecret)ResumptionMasterSecret¶
func (s *MasterSecret) ResumptionMasterSecret(transcripthash.Hash) []byte
ResumptionMasterSecret derives the resumption_master_secret from the master secretand the transcript up to the client Finished.
func (*MasterSecret)ServerApplicationTrafficSecret¶
func (s *MasterSecret) ServerApplicationTrafficSecret(transcripthash.Hash) []byte
ServerApplicationTrafficSecret derives the server_application_traffic_secret_0from the master secret and the transcript up to the server Finished.