What is Nostr?
dikaios1517 / Dikaios1517
npub1kun…3lhe
2025-01-24 06:27:46
in reply to nevent1q…99z4

dikaios1517 on Nostr: The question is how it could be. Remember, every update to a note needs a signature ...

The question is how it could be. Remember, every update to a note needs a signature from the owner of that note.

So, let's say we wanted to have each npub have two lists; one of all the npubs they are following, and a separate list of all the npubs that have followed them. Updating the list of npubs you follow is simple. Your client or signing app will sign for that update when you hit the "follow" button. How will your list of who is following you get updated? You would somehow need to be able to sign when someone else hits the follow button to follow you.

It would be similar to the problem of receiving lightning payments offline for node-on-the-phone services. There would need to be some server in-between that watched the relays for anyone updating their follow list to add your npub, and the next time you came online, it would need to prompt you to sign to update your list of who is following you.

But what about unfollows? That would get even more complicated, because it's not like there is an "unfollow" note that lists your npub as being removed from a follow list. Anyone who unfollows you would simply be updating their kind 3 note to no longer include your npub, and the relays would delete the old note that had your npub on it. Whatever server was keeping track of who is following and unfollowing you until the next time you can come online to sign for the update to your list would need to have a copy of your list and be regularly checking if the npubs listed on it still have your npub on their kind 3 note.

Seems somewhat possible, but it would still be approximate, even though the number you see would be more consistent across clients, because it would rely on that "watcher" server having a full view of the entire relay network, which it never could.

Tracking these types of things is incredibly easy in centralized systems, because there is only one server that holds all of the data. Once you have a decentralized protocol with data being stored in places a large portion of the network may not even be aware exists, it becomes an impossible task.
Author Public Key
npub1kun5628raxpm7usdkj62z2337hr77f3ryrg9cf0vjpyf4jvk9r9smv3lhe