Twister (software)

Last updated
Twister
Original author(s) Miguel Freitas
Developer(s) Open-source on Github, Miguel Freitas, Lucas Leal
Initial releaseDecember 30, 2013;9 years ago (2013-12-30)
Repository
Written in C++
Operating system FreeBSD, [1] Linux, [2] Mac OS X, [3] Microsoft Windows, [4] and Android [5]
Size 1 MB [ citation needed ]
Available inEnglish, Russian
Type Social network service, microblogging
License MIT and BSD licenses
Website twister.net.co

Twister is a decentralized, experimental peer-to-peer microblogging program which uses end-to-end encryption to safeguard communications. [6] Based on BitTorrent- and Bitcoin-like protocols, [7] it has been likened to a distributed version of Twitter. [8] [9]

Contents

In 2020, original author Miguel Freitas said that he would no longer be leading Twister development for the "foreseeable future". The Twister network has continued functioning, however, and Freitas suggested that others might want to fork the project. It was also announced that the website might go offline, since its hosting was due to expire. The Twister core had been at version 0.9.40 since 2018. [10] Its source code remains available on GitHub. [11]

Overview

Twister is a Twitter-like microblogging platform that utilizes the same blockchain technology as Bitcoin and the file-exchange method of BitTorrent, both based on P2P technology. The website seobloggingpro.com ranked Twister the number-13 microblogging site, [12] and seosandwitch.com ranked Twister the number-four microblogging site. [13]

Twister was alpha-phase experimental software in 2014, implemented as a distributed file sharing system. User registration and authentication are provided by a Bitcoin-like network, so it does not depend on a central authority. Distribution of posts uses a Kademlia distributed hash table (DHT) network and BitTorrent-like swarms, both provided by libtorrent. [14]

Miguel Freitas, aiming to build a censor-resistant public posting platform, [15] began development of Twister in July 2013 to address free-speech and privacy concerns. Building on Bitcoin and Bittorrent, he built the core structure in October 2013. Lucas Leal was hired to create HTML and CSS for the user interface, with Freitas writing the required JavaScript code. Twenty-five hundred user accounts were registered in the platform's first six days of operation. [16]

Twister cannot be incapacitated (since there is no central point to attack), and uses end-to-end encryption. As a consequence of decentralisation, a user will be unable to regain access to their "account" if they lose access to their secret key. [17]

History

Brazilian computer engineer and programmer Miguel Freitas started developing the social network after learning about the massive surveillance programs of the US's National Security Agency (NSA) from NSA whistleblower Edward Snowden. He began to worry about the accessibility of a large quantity of information controlled by a single entity under American jurisdiction.

According to Freitas, Twitter is the social network that has been the most prominent in promoting democracy and the organisation of protests. He built Twister based on privacy-preserving technology due to the risks involved in providing personal information on social networks in light of mass surveillance conducted by the NSA.

Freitas and his developer, Leal, built the application's alpha version for Android, Linux and OS X. Versions for Windows and iPhone are not planned.

Technology

Twister is a distributed system that uses peer-to-peer architecture. Unlike other decentralised networks, it does not require the user to use their own server or trust a third-party server to use it. Distribution is achieved through the Bitcoin protocol, on a different network than that used by the cryptocurrency. The protocol handles the registration of users, and the Twister network verifies the users' names and that a message posted by a user originated from that user. Messages are transmitted through the BitTorrent protocol. Because it is a peer-to-peer system, there is no central server from which information may be collected. Twister was developed in Linux, and was ported to Android and OS X.

Functionality

The first Twister prototype intended to reproduce the basic characteristics of microblogging platforms, including:

Private messages require the addressee to follow the speaker.

Security

Twister has no central node to mediate messages. It uses 256-bit ECC encryption with the same secp256k1 parameters as Bitcoin, reportedly providing similar security to a 3072-bit RSA key. [17] The direct message application is based on code published by Ladar Levison of Lavabit. Peers' IP addresses are not recorded in the application, but network interception can identify data flow between devices. [18]

Related Research Articles

<span class="mw-page-title-main">Peer-to-peer</span> Type of decentralized and distributed network architecture

Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network, forming a peer-to-peer network of nodes.

<span class="mw-page-title-main">Distributed hash table</span> Decentralized distributed system with lookup service

A distributed hash table (DHT) is a distributed system that provides a lookup service similar to a hash table. Key–value pairs are stored in a DHT, and any participating node can efficiently retrieve the value associated with a given key. The main advantage of a DHT is that nodes can be added or removed with minimum work around re-distributing keys. Keys are unique identifiers which map to particular values, which in turn can be anything from addresses, to documents, to arbitrary data. Responsibility for maintaining the mapping from keys to values is distributed among the nodes, in such a way that a change in the set of participants causes a minimal amount of disruption. This allows a DHT to scale to extremely large numbers of nodes and to handle continual node arrivals, departures, and failures.

