this post was submitted on 21 Jul 2023
183 points (98.9% liked)
SNOOcalypse - document, discuss, and promote the downfall of Reddit.
4672 readers
1 users here now
SNOOcalypse is closing down. If you wish to talk about Reddit, check out !reddit@lemm.ee, !reddit@lemmy.world and !RedditMigration@kbin.social.
This community welcomes anyone who wants to see Reddit gone. Nuke the Snoo!
When sharing links, please also share an archived version of the target of your link.
Rules:
- Follow lemmy.ml's global rules and code of conduct.
- Keep it on-topic.
- Don't promote illegal stuff here.
- Don't be stupid, noisy, obnoxious or obtuse (S.N.O.O.)
- Have fun, and enjoy the popcorn! πΏ
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Instance-neutral link:
!RedditMigration@kbin.social/post/233339
That doesn't work with posts or comments, as each instance assigns a different number.
I wonder how much work it would be to make that a hash and make it so that itβs the same across instances
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).
Not necessarily. A hash of the body/url+timestamp would always point to the same place, and could be calculated on the fly.
So every comment and post would have a calculation and entry into a table, and this would be done by every instance every time one instance creates a new comment or post? That sounds like a massive unnecessary overhead.
Just use the same ID across all instances. Hell, they could just do https://inst.ance/post/number@inst.ance
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.
Yeah, I mean the goal would be to link the IDs across all instances. Rather than having different numbers and running a calculation into a table that links the IDs, you could just have a table, or better yet just have the same ID.
The issue probably lies in creation of new IDs. Different instances may have to be allocated a block of IDs, so that they can create new IDs without conflicting with any other instance.
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 youvwant that you'd be using public key cryptography and having the user hold a private key