Cryptocat is a discontinued
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
desktop application intended to allow encrypted
online chat
Online chat is any direct text-, audio- or video-based (webcams), one-on-one or one-to-many ( group) chat (formally also known as synchronous conferencing), using tools such as instant messengers, Internet Relay Chat (IRC), talkers and possi ...
ting available for
Windows
Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
,
OS X
macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
, and
Linux
Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
. It uses
end-to-end encryption
End-to-end encryption (E2EE) is a method of implementing a secure communication system where only communicating users can participate. No one else, including the system provider, telecom providers, Internet providers or malicious actors, can ...
to secure all communications to other Cryptocat users. Users are given the option of independently verifying their buddies' device lists and are notified when a buddy's device list is modified and all updates are verified through the built-in update downloader.
Cryptocat was created by
Nadim Kobeissi
Nadim Kobeissi (; born 28 September 1990) is a French-Lebanese computer science researcher specialized in applied cryptography. He is the author of Cryptocat, an open-source encrypted web chat client. Kobeissi is also known for speaking publicly ...
and further developed along with a community of open source contributors and is published under the terms of the
GPLv3
The GNU General Public Licenses (GNU GPL or simply GPL) are a series of widely used free software licenses, or ''copyleft'' licenses, that guarantee end users the freedom to run, study, share, or modify the software. The GPL was the first ...
license, although it has since been discontinued.
History
Cryptocat was first launched on 19 May 2011 as a
web application
A web application (or web app) is application software that is created with web technologies and runs via a web browser. Web applications emerged during the late 1990s and allowed for the server to dynamically build a response to the request, ...
.
In June 2012, Kobeissi said he was detained at the U.S. border by the
DHS and questioned about Cryptocat's censorship resistance. He tweeted about the incident afterwards, resulting in media coverage and a spike in the popularity of the software.
In June 2013, security researcher Steve Thomas pointed out a security bug that could be used to decrypt any group chat message that had taken place using Cryptocat between September 2012 and 19 April 2013.
Private messages were not affected, and the bug had been resolved a month before. In response, Cryptocat issued a security advisory, requested that all users ensure that they had upgraded, and informed users that past group conversations may have been compromised.
In February 2014, an audit by iSec Partners criticized Cryptocat's authentication model as insufficient. In response, Cryptocat made improvements to user authentication, making it easier for users to authenticate and detect
man-in-the-middle attack
In cryptography and computer security, a man-in-the-middle (MITM) attack, or on-path attack, is a cyberattack where the attacker secretly relays and possibly alters the communications between two parties who believe that they are directly communi ...
s.
In February 2016, citing dissatisfaction with the project's current state after 19 months of non-maintenance, Kobeissi announced that he would be taking Cryptocat temporarily offline and discontinuing the development of its mobile application, pending a complete rewrite and relaunch of the software.
In March 2016 Kobeissi announced the re-release of Cryptocat, rewritten completely as desktop software instead of the original web application software, as a public beta and the resumption of the service. The new desktop-centric approach allowed Cryptocat to benefit from stronger desktop integration, in a style similar to
Pidgin
A pidgin , or pidgin language, is a grammatically simplified form of contact language that develops between two or more groups of people that do not have a language in common: typically, its vocabulary and grammar are limited and often drawn f ...
.
In February 2019, it was announced that Cryptocat would be discontinued. As of December 2019, the cryptocat domain is for sale and links to the site for the
Wire messenger.
Features
Cryptocat allows its users to set up
end-to-end encrypted chat conversations. Users can exchange one-to-one messages, encrypted files, photos as well as create and share audio/video recordings. All devices linked to Cryptocat accounts will receive
forward secure messages, even when offline.
All messages, files and audio/video recordings sent over Cryptocat are end-to-end encrypted. Cryptocat users link their devices to their Cryptocat account upon connection, and can identify each other's devices via the client's device manager in order to prevent
man-in-the-middle attack
In cryptography and computer security, a man-in-the-middle (MITM) attack, or on-path attack, is a cyberattack where the attacker secretly relays and possibly alters the communications between two parties who believe that they are directly communi ...
s. Cryptocat also employs a
Trust on first use mechanism in order to help detect device identity key changes.
Cryptocat also includes a built-in auto-update mechanism that automatically performs a signature check on downloaded updates in order to verify authenticity, and employs TLS
certificate pinning in order to prevent network impersonation attacks.
Originally in 2013, Cryptocat offered the ability to connect to Facebook Messenger to initiate encrypted chatting with other Cryptocat users. According to the developers, the feature was meant to help offer an alternative to the regular Cryptocat chat model which did not offer long-term contact lists. This feature was disconnected in November 2015.
Reception and usage
In June 2013, Cryptocat was used by journalist
Glenn Greenwald
Glenn Edward Greenwald (born March 6, 1967) is an American journalist, author, and former lawyer.
In 1996, Greenwald founded a law firm concentrating on First Amendment to the United States Constitution, First Amendment litigation. He began blo ...
while in
Hong Kong
Hong Kong)., Legally Hong Kong, China in international treaties and organizations. is a special administrative region of China. With 7.5 million residents in a territory, Hong Kong is the fourth most densely populated region in the wor ...
to meet
NSA whistleblower
Edward Snowden
Edward Joseph Snowden (born June 21, 1983) is a former National Security Agency (NSA) intelligence contractor and whistleblower who leaked classified documents revealing the existence of global surveillance programs.
Born in 1983 in Elizabeth ...
for the first time, after other encryption software failed to work.
In November 2013, Cryptocat was banned in
Iran
Iran, officially the Islamic Republic of Iran (IRI) and also known as Persia, is a country in West Asia. It borders Iraq to the west, Turkey, Azerbaijan, and Armenia to the northwest, the Caspian Sea to the north, Turkmenistan to the nort ...
, shortly after the election of Iran's new president
Hassan Rouhani
Hassan Rouhani (; born Hassan Fereydoun, 12 November 1948) is an Iranian peoples, Iranian politician who served as the seventh president of Iran from 2013 to 2021. He is also a sharia lawyer ("Wakil"), academic, former diplomat and Islamic cl ...
who had promised more open Internet laws.
Cryptocat was listed on the
Electronic Frontier Foundation
The Electronic Frontier Foundation (EFF) is an American international non-profit digital rights group based in San Francisco, California. It was founded in 1990 to promote Internet civil liberties.
It provides funds for legal defense in court, ...
's "Secure Messaging Scorecard" from 4 November 2014 until 13 March 2016. During that time, Cryptocat had a score of 7 out of 7 points on the scorecard. It had received points for having communications encrypted in transit, having communications encrypted with keys the provider did not have access to (
end-to-end encryption
End-to-end encryption (E2EE) is a method of implementing a secure communication system where only communicating users can participate. No one else, including the system provider, telecom providers, Internet providers or malicious actors, can ...
), making it possible for users to independently verify their correspondent's identities, having past communications secure if the keys were stolen (
forward secrecy), having its code open to independent review (
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
), having its security designs well-documented, and having completed an independent security audit.
Architecture
Encryption
Cryptocat uses a
Double Ratchet Algorithm in order to obtain
forward and future secrecy across messages, after a session is established using a four-way
Elliptic-curve Diffie–Hellman
Elliptic-curve Diffie–Hellman (ECDH) is a key agreement protocol that allows two parties, each having an Elliptic curve, elliptic-curve public–private key pair, to establish a shared secret over an insecure channel. This shared secret may be di ...
handshake. The handshake mixes in long-term identity keys, an intermediate-term signed pre-key, and a one-time use pre-key. The approach is similar to the encryption protocol adopted for encrypted messaging by the
Signal
A signal is both the process and the result of transmission of data over some media accomplished by embedding some variation. Signals are important in multiple subject fields including signal processing, information theory and biology.
In ...
mobile application. Cryptocat's goal is for its messages to obtain confidentiality, integrity, source authenticity, forward and future secrecy and indistinguishability even over a network controlled by an active attacker.
The forward secrecy features of the protocol that Cryptocat uses are similar to those first introduced by
Off-the-Record Messaging
Off-the-record Messaging (OTR) is a cryptographic protocol that provides encryption for instant messaging conversations. OTR uses a combination of Advanced Encryption Standard, AES symmetric-key algorithm with 128 bits key length, the Diffie–Hel ...
.
Cryptocat uses the
Advanced Encryption Standard
The Advanced Encryption Standard (AES), also known by its original name Rijndael (), is a specification for the encryption of electronic data established by the U.S. National Institute of Standards and Technology (NIST) in 2001.
AES is a variant ...
in
Galois/Counter Mode
In cryptography, Galois/Counter Mode (GCM) is a mode of operation for symmetric-key cryptographic block ciphers which is widely adopted for its performance. GCM throughput rates for state-of-the-art, high-speed communication channels can be achi ...
for authenticated encryption,
Curve25519 for Elliptic curve Diffie-Hellman shared secret agreement,
HMAC-SHA256
In cryptography, an HMAC (sometimes expanded as either keyed-hash message authentication code or hash-based message authentication code) is a specific type of message authentication code (MAC) involving a cryptographic hash function and a secr ...
for key derivation and
Ed25519 for signing.
In order to limit the effect of a long-term identity key compromise, long-term keys are used exclusively once for the initial
Authenticated Key Exchange, and once for signing a newly generated intermediate-term signed pre-key.
For the transport layer, Cryptocat adopts the
OMEMO Multi-End Message and Object Encryption standard, which also gives Cryptocat multi-device support and allows for offline messaging.
Network
Cryptocat's network relies on a
XMPP
Extensible Messaging and Presence Protocol (abbreviation XMPP, originally named Jabber) is an Open standard, open communication protocol designed for instant messaging (IM), presence information, and contact list maintenance. Based on XML (Ext ...
configuration served over
WebSockets. According to the project's mission statement, Cryptocat's network only relays encrypted messages and does not store any data.
In addition to the Cryptocat client's end-to-end encryption protocol, client-server communication is protected by
TLS.
Distribution
From March 2011 until March 2016, Cryptocat was officially distributed through the
Google Chrome Web Store, the
Apple App Store
The App Store is an app marketplace developed and maintained by Apple, for mobile apps on its iOS and iPadOS operating systems. The store allows users to browse and download approved apps developed within Apple's iOS SDK. Apps can be download ...
and other official channels controlled by targeted platforms. After Cryptocat's re-write into desktop software in March 2016, the software became distributed exclusively through Cryptocat's own servers, which also handle signed update delivery.
See also
*
Comparison of instant messaging clients
*
Freedom of information
*
GNU Project
The GNU Project ( ) is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and Computer hardware, computing dev ...
*
Hacktivism
*
Internet privacy
Internet privacy involves the right or mandate of personal privacy concerning the storage, re-purposing, provision to third parties, and display of information pertaining to oneself via the Internet. Internet privacy is a subset of data privacy. P ...
References
Further reading
*
*
*
*
*
External links
*
''Cryptocat''on
GitHub
GitHub () is a Proprietary software, proprietary developer platform that allows developers to create, store, manage, and share their code. It uses Git to provide distributed version control and GitHub itself provides access control, bug trackin ...
{{Authority control
Cryptographic software
End-to-end encryption
Internet privacy software
Free security software
Free instant messaging clients
Software using the GNU General Public License
Free software programmed in JavaScript