Documentation ¶
Index ¶
- Constants
- Variables
- func GetGlobalFingerprint() string
- func GetRealityConn(ctx context.Context, conn net.Conn, ClientFingerprint string, ...) (net.Conn, error)
- func HaveGlobalFingerprint() bool
- func SetGlobalUtlsClient(Client string)
- func UClient(c net.Conn, config *tls.Config, fingerprint UClientHelloID) net.Conn
- type RealityConfig
- type UClientHelloID
- type UConn
Constants ¶
View Source
const RealityMaxShortIDLen = 8
Variables ¶
View Source
var Fingerprints = map[string]UClientHelloID{ "chrome": {&utls.HelloChrome_Auto}, "firefox": {&utls.HelloFirefox_Auto}, "safari": {&utls.HelloSafari_Auto}, "ios": {&utls.HelloIOS_Auto}, "android": {&utls.HelloAndroid_11_OkHttp}, "edge": {&utls.HelloEdge_Auto}, "360": {&utls.Hello360_Auto}, "qq": {&utls.HelloQQ_Auto}, "random": {nil}, "randomized": {nil}, }
Functions ¶
func GetGlobalFingerprint ¶
func GetGlobalFingerprint() string
func GetRealityConn ¶
func HaveGlobalFingerprint ¶
func HaveGlobalFingerprint() bool
func SetGlobalUtlsClient ¶
func SetGlobalUtlsClient(Client string)
Types ¶
type RealityConfig ¶
type RealityConfig struct { PublicKey [curve25519.ScalarSize]byte ShortID [RealityMaxShortIDLen]byte }
type UClientHelloID ¶
type UClientHelloID struct {
*utls.ClientHelloID
}
func GetFingerprint ¶
func GetFingerprint(ClientFingerprint string) (UClientHelloID, bool)
func RollFingerprint ¶
func RollFingerprint() (UClientHelloID, bool)
type UConn ¶
func (*UConn) BuildWebsocketHandshakeState ¶
BuildWebsocketHandshakeState it will only send http/1.1 in its ALPN. Copy from https://github.com/XTLS/Xray-core/blob/main/transport/internet/tls/tls.go
Click to show internal directories.
Click to hide internal directories.