cross-posted from: https://kbin.social/m/RedditMigration/t/233339
Comments from the original poster:
Not much else needs to be said tbh. Fuck Spez. // Edit: Not sure why imgur marked the album as NSFW, but there’s nothing NSFW in it other than the name of one of the mods including the word “removed”
Personal comment: the critter isn’t even dead but the vultures are already flying in circles around it. I certainly do not envy their situation, I bet that the users will treat them like shit.
I could see a system being both easy, and hard to implement; Without thinking about it too much, it’d require a hash table filled with every single already-used key that is always perfectly synced with every other instance regardless of each instance’s chosen federated instances.
Best bet might be to just have a non-linear, randomly chosen, hash with a fixed key-length backed by a very large keyspace. This could effectively defeat the need for perfect syncing due to a greatly decreased chance of collision over short periods of time (statistically covering any minute-or-two long desyncs).
They could just go with UUIDs. Assuming all servers choose actually random UUIDs, the probability of a collision is astronomically low. Even if a server tries to maliciously “claim” UUIDs, that server could be defederated from, and the number of UUIDs it’d be able to eat is similarly tiny in comparison.
Removed by mod
If youvwant that you’d be using public key cryptography and having the user hold a private key
The idea behind UUIDs is that there are so many (128 bits) that you don’t need to worry about allocating blocks or anything. Each post gets a random UUID, that’s its ID, and it’s propagated along with the post so other instances can reuse that UUID.
If each instance can have a unique prefix then there’s zero chance of collision.
XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
If those first 8 are the prefix that’s room for over 4.2 billion unique instances, which is more than half the population of the whole planet. Do you think there’ll be that many?
Not necessarily. A hash of the body/url+timestamp would always point to the same place, and could be calculated on the fly.
Removed by mod
This is redundant but is better than the uuid thing, even though it’s redundant.
Removed by mod