Principles Seminar - Session 3: Censorship Resistance
In the third session of this 12 part series, join status' core contributors as we discuss and debate to which degree we uphold our principles, how we can improve our performance, and what we're adding to our Wall of Shame.
II. Censorship-resistance
We enable free flow of information. No content is under surveillance. We abide by the cryptoeconomic design principle of censorship resistance. Even stronger, Status is an agnostic platform for information.
Slide Deck:
Seminar Opening presentation
Seminar Index
Censorship Resistance Session Notes (reprinted below)
Youtube:
Wall of shame
1 Obviously, which already exists, cluster
2 Release channels Play store and App store
3 Assumes Ethereum is operational
4 Assumes an internet connection
5 Whisper easy to DDoS (maybe not censorship)
6 Reliance on Infura quite a bit
7 Legal entity provides attack vector
8 We rely on a small number of (fiat) bank accounts to compensate core contributors
9 Organization design is somewhat centralized (not a DAO)
10 We don't have a strong open source community (dependence on CCs)
12 Non-standard ports make ISP blocking super easy
13 NAT traversal isn't implemented for Desktop to be bootnodes
14 GitHub as a single point of failure (node.js)
15 Requires Internet to operate
16 Keeping failure local, right now more system on/off
Oskar - intro - looking at how the principle came into existance
Everyone-adding Wall of Shame thoughts
Michael:
let's start from single points of failure
Ricardo:
platforms and search engines - able to censore at ISP level, dictatorship.
How do you get around something like that?
That's what we are solving at a first level
Corey:
Ned and I talked about onramping people right from your phone - something needs to be done at connection level, P2P
Ricardo:
Mesh network
Michael:
Let's not get too deep into technical implementations
Corey:
the way we use the internet is too centralized, and that's prime terrain for censorship
Ricardo:
Bigger problem than the ISP
Jacek:
Focus on building something that would only fail locally - mesh is cool but use could still be penalized or blocked
Michael:
What can we do?
Ricardo:
Specific swarms working on it - ultra light client
Michael:
Move the conversation to App Store
Jacek:
Economic incentive vs enthusiasm
specialized nodes that do these things
incentivize people to run these services
distribute through something like swarm
users get access that way, doesn't matter where the service is distributed
Ricardo:
Apple doesn't allow downloads outside of their app store
Igor:
Different distributions we can try
Corey:
People who need it will find a way to have it - how much time should we spend building so many options?
Oskar:
How about the social aspect?
Igor:
At this moment we're mostly relying on CC's. It's hard for others to work/build on Status
Ned:
Go and see what others need - what blocks, where to start. Find the bone structure of all these elements, in these places where tech and language are different from what we use. Enable them to use their framework - rethink/reshape these elements
Jazek:
Contributors come when something is useful to them, hard to come into the project unless you're an ETH enthusiast.
Hester:
Some dev switched from looking at Status to develop for Status. Can't recall the exact details but they had more documentation available. Perhaps we need to focus more on that - we have lots more available now, and Studio can also help
Igor:
We have ENS documentation now, we should be pushing more blog content
Barry:
in voting we filtered out poles that were created twice - so every pole, when you create a new one is just sequential
Corey:
We can't give up user data if we don't have the data. If we work to NOT have any power whatsoever, we can't be forced into anything
Michael:
How would people react if at some point we can't have a legal company and can only be paid in crypto?
Corey:
I rely on the legal company to live a normal life
Ricardo:
We shouldn't even have one :)
Jacek:
Hmm classic compromise - same as Slack vs Status, you need to compromise in the sake of efficiency, up to a certain point
Michael:
Can we be honest with ourselves - maybe we need these legal companies and can't exist otherwise
Ricardo:
Maybe we should decentralize that too, and have a lot of legal companies
Barry:
Is the DAO an extention of our legal entity?
Oskar:
Let's table that til tomorrow - we'll have a session on that
Michael:
What are we gonna do if someone turns off our cluster?
Oskar:
we could (very hackey) run stuff locally, Adam and others are relatively close to have a contingency plan if need
Corey:
As soon as we have the option, we should kill the cluster, the same way we're doing with using Status vs Slack. Even if it's cranky at the beginning it will force to improve it faster.
Join the discussion here.