Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/XTLS/REALITY
/ functions
Functions
457 in github.com/XTLS/REALITY
⨍
Functions
457
◇
Types & classes
108
↓ 2 callers
Function
supportedSignatureAlgorithmsCert
supportedSignatureAlgorithmsCert returns the supported algorithms for signatures in certificates.
common.go:1742
↓ 2 callers
Function
supportsECDHE
supportsECDHE returns whether ECDHE key exchanges can be used with this pre-TLS 1.3 client.
handshake_server.go:362
↓ 2 callers
Method
unmarshal
([]byte)
common.go:1622
↓ 2 callers
Function
unmarshalCertificate
(s *cryptobyte.String, certificate *Certificate)
handshake_messages.go:1529
↓ 2 callers
Method
verifyServerCertificate
verifyServerCertificate parses and verifies the provided chain, setting c.verifiedChains and c.peerCertificates or sending the appropriate alert.
handshake_client.go:1106
↓ 2 callers
Method
write
(data []byte)
conn.go:985
↓ 2 callers
Method
writeRecord
writeRecord writes a TLS record with the given type and payload to the connection and updates the record layer state. ONLY used by REALITY
conn.go:1118
↓ 1 callers
Method
Accept
Accept waits for and returns the next incoming TLS connection. The returned connection is of type *Conn.
tls.go:511
↓ 1 callers
Function
CipherSuites
CipherSuites returns a list of cipher suites currently implemented by this package, excluding those with security issues, which are returned by [Insec
cipher_suites.go:53
↓ 1 callers
Method
ConstantTimeSum
(b []byte)
cipher_suites.go:572
↓ 1 callers
Method
Decap
(encPubEph []byte, secRecipient *ecdh.PrivateKey)
hpke/hpye.go:116
↓ 1 callers
Function
DetectPostHandshakeRecordsLens
(config *Config)
record_detect.go:21
↓ 1 callers
Function
DialWithDialer
DialWithDialer connects to the given network address using dialer.Dial and then initiates a TLS handshake, returning the resulting TLS connection. Any
tls.go:590
↓ 1 callers
Method
Encap
(pubRecipient *ecdh.PublicKey)
hpke/hpye.go:91
↓ 1 callers
Method
Exporter
(label string, context []byte, length int)
tls13/tls13.go:171
↓ 1 callers
Method
ExporterMasterSecret
ExporterMasterSecret derives the exporter_master_secret from the master secret and the transcript up to the server Finished.
tls13/tls13.go:155
↓ 1 callers
Function
Force
Force forces crypto/tls to restrict TLS configurations to FIPS-approved settings. By design, this call is impossible to undo (except in tests).
fips140tls/fipstls.go:23
↓ 1 callers
Function
InsecureCipherSuites
InsecureCipherSuites returns a list of cipher suites currently implemented by this package and which have security issues. Most applications should n
cipher_suites.go:77
↓ 1 callers
Method
MarshalBinary
()
handshake_server_tls13.go:571
↓ 1 callers
Function
MasterSecret
MasterSecret implements the TLS 1.2 extended master secret derivation, as defined in RFC 7627 and allowed by SP 800-135, Revision 1, Section 4.2.2.
tls12/tls12.go:49
↓ 1 callers
Function
NewListener
NewListener creates a Listener which accepts connections from an inner Listener and wraps each connection with [Server]. The configuration config must
tls.go:529
↓ 1 callers
Method
NonceSize
()
cipher_suites.go:459
↓ 1 callers
Method
Open
(out, nonce, ciphertext, additionalData []byte)
cipher_suites.go:496
↓ 1 callers
Function
ParseHPKEPrivateKey
(kemID uint16, bytes []byte)
hpke/hpye.go:329
↓ 1 callers
Function
ParseHPKEPublicKey
(kemID uint16, bytes []byte)
hpke/hpye.go:321
↓ 1 callers
Method
Read
(b []byte)
record_detect.go:117
↓ 1 callers
Method
Seal
(out, nonce, plaintext, additionalData []byte)
cipher_suites.go:484
↓ 1 callers
Method
SetReadDeadline
SetReadDeadline sets the read deadline on the underlying connection. A zero value for t means [Conn.Read] will not time out.
conn.go:153
↓ 1 callers
Function
SetupRecipient
(kemID, kdfID, aeadID uint16, priv *ecdh.PrivateKey, info, encPubEph []byte)
hpke/hpye.go:262
↓ 1 callers
Function
SetupSender
(kemID, kdfID, aeadID uint16, pub *ecdh.PublicKey, info []byte)
hpke/hpye.go:244
↓ 1 callers
Method
Sum
(b []byte)
cipher_suites.go:585
↓ 1 callers
Method
UnmarshalBinary
(data []byte)
handshake_server_tls13.go:572
↓ 1 callers
Function
X509KeyPair
X509KeyPair parses a public/private key pair from a pair of PEM encoded data. On successful return, Certificate.Leaf will be populated. Before Go 1.2
tls.go:725
↓ 1 callers
Method
addOne
()
hpke/hpye.go:341
↓ 1 callers
Method
bitLen
()
hpke/hpye.go:346
↓ 1 callers
Function
buildRetryConfigList
(keys []EncryptedClientHelloKey)
ech.go:653
↓ 1 callers
Method
bytes
()
hpke/hpye.go:350
↓ 1 callers
Function
certificateRequestInfoFromMsg
certificateRequestInfoFromMsg generates a CertificateRequestInfo from a TLS <= 1.2 CertificateRequest, making an effort to fill in missing information
handshake_client.go:1207
↓ 1 callers
Function
certificatesToBytesSlice
(certs []*x509.Certificate)
ticket.go:178
↓ 1 callers
Method
checkForResumption
checkForResumption reports whether we should perform resumption on this connection.
handshake_server.go:442
↓ 1 callers
Method
clientHandshake
(ctx context.Context)
handshake_client.go:259
↓ 1 callers
Method
clone
()
handshake_messages.go:686
↓ 1 callers
Method
decrypt
decrypt authenticates and decrypts the record if protection is active at this stage. The returned plaintext might overlap with the input.
conn.go:347
↓ 1 callers
Function
defaultCipherSuites
(aesGCMPreferred bool)
defaults.go:84
↓ 1 callers
Function
defaultCurvePreferences
Defaults are collected in this file to allow distributions to more easily patch them to apply local policies. var tlsmlkem = godebug.New("tlsmlkem") d
defaults.go:19
↓ 1 callers
Function
defaultSupportedSignatureAlgorithms
var tlssha1 = godebug.New("tlssha1") defaultSupportedSignatureAlgorithms returns the signature and hash algorithms that the code advertises and suppor
defaults.go:32
↓ 1 callers
Function
defaultSupportedSignatureAlgorithmsCert
defaultSupportedSignatureAlgorithmsCert returns the signature algorithms that the code advertises as supported for signatures in certificates. We inc
defaults.go:56
↓ 1 callers
Method
doFullHandshake
()
handshake_client.go:660
↓ 1 callers
Method
doFullHandshake
()
handshake_server.go:578
↓ 1 callers
Method
doHelloRetryRequest
(selectedGroup CurveID)
handshake_server_tls13.go:641
↓ 1 callers
Method
doResumeHandshake
()
handshake_server.go:545
↓ 1 callers
Function
encodeInnerClientHello
(inner *clientHelloMsg, maxNameLength int)
ech.go:221
↓ 1 callers
Method
encrypt
encrypt encrypts payload, adding the appropriate nonce and/or MAC, and appends it to record, which must already contain the record header.
conn.go:487
↓ 1 callers
Method
establishHandshakeKeys
()
handshake_client_tls13.go:475
↓ 1 callers
Function
extractPadding
extractPadding returns, in constant time, the length of the padding to remove from the end of payload. It also returns a byte which is equal to 255 if
conn.go:288
↓ 1 callers
Function
extractRawExtensions
(hello *clientHelloMsg)
ech.go:260
↓ 1 callers
Function
fipsAllowChain
(chain []*x509.Certificate)
common.go:1796
↓ 1 callers
Method
generateClientKeyExchange
(*Config, *clientHelloMsg, *x509.Certificate)
key_agreement.go:36
↓ 1 callers
Method
generateServerKeyExchange
On the server side, the first two methods are called in order. In the case that the key agreement protocol doesn't use a ServerKeyExchange message, ge
key_agreement.go:28
↓ 1 callers
Method
handleKeyUpdate
(keyUpdate *keyUpdateMsg)
conn.go:1401
↓ 1 callers
Method
handleNewSessionTicket
(msg *newSessionTicketMsgTLS13)
handshake_client_tls13.go:855
↓ 1 callers
Method
handleRenegotiation
handleRenegotiation processes a HelloRequest handshake message.
conn.go:1326
↓ 1 callers
Method
handshake
()
handshake_server_tls13.go:88
↓ 1 callers
Method
handshakeContext
(ctx context.Context)
conn.go:1584
↓ 1 callers
Function
hostnameInSNI
hostnameInSNI converts name into an appropriate hostname for SNI. Literal IP addresses and absolute FQDNs are not permitted as SNI values. See RFC 606
handshake_client.go:1302
↓ 1 callers
Function
illegalClientHelloChange
illegalClientHelloChange reports whether the two ClientHello messages are different, with the exception of the changes allowed before and after a Hell
handshake_server_tls13.go:769
↓ 1 callers
Function
isCertificateAllowedFIPS
(c *x509.Certificate)
defaults_boring.go:57
↓ 1 callers
Method
loadSession
(hello *clientHelloMsg)
handshake_client.go:388
↓ 1 callers
Method
makeClientHello
()
handshake_client.go:46
↓ 1 callers
Method
marshal
()
handshake_messages.go:375
↓ 1 callers
Method
marshal
()
handshake_messages.go:1127
↓ 1 callers
Method
maxPayloadSizeForWrite
maxPayloadSizeForWrite returns the maximum TLS payload size to use for the next application data record. There is the following trade-off: - For late
conn.go:938
↓ 1 callers
Function
md5SHA1Hash
md5SHA1Hash implements TLS 1.0's hybrid hash function which consists of the concatenation of an MD5 and SHA1 hash.
key_agreement.go:118
↓ 1 callers
Method
netDialer
()
tls.go:674
↓ 1 callers
Function
noEKMBecauseNoEMS
noEKMBecauseNoEMS is used as a value of ConnectionState.ekm when Extended Master Secret is not negotiated and thus we wish to fail all key-material ex
prf.go:265
↓ 1 callers
Function
pHash
pHash implements the P_hash function, as defined in RFC 5246, Section 5.
tls12/tls12.go:25
↓ 1 callers
Function
parseECHConfigList
parseECHConfigList parses a draft-ietf-tls-esni-18 ECHConfigList, returning a slice of parsed ECHConfigs, in the same order they were parsed, or an er
ech.go:139
↓ 1 callers
Function
parsePrivateKey
Attempt to parse the given private key DER block. OpenSSL 0.9.8 generates PKCS #1 private keys by default, while OpenSSL 1.0.0 generates PKCS #8 keys.
tls.go:821
↓ 1 callers
Method
pickCipherSuite
()
handshake_client.go:650
↓ 1 callers
Method
pickCipherSuite
()
handshake_server.go:393
↓ 1 callers
Function
pickECHCipherSuite
(suites []EchCipher)
ech.go:205
↓ 1 callers
Function
pickECHConfig
(list []EchConfig)
ech.go:166
↓ 1 callers
Method
pickTLSVersion
(serverHello *serverHelloMsg)
handshake_client.go:531
↓ 1 callers
Method
processClientHello
()
handshake_server.go:216
↓ 1 callers
Method
processClientKeyExchange
(*Config, *Certificate, *clientKeyExchangeMsg, uint16)
key_agreement.go:29
↓ 1 callers
Method
processECHClientHello
(outer *clientHelloMsg, echKeys []EncryptedClientHelloKey)
ech.go:582
↓ 1 callers
Method
processHelloRetryRequest
processHelloRetryRequest handles the HRR in hs.serverHello, modifies and resends hs.hello, and reads the new ServerHello into hs.serverHello.
handshake_client_tls13.go:235
↓ 1 callers
Method
processServerHello
()
handshake_client.go:882
↓ 1 callers
Method
processServerHello
()
handshake_client_tls13.go:416
↓ 1 callers
Method
processServerKeyExchange
On the client side, the next two methods are called in order. This method may not be called if the server doesn't send a ServerKeyExchange message.
key_agreement.go:35
↓ 1 callers
Function
publicKey
(priv any)
generate_cert.go:40
↓ 1 callers
Method
quicHandshakeComplete
()
quic.go:460
↓ 1 callers
Method
quicReadHandshakeBytes
(n int)
quic.go:376
↓ 1 callers
Method
quicStoreSession
(session *SessionState)
quic.go:432
↓ 1 callers
Method
quicWriteCryptoData
(level QUICEncryptionLevel, data []byte)
quic.go:403
↓ 1 callers
Method
readClientCertificate
()
handshake_server_tls13.go:1145
↓ 1 callers
Method
readServerCertificate
()
handshake_client_tls13.go:613
↓ 1 callers
Method
readServerFinished
()
handshake_client_tls13.go:705
↓ 1 callers
Method
readServerParameters
()
handshake_client_tls13.go:546
↓ 1 callers
Function
readUint64
readUint64 decodes a big-endian, 64-bit value into out and advances over it. It reports whether the read was successful.
handshake_messages.go:44
← previous
next →
201–300 of 457, ranked by callers