[tor-bugs] #20004 [Core Tor/Tor]: prop224: Add a trunnel subdirectory specifically for HS

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Aug 31 12:45:50 UTC 2016


#20004: prop224: Add a trunnel subdirectory specifically for HS
-----------------------------+------------------------------------
 Reporter:  dgoulet          |          Owner:  dgoulet
     Type:  enhancement      |         Status:  needs_revision
 Priority:  Medium           |      Milestone:  Tor: 0.2.9.x-final
Component:  Core Tor/Tor     |        Version:
 Severity:  Normal           |     Resolution:
 Keywords:  tor-hs, prop224  |  Actual Points:  0.5
Parent ID:  #17241           |         Points:  1
 Reviewer:                   |        Sponsor:  SponsorR-must
-----------------------------+------------------------------------
Changes (by asn):

 * status:  needs_review => needs_revision


Comment:

 I think that the trunnel files carry outdated definitions, or well there
 seems to be a disconnect between the generated code and the trunnel defs.

 Example trunnel def:
 {{{
 /* ESTABLISH_INTRO payload. See details in section 3.1.1 */
 struct hs_cell_establish_intro {
   /* Indicate the start of the handshake authentication data. */
   @ptr start_mac_data;

   /* Authentication key material. */
   u8 auth_key_type IN [0x00, 0x01, 0x02];
   u16 auth_key_len;
   u8 auth_key[auth_key_len];

   /* Extension(s). Reserved fields. */
   struct cell_extension extensions;

   /* Handshake type. Size of SHA3-256. */
   u8 handshake[32];

   /* Signature */
   u16 sig_len;
   /* Indicate the end of the handshake authentication data. */
   @ptr end_mac_data;
   u8 sig[sig_len];
 };
 }}}

 Generated code:
 {{{
 struct hs_cell_establish_intro_st {
   const uint8_t *start_mac_data;
   uint8_t auth_key_type;
   uint16_t auth_key_len;
   TRUNNEL_DYNARRAY_HEAD(, uint8_t) auth_key;
   struct cell_extension_st *extensions;
   uint8_t handshake_mac[SHA3_256_LEN];
   uint16_t sig_len;
   const uint8_t *end_mac_data;
   TRUNNEL_DYNARRAY_HEAD(, uint8_t) sig;
   uint8_t trunnel_error_code_;
 };
 }}}

 See how `handshake` is `handshake_mac` in the code.

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


More information about the tor-bugs mailing list