BitTorrent, also referred to as simply torrent, is a communication protocol for peer-to-peer file sharing (P2P), which enables users to distribute data and electronic files over the Internet in a decentralized manner. The protocol is developed and maintained by Rainberry, Inc., and was first released in 2001.

WASTE is a peer-to-peer and friend-to-friend protocol and software application developed by Justin Frankel at Nullsoft in 2003 that features instant messaging, chat rooms, and file browsing/sharing capabilities. The name WASTE is a reference to Thomas Pynchon's novel The Crying of Lot 49. In the novel, W.A.S.T.E. is an underground postal service.

An anonymous P2P communication system is a peer-to-peer distributed application in which the nodes, which are used to share resources, or participants are anonymous or pseudonymous. Anonymity of participants is usually achieved by special routing overlay networks that hide the physical location of each node from other participants.

The Invisible Internet Project (I2P) is an anonymous network layer that allows for censorship-resistant, peer-to-peer communication. Anonymous connections are achieved by encrypting the user's traffic, and sending it through a volunteer-run network of roughly 55,000 computers distributed around the world. Given the high number of possible paths the traffic can transit, a third party watching a full connection is unlikely. The software that implements this layer is called an "I2P router", and a computer running I2P is called an "I2P node". I2P is free and open sourced, and is published under multiple licenses.

eXeem was a peer-to-peer (P2P) file sharing client using the BitTorrent protocol. eXeem was designed to replace the need for centralized trackers. It largely failed to achieve this goal, and the project was canceled and eXeem's network was shut down by the end of 2005.

The Kad network is a peer-to-peer (P2P) network which implements the Kademlia P2P overlay protocol. The majority of users on the Kad Network are also connected to servers on the eDonkey network, and Kad Network clients typically query known nodes on the eDonkey network in order to find an initial node on the Kad network.

BitTorrent is a proprietary adware BitTorrent client developed by Bram Cohen and Rainberry, Inc. used for uploading and downloading files via the BitTorrent protocol. BitTorrent was the first client written for the protocol. It is often nicknamed Mainline by developers denoting its official origins. Since version 6.0 the BitTorrent client has been a rebranded version of μTorrent. As a result, it is no longer open source. It is currently available for Microsoft Windows, Mac, Linux, iOS and Android. There are currently two versions of the software, "BitTorrent Classic" which inherits the historical version numbering, and "BitTorrent Web", which uses its own version numbering.

<span class="mw-page-title-main">P2PTV</span> Video distribution method

P2PTV refers to peer-to-peer (P2P) software applications designed to redistribute video streams in real time on a P2P network; the distributed video streams are typically TV channels from all over the world but may also come from other sources. The draw to these applications is significant because they have the potential to make any TV channel globally available by any individual feeding the stream into the network where each peer joining to watch the video is a relay to other peer viewers, allowing a scalable distribution among a large audience with no incremental cost for the source.

File sharing is a method of distributing electronically stored information such as computer programs and digital media. Below is a list of file sharing applications, most of them make use of peer-to-peer file sharing technologies.

<span class="mw-page-title-main">Transmission (BitTorrent client)</span> BitTorrent client

Transmission is a BitTorrent client which features a variety of user interfaces on top of a cross-platform back-end. Transmission is free software licensed under the terms of the GNU General Public License, with parts under the MIT License.

Protocol encryption (PE), message stream encryption (MSE) or protocol header encrypt (PHE) are related features of some peer-to-peer file-sharing clients, including BitTorrent clients. They attempt to enhance privacy and confidentiality. In addition, they attempt to make traffic harder to identify by third parties including internet service providers (ISPs). However, encryption will not protect one from DMCA notices from sharing not legal content, as one is still uploading material and the monitoring firms can merely connect to the swarm.

<span class="mw-page-title-main">Tribler</span> Peer-to-peer filesharing software and protocol

Tribler is an open source decentralized BitTorrent client which allows anonymous peer-to-peer by default. Tribler is based on the BitTorrent protocol and uses an overlay network for content searching. Due to this overlay network, Tribler does not require an external website or indexing service to discover content. The user interface of Tribler is very basic and focused on ease of use instead of diversity of features. Tribler is available for Linux, Windows, and OS X.

<span class="mw-page-title-main">Jami (software)</span> Distributed multimedia communications platform

Jami is a SIP-compatible distributed peer-to-peer softphone and SIP-based instant messenger for Linux, Microsoft Windows, macOS, iOS, and Android. Jami was developed and maintained by the Canadian company Savoir-faire Linux, and with the help of a global community of users and contributors, Jami positions itself as a potential free Skype replacement.

