aboutsummaryrefslogtreecommitdiff
path: root/tor-spec.txt
AgeCommit message (Collapse)Author
2023-02-08Merge remote-tracking branches 'tor-gitlab/mr/114' and 'tor-gitlab/mr/115'Nick Mathewson
2023-02-07Rename three keys.Nick Mathewson
These names are slightly shorter and a bit more descriptive IMO, and now (when they are still fresh) is the best time to rename these keys. `hs_intro_tid` becomes `hs_ipt_sid`: It is a _session identifier_ key used with an _introduction point_. Using `ipt` here emphasizes that it is not part of the introduction _handshake_. `hs_intro_ntor` becomes `hss_ntor`. The extra "s" means it is owned by the service. Renaming "intro" here removes the implication that it is held by or used by the introduction point. `onion_ntor` becomes `ntor`: There is no such thing as an ntor key that is not an onion key.
2023-02-06Put HTYPE (the name for this thing) in the title for the tableIan Jackson
2023-01-19tor-spec: Change KP to KP throughoutIan Jackson
Emacs's idea of s/\bPK\b/KP/
2023-01-19tor-spec: Clarifiy KP/KS in definition sectionIan Jackson
2023-01-19tor-spec: Change PK/SK to KP/KS in definition sectionIan Jackson
2023-01-19Rename onion keys back to K*_onion_ntorIan Jackson
As per review comments
2023-01-19Document that keypairs should not double up roles, with exampleIan Jackson
2023-01-19Use _ed rather than _ntor for ed25519 keysIan Jackson
Even the ones that are actually ntor. Perhaps that's wrong and those should be ntor? Personally I like it this way.
2023-01-19Uwe formal notation for credential and subcredentialIan Jackson
In particular, give these formal names which contain "hs" (since they are part of the hidden service protocol, and not any other kind of authentication or authorisation scheme), and "N" to indicate that they are hash-generated nonces, not passwords. Change the references in the formulae, which it really seems to me ought to refer to the formal names.
2023-01-19Introduce names for the principal relay keysIan Jackson
2023-01-11Merge branch 'tor-gitlab/mr/81'David Goulet
2023-01-11Tweak dgoulet's explanation of TRUNCATE and DESTROY.Nick Mathewson
2023-01-10Merge branch 'tor-gitlab/mr/92'David Goulet
2022-12-22tor-spec: fix ambitious formulation in VERSIONSEmil Engler
This commit fixes an ambitious formulation within the definition of the VERSIONS cells. It says, that a VERSIONS cell with an odd number of bytes is invalid. This statement is not true, because the CircID (2 bytes for VERSIONS cells), Command (1 byte) and Length (2 byte) make up 5 bytes, which is an odd number. Adding an odd number to an even number of bytes (the payload in this case) always results in an odd number.
2022-12-15prop329: Remove unused section and use relay command 19..22David Goulet
As per review from nickm in https://gitlab.torproject.org/tpo/core/torspec/-/merge_requests/95 Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-12-09prop329: Changes after research and discussionsDavid Goulet
Series of change after discussin with mikeperry the proposal in depth. Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-10-24tor-spec: Fix line exceeding 80 charactersEmil Engler
This commit inserts a line break in order to fix the only line exceeding 80 characters in this document.
2022-08-18tor-spec: TRUNCATED cell are not sent anymoreDavid Goulet
In addition, this commit also changes the spec so no destroy reasons (error code) are propagated down or up the circuit in order to mitigate potential side channel risks. See https://gitlab.torproject.org/tpo/core/tor/-/issues/40649 for more details on why. Related to tor/#40623 Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-08-11Specify the actual relay cmd values for XON and XOFF.Nick Mathewson
As far as I can tell, we had not previously said that 43 was "XON" and 44 was "XOFF".
2022-05-31tor-spec: Reserve relay command and protover for prop339David Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-05tor-spec: Add relay command values of flow control cellsDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-04tor-spec: Add FlowCtrl=2 for congestion controlDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-04tor-spec: Add Relay=4, ntorv3 handshake supportDavid Goulet
See proposal 332 for more details. Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-11-08tor-spec: Complement and fix the protover timelineDavid Goulet
Relays started advertising Relay=3 in 0.4.5.1-alpha, see core/tor commit e787e521af9. Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-10-25Fix typos and cleanupDimitris Apostolou
2021-10-15Start writing a specification for DoS defense mechanism.Nick Mathewson
2021-09-22tor-spec: Add 'Table of contents'Oleh Franchuk
2021-08-16spec change cleanupRoger Dingledine
(hopefully i picked the right fix :)
2021-08-16Clarify handling of dubious RELAY_END cell formats.Nick Mathewson
2021-08-16Specify case in BEGIN messages.Nick Mathewson
2021-08-16Clarify: clients do not report their timestamp.Nick Mathewson
2021-08-16Clarify behavior on bad address length in NETINFONick Mathewson
2021-08-16Clarify behavior on out-of-bounds link padding parameters.Nick Mathewson
2021-05-27Document behavior on multiple TLS-over-TCP linkspecsNick Mathewson
2021-05-13Document current circid selection behaviorNick Mathewson
2021-03-03Describe handling of END cells and half-open streams.Nick Mathewson
Originally designed in tor#25573 as part of a defense for the DropMark attack by Rochet and Pereira. Closes torspec#33.
2020-09-17Describe the actual RELAY cell padding algorithm that we use.Nick Mathewson
For indistinguishability, other implementations should pad the same way that we do.
2020-09-17tor-spec: describe the order in which we put link specifiers.Nick Mathewson
Right now, tor encodes them in a certain order; specifying that order can help other implementations be indistinguishable.
2020-09-17tor-spec: describe END cell format better.Nick Mathewson
2020-07-06Document relay commands for circpad cells.Mike Perry
2020-06-26Add a sentence about how the digest is calculated; closes tor#32830Nick Mathewson
2020-06-24Remove a very obsolete note about compatibility notesNick Mathewson
2020-06-17Rename a circuit end reason.Nick Mathewson
OR_CONN_CLOSED has been CHANNEL_CLOSED since 0.2.4.4-alpha.
2020-05-18tor-spec: Add Relay=3 protocol versionteor
With minor edits from the draft in proposal 311. Closes ticket 33227.
2020-04-28tor-spec: Do the same extend checks as torteor
Update the extend checks to match tor's implementation, particularly the comments in channel_tls_matches_target_method().
2020-04-28tor-spec: Explain the truncated reason betterteor
It's the payload of a DESTROY cell, but the data of a RELAY_TRUNCATED cell.
2020-04-28tor-spec: Extends accept all-zero ed25519 keysteor
The spec gives conficting advice about all-zero ed25519 keys in extends. Resolve this conflict by documenting tor's current behaviour. Also move a sentence about circuit IDs, so it's closer to the associated paragraph.
2019-12-10convert text blocks into widely compatible "blockquote" syntaxHans-Christoph Steiner
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-02Merge remote-tracking branch 'dgoulet/ticket32617_01'George Kadianakis