Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/XTLS/REALITY
/ types & classes
Types & classes
108 in github.com/XTLS/REALITY
⨍
Functions
457
◇
Types & classes
108
↓ 8 callers
TypeAlias
SignatureScheme
go:generate stringer -linecomment -type=SignatureScheme,CurveID,ClientAuthType -output=common_string.go SignatureScheme identifies a signature algorit
common.go:389
↓ 8 callers
TypeAlias
recordType
TLS record types.
common.go:74
↓ 5 callers
TypeAlias
CurveID
CurveID is the type of a TLS identifier for a key exchange mechanism. See https://www.iana.org/assignments/tls-parameters/tls-parameters.xml#tls-param
common.go:145
↓ 5 callers
TypeAlias
alert
alert.go:19
↓ 2 callers
TypeAlias
AlertError
An AlertError is a TLS alert. When using a QUIC transport, QUICConn methods will return an error which wraps AlertError rather than sending a TLS ale
alert.go:13
↓ 1 callers
TypeAlias
ClientAuthType
ClientAuthType declares the policy the server will follow for TLS Client Authentication.
common.go:330
↓ 1 callers
TypeAlias
QUICEncryptionLevel
QUICEncryptionLevel represents a QUIC encryption level used to transmit handshake messages.
quic.go:15
↓ 1 callers
TypeAlias
echExtType
ech.go:518
↓ 1 callers
Struct
finishedHash
A finishedHash calculates the hash of a set of handshake messages suitable for including in a Finished message.
prf.go:172
↓ 1 callers
FuncType
marshalingFunction
The marshalingFunction type is an adapter to allow the use of ordinary functions as cryptobyte.MarshalingValue.
handshake_messages.go:18
TypeAlias
AEADID
hpke/hpye.go:159
Struct
CCSDetectConn
record_detect.go:139
Struct
Certificate
A Certificate is a chain of one or more certificates, leaf first.
common.go:1589
Struct
CertificateRequestInfo
CertificateRequestInfo contains information from a server's CertificateRequest message, which is used to demand a certificate and proof of control fro
common.go:486
Struct
CertificateVerificationError
CertificateVerificationError is returned when certificate verification fails during the handshake.
common.go:1757
Struct
CipherSuite
CipherSuite is a TLS cipher suite. Note that most functions in this package accept and expose cipher suite IDs instead of this type.
cipher_suites.go:27
Struct
ClientHelloInfo
ClientHelloInfo contains information from a ClientHello message in order to guide application logic in the GetCertificate and GetConfigForClient callb
common.go:417
Interface
ClientSessionCache
ClientSessionCache is a cache of ClientSessionState objects that can be used by a client to resume a TLS session with a given server. ClientSessionCac
common.go:373
Struct
ClientSessionState
ClientSessionState contains the state needed by a client to resume a previous TLS session.
ticket.go:403
Interface
CloseWriteConn
tls.go:59
Struct
Config
A Config structure is used to configure a TLS client or server. After one has been passed to a TLS function it must not be modified. A Config may be r
common.go:550
Struct
Conn
A Conn represents a secured connection. It implements the net.Conn interface.
conn.go:27
Struct
ConnectionState
ConnectionState records basic TLS details about the connection.
common.go:235
Struct
Dialer
Dialer dials TLS connections given a configuration and a Dialer for the underlying connection.
tls.go:650
Struct
ECHRejectionError
ECHRejectionError is the error type returned when ECH is rejected by a remote server. If the server offered a ECHConfigList to use for retries, the Re
ech.go:507
Struct
EarlySecret
tls13/tls13.go:70
Struct
EchCipher
ech.go:31
Struct
EchConfig
ech.go:41
Struct
EncryptedClientHelloKey
EncryptedClientHelloKey holds a private key that is associated with a specific ECH config known to a client.
common.go:911
Struct
ExporterMasterSecret
tls13/tls13.go:148
Struct
HandshakeSecret
tls13/tls13.go:92
TypeAlias
KDFID
hpke/hpye.go:178
TypeAlias
KemID
hpke/hpye.go:57
Struct
LimitFallback
common.go:540
Struct
MasterSecret
tls13/tls13.go:117
Struct
MirrorConn
tls.go:64
Struct
PostHandshakeRecordDetectConn
record_detect.go:104
Struct
QUICConfig
A QUICConfig configures a [QUICConn].
quic.go:50
Struct
QUICConn
A QUICConn represents a connection which uses a QUIC implementation as the underlying transport as described in RFC 9001. Methods of QUICConn are not
quic.go:43
Struct
QUICEvent
A QUICEvent is an event occurring on a QUIC connection. The type of event is specified by the Kind field. The contents of the other fields are kind-s
quic.go:126
TypeAlias
QUICEventKind
A QUICEventKind is a type of operation on a QUIC connection.
quic.go:62
Struct
QUICSessionTicketOptions
quic.go:295
Struct
RatelimitedConn
tls.go:104
Struct
Recipient
hpke/hpye.go:147
Struct
RecordHeaderError
RecordHeaderError is returned when a TLS record header is invalid.
conn.go:600
TypeAlias
RenegotiationSupport
RenegotiationSupport enumerates the different levels of support for TLS renegotiation. TLS renegotiation is the act of performing subsequent handshake
common.go:525
Struct
Sender
hpke/hpye.go:143
Struct
SessionState
A SessionState is a resumable session.
ticket.go:21
Interface
aead
cipher_suites.go:437
Struct
atLeastReader
atLeastReader reads from R, stopping with EOF once at least N bytes have been read. It is different from an io.LimitedReader in that it doesn't cut sh
conn.go:844
Interface
binaryMarshaler
handshake_server_tls13.go:570
Interface
cbcMode
cbcMode is an interface for block ciphers using cipher block chaining.
conn.go:340
Struct
certificateMsg
handshake_messages.go:1379
Struct
certificateMsgTLS13
handshake_messages.go:1449
Struct
certificateRequestMsg
handshake_messages.go:1704
Struct
certificateRequestMsgTLS13
handshake_messages.go:1235
Struct
certificateStatusMsg
handshake_messages.go:1613
Struct
certificateVerifyMsg
handshake_messages.go:1838
Struct
cipherSuite
A cipherSuite is a TLS 1.0–1.2 cipher suite, and defines the key exchange mechanism, as well as the cipher+MAC pair or the AEAD.
cipher_suites.go:134
Struct
cipherSuiteTLS13
A cipherSuiteTLS13 defines only the pair of the AEAD algorithm and hash algorithm to be used with HKDF. See RFC 8446, Appendix B.4.
cipher_suites.go:193
Struct
clientHandshakeState
handshake_client.go:32
Struct
clientHandshakeStateTLS13
handshake_client_tls13.go:24
Struct
clientHelloMsg
handshake_messages.go:71
Struct
clientKeyExchangeMsg
handshake_messages.go:1655
Interface
constantTimeHash
cipher_suites.go:570
Struct
context
hpke/hpye.go:129
Struct
cthWrapper
cthWrapper wraps any hash.Hash that implements ConstantTimeSum, and replaces with that all calls to Sum. It's used to obtain a ConstantTimeSum-based H
cipher_suites.go:577
Struct
dhKEM
dhKEM implements the KEM specified in RFC 9180, Section 4.1.
hpke/hpye.go:49
Struct
ecdheKeyAgreement
ecdheKeyAgreement implements a TLS key agreement where the server generates an ephemeral EC public/private key pair and signs it. The pre-master secre
key_agreement.go:159
Struct
echClientContext
handshake_client.go:247
Struct
echConfigErr
ech.go:59
Struct
echExtension
ech.go:36
Struct
echServerContext
handshake_server_tls13.go:41
Struct
encryptedExtensionsMsg
handshake_messages.go:1003
Struct
endOfEarlyDataMsg
handshake_messages.go:1111
Struct
finishedMsg
handshake_messages.go:1683
Struct
halfConn
A halfConn represents one direction of the record layer connection, either sending or receiving.
conn.go:173
Interface
handshakeMessage
common.go:1620
Interface
handshakeMessageWithOriginalBytes
common.go:1625
Struct
helloRequestMsg
handshake_messages.go:1913
Struct
hkdfKDF
hpke/hpye.go:25
Interface
keyAgreement
A keyAgreement implements the client and server side of a TLS 1.0–1.2 key agreement protocol by generating and processing key exchange messages.
key_agreement.go:22
Struct
keyShare
TLS 1.3 Key Share. See RFC 8446, Section 4.2.8.
common.go:164
Struct
keySharePrivateKeys
key_schedule.go:53
Struct
keyUpdateMsg
handshake_messages.go:1123
Struct
listener
A listener implements a network listener (net.Listener) for TLS connections.
tls.go:502
Struct
lruSessionCache
lruSessionCache is a ClientSessionCache implementation that uses an LRU caching strategy.
common.go:1636
Struct
lruSessionCacheEntry
common.go:1644
Struct
newSessionTicketMsg
handshake_messages.go:1873
Struct
newSessionTicketMsgTLS13
handshake_messages.go:1160
Struct
permanentError
conn.go:194
Struct
prefixNonceAEAD
prefixNonceAEAD wraps an AEAD and prefixes a fixed portion of the nonce to each call.
cipher_suites.go:453
FuncType
prfFunc
func(secret []byte, label string, seed []byte, keyLen int) []byte
prf.go:21
Struct
pskIdentity
TLS 1.3 PSK Identity. Can be a Session Ticket, or a reference to a saved session. See RFC 8446, Section 4.2.11.
common.go:177
Struct
quicState
quic.go:143
Struct
rawExtension
ech.go:255
Struct
rsaKeyAgreement
rsaKeyAgreement implements the standard TLS key agreement where the client encrypts the pre-master secret to the server's public key.
key_agreement.go:44
Struct
serverHandshakeState
serverHandshakeState contains details of a server handshake in progress. It's discarded once the handshake has completed.
handshake_server.go:27
Struct
serverHandshakeStateTLS13
handshake_server_tls13.go:53
Struct
serverHelloDoneMsg
handshake_messages.go:1643
next →
1–100 of 108, ranked by callers