[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [tor-bugs] #20657 [Core Tor/Tor]: prop224: Implement service support.



#20657: prop224: Implement service support.
-----------------------------+------------------------------------
 Reporter:  dgoulet          |          Owner:
     Type:  enhancement      |         Status:  new
 Priority:  Medium           |      Milestone:  Tor: 0.3.1.x-final
Component:  Core Tor/Tor     |        Version:
 Severity:  Normal           |     Resolution:
 Keywords:  tor-hs, prop224  |  Actual Points:
Parent ID:  #12424           |         Points:  parent
 Reviewer:                   |        Sponsor:  SponsorR-must
-----------------------------+------------------------------------

Comment (by asn):

 Hey David, I noticed what you said on IRC about the hash function only
 taking `token` as input and not the `token_type`. I think you are right on
 this. However, I think this does not influence the correctness of the hash
 table, since the hashing function is not collision resistant anyway (its
 output is only 4 bytes), so collisions are hanlded by putting the
 colliding elements in the same bucket and then running the equality
 function on the whole bucket. This means that if an HS is also a relay and
 it receives a double token, the hash table code will put both tokens in
 the same bucket and then it will filter the right one using
 `hs_circuits_have_same_token()`. I expanded the unittests as well to check
 this case.

 BTW, if we want to fix this in a deeper manner, we could expand
 `hs_circuit_hash_token()` by making it hash the token_type as well. I
 decided to not do this because I would have to do it with malloc and
 memcpy, and I thought it's too much of a hassle since the function is not
 really collision resistant in the first place.

 Let me know if you think the above is wrong. I don't mind doing the
 changes to `hs_circuit_hash_token()` if you prefer that approach.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/20657#comment:4>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs