[tor-commits] [torspec/master] prop224: Clarify backwards compatibility sections slightly.

asn at torproject.org asn at torproject.org
Sat Apr 9 11:15:20 UTC 2016


commit dd7933d8158cefff2ecf0e325b21ac22aed49978
Author: George Kadianakis <desnacked at riseup.net>
Date:   Fri Apr 8 19:15:34 2016 +0300

    prop224: Clarify backwards compatibility sections slightly.
---
 proposals/224-rend-spec-ng.txt | 33 +++++++++++++++++----------------
 1 file changed, 17 insertions(+), 16 deletions(-)

diff --git a/proposals/224-rend-spec-ng.txt b/proposals/224-rend-spec-ng.txt
index 51d6ea4..b3a567c 100644
--- a/proposals/224-rend-spec-ng.txt
+++ b/proposals/224-rend-spec-ng.txt
@@ -1151,7 +1151,8 @@ Status: Draft
 
    The KEY_LEN variable determines the length of the KEY field.
 
-   The KEY field is a ASN1-encoded RSA public key.
+   The KEY field is the ASN1-encoded legacy RSA public key that was also
+   included in the hidden service descriptor.
 
    The HANDSHAKE_AUTH field contains the SHA1 digest of (KH | "INTRODUCE").
 
@@ -1323,24 +1324,24 @@ Status: Draft
 
 3.2.3. Legacy formats [LEGACY-INTRODUCE1]
 
-   When the ESTABLISH_INTRO cell format of [LEGACY_EST_INTRO] is used,
-   INTRODUCE1 cells are of the form:
+   If a hidden service has listed a legacy introduction point in its
+   descriptor, INTRODUCE1 cells should be of the form:
 
-     AUTH_KEYID_HASH  [20 bytes]
-     ENC_KEYID        [8 bytes]
-
-       EXT_FIELD_TYPE [1 byte]
-       EXT_FIELD_LEN  [1 byte]
-       EXT_FIELD      [EXT_FIELD_LEN bytes]
-
-     ENCRYPTED        [Up to end of relay payload]
+     LEGACY_KEYID_HASH    [20 bytes]
+     ENC_KEYID            [8 bytes]
+     N_EXTENSIONS         [1 byte]
+     N_EXTENSIONS times:
+       EXT_FIELD_TYPE     [1 byte]
+       EXT_FIELD_LEN      [1 byte]
+       EXT_FIELD          [EXT_FIELD_LEN bytes]
+     ENCRYPTED            [Up to end of relay payload]
 
-   Here, AUTH_KEYID_HASH is the hash of the introduction point
-   authentication key used to establish the introduction.
+   Here, LEGACY_KEYID_HASH is the hash of the introduction point legacy
+   encryption key that was included in the hidden service descriptor.
 
-   Because of limitations in older versions of Tor, the relay payload
-   size for these INTRODUCE1 cells must always be at least 246 bytes, or
-   they will be rejected as invalid.
+   Because of limitations in older versions of Tor, the relay payload size for
+   these INTRODUCE1 cells must always be at least 246 bytes, or they will be
+   rejected as invalid. [TODO: Do we need to pad with something?]
 
 3.3. Processing an INTRODUCE2 cell at the hidden service. [PROCESS_INTRO2]
 





More information about the tor-commits mailing list