Opened 8 months ago

Closed 8 months ago

#25171 closed defect (fixed)

Clarify 'recognized' field in tor-spec

Reported by: atagar Owned by:
Priority: Very Low Milestone: Tor: 0.3.3.x-final
Component: Core Tor/Tor Version:
Severity: Trivial Keywords: tor-spec, doc, review-group-32
Cc: Actual Points:
Parent ID: Points:
Reviewer: nickm Sponsor:

Description

Our tor-spec left me pretty mystified what the 'recognized' field actually was. It discussed what to do when it was zero, but not what the field *was* or what non-zero meant. Thankfully Roger filled me in over tasty, tasty pizza.

Patch available in the 'recognized' branch of my repo...

https://gitweb.torproject.org/user/atagar/torspec.git/commit/?h=recognized

Child Tickets

Change History (7)

comment:1 Changed 8 months ago by atagar

Status: newneeds_review

comment:2 Changed 8 months ago by nickm

Milestone: Tor: 0.3.3.x-final

comment:3 Changed 8 months ago by teor

Keywords: tor-spec doc added
Status: needs_reviewneeds_revision

As Roger said on IRC: recognised is very likely zero if the cell is decrypted and destined for this hop. But there is a 1 in 2^32 chance of zero even if the cell is not destined for this hop.

comment:4 Changed 8 months ago by atagar

Status: needs_revisionneeds_review

Thanks, good point. Changed it to a 'MAY' clause with an explanation for why.

comment:5 Changed 8 months ago by nickm

Keywords: review-group-32 added

comment:6 Changed 8 months ago by nickm

Reviewer: nickm

comment:7 Changed 8 months ago by nickm

Resolution: fixed
Status: needs_reviewclosed

Thanks, atagar! I think this is as improvement over the existing spec.

I've merged it, and made a couple of small tweaks in ef91cd6a595128. The main one is that I don't think MAY is right here either: as I read RFC 2119, "MAY "is for things that implementations are allowed to do, not for circumstances that will periodically occur.

I've gone with this tweak on your wording:

+   When receiving and decrypting cells the 'recognized' will always be
+   zero if we're the endpoint that the cell is destined for.  For cells
+   that we should relay, the 'recognized' field will usually be nonzero,
+   but will accidentally be zero with P=2^-32.

Thanks again for the spec fix!

Note: See TracTickets for help on using tickets.