Peer-to-peer web hosting is using peer-to-peer networking to distribute access to webpages. This is differentiated from the client–server model which involves the distribution of web data between dedicated web servers and user-end client computers. Peer-to-peer web hosting may also take the form of P2P web caches and content delivery networks.

<span class="mw-page-title-main">Retroshare</span> Free software

Retroshare is a free and open-source peer-to-peer communication and file sharing app based on a friend-to-friend network built by GNU Privacy Guard (GPG). Optionally, peers may exchange certificates and IP addresses to their friends and vice versa.

<span class="mw-page-title-main">InterPlanetary File System</span> Content-addressable, peer-to-peer hypermedia distribution protocol

The InterPlanetary File System (IPFS) is a protocol, hypermedia and file sharing peer-to-peer network for storing and sharing data in a distributed file system. IPFS uses content-addressing to uniquely identify each file in a global namespace connecting IPFS hosts.

<span class="mw-page-title-main">ZeroNet</span> Peer to peer web hosting

ZeroNet is a decentralized web-like network of peer-to-peer users, created by Tamas Kocsis in 2015, programming for the network was based in Budapest, Hungary; is built in Python; and is fully open source. Instead of having an IP address, sites are identified by a public key. The private key allows the owner of a site to sign and publish changes, which propagate through the network. Sites can be accessed through an ordinary web browser when using the ZeroNet application, which acts as a local webhost for such pages. In addition to using bitcoin cryptography, ZeroNet uses trackers from the BitTorrent network to negotiate connections between peers. ZeroNet is not anonymous by default, but it supports routing traffic through the Tor network.

<span class="mw-page-title-main">WebTorrent</span> Peer-to-peer web-based torrent client

WebTorrent is a peer-to-peer (P2P) streaming torrent client written in JavaScript, from the same author, Feross Aboukhadijeh, of YouTube Instant, and the team at WebTorrent and on GitHub, for use in web browsers, as well as a WebTorrent Desktop stand alone version able to bridge WebTorrent and BitTorrent serverless networks.

References

  1. "FreshPorts -- net-p2p/twister". www.freshports.org/. 2014-06-22. Retrieved 2014-08-29.
  2. "Github Default build guide for Linux Twister". twister.net.co/. 2014-01-01. Retrieved 2014-01-11.
  3. "Github build guide for mac". twister.net.co/. 2014-01-08. Retrieved 2014-01-11.
  4. "Github build guide for mac". twister.net.co/. 2014-07-08. Retrieved 2014-01-11.
  5. "FAQ Guide by Twister". twister.net.co/. 2013-10-24. Retrieved 2014-01-11.
  6. Frediani, Carola (18 February 2014). "Making "NSA-Proof" Social Networking Mainstream". Tech President. Archived from the original on 23 August 2015. Retrieved 28 February 2014.
  7. Epstein, Michael (3 February 2013). "Cryptography Apps: How To Keep Your Personal Info Private". Notebook Review. Retrieved 28 February 2014.
  8. Finley, Klint (27 January 2014). "Out in the Open: Teenage Hacker Transforms Web Into One Giant Bitcoin Network". Wired. Retrieved 28 February 2014.
  9. Lunduke, Bryan (21 January 2014). "Previous Article Next Article Test-driving Twister: The NSA-proof Twitter clone". Network World. Retrieved 28 February 2014.
  10. Miguel Freitas (25 June 2020). "News". Twister. Archived from the original on 14 May 2021.
  11. "miguelfreitas/twister-core - Code" . Retrieved 12 July 2022 via GitHub.
  12. "Top 20 Microblogging Sites - Best Microblogging Sites List in 2022 -". 25 October 2020. Retrieved 9 August 2022.
  13. Bhattacharya, Joydeep (12 September 2012). "Microblogging Sites List (Examples)". SEO Sandwitch. Retrieved 9 August 2022.
  14. Hasslberger, Sepp (26 January 2014). "Coming soon: Twister – a distributed p2p microblogging platform". P2P Foundation Blog. Retrieved 28 February 2014.
  15. Freitas, Miguel (7 January 2014). "Twister: The Fully Decentralized P2P Microblogging Platform". Slashdot. Retrieved 28 February 2014.
  16. "Twister: The Fully Decentralized P2P Microblogging Platform". slashdot.org. 2014-01-08. Retrieved 2014-01-11.
  17. 1 2 "FAQ | twister" . Retrieved 2023-05-06.
  18. According to Freitas,[ full citation needed ] this guarantees anonymity but does not mean that the IP address will not be detected by the ISP; rather, it means the content of the message will not be visible except to someone who can decrypt it.