149-using-netinfo-data.txt 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. Filename: 149-using-netinfo-data.txt
  2. Title: Using data from NETINFO cells
  3. Version: $Revision$
  4. Last-Modified: $Date$
  5. Author: Nick Mathewson
  6. Created: 2-Jul-2008
  7. Status: Open
  8. Overview
  9. Current Tor versions send signed IP and timestamp information in
  10. NETINFO cells, but don't use them to their fullest. This proposal
  11. describes how they should start using this info in 0.2.1.x.
  12. Motivation
  13. Our directory system relies on clients and routers having
  14. reasonably accurate clocks to detect replayed directory info, and
  15. to set accurate timestamps on directory info they publish
  16. themselves. NETINFO cells contain timestamps.
  17. Also, the directory system relies on routers having a reasonable
  18. idea of their own IP addresses, so they can publish correct
  19. descriptors. This is also in NETINFO cells.
  20. Learning the time and IP
  21. We need to think about attackers here. Just because a router tells
  22. us that we have a given IP or a given clock skew doesn't mean that
  23. it's true. We believe this information only if we've heard it from
  24. a majority of the routers we've connected to recently, including at
  25. least 3 routers. Routers only believe this information if the
  26. majority inclues at least one authority.
  27. Avoiding MITM attacks
  28. Current Tors use the IP addresses published in the other router's
  29. NETINFO cells to see whether the connection is "canonical". Right
  30. now, we prefer to extend circuits over "canonical" connections. In
  31. 0.2.1.x, we should refuse to extend circuits over non-canonical
  32. connections without first trying to build a canonical one.