This is an old revision of the document!


Signal

Homepage: https://signal.org GitHub Source: https://github.com/signalapp

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.[27][62] 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.[25] 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.[20] 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.[42] Previously a Chrome app.[39] 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.[70] 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.[73]