ShadowsocksR(SSR) for Go library
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is even with sun8911879:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
example
obfs
protocol
ssr
tools
.gitignore
LICENSE
README.md
client.go
encrypt.go
encrypt_test.go
tcp.go

README.md

shadowsocksR

shadowsocksR is a shadowsocksR for Go library

  • shadowsocksR is based on avege and shadowsocksR for Python changes.
  • Repair avege SSR communication BUG and streamline version. Is a normal use version.

Use

bi := &BackendInfo{
	Address: "www.domain.com:445",
	Type:    "ssr",
	SSInfo: SSInfo{
		EncryptMethod:   "aes-128-cfb",
		EncryptPassword: "password",
		SSRInfo: SSRInfo{
			Protocol:      "auth_aes128_sha1",
			ProtocolParam: "",
			Obfs:          "tls1.2_ticket_auth",
			ObfsParam:     "",
		},
	},
}
dst, err := bi.DialSSRConn(rawaddr)
bi.Pipe(src, dst)
bi.Pipe(dst, src)

See 'example/client.go' for detailed usage.

SS Encrypting algorithm

  • aes-128-cfb
  • aes-192-cfb
  • aes-256-cfb
  • aes-128-ctr
  • aes-192-ctr
  • aes-256-ctr
  • aes-128-ofb
  • aes-192-ofb
  • aes-256-ofb
  • des-cfb
  • bf-cfb
  • cast5-cfb
  • rc4-md5
  • chacha20
  • chacha20-ietf
  • salsa20
  • camellia-128-cfb
  • camellia-192-cfb
  • camellia-256-cfb
  • idea-cfb
  • rc2-cfb
  • seed-cfb

SSR Obfs

  • plain
  • http_simple
  • http_post
  • random_head
  • tls1.2_ticket_auth

SSR Protocol

  • origin
  • verify_sha1 aka. one time auth(OTA)
  • auth_sha1_v4
  • auth_aes128_md5
  • auth_aes128_sha1

Todo (help wanted)

  • Optimize performance

Thanks avege project

Reference