Technologies for Democratizing Power

2018-11-24T16:04:03.000Z Honest Cash

In my previous post, I hinted that Consolidationg CoinJoin is going peer-to-peer. This article will explore some of the technologies I’ll be incorporating to do that. If you’re a developer and want to follow along, you can view the code here. It’s just prototype code at this point, but fully-tested, proof-of-concept libraries have been successfully created to prove out all the concepts presented here. The code is also MIT licensed, so feel free to do anything you want with it.

Using a blockchain to create a distributed ledger, as Bitcoin does, was an innovative solution to prevent censorship from state actors and thereby enforce individual sovereignty. It doesn’t try to fight or enforce laws, it makes laws obsolete by giving power to individual actors.

Unfortunately, blockchains are inherently inefficient, and their advantages can not easily be applied to the conventional client-server model used in almost all web applications today. But a new suite of technology is now available to democratize power, fight censorship, and obsolete any laws that encroach on the right to free speech. And, they work within the current paradigm. 

Hiding Servers with Tor

I’ve been following Bitcoin technology since 2009. One of its cultural memes that I’ve seen grow is the concept of ‘voice and exit’. It’s an important ingredient in democratizing power. People need a platform to express their voice. If their voices are not heard, they need to be able to exit, and take their power with them. Hence the diversity of coins and culture in the cryptocurrency world.

Tor, the onion router protocol, is the exit for citizens who want to escape the increasingly surveilled clearnet web. It breaks the informational link between servers and clients, allowing both to remain anonymous and difficult to trace. Anonymous servers provide a .onion domain name, allowing a tor-enabled web browser to interact with them the same way it’s done in the clearnet. These websites are often referred to as the darkweb.

As countries around the world continue to degrade into a dystopian surveillance state, I expect the darkweb to grow, and eventually eat the conventional web. 

I had followed the technological progress of tor, but had not seriously used it until recently. I think many developers can say the same. When I actually started to use it, I was amazed to see how far the user experience had come. Tor is simply a service that runs on port 9050. You can point to it, just like any other service at any other port. This works well with the current server-client model used by the modern web. And additional projects like tor2web allow network traffic to easily flow between clearnet and the darkweb.

A Match Made in Heaven: IPFS + Tor

IPFS, the inter-planetary file system protocol, is a new and instrumental tool for fighting censorship and democratizing power, as Spain recently demonstrated. The way I like to describe IPFS: it’s as if GitHub and BitTorrent had a baby, and raised it on a steady diet of unix command line tools. Another amazing tool, OrbitDB, builds on top of IPFS to create a peer-to-peer database. It’s a ‘blockchain’ that doesn’t suck, is incredibly easy to customize, and adapts to a wide-range of applications. IPFS is the networking layer that OrbitDB rides on top of.

Bring the server to you with a distributed database

Having an efficient, censorship-resistant, peer-to-peer (p2p) database opens a lot of doors. And thankfully, one door it closes is the need for search engines. Consolidating CoinJoin plans to use OrbitDB to distribute a roster of active ‘servers’. Instead of needing a third-party search engine to find servers, the ‘client’ can simply download a list from another peer. This allows ‘servers’ to easily join and leave the network, especially servers hidden in the tor network, with their ephemeral and hard-to-remember .onion addresses. To put it simply: the server comes to you.

Breaking Up Roles

It is my novice understanding that a Consolidating Coinjoin server would not fall under USA money transmission laws, since the USA recognizes cryptocurrencies as assets and not currency. But there is a good chance my opinion is incorrect. In thinking about it, I came to the conclusion that the answer doesn’t matter. Something that is legal today can be illegal tomorrow. Laws are arbitrary and capricious, as historical laws governing marijuana, alcohol, and slavery demonstrate.

Software that democratizes power, increases individual sovereignty, and protects free speech needs to be future proofed from law. It’s too important to leave to the whims of politicians. It’s not about fighting the law. It’s about making bad law obsolete.

To that end, I considered carefully how the Bitcoin protocol breaks up concerns of interest between miners, full nodes, and users (exchanges). Taking that as inspiration, I am breaking up the software into three types of network activity: wallets, mirrors, and servers.

Wallets and servers are explored in the Consolidationg CoinJoin protocol gist and YouTube video demo. A mirrors only function is to help peers on the network find one another and connect. It’s primary purpose is to distribute the p2p database, which helps wallets find servers.

A machine can run both the mirror software and the server software side-by-side, or just run one. This gives servers the option of running anonymously in the tor network, or establishing themselves in the clearnet. It gives the wallet software options in terms of convenience vs privacy. Running only the mirror software presents a very different legal framework than running server code. And it will only take a handful of mirrors to run somewhere in the world to give the network robust censorship resistance.

I will continue to develop the Consolidating CoinJoin code base. If freedom-loving, privacy-respecting developers want to help, I’d love for you to reach out to me on the BITBOX chat room.

Responses


The Most Valuable Order

by @Xerographica

Exit, Voice, and Loyalty is an important book by Albert O. Hirschman.  Imagine if leaving a country was as easy as leaving a website.  

I'm ignorant about crypto so there are several aspects of your post that are over my head.  Instead of studying crypto, I study economics.  

In economics a bad law is simply one with a cost that is bigger than its benefit.  There are lots of bad laws because…

"It is impossible for anyone, even if he be a statesman of genius, to weigh the whole community's utility and sacrifice against each other."  - Knut Wicksell, A New Principle of Just Taxation

A politician has absolutely no idea exactly how much I am helped, or hurt, by some law.  Voting, by definition, does not reveal preference intensity.  In order for preference intensity to be revealed, people need the opportunity to spend their money. 

Let's take Honest Cash for example.  Do we need laws on here?  Yeah, sure, rules in general are useful.  

Pretend that you think it would be useful for there to be a rule against porn here on Honest Cash.  Ideally you would create a post asking the community whether porn should be allowed.  Anybody could reply to it with their answer and we would spend our money on the best answers/replies.  If the "Yes" answer received the most money then porn would be allowed.  

This "value poll" would allow us to see the social cost and benefit of porn on Honest Cash.

A relevant paper is the highly cited paper by Ronald Coase… The Problem Of Social Cost.  It has been cited 33,157 times.  The problem with social cost is that it is hidden.  This problem can be solved with value polls.  

Here's another highly cited paper… The PageRank Citation Ranking: Bringing Order to the Web.  It has been cited 12,482 times.  

Google got the page rank idea from scholarly citations.  The more times a paper has been cited, the more important it must be.  The more links to a page, the more important it must be.  

A link and a citation are basically votes, which means that neither of them reveals preference intensity.  Just because I linked to both papers really doesn't mean that I value them equally.  I value the first far more than the second.  Google doesn't see or know this, which is why pages are very wrongly ranked.  

I wish that there was some way to calculate the total harm of all the pages on the internet being incorrectly ranked.  On a daily basis humanity's attention is being majorly misallocated… we overlook so many valuable pages and the important ideas that they contain.  

Google certainly brings an order to the web, but it brings the really wrong order.  The solution?  

https://honest.cash/hashtag/Bitcoin

The posts on that page are ordered by crowdfunding, which is how I found your post.  

Do you think those posts about bitcoin are perfectly ordered?  I'm guessing that you don't, but you have the wonderful opportunity to use your money to improve their order.  Everybody has the wonderful opportunity to use their money to improve their order.  This is how the most valuable order is produced.  

The most valuable order is a function of people's valuations.  

What do you think?  Does this make sense?