Peer-to-peer messengers – an enemy of the state?

·

Peer-to-peer messenger

In the case of a complete Internet shutdown, communication with friends and family can pose a significant challenge. Hong Kong’s experience has demonstrated that decentralized peer-to-peer (P2P) messaging services that operate without the Internet can be an effective solution, utilizing a mesh network that employs Wi-Fi Direct, Bluetooth, Apple Multipeer Connectivity Framework, ANT+, LoRa, and other technologies.

To ensure efficient communication, it’s advisable to download the maximum number of contacts before the Internet blockade. Otherwise, finding the necessary files can be a hassle. In some cases, individuals with the required files may gain significant authority in their workplace or classroom. This was observed in Belarus in August 2020, where individuals traveled from other parts of the city to obtain Psiphon files.

Historically, wireless mesh networks have been viewed unfavorably by law enforcement agencies.

Mesh-sets

Messaging applications such as FireChat can create a mesh network utilizing Bluetooth and direct Wi-Fi connections. Enabling users to exchange messages and photos offline from devices located within approximately 60 meters of each other. As more users join the network, it expands and becomes more efficient. This differs from most other network technologies, including cellular networks.

Each user serves as a node on the network, allowing messages to be relayed from one device to another en route to the intended recipient(s). If a node on the mesh network goes online. Messages from all users will be delivered to recipients around the world in a batch.

This type of network is particularly useful for automatically creating channels or rooms in the messenger that unite individuals in close proximity to each other. Such as those in the same apartment building, stadium, or concert hall.

Although not originally intended for communication, even networks like Apple AirTag geotags can be adapted for text messaging. Hackers were able to transmit arbitrary text over the Apple Find My network disguised as original encrypted messages with GPS coordinates. The transfer rate was 3 bytes per second, and the network latency ranged from 1 to 60 minutes.

Other companies like Samsung and Amazon have developed similar mesh networks based on the LoRa protocol. These networks can be utilized for peer-to-peer messaging and retrieving data from devices outside of the Internet access zone.

FireChat tragedy

FireChat is a proprietary app developed by the US-based company Open Garden. Which ended its development without making its source code publicly available. The latest version, 9.0.14, was launched about a year and a half ago. However, accessing the w3bsit3-dns.com site from within the Russian Federation is quite challenging. FireChat first debuted in March 2014 on iOS and was later made available on Android in April of the same year. Among the program’s developers and Open Garden’s co-founders were Stanislav Shalunov and Greg Hazel. Who had previously developed the uTorrent torrent client, which boasted a user base of two hundred million.

Entrepreneurs had high hopes that FireChat would become as successful as peer-to-peer (P2P) file-sharing applications. The app envisioned a world where individuals could come together to form a mesh network. Making the internet practically obsolete, and website hosting potentially spread across a distributed network. Such a concept seemed far-fetched.

After the Iraqi government imposed restrictions on internet usage, FireChat quickly gained popularity in Iraq. The app gained more users during the mass protests that took place in Hong Kong in 2014.

Hong Kong protests impact

During the Hong Kong protests, the lack of security in FireChat became apparent. The open mesh network’s architecture meant that all users of the app were visible like radio beacons from a distance of 60 meters or more. Consequently, it was easy for law enforcement to apprehend users, as the app’s presence on the phone was considered evidence. It is believed that hundreds or thousands of users were arrested because of FireChat’s poor security. Additionally, the app lacked encryption, rendering its messages non-private.

The cessation of development and source code publication by Open Garden, the American company behind FireChat. May have been influenced by criticism from information security experts. Alternatively, the team might have realized that their program was not going to enjoy the same level of popularity as torrent applications and was going in the wrong direction.

Offline mesh networks

Initially, FireChat was the only app that allowed users to create offline mesh networks and exchange messages without an internet connection. However, the application, which was meant to facilitate communication, ended up being used for repression and violence. This development is unfortunate.

Moreover, it is even more regrettable if FireChat was specifically created for Hong Kong. Given that the US State Department funded a similar application, Commotion Wireless, on the eve of the Arab Spring in 2011. The intention was good, but the outcome was not.

Following the release of FireChat, Open Garden shifted to electronic SIM cards (eSIM) and promoted its own cryptocurrency, but no news has emerged about these ventures in recent years.

In summary, FireChat was not a high-quality app, considering it was a closed source and required internet access for registration despite working offline afterward. Therefore, it may be for the best that the developers abandoned it.

