This is an old revision of the document!


Signal

Signal

An instant messaging, voice calling and video calling[66] application for iOS and Android. It uses end-to-end encryption protocols to secure all communications to other Signal users.

Signal can be used to send end-to-end encrypted group messages, attachments and media messages to other Signal users. All calls are made over a Wi-Fi or data connection and are free of charge, including long distance and international.

Signal has a built-in mechanism for verifying that no man-in-the-middle attack has occurred. Signal Messenger has set up dozens of servers to handle the encrypted calls in more than 10 countries around the world to minimize latency.

The clients are published under the GPLv3 license.

Signal Desktop

A standalone desktop client for certain Windows, MacOS and Linux distributions that can link with a Signal mobile client.

Previously a Chrome app.

The software is published under the GPLv3 license.

Signal Protocol

A non-federated cryptographic protocol that combines the Double Ratchet algorithm, prekeys, and a 3-DH handshake.

Signal Messenger maintains the following Signal Protocol libraries:

  • libsignal-protocol-c: A library written in C and published under the GPLv3 license with additional permissions for Apple's App Store.[71]
  • libsignal-protocol-java: A library written in Java and published under the GPLv3 license.[72]
  • libsignal-protocol-javascript: A library written in JavaScript and published under the GPLv3 license.