0
0

Towards a truly uncensorable internet


 invite response                
2018 Feb 16, 1:40pm   1,435 views  0 comments

by Patrick   ➕follow (55)   💰tip   ignore  

To guarantee our freedom of speech in the face of the current climate of intolerance, I am looking for mechanisms of distributing small amounts (say, less than 64KB at a time) of text content with low latency, such that a forum like this could be run with no central point of failure. Points of failure to avoid are dependencies on specific IP addresses, DNS names, SSL certificates, or any other part of the internet which is controlled by centralized authorities.

I keep coming back to the idea of using the javascript localStorage, which lets a browser store up to 5MB of data per domain like this:

// Store
localStorage.setItem("comment", "this is an uncensorable comment");
// Retrieve
x = localStorage.getItem("comment");

So the data would be distributed across all browsers that are participating in the recent conversation, with a high degree of redundancy such that any browser could go away without affecting the availability of the information.

One problem there is that browsers do not generally have the ability to receive incoming connections. They only make outgoing connections, except maybe for https://webrtc.org/ type things. Or perhaps websockets could be used via a set of proxies out on the internet. But then, who would run the proxies, and why would they bother?

Another problem would be finding the relevant data quickly, data like "the latest comment in thread 1234". Perhaps distributed hash tables could be used to find data quickly enough.

Bittorrent is an excellent uncensorability mechanism overall, using outgoing UDP packets to "punch holes" in local firewalls, allowing incoming UDP responses for the same port. But Bittorrent is a high-latency protocol oriented towards copying large files like movies. It doesn't seem suitable for distributing many small comments with low latency.

The blockchain idea is also excellent in terms of uncensorability, but again is fairly high latency (on the order of 10 minutes) and it not really oriented toward distributing many small items quickly to many people.

Perhaps messages could be encoded in images ( https://en.wikipedia.org/wiki/Steganography ) and uploaded to Reddit and other image-sharing sites, and then indexed somehow.

Or perhaps search engines could be used as an unwitting storage service. Content along with a thread ID and timestamp could be put on pages known to be indexed by search engines, which would then nicely copy the data to their own servers. One could then automatically search for content by the thread ID and assemble a forum without having to pay for or create any servers. They would be under centralized control, but maybe some kind of steganography could be used such that the search engines would not be able to effectively scrub or censor the content.

Ideas?
no comments found

Please register to comment:

api   best comments   contact   latest images   memes   one year ago   random   suggestions