Walkie-talkie Zello

The Zello internet walkie-talkie, which was prohibited in Russia in April 2017, operates similarly to FireChat in terms of logic. It functions like a traditional walkie-talkie or push-to-talk. Providing users with the ability to listen to voice messages in real-time via the speakerphone without needing to touch their smartphone while staying connected with a large group of users.

While it doesn’t transmit text or images, the application operates similarly to FireChat’s mesh network. Allowing nearby users to connect with one another directly and relay messages along the chain without the need for the internet. What sets it apart is that it employs end-to-end encryption (E2E).

Zello has gained considerable popularity among truckers and motorists in Russia. Allowing drivers to communicate with fellow travelers driving on the same highway to obtain information about speed traps, accidents, and other helpful advice. The state began cracking down on the application following protests by truckers over the imposition of mandatory payment for the passage of heavy vehicles on Russia’s roads (known as the Platon system). The protests were organized through Zello, prompting the government to block the program.

This marks the initial instance when the government attempted to disrupt the functioning of an instant messenger using a VPN. Despite blocking more than 4,000 IP addresses on the AWS Cloud over a year, they were unsuccessful. Subsequently, the RKN attempted to coerce Amazon by threatening to block 26 AWS subnets comprising 13.5 million addresses. Amazon refused to comply, and without its cloud infrastructure, Zello became simple to block.

VPN infrastructure

In 2018, after successfully blocking Zello’s cloud-based VPN infrastructure, authorities decided to apply the same method to block Telegram. However, the messaging service encountered a challenge: Pavel Durov, Telegram’s founder. Invested millions of dollars in purchasing additional AWS instances, while his brother Nikolai and colleagues created a system to bypass blocking through a proxy. Amazon and Google withstood the blocking of their subnets in Russia. As a result, the state was forced to block 18 million AWS IP addresses and Google Cloud. Causing the disruption of the operations of several retail companies, the top 20 banks, private clinics, and thousands of businesses in Russia. After two years of an arduous battle, the government gave up. The head of Roskomnadzor was fired, Telegram was unblocked, and the IP addresses of cloud services were removed from the blacklist.

Crypto messenger Briar

In July 2017, the Briar Peer-to-peer messenger released its first public beta version, after three years of development. This open-source application is of remarkable quality and can be built from the source code with Android Studio’s step-by-step instructions. It is available on app stores such as Google Play and receives regular updates, with the latest version (1.2.20) dating back to April 2, 2021. Briar uses robust cryptography, including end-to-end encryption, to ensure privacy.

By default, the messenger employs the Tor protocol (onion routing) for Internet communication. It creates a Tor-hidden service on the user’s device and connects to the Tor-hidden services of other people on the contact list. If there is no Internet connection, the messenger switches to peer-to-peer communication via Wi-Fi Direct, local area network, or Bluetooth. Briar does not require phone number registration.

What Messenger supports

Messenger supports messaging (excluding file transfers), private groups, blogs/statuses, and RSS import. It also has several useful features, such as app lock via PIN code.

The Briar Peer-to-peer messaging system provides a relatively secure means of adding new contacts through methods like exchanging contacts or using unique links. Or by scanning a QR code from another phone, requiring the physical presence of the contact. This project is run by six volunteers as a non-profit initiative. With the code mainly written in Java (as well as some Kotlin, Python, and Ruby), and is licensed under GPLv3. After its initial release, the code underwent an independent security audit by Cure53. A reputable auditor of various software projects including SecureDrop, Cryptocat, and Dovecot. Which confirms Briar’s trustworthiness as a peer-to-peer communication solution.

One downside to Briar is that it is only available for Android devices. and there are no official plans for an iOS version. This is due to the strict restrictions that the iOS platform imposes on developers, which make it difficult to implement some of the required peer-to-peer features, as well as the closed nature of the platform. However, since the source code is open, anyone can try to create a third-party implementation of Briar for iOS or other platforms.

Matrix, Riot, Element

The Matrix network’s official client, Element (previously known as Riot), lacks support for offline peer-to-peer communication and mesh networking. Despite this drawback, it has gained popularity in recent times, with a user base comparable to that of Briar or more. It provides end-to-end encryption, along with bridges to other platforms such as IRC, Slack, Telegram, and Jitsi Meet. However, the absence of offline peering is a notable limitation of this client.