Â
TinyTor
A tiny Tor client implementation (in pure python).
This implementation is NOT FINISHED YET.
TinyTor can be used to communicate with onion services via Tor.
It may be used by developers as a python package or as a command line utility.
The goals are to have no dependencies, live in a single file and be as small as possible.
The current file size of TinyTor is only ~37KB (uncompressed).
Some warnings:
- TinyTor assumes OpenSSL is installed on the running machine (native on Linux/macOS)
- This project is not related to the official Tor Project
- For anything dependent on your privacy, please use the Tor Browser or Tails OS
How To Use
# Install TinyTor
$ sudo pip3 install tinytor
# Send a HTTP request over Tor
$ tinytor --host example.onion --verbose
From Source
# Download or clone this repository
$ git clone https://github.com/Marten4n6/TinyTor
# Go into the repository
$ cd TinyTor
# Send a HTTP request over Tor
$ python tinytor.py --host example.onion --verbose
For Developers
from tinytor import TinyTor
tor = TinyTor()
print(tor.http_get("example.onion"))
Motivation
TinyTor was created to communicate anonymously in EvilOSX.
compressed.py is used in EvilOSX, which compresses TinyTor to a much smaller size (about ~9KB).
Versioning
TinyTor will be maintained under the Semantic Versioning guidelines as much as possible.
Releases will be numbered with the follow format:
<major>.<minor>.<patch>
And constructed with the following guidelines:
- Breaking backward compatibility bumps the major
- New additions without breaking backward compatibility bumps the minor
- Bug fixes and misc changes bump the patch
For more information on SemVer, please visit https://semver.org/.
Support Tor
The Tor network relies on volunteers to donate bandwidth.
Please consider running a relay. You can help make the Tor network:
- faster (and therefore more usable)
- more robust against attacks
- more stable in case of outages
- safer for its users (spying on more relays is harder than on a few)
For more information on volunteering, please visit https://www.torproject.org/getinvolved/volunteer.html.
Issues
Feel free to submit any issues here.
References
- Tor Protocol Specification
- Tor: The Second-Generation Onion Router
- Mini-tor
- Pycepa
- Struct
- How Tor Works: Part 1, 2, 3
- Logo created by motusora