3 ms·
I follow the arithmetic behind the birthday paradox, but that doesn't help my intuition about similar problems: can someone point me to heuristics for dealing w
by thyrsus 10y ago
I follow the arithmetic behind the birthday paradox, but that doesn't help my intuition about similar problems: can someone point me to heuristics for dealing with very large numbers of events in a very, very large universe of possibilities? E.g., sha1 collisions[0] on blobs in Github?
Suppose I had N initially non-communicating instances of github. Would a merge of all those repositories be more likely to have a sha1 collision if each used the full 160 bits for their blobs, or if each repository assigned a random log(N)+e bit prefix to itself, using only 160-(log(N)+e) bits for its own blobs, but incurring a possibility of collision within the log(N)+e bit prefixes? And, of course, one wants to know the increased likelihood of internal collisions now that we're only using 160-(log(N)+e) bits for the local identifiers (which of course depends on the number of internal distinct blobs).
[0] A collision is two distinct blobs with the same identifier; two blobs containing the same bits having the same identifier is a feature, not a collision.