Student Uses the Blockchain to Develop Censorship-Resistant Messaging App

A student in the Netherlands, as part of a class project, may have found a way to prevent censorship of text messages by enlisting the aid of the Bitcoin blockchain.

Following the revelations of American whistleblower Edward Snowden regarding the US internet-spying program named PRISM, concerns about privacy have grown exponentially.

Krzysztof Okupski, a 25-year-old graduate student, was discussing a potential project when his advisor, Dr. Boris Škorić, suggested using the blockchain to avoid censorship of messaging. Okupski immediately saw the humanitarian aspects of such a project and dove right in. He also developed the Bitcoin Developer Reference, which aims to provide specifications and API information to help people build Bitcoin-based applications.

Okupski was determined to make the application as cost efficient as possible so that dissidents around the world would be able to engage in free speech without fear of governments censoring their messages. This is a particularly serious problem in countries such as China, and in many parts of the Middle East. Using the blockchain seemed to be the most efficient way to accomplish the goal of freedom. Okupski said:

"Binding a payments network like bitcoin together with an anti-censorship system forces any repressive government to either accept or abandon both. Abandoning it might not be very smart, however, since bitcoin is an active and growing currency that an economy could benefit from.”

The software is relatively simple. Once it is connected to a user’s Bitcoin core wallet and funds are recirculated, messages are transmitted by embedding the data into the fundamental building blocks of each transaction. These can include public keys, signatures and transaction amounts. The sending is not free, but the only fees are those needed to pay the miners who process the transactions.

The message’s receiver will need to have access to the same client and will need to have an “identifier,” which is issued by the author, to read the message. The identifier will also determine which parts of the message are text and which are transaction information. Okupski compared it to tuning a radio to a specific frequency.

There are, of course, other encrypted messaging solutions available today, but most are either memory heavy or expensive, or both. Okupski believes that by using the decentralized blockchain, he has solved most of these problems and he offers a solution to nearly anyone with internet access.

“Before I started to write the software, I conducted an extensive analysis on what freedoms the bitcoin protocol has that would allow for the inclusion of arbitrary information in transactions.  In the course of about nine months, I have identified all elements that can embed data, and have constructed a model, which I then optimized with respect to the cost rate in satoshi per embedded byte. Additionally, I've included a simple text compression algorithm, which reduces the total size of all data.”

The cost is extremely low. This article, at about 500 words, could be sent using his software at a cost of less than 60,000 satoshis, or about US$0.20 at today’s exchange rate. The software also allows users to chain messages together, which would potentially allow the creation of low-cost news feeds that are free from censorship.

There is a question of whether extensive use of the blockchain for non-financial transactions could potentially bog down the system. While the heavier traffic may be a boon to miners, it could increase the time it takes to confirm transactions. Okupski admitted the potential problem, but said that as long as usage was kept to simple messaging and maybe a few news streamers, there should be no problem. He also stressed that his idea was still a long way from alpha testing and that many issues still had to be addressed.

Did you enjoy this article? You may also be interested in reading these ones: