Add support for acting as a ScrambleSuit client.
This allows obfs4proxy to be used as a ScrambleSuit client that is wire compatible with the obfs4proxy implementation, including session ticket support, and length obfuscation. The current implementation has the following limitations: * IAT obfuscation is not supported (and is disabled in all other ScrambleSuit implementations by default). * The length distribution and probabilites are different from those generated by obfsproxy and obfsclient due to a different DRBG. * Server support is missing and is unlikely to be implemented.
Showing
- ChangeLog 1 addition, 0 deletionsChangeLog
- README.md 3 additions, 0 deletionsREADME.md
- common/probdist/weighted_dist.go 25 additions, 0 deletionscommon/probdist/weighted_dist.go
- doc/obfs4proxy.1 3 additions, 2 deletionsdoc/obfs4proxy.1
- transports/scramblesuit/base.go 88 additions, 0 deletionstransports/scramblesuit/base.go
- transports/scramblesuit/conn.go 521 additions, 0 deletionstransports/scramblesuit/conn.go
- transports/scramblesuit/handshake_ticket.go 228 additions, 0 deletionstransports/scramblesuit/handshake_ticket.go
- transports/scramblesuit/handshake_uniformdh.go 174 additions, 0 deletionstransports/scramblesuit/handshake_uniformdh.go
- transports/scramblesuit/hkdf_expand.go 67 additions, 0 deletionstransports/scramblesuit/hkdf_expand.go
- transports/transports.go 2 additions, 0 deletionstransports/transports.go
Loading
Please register or sign in to comment