Metadata-Version: 2.4
Name: torscope
Version: 0.4.0
Summary: A tool for exploring the Tor network
Author-email: Mete Balci <metebalci@gmail.com>
License-Expression: GPL-3.0-or-later
Project-URL: Homepage, https://github.com/metebalci/torscope
Project-URL: Documentation, https://torscope.readthedocs.io
Project-URL: Repository, https://github.com/metebalci/torscope
Project-URL: Issues, https://github.com/metebalci/torscope/issues
Keywords: tor,onion,routing,privacy,anonymity,network,information,explore
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Security :: Cryptography
Classifier: Topic :: System :: Networking
Classifier: Topic :: Internet
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: httpx>=0.25.0
Requires-Dist: cryptography>=41.0.0
Requires-Dist: pynacl>=1.5.0
Provides-Extra: dev
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0; extra == "dev"
Requires-Dist: black>=23.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Requires-Dist: mypy>=1.0; extra == "dev"
Requires-Dist: zstandard>=0.22.0; extra == "dev"
Dynamic: license-file

# Overview

torscope is a tool for exploring the [Tor network](https://en.wikipedia.org/wiki/Tor_(network)).

It implements the Tor directory protocol and OR (Onion Router) protocol, allowing you to explore relay information, create circuits, and study the Tor specification in practice.

# Features

- **Directory Protocol**
  - List all Tor directory authorities and fallback directories
  - Fetch and parse network consensus documents
  - View detailed relay information and server descriptors
  - Fetch extra-info statistics for relays
  - Filter relays by flags (Guard, Exit, Fast, etc.)

- **OR Protocol**
  - Establish TLS connections to Tor relays
  - Perform link protocol handshake (VERSIONS, CERTS, AUTH_CHALLENGE, NETINFO)
  - Create circuits using the ntor handshake (Curve25519 key exchange)
  - Derive encryption keys for circuit communication

# Installation

```bash
pip install torscope
```

# Usage

## Example Onion Addresses

- torscope75efu4gls3m24xezterv7nhj36ibnjlrocqeslclwbxgs7yd.onion
- 2gzyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion
- duckduckgogg42xjoc72x3sjasowoarfbgcmvfimaftt6twagswzczad.onion
- dwnewsgngmhlplxy6o2twtfgjnrnjxbegbwqx6wnotdhkzt562tszfid.onion

# License

torscope Tor Network Exploration Tool

Copyright (C) 2025-2026 Mete Balci

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

# References

- [Tor Specification](https://spec.torproject.org/tor-spec/index.html)
- [Tor Directory Specification](https://spec.torproject.org/dir-spec/index.html)
