|
|
|
|
|
by DanielDent
2560 days ago
|
|
This would make it harder to build a fingerprint, especially if responses were sampled from a number of independent sources. The next logical step in the arms race would likely involve fingerprinting systems using more bits than strictly necessary, and using error correcting codes - i.e. treat the sampling as "noise" to be overcome. It seems both more straightforward and more effective to build recursion paths that you can trust aren't doing any intentional or unintentional caching. This of course means the performance benefits of caching go away. This has been a theme in computing lately (i.e. CPU speculative execution leaks such as meltdown). A recursor could be built which only uses each query response once, with prefetching used to reduce the performance impact. However, the mere fact prefetched responses exist would also leak data. |
|
I agree, but as you say, that will take quite some work and time to happen and will be costly. I was thinking of this as a possible temporary mitigation which would retain some benefits of caching. If it was made adaptive[1], it would also have the nice side-effect of being more resource intensive for those servers that attempt to use tracking.
[1] i.e. only fetch many responses if they appear to vary while doing a smaller number of "probing" requests. Continue fetching more responses for your local sample until they stop varying with some degree of confidence.