On Wed, Feb 6, 2019 at 10:45 PM Nicholas Hopper hopper@cs.umn.edu wrote: [...]
This is very cool. One thing that comes to mind reading the proposal is that you will either want some fancy sorting scheme to try to make ranges (nearly) consistent across ENDIVEs, OR will want to have the Relay commit to an ENDIVE version before the client sends an index (otherwise an adversarial relay group can increase their effective weight by a factor of # of acceptable ENDIVE versions).
That's right. I had been think that we wouldn't go too wrong if we sorted by identity, since bandwidth doesn't change too much from hour to hour. Another possibility to investigate is putting out ENDIVES less frequently than we currently put out consensus directories.
But I like your commitment idea better, if we can make it work: as part of its CREATED, a relay could promise that it would use a certain ENDIVE for any extend attempts in the next N minutes. We'd need to make sure that this was authenticated by the create/created handshake, but I think that should be doable.
cheers,