aboutsummaryrefslogtreecommitdiff
path: root/spec/tor-spec
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2023-11-09 16:25:38 +0000
committerNick Mathewson <nickm@torproject.org>2023-11-09 16:25:38 +0000
commit22f5b0ecdb9d21448e1a04ba2687b8f84d52724b (patch)
tree0b62f272469ed0bece8f854674aec9f37722d3af /spec/tor-spec
parenteab09d4a520b6d7d44fa73d120a5be889fdc9e51 (diff)
parent5063c0e80e4aeb62c47fe8eb406ed500431dae6e (diff)
downloadtorspec-22f5b0ecdb9d21448e1a04ba2687b8f84d52724b.tar.gz
torspec-22f5b0ecdb9d21448e1a04ba2687b8f84d52724b.zip
Merge branch 'preliminaries' into 'main'
Start an "introductions" sections with a "conventions" subsection to span all the specs See merge request tpo/core/torspec!217
Diffstat (limited to 'spec/tor-spec')
-rw-r--r--spec/tor-spec/index.md1
-rw-r--r--spec/tor-spec/opening-streams.md5
-rw-r--r--spec/tor-spec/preliminaries.md27
-rw-r--r--spec/tor-spec/system-overview.md10
4 files changed, 4 insertions, 39 deletions
diff --git a/spec/tor-spec/index.md b/spec/tor-spec/index.md
index a81e1b9..219ea1d 100644
--- a/spec/tor-spec/index.md
+++ b/spec/tor-spec/index.md
@@ -9,3 +9,4 @@ Tor as they become obsolete.
This specification is not a design document; most design criteria
are not examined. For more information on why Tor acts as it does,
see tor-design.pdf.
+
diff --git a/spec/tor-spec/opening-streams.md b/spec/tor-spec/opening-streams.md
index d59e26b..757f776 100644
--- a/spec/tor-spec/opening-streams.md
+++ b/spec/tor-spec/opening-streams.md
@@ -26,8 +26,9 @@ fingerprinting. Implementations MUST accept strings in any case.
The FLAGS value has one or more of the following bits set, where
"bit 1" is the LSB of the 32-bit value, and "bit 32" is the MSB.
-(Remember that all values in Tor are big-endian (see
-["Preliminaries ยป Encoding integers"](./preliminaries.md#encoding)), so
+(Remember that
+[all integers in Tor are big-endian](../intro/conventions.md),
+so
the MSB of a 4-byte value is the MSB of the first byte, and the LSB
of a 4-byte value is the LSB of its last byte.)
diff --git a/spec/tor-spec/preliminaries.md b/spec/tor-spec/preliminaries.md
index 8cc92b7..78e6e80 100644
--- a/spec/tor-spec/preliminaries.md
+++ b/spec/tor-spec/preliminaries.md
@@ -2,13 +2,6 @@
# Preliminaries
-```text
- The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
- NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
- "OPTIONAL" in this document are to be interpreted as described in
- RFC 2119.
-```
-
<a id="tor-spec.txt-0.1"></a>
## Notation and encoding{#notation-and-encoding}
@@ -19,30 +12,10 @@
K -- a key for a symmetric cipher.
N -- a "nonce", a random value, usually deterministically chosen
from other inputs using hashing.
-
- a|b -- concatenation of 'a' and 'b'.
```
-\[A0 B1 C2\] -- a three-byte sequence, containing the bytes with
-hexadecimal values A0, B1, and C2, in that order.
-
H(m) -- a cryptographic hash of m.
-We use "byte" and "octet" interchangeably. Possibly we shouldn't.
-
-Some specs mention "base32". This means RFC4648, without "=" padding.
-
-<a id="tor-spec.txt-0.1.1"></a>
-
-### Encoding integers{#encoding}
-
-Unless we explicitly say otherwise below, all numeric values in the
-Tor protocol are encoded in network (big-endian) order. So a "32-bit
-integer" means a big-endian 32-bit integer; a "2-byte" integer means
-a big-endian 16-bit integer, and so forth.
-
-<a id="tor-spec.txt-0.2"></a>
-
## Security parameters
Tor uses a stream cipher, a public-key cipher, the Diffie-Hellman
diff --git a/spec/tor-spec/system-overview.md b/spec/tor-spec/system-overview.md
deleted file mode 100644
index 17cc1a4..0000000
--- a/spec/tor-spec/system-overview.md
+++ /dev/null
@@ -1,10 +0,0 @@
-<a id="tor-spec.txt-1"></a>
-
-# System overview
-
-Tor is a distributed overlay network designed to anonymize
-low-latency TCP-based applications such as web browsing, secure shell,
-and instant messaging. Clients choose a path through the network and
-build a `circuit'', in which each node (or`onion router'' or `OR'') in the path knows its predecessor and successor, but no other nodes in the circuit. Traffic flowing down the circuit is sent in fixed-size `cells'', which are unwrapped by a symmetric key at each node (like
-the layers of an onion) and relayed downstream.
-