• Stars
    star
    212
  • Rank 186,122 (Top 4 %)
  • Language
    Python
  • Created over 11 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/ -- discuss proposals on [email protected]

Tor specifications

This repository holds the specifications that describe how Tor works. They try to present Tor's protocols in sufficient detail to allow the reader to implement a compatible implementation of Tor without ever having to read the Tor source code.

The proposals directory holds our design proposals. These include historical documents that have now been merged into the main specifications. For more information on the proposal process, including an explanation of how to make new proposals, see 001-process.txt.

What you can find here

Tor's specification is pretty big, and we've broken it into a bunch of files.

  • General interest
    • tor-spec.txt contains the specification for the core Tor protocol itself; this is a good place to start reading.
    • cert-spec.txt describes a certificate format used in the other parts of the protocol.
    • dir-spec.txt specifies the operations and formats used to maintain a view of the network directory.
    • padding-spec.txt describes a set of padding mechanisms used to impede traffic analysis.
    • version-spec.txt explains how to parse Tor version numbers.
    • glossary.txt is a glossary of terms used in the other specifications.
  • Client operations
    • address-spec.txt lists a set of special addresses that Tor handles differently from the regular DNS system.
    • guard-spec.txt explains the "guard node" algorithm that Tor clients use to avoid sampling attacks.
    • path-spec.txt explains how clients choose their paths through the Tor network.
    • socks-extensions specifies Tor-specific extensions to the SOCKS protocol.
  • Onion services
  • Censorship resistance
    • bridgedb-spec.txt explains how the bridgedb server gives out bridges to censored clients.
    • gettor-spec.txt describes the gettor tool, which is used to download Tor in censored areas.
    • pt-spec.txt describes the protocol that Tor clients and relays use to communicate with pluggable transports used for traffic obfuscation.
  • Directory authorities
    • bandwidth-file-spec.txt specifies the file format used by bandwidth-measuring tools to report their observations to directory authorities.
    • srv-spec.txt specifies the protocol that directory authorities use to securely compute shared random values for the network.
  • Controller protocol
    • control-spec.txt explains the protocol used by controllers to communicate with a running Tor process.
  • Miscellaneous
    • dir-list-spec.txt explains the format used by tools like the fallback directory scripts to output a list of Tor directories for inclusion in the Tor source code.
    • The attic directory has obsolete or historical documents.

More Repositories

1

tor

unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/ --
4,271
star
2

torbrowser-launcher

Securely and easily download, verify, install, and launch Tor Browser in Linux. This repository is a mirror of https://gitlab.torproject.org/tpo/applications/torbrowser-launcher
Python
779
star
3

stem

Python controller library for Tor
Python
247
star
4

onionbalance

Onionbalance -- mirror of https://gitlab.torproject.org/tpo/onion-services/onionbalance/ -- please create issues and pull requests there
Python
138
star
5

nyx

Command-line monitor for Tor.
Python
109
star
6

torbrowser-releases

It is used for distributiong tor browser releases through GetTor - Updated July 2022
63
star
7

chutney

unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/ --
Python
53
star
8

manual

Tor Browser User Manual
HTML
39
star
9

community

Tor community website
JavaScript
29
star
10

support

HTML
22
star
11

tpo

torproject.org
HTML
22
star
12

sbws

Unofficial clone of gitweb.torproject.org. Report issues and open merge requests at: https://gitlab.torproject.org/tpo/network-health/sbws/
Python
17
star
13

lego

building blocks for tor project websites
JavaScript
11
star
14

gettor

GetTor was created as a program for serving Tor and related files over SMTP, thus avoiding direct and indirect _censorship_ of Tor's software, in particular, the Tor Browser Bundle (TBB).
Python
8
star
15

onionoo

unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/ --
Java
6
star
16

privacy-docs

Tor Docs for the Private Web
4
star
17

newsletter

HTML
4
star
18

jtorctl

Tor controller, written in Java
Java
4
star
19

styleguide

HTML
3
star
20

exonerator

unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/ --
Java
3
star
21

dev

Tor dev website
SCSS
3
star
22

metrics-web

unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/ --
Java
3
star
23

research-web

unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/ --
HTML
3
star
24

template

Lektor website template
HTML
2
star
25

metrics-lib

unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/ --
Java
2
star
26

webwml

CSS
2
star
27

icons

1
star
28

doctor

unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/tpo/network-health/doctor
Python
1
star
29

metrics-base

unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/ --
CSS
1
star
30

.github

The GitHub config repository for https://github.com/torproject
1
star
31

fallback-scripts

unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/ -- https://gitweb.torproject.org/fallback-scripts.git
Python
1
star