Manyverse – A social network off the grid
manyver.se
manyver.se
Under the hood, scuttlebutt uses multiple independent blockchains, each tied to a single user. The upside of this is that it makes for a great eventually consistent gossip protocol; the downside is that the entire chain needs to be propagated for any of it to make sense, making it a very storage-intensive protocol.
Private messaging is implemented in a really interesting way using cryptographic envelopes that are publicly gossiped, but only decryptable by the recipient — whose address is also encrypted and therefore hidden.
Personally, I'm looking forward to when they introduce a good decentralized solution for moderation. This would help keep the size of the chain smaller, and make the information you see more usable.
The Scuttlebutt Protocol Guide [0] is a really easy and interesting read, I highly recommend it.
[0] https://ssbc.github.io/scuttlebutt-protocol-guide/
Edit: clarified what Scuttlebutt is.
Now wondering why the landing page for Manyverse prominently says: "No token. No ICO. No blockchain."
It makes the downside you mention "making it a very storage-intensive protocol" more interesting, and confusing for someone trying to understand the tech stack behind it.
The description you cited is also probably more for marketing purposes than technical explication. No one wants to use a social media platform built on ETH, the experience is just horrible.
In a blockchain, blocks occur at regularly timed intervals, and are distributed globally, which is all enforced by some distributed authority mechanism, like Proof of Work. Rumor has it that Satoshi was originally going to call the data structure a "Timechain" but wanted to emphasize the cryptographic integrity feature more than the time keeping feature.
Is there some form of filtering available? Ie, only show posts from friends and friends of friends?
It appears to have blocks and mutes.
What I'm interested in is something like the ability to subscribe to a trusted source's moderation in order to inherit their blocks and mutes, or at least to penalize certain content that is less likely to be trusted or interesting.
That is the default, there is no global state nor consensus. It will only fetch and store content 2-degrees (of following) away from you.
More clients are listed here: https://scuttlebutt.nz/get-started/
If you want to remove it i first recommend making a backup of the 'secret' file, located in that folder, as it contains your private key, in case you ever want to use that identity again. if you do delete that file you will not be able to add new entries to that original identity.
That's right, it's using a ton of space. We are currently working on a new protocol extension for SSB targeted at solving exactly this. Here's a presentation from some months ago, https://www.youtube.com/watch?v=LKr208wpr6Y , although our designs have changed a bit during implementation. See also https://github.com/ssb-ngi-pointer/ssb-meta-feeds-spec
We're building this under a grant from the EU Commission, NGI Pointer, read more about it here https://www.manyver.se/blog/2020-10-update
We're almost finished with a proof of concept of meta feeds for partial replication, and we're working on compiling statistics on how much will it reduce the total payload sizes during replication. For that purpose we built a network simulator to simulate replication at scale: https://github.com/ssb-ngi-pointer/netsim/
Avoiding blockchain in the actual system design also gets rid of the storage-intensive protocol issue, it's my favorite approach of the attempts to pull off these decentralized systems. It's also the only one I thing could truly work at scale as a new underlying system that applications can be built on top of from those I've seen.
The ability to update code across the network and the built in incentives for infrastructure nodes (stars) are really interesting. I also think the functional OS design is pretty cool.
https://en.m.wikipedia.org/wiki/Curtis_Yarvin
The system itself is built to be exclusionary, where it has a cap of 4.5 B users. I have owned a planet for a few years now and would love to part with it, but haven’t mad much luck on OpenSea.
I don’t agree with CY’s NRX politics (or much of Thiel’s for that matter - I think he was influenced by CY), but that’s unrelated to the merits of the tech and CY left the project in 2019.
2^32 is exclusionary? I don't see an easy way to make planets more inclusive. You could replace planets with moons (2^64 max users), then usernames need to be twice as long. Would you make the network architecture use nine-bit "syllables" (2^(9*4) max users)? Things wouldn't run so well on our 64-bit hardware.
But you're right, SSB is more broad as a generic p2p message protocol (and zeronet is a generic p2p site protocol)
https://librelounge.org/episodes/episode-14-secure-scuttlebu...
Latency is a feature. You tend to get longer, more thoughtful posts on scuttlebutt, because there's less rush.
You also don't get Twitter-storms, because it's not designed to broadcast your every post to millions of people instantly.
And since each device you connect with is really its own identity, you can be more selective with your mobile devices (with constrained storage) and less selective with your desktop or server.
If I send you a private message, the message is encrypted along that private channel - but it's also stored permanently on the blockchain unless I'm mistaken.
For something like WhatsApp or Signal any possible future technology is not a concern - as long as our encrypted channel is secure right now that's good enough for what we need (TLS is similarly fine if it's fine right now). With this design, private conversations will be held encrypted forever in the chain, waiting for a day when the encryption is either broken or vulnerable to brute force (e.g. by a future quantum processor).
I realise this sounds incredibly paranoid, but with Google's Sycamore and whatever else is being cooked up in other labs, we know the tech is coming eventually. The only question mark is really over the time horizon of getting there.
We assume that a functionally useful implementation of Shor's algorithm for breaking RSA cryptography is beyond reach in the near term, but that's only an assumption, and ignores the possibility that an orders-of-magnitude-better classical or quantum algorithm for factorisation remains undiscovered.
If we can make it resilient for long enough, such things will be an incredibly valuable resource for historians of the future. We just need to be sure a hundred or so years of Moore's Law isn't enough to break it.
I don't think the entire idea is completely unsalvageable, but I've come to believe that it's better to limit the "viral" nature of moderation decisions, at least without strong notification, appeal, and oversight—and that the more appeal and oversight you have, the more abusable by bad actors your moderation process is. it's a tough bind.
(Default hops is 3, and most people use 3, so functionally this doesn't matter much. But if it was 5 or something, this would matter a lot. It's also sort of why people recommend unfollowing pubs once you've built up a network you trust -- because pubs will connect to anybody who requests it, so even users with no redeeming qualities who no human being would choose to follow, like dedicate griefer accounts, will end up being replicated by a pub.)
For ios another open source one is https://planetary.social/ which i wrote.
https://github.com/ssb-ngi-pointer/ssb-meta-feeds
So the answer is soon.
multi-device is only spec'ed but not implemented in what we call "fusion identities": https://github.com/ssb-ngi-pointer/fusion-identity-spec
also, the ngi team has nothing to do with planetary.
lol?
I would expect for the privacy conscious community that F-Droid would be a big plus?
Manyverse – A social network off the grid - https://news.ycombinator.com/item?id=18065567 - Sept 2018 (117 comments)
https://news.ycombinator.com/item?id=25713830 - Jan 2021 (166 comments)
A single second of transmission (i.e. ~6kb) is about 1,500 characters in UTF8, assuming no overhead. With an average of 6 characters per word, that's still 250 words per second, more than ample for human communication.
Even packet radio would allow some of this stuff to flourish in remote areas - not matrix, it's encrypted.
Not including IP and TCP overhead, the Scuttlebutt handshake is 340 bytes, each message in a box stream is 35 to 4130 bytes, and the box stream finishes with another 34 bytes. There are two box streams for every Scuttlebutt communication. There are also RPC messages sent in the box stream that are a minimum of 9 byte header and 9 byte goodbye.
Transmitting a single post containing the text "Second post!" takes 563 characters, not including the handshake, header, footer or encryption overhead.
The web and social networks are far more data intensive today than low bandwidth modalities can support, especially long distance, low power RF links that would be rapidly saturated.
Restricted length text a la Twitter might be manageable. Encrypted high fidelity blockchain social networks? Not a snowball's chance in hell unless so few people are using it that nobody is saturating the link.
Edit: In North America for LoRa there are 64 125kHz uplink channels, 8 500kHz uplink channels, and 8 500kHz downlink channels. This should give you an idea of how little capacity there really is.
This makes it really impossible to send anything but a handful of bytes
You are correct that images, encryption, and blockchains are outside the scope of what a constrained connection can sustain, but that's a bit like saying "We can't power an industrial economy on consumer-owned 100 watt solar panels" which while true, misses the point.
Yes, if you're using court etiquette protocols to transmit data, you're going to incur very large amounts of overhead.
If you're using insecure low-sophistication protocols in sparsely populated areas (e.g. flyover America), then the possibilities are much more expansive. Yes, the latter by definition isn't commercially nor urbanely (viz. pertaining to densely populated cities) viable, but for certain demographics that's a feature, not a bug.
So in theory one could create a web app client over this, and allow people to host their own client instances (locally, on their laptop) or to provide semi-centralised nodes.
Why? Because this would overcome the limitations of Scuttlebutt for storage and syncing on mobile devices... yet the underlying data is decentralised and individuals could always avoid the website and access their data directly.
But really why? Well the UK is busy legislating the "Online Safety Bill" https://www.gov.uk/government/publications/draft-online-safe... and I run large community websites with user generated content. The proposals place a large burden and liability on me as a UK entity involved in facilitating people talking... it's designed to address Facebook and Twitter, etc but it does not have a threshold and the Gov argument is that it should apply to every piece of user generated content that isn't a review on a product.
I have no intention of accepting the liability involved (the paperwork is fine, the liability is not fine). Instead I am planning to solve this with tech and am looking at options - which I'll select from if the bill passes in it's current form.
Specifically I'm looking to decentralise and distribute, to encrypt and avoid any central ownership or authority... to disempower myself but to enable the community. But I don't want to do this in a way that enables someone else to exert control over the communities, I'm proudest most that I wasn't a dictator so have no intention of creating one in my absence.
The thought of a decentralised and unstoppable backend is very attractive.
I know that is ridiculous, but this could become the interpretation of the new law.
Obligatory joke aside, very cool project! Eager to try it out now.
Sure I can see my friends posts after a while, but at the same time if you really live off-grid you will probably not have a connection for a while and in these times there is really no use case for the app anyway.
I just think I am most likely to check the stuff I want to check whenever I have a connection. But perhaps I am wrong.
This gets really interesting if, say, you're out camping with a bunch of friends who are all on SSB. You take some photos of something you found on a hike, and post them. Your fellow campers can respond and interact, just like always, since the data propagates around the campsite. When (one or all of) you return to civilization, the whole corpus propagates to whoever else follows you, and they can see (and now participate in) the whole thing. Even if some of the folks are still off in the wilderness and their phones haven't seen a cell tower in months.
I just wish it was easier to discover SSB users.
This reminds me quite a bit of trying to find someone to email back in the early 1990s, before the web existed. I might be excited by the technology, but if there's no one to share it with, that dulls the excitement rather a lot.
So either I was completely uninteresting, or invisible, and I couldn't figure out which to start addressing it.
Maybe I'm expected to bootstrap a group of local friends and get everyone onto SSB and then we can talk using it? But if I already know them, we can just talk on IRC or whatever we already use.
I'm missing something fundamental about how this is supposed to work.
At least you can use it as a personal blog or daily journal when you write not for the purpose of getting response.
When the amount of content is built up, it will have higher chance to get response if you're still on the network, and followed the audiences back.
Reviews says it's just scuttlebug
> Now, in 2021, there is a growing underground project called Scuttlebutt that is tackling the decentralized web from a different perspective. Unlike Diaspora and Mastodon, Scuttlebutt is not a product for end-users — rather, it’s a protocol (like HTTP or RSS). Decentralized social network products, like Manyverse and Planetary, are being built for end-users on top of the Scuttlebutt protocol.
[1] https://thenewstack.io/scuttlebutt-decentralize-and-escape-t...
Secure Scuttlebutt, not Scuttlebug, as GP has it.
Also, "scuttlebug", a not-so-subtle insult or odd typo?
If the last part of that comment is dig implying that SSB is buggy, then providing some additional details about bugs we should be aware of would be illuminating.
If everything is decentralized, there are no records if you get threatened, extorted, or harassed on a platform, and harmful content isn't saved anywhere notable.
At then end of the day, no platform can guarantee security but they all do cost money to develop and operate and nothing comes truly for free... this we all know... There is some motive for the platform being developed, which is unclear at this point to me.
I'd rather deal conservatively and cautiously with non P2P platforms at this point just to be fully honest.
> Scuttlebutt can be transformative for society, decentralizing and enabling local community development free of big corp. It is a fast growing decentralized social network. As an alternative to the large corporate social networks it enables autonomy for the users and a free zone from big data harvesting...
> Secure Scuttlebutt (SSB) is a peer-to peer communication protocol, mesh network, and self-hosted social media ecosystem.[3][4] Each user hosts their own content and the content of the peers they follow, which provides fault tolerance and eventual consistency.[5] Messages are digitally signed and added to an append-only list of messages published by an author.[6] SSB is primarily used for implementing distributed social networks, and utilizes cryptography to assure that content remains unforged as it is propagated through the network.[7][8]
Besides, that’s not all the relevant data. The person I responds to was concerned about the motives around SSB. Going to the community’s main site and seeing the summary on Wikipedia would help them discover it (or the claimed motivations).
I'd take some time to read the protocol. I'd go as far as saying the protocol _is_ the contract you form with other members of the network when communicating. No centralized EULA, it's a set of policies that you must follow if you want to establish communication with another node on the network.
https://ssbc.github.io/scuttlebutt-protocol-guide/
If you receive a message, you'll have proof you received it and proof that it was created with the senders identity (key). This proof is stored locally on your device, and is likely replicated across multiple nodes that you peer with. From the "Private Messages" section:
> Private messages are encrypted so that only certain recipients can read them. They are posted to the sender’s Scuttlebutt feed like normal messages.
> Anyone can see the fact that a feed posted a private message, who sent it (the feed that posted it), when it was sent and its size. However the list of recipients, number of recipients and message body is concealed.
If someone posts something illegal (or just not nice) on their feed, you'll have proof too in the same way. That proof will also likely be federated across multiple peers. From the "Feed" section:
> The messages in a feed form an append-only log, meaning that once a message is posted it cannot be modified. Each message (except the first one) references the ID of the previous message, allowing a chain to be constructed back to the first message in the feed.
> there are no records
I'd argue the records on this platform are more resilient than what exist today on centralized platforms.
If your goal is to track harmful content, and alert people who share your definition of harmful, this communication protocol will allow you to do that. You should be able to form communities around moderation policies.
Every time I see this (and no offense, person whom I replied to) - it smells like someone is asking how much illicit content is available and how much policing there is.
Everything can be used for evil, if you try hard enough.
Different scenario than something illegal being explicitly sent to you.
While I don't think it's yet come up in court, if I was on a jury where someone's defense for keeping and distributing illegal material was "we need it so we can verify our blockchain", I wouldn't accept that argument.
The DHT sounds nice, in theory, but I heard in practice it doesn't work well which is a shame.
live prototype at http://sd7ezzynq5jclyltgiwnvabtk4m6nccdrmzfth72raxisoiplrtnr...
If you, or anyone reading this, wants to join our community, send me a DM on Twitter @andrestaltz with a short comment on who you are and what you're interested in, and I'll invite you if you seem trustworthy and friendly.