SplitPT implements traffic splitting for existing PTs supported by Tor.
SplitPT itself is a pluggble transport that acts as a shim between the client, hops, and server.
TODO
TODO
splitpt
License: Other
To summarize our discussion from yesterday, we'll need to open SOCKS connections to the spawned pluggable transport processes for each connection we want to split traffic over. These SOCKS connections will specify the destination address of the PT server (if it's the kind of PT where such a thing is relevant), and the per-connection arguments (that are usually provided in the Bridge
line of the torrc file when using the PT directly with Tor. The destination address is provided in the usual way, but the per-connection args are provided in the Username and Password authentication fields, as described in the relevant part of the Tor PT specification.
We are using the username and password fields in an unusual way, but it should be possible to use an existing socks5 client library. We use txthinking/socks5 in Snowflake, and the NewClient
function has a way to pass in the username and password strings. We just need to be careful with the following requirement from the PT spec:
If the encoded argument list is less than 255 bytes in length, the "PLEN" field must be set to "1"
and the "PASSWD" field must contain a single NUL character.
When creating the SOCKS connection, the SOCKS server address will be whatever port the PT client process is listening on for incoming connections, and the destination address will be the PT server address.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.