Twister (software)
Twister is an experimental peer-to-peer microblogging program. It is decentralized, meaning that no one is able to shut it down, as there is no single point to attack. The system uses end-to-end encryption to safeguard communications. It is based on both BitTorrent and Bitcoin-like protocols and is considered a (distributed) Twitter clone.

Overview
Twister is a Twitter-like microblogging platform that utilizes the same blockchain technology as Bitcoin, and the file exchange method from BitTorrent, both based on P2P technologies.

Twister is experimental software in alpha phase, implemented as a distributed file sharing system. User registration and authentication is provided by a Bitcoin-like network, so it is completely distributed and does not depend on any central authority. Distribution of posts uses Kademlia distributed hash table (DHT) network and BitTorrent-like swarms, both provided by libtorrent. Included versions of both Bitcoin and  are highly patched, and intentionally not interoperable with the already existing networks.

Miguel Freitas, aiming to build a censor-resistant public posting platform, began development on Twister in July 2013 to address the concerns of free speech and privacy. Building off the work of Bitcoin and Bittorrent, he was able to have the core working by October 2013. Lucas Leal was hired to create HTML and CSS for the user interface, with Miguel writing required JavaScript code. 2,500 user accounts were registered in the first six days of operation.

As a completely decentralized network, no one is capable of incapacitating Twister since there is not a unique point of attack to the system.  Twister uses end-to-end encryption to protect the communications. Furthermore, Twister is designed to prevent other users from knowing a user's GSM localization, IP address, and who the user is following. Users can publish public messages as with other microblogging platforms, but when they send direct messages and private messages to other users, these are protected from unsolicited access.

History 

The Brazilian computer engineer and programmer, Miguel Freitas, started developing the new social network after learning about the massive spy programs of the USA's National Security Agency (NSA) as revealed by the NSA whistleblower Edward Snowden. He started to worry about the accessibility of that amount of information under the control of a single company under American jurisdiction.

According to Freitas, Twitter has been the social network that has helped the most to promote democracy and to organize protests, as the magazine Wired claims. He believes that massive surveillance by the likes of the NSA makes it dangerous to provide personal information to the social networks that currently exist. For this reason he decided to build a new system based on privacy-preserving technology.

Freitas used to believe that in the future, social networks would be based on decentralized protocols and with no central point of control. But on learning that existing social networks were already massively compromised by the state he began to take action with the development an alternative service based closely on Twitter.
 
After a while, Miguel and his developer, Lucas Leal, considered the alpha version of the application for Android, Linux and OS X. Versions for Windows and iPhone are not planned, but, since it is open source, any of them is free to migrate the application for other operating systems.

Even though the project is in this moment in alpha phase, Brian Armstrong, co-founder of Coinbase, believes that it is a great example of how the open protocol of Bitcoin can be used with diverse purposes.

Technology

Protocols 
Twister is a distributed system, it works as a peer-to-peer program. Unlike other decentralized networks (like pump.io/Identi.ca, StatusNet/GNU social or Diaspora), it does not require the user to use their own server and does not require a user to trust a third-party server in order to use it.

Bitcoin 
This is achieved through the Bitcoin protocol, though not through the network used by the cryptocurrency. The protocol handles the register of users and the accesses. In the same way miners verify transactions on the Bitcoin network to secure that no one makes a double spent, the Twister network verifies the user's names and that the messages belonging to a specific user are really from that user.

BitTorrent 
The messages are driven through the BitTorrent protocol. This allows keeping a distribution system of a great number of messages along the network in a fast and efficient way; and also, allows the users to receive notifications almost instantly about new messages and alerts – all of it without the necessity of a central server.

Since Twister uses end-to-end encryption, if intercepted, the private direct messages cannot be read by any other person apart from the addressee. The code used is the elliptic curve cryptography (different from the one used by the NSA) that is used in Bitcoin. It is thought to give a security level similar to a RSA code of 3072 bits. The data is not stored anywhere, so it cannot be used by any other cut. As a consequence, if a user loses their entry password, it is impossible for them to access their private messages.

Because it is a peer-to-peer system, there is not a central server from which your publications may be compiled (see PRISM). 
As Freitas explains, the system is designed in a way that the users cannot know if the other is online, their IP address, or what messages have been read. This information is not registered anywhere. Despite this, Freitas warns to the users that anonymity may not be total depending on the circumstances.

Platforms 
Twister was developed under the Linux environment.

Freitas has migrated successfully the system to Android and OS X.

One of the long-term objectives of the program is to move the whole cryptographic code of the implementation to the interface of the user of the browser. This way, users would be capable of accessing Twister through any client platform that they use, choosing any third-party server and still maintaining the security of their private passwords at all times.

Functionality 
The first Twister prototype is intended for reproducing the basic characteristics of any microblogging platform, including:
 Searching users and profiles of navigation
 Follow/unfollow
 Sending text messages limited to 140 characters
 Broadcasting and answering messages 
 Browsing through mailing routes, mentions, hashtags and direct messages (private)
Private messages require the addressee to following of the speaker, which is a common requisite in most of the existing platforms.

Some other characteristics can be difficult to implement in a completely decentralized system, requiring more effort. This includes the arbitrary register of the words in the posts and the recompilation of hashtags to find out the main tendencies.

Security 

Twister uses the same parameters of elliptic curves as Bitcoin: . This is not the curve that was usually implicated by the NSA, called sec256r1. A 256 bits of public-key cryptography (no comprometido), ECC must proportionate a security similar to a key RSA of 3072 bits (at least that is what is said by the experts) .

They usually stimulate the people who try to break the security in the systems with something that everyone desires, money. There are millions of $ USD on the table, coded with keys secp256k1 Bitcoin.

The direct application of messages encoding is based on an example code that was published on the Internet by Ladar Levison of Lavabit. It is known that Ladar took his service down because he denied cooperating with the US government that allows the control of all its clients.

Decentralized Net 

Twister is a platform of microblogging peer-to-peer.
This means that the communication is established between computers without going through a central node that would be the one who recorded the information.

There is not a company behind that provides the server or the machinery used, and that can detect in that case the conversations.

Censored 
People who run a node can delete a user's posts in the DHT, but not block the user's account.

Completely private 
Due to the fact that the messages are sent directly from a user to another, without going through a central node, and also, in an encrypted way, – from beginning to end, it is encrypted on the exit and decrypted on the arrival – they travel in a private way through the web as a black-box. Besides, the IP directions are also protected.

Anonymity 
In this application, the IP address is not recorded at any time, which avoids being tracked by an entity or company.
 
According to Freitas, this guarantees anonymity but does not mean that the IP address will not be detected from the ISP (Internet service provider); rather, it means the content of the message will not be visible except to someone who can decrypt it, breaking the algorithms.

In order to be 100% anonymous, the user would have to use a browser that masks the IP address, such as Tor or similar.

References

External links
 
 Building a Better Twitter: A Study of the Twitter Alternatives GNU Social, Quitter, rstat.us, and Twister

Distributed computing
Text messaging
Social networking services
Free software
Microblogging software
Android (operating system) software
Anonymity networks
Peer-to-peer computing
Brazilian inventions
Software using the BSD license
Software using the MIT license