[tor-bugs] #17387 [Tor]: ExtraRelayDescriptorFields needs proposal number

Tor Bug Tracker & Wiki blackhole at torproject.org
Mon Nov 9 15:35:53 UTC 2015


#17387: ExtraRelayDescriptorFields needs proposal number
--------------------+---------------------
 Reporter:  virgil  |          Owner:
     Type:  task    |         Status:  new
 Priority:  Medium  |      Milestone:
Component:  Tor     |        Version:
 Severity:  Normal  |     Resolution:
 Keywords:          |  Actual Points:
Parent ID:          |         Points:
  Sponsor:          |
--------------------+---------------------

Comment (by virgil):

 Modified for clarity as well as feedback from isis.

 =====

 Filename: !ExtraRelayDescriptorFields.txt

 Title: Adding X-namespace to extra-info descriptor for !key:value pairs

 Author: Virgil Griffith

 Created: 2015-09-30

 Status: Open

 '''1. Motivation'''

 We wish to allow developers to build new applications atop relays. Towards

 this end, we wish to add the ability for users to specify arbitrary new

 key-value entries under the "X-" namespace to the extra-info descriptor.

 The canonical applications for this are adding a bitcoin donation address,

 networking of tor2web nodes, and display operator information on a

 Roster![1] page.

 '''2. Proposal'''

 Allow optional key-value lines in the relay's extra-info descriptor.
 These key-value pairs are specified in the relay's torrc file.

 The following would be added to section 2.1.2 of the dir-spec ![2] (extra-
 info document format):

 ========================================================

 "X-" !CustomKey SP !CustomValue NL

 !CustomKeyChar = "a"-"z" / "0" - "9" / "-" / "_"

 !CustomKey = 1*32 !CustomKeyChar

 !CustomValueChar = atext / specials

 !CustomValue = 1*1024 !CustomValueChar

 There can be multiple X-fields, for example...

 X-bitcoin 19mP9FKrXqL46Si58pHdhGKow88SUPy1V8

 X-gravatar !https://s.gravatar.com/avatar/d27fce46c9ac41a41bb52455ae75701d

 X-keybase !http://fncuwbiisyh6ak3i.onion/virgil

 X-favoritequote Be excellent to each other.  Party on dudes!

 X-foo bar

 The same !CustomKey appearing more than once is disallowed. Possible
 values for !CustomValueChar as specified per RFC 2822 sections 3.2.1 and
 3.2.4 ![3].

 The sum size accounting for all such custom fields is truncated to 5
 kilobytes.

 ========================================================

 To mitigate the chance of an unintentionally malformed torrc file, I
 additionally propose that the extra-info descriptor be parsed by the
 client and if it does not match the specification, tor exits with error
 that a malformed torrc file is the likely culprit.

 '''References'''

 ![1] !http://tor-roster.org

 ![2] !https://gitweb.torproject.org/torspec.git/tree/dir-spec.txt#n700

 ![3] !https://www.ietf.org/rfc/rfc2822.txt

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/17387#comment:1>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list