• 30 Posts
  • 138 Comments
Joined 1 year ago
cake
Cake day: June 4th, 2023

help-circle


  • I won’t mention here as I don’t want this post to come across as promoting cryptocurrency, but this script was originally written to protect a faucet for a cryptocurrency that does exactly this (and has been since 2012). This cryptocurrency records user contribution to various computational projects (BOINC, Folding at home, etc) and can also be used for torrent seeding or other forms of contribution. So it could be used in this manner to verify a user has contributed X amount of computation over Y time periods.

    The faucet handed out coins but the problem is that users want all the free coins right? But we only want to give a few free coins to each user. So we make them do the “work” and make sure the cost of work is > value of coins, so they have no motivation to hit the faucet multiple times. This is the original purpose of the script.





  • Yes, most projects implement validation of some sort as even well-intentioned BOINC users will occasionally submit invalid workunits due to computation errors, random memory bits flipping, etc. Validation schemes range from simple to complex but suffice to say yes they nearly universally have some sort of validation mechanism. People have attempted to cheat BOINC before simply in pursuit of a “high score” compared to other users, so the BOINC ecosystem is well acquainted with proper defenses for such behavior. There are even cross-project competitions people can participate in, people join teams etc, so the competition can be quite fierce.





  • Still some of those, as with any social media platform. I have come across a few objectionable things, I just blocked and moved on. But you pick who you follow so you pick who shows up in your feeds. Each relay has their own moderation policies, so (like Lemmy), you can pick relays which suit your moderation preferences (which effect the “trending notes”/public square section). Most nostr apps by default upon install will ask you if you want to automatically filter out crypto/nsfw/foul language/etc. I picked at random and didn’t enable many of the filters.


  • Okey, so relays can pass message to other relay? Didn’t know that, so thanks.

    Relays currently don’t talk to each other. But users are typically connected to multiple relays and publish simultaneously to multiple relays. Likewise, a user pulls in data (tweets etc) from multiple relays. My client is connected to ten. So to give you a more accurate answer to your question, to DM another user, you and that other user need to share a relay. If you are crossing networks (such as clearnet->tor), this means one of those relays needs to talk to both networks. If you want to follow a particular person but aren’t normally connected to a relay they are on, your client can connect to a relay just to get content from that particular person. All of this is handled automatically, of course.

    But then, why not use network like Yggdrasil? Which would be basically like Nostr, but can relay any TCP/IP packet for any app, instead of just Nostr notes.

    Taking a cursory look at this, it sounds more like a general routing protocol not something that is specifically designed to relay message content or other formatted data (ie you build your apps on top of it, it’s just a protocol for packet delivery). Nostr could conceivably run on any base routing protocol like Tor, I2P, or Yggdrasil though I don’t know of any specific implementations either way. As long as the relay has a way to resolve addresses and send data to them over TCP it should be fine. Hadn’t heard of Yggdrasil yet thanks for letting me know about that I’ll do some more reading later.


  • Why do we even need relays in the first place?

    To store message content. To hold message content if you send a message to an offline contact and vice versa. To handle getting things across networks (clearnet to Tor and back if you only are connected to one). To work around NAT etc. To moderate “public square” type features (ie trending posts). Many reasons.

    What if one relay is on clearnet and the other one is on Tor?

    No problem, relays can communicate cross-network. They relay things between each other so traffic will find a way through as long as one node speaks to both networks.

    What if relays I use are not rechable by my contact, that lives in censored country like China and can only connect to relays in there?

    As long as there is a relay path between you and your contact, there is no issue. Relays can be run through Tor and other anonymity networks which are very difficult to distinguish from other forms of encrypted traffic.

    Why do we even need relays in the first place?



  • It definitely started as mostly crypto bros, kinda like how lemmy was 100% tankies, but it’s gotten better. Lots more human rights activists and scientists and even just regular people on there now. A lot of human rights/privacy activists/orgs are joining up to it after nostr got some promotion at their conferences. Ultimately your feed will be who you follow so luckily you’re in control of that. The default settings for most nostr apps even include a filter to remove anything crypto, NSFW, and other controversial topics related.

    Still very early days for all these platforms.





  • Lemmy is “uncensorable” and offers identical moderation abilities in the “public square” aspect. E-mail is “uncensorable”. Uncensorable does not equal unmoderated. It means if you want to publish something, nobody, not the even the government, can stop you (though they can throw you in prison but that’s outside the discussion of protocol). It doesn’t mean anybody has to choose to listen to what you publish. It does not mean relays have to include you in their list of public tweets. Relays can pick what tweets/etc they show. They can choose what goes through their relay. What they can’t do is stop you and another user from using the protocol to DM each other. As long as one relay allows your traffic through, the traffic will flow. They also can’t stop you from tweeting, they can just choose not to show your tweets. If I want to follow somebody, frankly, it should be no business of a relay operator or the government or anybody to prevent me from following them, just like it should not be the business of the government to decide what books I am legally allowed to read. By building networks which are “uncensorable” we can guarantee that it remains not their business for future generations. So that they can live as free, or freer, than we do.

    The internet, as a structure, is “uncensorable”. This is good. Power should be decentralized. The whim of a government shouldn’t dictate how the entirety of the internet operates, and it can’t. People in power love censorship, it is to their advantage that we are not able to organize among each other using common communication platforms.