[tor-bugs] #18875 [Metrics/metrics-lib]: Consider replacing RelayNetworkStatusVote's getDirectorySignatures() with getDirectorySignature()

Tor Bug Tracker & Wiki blackhole at torproject.org
Fri Apr 22 15:47:49 UTC 2016


#18875: Consider replacing RelayNetworkStatusVote's getDirectorySignatures() with
getDirectorySignature()
-------------------------------------+---------------------
     Reporter:  karsten              |      Owner:  karsten
         Type:  enhancement          |     Status:  new
     Priority:  Medium               |  Milestone:
    Component:  Metrics/metrics-lib  |    Version:
     Severity:  Normal               |   Keywords:
Actual Points:                       |  Parent ID:
       Points:                       |   Reviewer:
      Sponsor:                       |
-------------------------------------+---------------------
 (nickm, there's a dir-spec-related question below that you might have an
 answer to.)

 dir-spec.txt says:

 {{{
    The signature contains the following item, which appears Exactly Once
    for a vote, and At Least Once for a consensus.

     "directory-signature" [SP Algorithm] SP identity SP signing-key-digest
         NL Signature
 }}}

 Is that still true, or can there be multiple such lines for different
 algorithms?

 Assuming this is still true, the following method that we're providing in
 `RelayNetworkStatusVote` is confusing:

 {{{
 /* Return directory signatures. */
 public SortedMap<String, DirectorySignature> getDirectorySignatures();
 }}}

 It's confusing to return a map of directory signatures when there can only
 be one such signature.  We should instead make sure that there's exactly
 one such signature and then return it in a new method:

 {{{
 /* Return directory signature. */
 public DirectorySignature getDirectorySignature();
 }}}

 We should also deprecate the existing method and suggest to use the new
 method instead.

 But let's first find out whether there can really only be one signature
 per vote.  And if there can be multiple signatures for different digest
 algorithms, we might have to think harder how to provide that in a method.

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


More information about the tor-bugs mailing list