Commit Graph

34 Commits

Author SHA1 Message Date
Nick Mathewson
fa940c0d9e Be explicit about EXT_FIELD_LEN=0 2022-02-17 16:16:15 -05:00
Nick Mathewson
176c9001f9 ntor3, rend3: clarify extension field defaults.
These patch changes describe new default behaviors for extension
field lists, as appear in ntor3 and in many places throughout the
ntor3 protocol.  In general:

* Unrecognized extensions MUST be ignored.

Additionally, all the following rules apply _unless otherwise stated
in the documentation for an extension.

* Extensions are sent in sorted order.
* Extensions should only be sent once in a message
* If you receive multiple copies of an extension, only the first
  one counts.

This comes out of discussions on tor!525.
2022-02-17 10:53:20 -05:00
Dimitris Apostolou
29245fd50d Fix typos and cleanup 2021-10-25 16:35:13 -04:00
Roger Dingledine
1850a1ebe7 fix some logic errors and typos in specs+proposals 2021-06-23 04:35:49 -04:00
David Goulet
29ea94a5cf rend-spec-v3: Fix typo, HSDirV3 never existed
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-10-27 08:38:36 -04:00
Roger Dingledine
a906568198 fix three small typos in the specs 2020-08-09 00:31:19 -04:00
George Kadianakis
0bfbfadc15 rend-spec-v3.txt: Various spec fixes from OBv3 development.
- "auth-client" is actually a mandatory field right now.

- The intro point cross-certificates are the other way around (#29853)

- The descriptor MAC includes the salt_len and it's not the
  standard v3 MAC format.
2020-03-04 19:34:19 +02:00
Hans-Christoph Steiner
9c86f54ba0 convert text blocks into widely compatible "blockquote" syntax
This only adds newline characters to make the existing text blocks act like
"blockquote" or "code block" syntax in Markdown, asciidoc, and others.
This was accomplished by manually reviewing the output of this script:

```bash
for f in *.txt; do
  cat $f | python -c "import sys,re;print(re.sub(r'(\n {0,3}[^ \n][^\n]*\n)( {4,}[^\n]*)', r'\1\n\2', sys.stdin.read()))" > ${f}.tmp
  mv ${f}.tmp $f
done
```
2019-12-10 16:06:53 +01:00
George Kadianakis
2b47d247b3 Merge remote-tracking branch 'dgoulet/ticket32617_01' 2019-12-02 12:46:27 +02:00
David Goulet
29a110faae rend-spec-v3.txt: Merge prop305 in it
Signed-off-by: David Goulet <dgoulet@torproject.org>
2019-11-26 15:11:38 -05:00
Hans-Christoph Steiner
c15cc8a5a8 standardize whitespace in the titles
This is one small step towards making these a standard, parsable format.
2019-11-26 20:29:12 +01:00
David Goulet
c869fe8485 rend-spec-v3: Update client authorization implementation date
Signed-off-by: David Goulet <dgoulet@torproject.org>
2019-10-15 09:28:43 -04:00
teor
87698dc1c0
rend-v3: Tor supports IPv4 and IPv6 link specifiers as of 0.4.1.1-alpha
Spec for #23588.
2019-08-23 15:45:49 +10:00
teor
f29d225040
rend-v3: single onion services retry intro and rend with 3-hop paths
Spec for 23507 and 23818.
2019-08-23 15:27:38 +10:00
Nick Mathewson
4a3c3584d4 Merge branch 'ope_spec2' 2019-02-15 07:02:11 -05:00
Nick Mathewson
85e8d6e829 Appendix to rend-spec.txt about how to generate revision counters 2019-02-15 07:02:05 -05:00
George Kadianakis
c2cce301d8 HSv3: Actually do base32 in the client auth pubkey example.
Pointed out by Jean Chevalier.
2018-10-17 14:45:29 +03:00
George Kadianakis
2fdec5ae05 HSv3: Include HS public identity key to the client auth KDF. 2018-09-06 15:35:38 +03:00
George Kadianakis
7b66ac6d80 rend-v3: More improvements to the client auth section.
- Add file extension to the client auth files.
- Better specify suggested client auth file format.
- Suggest better client auth logic for client and service side.
2018-08-14 14:20:45 +03:00
David Goulet
d0d151989f rend-v3: Specify the client authorization file format
Signed-off-by: David Goulet <dgoulet@torproject.org>
2018-08-14 14:20:45 +03:00
George Kadianakis
b7a2685507 rend-v3: Switch to single-file-per-client client auth UX. 2018-08-14 14:20:45 +03:00
Roger Dingledine
c95c1bb1ed fix a typo twice 2018-08-06 15:54:27 -04:00
teor
5491f3fc07
Add a missing " 2018-07-25 15:39:00 +10:00
teor
cd6058ed8e
rend-spec-v3: harmonise client and service link specifiers in EXTENDs
Closes bug 26925.
2018-07-25 15:37:57 +10:00
George Kadianakis
ed29ac2054 rend-spec-v3.txt: Clarify role of first layer desc encryption.
It's meant to protect against entities that don't know the identity public
key (aka the onion address).

Closes #26379. Pointed out by Steven Murdoch.
2018-06-23 18:17:43 -05:00
David Goulet
4d0d42fa44 rend-spec-v3: Descriptor maximum lifetime is 12h
Specification had 50 hours but the code is using 12 hours. I could only find
commit dacf568f5e that added that 50 hours
value without much explanation.

Since tor stable is currently using 12 hours, change the spec for now and
we'll make future changes if necessary as long as the code matches the spec.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2018-05-01 15:19:44 -04:00
George Kadianakis
7ad2fff7ef Fix inconsistencies on HS v3 spec and cert-spec.txt.
Pointed out by inkylatenoth in:
https://lists.torproject.org/pipermail/tor-dev/2017-October/012527.html

Fixes ticket #24544.
2018-04-13 15:12:36 +03:00
Nick Mathewson
10d5417f9d Merge remote-tracking branch 'filippo/master' 2018-04-02 19:12:25 -04:00
Nick Mathewson
405e77f109 document hsdir_spread_store default change 2017-12-20 10:01:37 -05:00
Filippo Valsorda
ae8d5de13b dir-spec, rend-spec-v3: typos and simplifications 2017-11-17 15:22:17 -05:00
Filippo Valsorda
42e31d525b rend-spec-v3: add details to blinding implementation (A.2.)
In particular, document how to derive the second half of the private key.
2017-11-17 15:19:45 -05:00
Filippo Valsorda
73f2643747 rend-spec-v3: document trailing zero byte in BLIND_STRING (A.2.)
The implementation uses sizeof instead of strlen, so the C string NUL byte is hashed.
2017-11-17 15:18:57 -05:00
Nick Mathewson
72993063dc Mark unimplemented parts of rend-spec-v3 2017-09-19 14:39:55 -04:00
Nick Mathewson
471af27b55 Create rend-spec-v3.txt based on proposal 224 2017-09-19 14:33:33 -04:00