What is Planetary?
Planetary is an app that helps you connect to a completely open and distributed social network built on a technology called “Scuttlebutt”. It’s designed to look a lot like the social networks you use every day, but it works very differently.
How is Planetary different from mainstream social networks?
Planetary is different in two main ways - the ways in which it works and the values and commitments we make to you as our users. These two are pretty closely connected, but let’s start with the commitments we make to people who use the service.
We are committed to:
- Creating a social network with less abuse and harassment by design.
- Being a part of a public commons that isn’t owned or controlled by any one corporation.
- Giving you ownership of your identity so you can move to another service if you don’t like ours.
What's different about how Planetary works?
Planetary is built on and uses the secure scuttlebutt protocol. It's a fully decentralized offline first network where each user uses a cryptographic keypair to define their identity.
What is ‘Scuttlebutt’?
Scuttlebutt is the technology and protocol that lies underneath Planetary. You can think of a protocol as a set of rules and practices and behaviors that let different apps and services run by different people talk to each other. E-mail is built on a few protocols, as is the World Wide Web.
The Scuttlebutt protocol makes it possible to build an experience that feels a lot like a mainstream social network (among other things) except the messages are posted directly between friends or relay servers (that anyone can run) without the need for any central server or any one company running the whole system. We call these kinds of technologies ‘peer-to-peer’ or ‘distributed’. Find out more about Scuttlebutt.
What does it mean that Scuttlebutt is ‘Open’?
There are lots of people who have built peer-to-peer services, but not all of them are ‘open’. Scuttlebutt is open because anyone can build an app to interact with the core network, and anyone can run a pub relay server. Much of the code that people use to work with Scuttlebutt is open source and freely licensed too, which means that anyone can download it and look at it, or use it to build their own apps or services. If you’re a software engineer, you can even contribute work to make it better.
Planetary itself is open source, and we contribute to the core protocol and platform, and we are committed to being interoperable with other Scuttlebutt clients too, so if you don’t like what we’ve made you can take your identity and your friends somewhere else.
What is a Decentralized Social Network?
The best way to explain decentralized social networks is contrast them with ‘Centralized’ social networks.
Most mainstream social networks are centralized. This means a few things. Firstly the entire social network is owned by one company. Secondly, that company controls the main app or service through which you engage with your friends, and thirdly that app talks to a set of servers owned by that company where all your data is stored. This is a ‘Centralized’ model.
A Decentralized Social Network works very differently. In a distributed social network, there isn’t one centralized set of servers owned by one company where your data is stored. Instead anyone can run a server to pass on messages. Things can go even further—as in Scuttlebutt’s case—where you don’t need any servers at all. Instead the apps can pass messages between each other when they see each other on the Internet.
And because Scuttlebutt is also open, no one company builds the apps either. You can have lots of different apps owned or run by lots of different people, talking to each other without anyone in control of the whole space.
This is good for a whole range of reasons - it means that no one corporation controls the whole space, it means that you can connect with other people near you even when the internet is down, it means that lots of different organisations can run very different apps for different people, it means that it’s very hard to collect large amounts of data on people using the network, and that their privacy can be guaranteed by encryption.
How is this different from Mastodon?
Mastodon is a social media platform used by over two million people. You can find out more about it by visiting joinmastodon.org. It is known as a ‘Federated Social Network’ and it works a bit differently from both Centralized and Distributed Social Networks.
Unlike a ‘Centralized’ model, where one company owns the apps and servers, In a ‘Federated’ social network, lots of different people can run their own social networks on their own servers.
Those networks are distinct, can be run by different people and can have their own community standards or business models, but because they’re built based on common protocols and standards, these networks are ‘interoperable’. That means you can still sign up on one network and talk to people who are using another one.
Federated Social Networks are great in many ways, but they are not perfect:
- In a Federated Social Network you have to choose which ‘instance’ you want to join when you sign up, which is often very confusing for people
- Once you’ve signed up, it can be very difficult to find your friends, who may be using different instances
- These instances can be run by anyone at all, and while they can set their own rules, those rules are often not very well enforced, and sometimes become overwhelmed by the amount of messages they have to deal with
- Once you’ve signed up to an instance, if you do not like the people who run it, or its rules, it can be hard to move to another and to bring all your content with you
- Your content is still primarily held on servers owned by other people and if they want to delete it, they can do so without you being able to do anything about it
This is different from decentralized social networks where you have the definitive version of your content, you don’t have to know anything about the servers that you’re connected to, all your friends are in the same space and you can switch to another app or service provider at any time without it causing any disruption at all.
How is this different from Twitter, Facebook and Instagram?
In many ways, Planetary is not at all different from Twitter, Facebook and Instagram. It’s a place where you can go and write posts and share photos for your friends to see, and have conversations about them and find out about the things that interesting you.
In other ways, it couldn’t be more different. We aren’t trying to collect vast amounts of information about you, we’re not planning to bombard you with advertising, we’re not incentivized to make you look at the app all the time, only for you to find it useful and friendly enough to want to support our work. We’re not massive monopolies that get to make decisions on your behalf and we don’t lock you into using our services. We also care a lot about finding ways for content creators to fund themselves without our control, and in making an environment that feels a bit more friendly and less aggressive. And we’re open so anyone can build new services and apps that you can switch to if you like without us being able to stop you.
Who can see my posts?
Planetary is a social network and if you write something in public on a social network, it can potentially be viewed by anyone, and copies of it kept on other computers. We’re testing some features at the moment that allow you to make posts that are private as well as send messages to other users. Both of these things are end-to-end encrypted which means only people who they are sent to can read them. We can’t even read them (unless someone sends us a transcript for abuse purposes).
What is my public identifier?
In addition to the name that you use in Planetary, you also have a very long and annoying set of characters that is basically your login name. The nature of distributed networks means that there isn’t one central database for storing your details. Instead, you get a public identifier and a private key. You’ll want to keep a back-up of both of these, like a username and password, otherwise you won’t be able to access your account.
What is a private key?
Your private key is a bit like your password for the service, but it stays on your phone and you can’t easily change it. So you’ll want to keep a copy of this to yourself and keep it very safe.
Why do I need to back-up my key?
You need to back up your key because it’s the equivalent of your password, and unlike centralized systems you can’t change it or recover it if you lose it. It’s very important that you keep a record of it somewhere safe.
Why does this look like the other social networks?
The main goal we have is to provide a social network that people want to use that works as much as possible as they expect, but which is backed up by better values and technology. We’re not here to reinvent the wheel, we’re here to get you a high quality, ethically produced wheel that you can trust.
Can you see my data?
If you publish something in public, we (and everyone else) can see it. That’s what something being public means! If you publish something privately, then we can’t see it unless someone reports it to us (for abuse / harassment or for breaking our rules) and sends us the decrypted text of what you wrote. There is a little extra data we collect to make the service work better (we’re legally obliged to have a way to contact you should your data receive a legal take-down notice or should we have a data breach), but we try to keep this as limited as possible. We collect some information about how people use the app, but again we try to keep that anonymized and as limited as we can.
Can I delete a post?
The Secure Scuttlebutt protocol that Planetary uses an immutable log and does not support delete. This is less than ideal. We're working on a short term and long term fix for this. In the short term we're letting users do 'retraction' type post where you're asking other clients not to display something you wrote. This will not actually remove the content from your phone or that of your followers but will make it less likely people will see it.
Longer term we're working on switching the feed format we use for Planetary to allow for a better delete. We call this the GabbyGrove feed format which works in Planetary but not yet in all the other scuttlebutt applications. It'll take the body of each post out of the signed append only log allowing you to validate a feed without the content body. Even then, we don't control all the software which supports scuttlebutt so there is no way to absolutely enforce that your peers honor your delete requests.
If Scuttlebut is a protocol between peers who have stable IP addresses, and my phone isn't, how does it find other phones -- presumably through a 'pub'. How does the planetary app find pups and other users in a decentralized way?
Scuttlebutt currently looks for peers on the local network or at known addresses. Those can be pub's running on public ip addresses but it also supports a few other ways of connecting between users. In scuttlebutt there is a server known as a room, which maintains a list of active connections but does not store and forward messages. The room server runs on a known ip address and acts as a tunnel for any two clients to connect.
Some scuttlebutt nodes, users and pub's, create tor onion services and publicize that .onion address. This allows users to get inbound connections when they are online regardless of their ip address without revealing their location. We are looking at similar support using cjdns and yggdrasil. Planetary runs pub's which bootstrap users on to the network but users of the app do not need to use the planetary pub's. We plan on supporting tor in the future.
Please sign in to leave a comment.