Enhanced and security-focused fork of Signal.
Find a file
Oscar Mira 36d61ff8ca
Some checks failed
Test / Validate Gradle wrapper (push) Has been cancelled
Test / Run tests (push) Has been cancelled
Bump revision number
2025-04-25 22:03:07 +02:00
.github Update bug_report.yml 2024-12-13 02:06:56 +01:00
.idea Update XML code style settings 2025-02-14 13:30:46 +01:00
app Bump revision number 2025-04-25 22:03:07 +02:00
billing Fix hot loop when creating a subscription to remote backups. 2024-12-09 08:58:15 -05:00
build-logic Merge tag 'v7.39.2' into molly-7.39 2025-04-10 01:12:02 +02:00
contacts Merge tag 'v7.38.7' into molly-7.38 2025-04-05 10:35:53 +02:00
core-ui Restore navbar colors 2025-04-10 01:12:04 +02:00
core-util Merge tag 'v7.39.2' into molly-7.39 2025-04-10 01:12:02 +02:00
core-util-jvm Merge tag 'v7.39.2' into molly-7.39 2025-04-10 01:12:02 +02:00
device-transfer Remove Hamcrest from project files. 2025-01-21 14:22:40 -05:00
donations Merge tag 'v7.39.2' into molly-7.39 2025-04-10 01:12:02 +02:00
glide-config Update Glide to use ksp, drop kapt. 2024-01-31 22:12:17 -05:00
gradle Merge tag 'v7.39.2' into molly-7.39 2025-04-10 01:12:02 +02:00
image-editor Upgrade to kotlin 2.1.0 2024-12-21 12:39:10 -05:00
libfakegms Add gms.wallet stubs and foss flavor to donations 2024-07-23 16:52:59 +02:00
libnetcipher Fix API 34 compatibility 2024-09-04 19:06:10 +02:00
libsignal-service Merge tag 'v7.39.5' into molly-7.39 2025-04-16 20:41:47 +02:00
lintchecks Merge tag 'v7.32.1' into molly-7.32 2025-01-31 16:49:38 +01:00
paging Upgrade to kotlin 2.1.0 2024-12-21 12:39:10 -05:00
photoview Converted all minor modules to .gradle.kts. 2023-12-04 16:18:11 -05:00
qr Merge tag 'v7.29.0' into molly-7.29 2025-01-08 14:25:07 +01:00
reproducible-builds Update compileSdk to 35. 2024-12-21 12:39:10 -05:00
spinner Merge tag 'v7.30.1' into molly-7.30 2025-01-18 11:20:26 +01:00
sticky-header-grid Converted all minor modules to .gradle.kts. 2023-12-04 16:18:11 -05:00
video Merge tag 'v7.39.2' into molly-7.39 2025-04-10 01:12:02 +02:00
wire-handler Update to Kotlin 1.9.20, AGP 8.4.0, and Gradle 8.6 2024-06-05 15:45:59 -04:00
.dockerignore Eliminate Docker dependency for running unit tests 2023-03-22 23:26:58 +01:00
.editorconfig Merge tag 'v7.39.2' into molly-7.39 2025-04-10 01:12:02 +02:00
.gitattributes Update .gitattributes for merge conflict resolution 2024-04-23 20:27:47 +02:00
.gitignore Merge tag 'v7.29.0' into molly-7.29 2025-01-08 14:25:07 +01:00
.tool-versions Add a .tool-versions to indicate which version of java should be used. 2024-11-21 10:36:09 -05:00
build.gradle.kts Merge tag 'v7.29.0' into molly-7.29 2025-01-08 14:25:07 +01:00
BUILDING.md Migrate to new docker compose syntax 2024-08-04 16:51:35 +02:00
constants.gradle.kts Merge tag 'v7.39.2' into molly-7.39 2025-04-10 01:12:02 +02:00
Dockerfile Merge tag 'v7.39.2' into molly-7.39 2025-04-10 01:12:02 +02:00
gradle.properties Merge tag 'v7.39.2' into molly-7.39 2025-04-10 01:12:02 +02:00
gradlew Update Gradle to 7.4.1. 2022-03-17 12:12:55 -04:00
gradlew.bat Update Gradle to 7.4.1. 2022-03-17 12:12:55 -04:00
LICENSE Update top-level LICENSE file to AGPL 2023-05-05 12:48:53 -03:00
NOTICE Initial Project Import 2011-12-20 10:20:44 -08:00
README-ORIG.md Merge tag 'v7.39.2' into molly-7.39 2025-04-10 01:12:02 +02:00
README.md Remove comment about checking for easy label. 2025-01-13 21:49:50 -05:00
settings.gradle.kts Restrict Google maven repository scope in settings.gradle.kts 2025-02-18 12:41:30 +01:00

Molly

Test Reproducible build Translation status Financial contributors

Molly is a hardened version of Signal for Android, the fast simple yet secure messaging app by Signal Foundation.

Introduction

Back in 2018, Signal allowed the user to set a passphrase to secure the local message database. But this option was removed with the introduction of file-based encryption on Android. Molly brings it back again with additional security features.

Molly connects to Signal's servers, so you can chat with your Signal contacts seamlessly. Before signing up, please remember to review the Signal Terms & Privacy Policy.

We update Molly every two weeks to include the latest Signal features and fixes. The exceptions are security patches, which are applied as soon as they are available.

Download

You can download the app from GitHub's Releases page or install it from the Molly F-Droid Repo:

Get it on F-Droid

There are two versions available: Molly or Molly-FOSS. Learn the differences below and download the right one for you.

You can also get Molly-FOSS from Accrescent:

Get it on Accrescent

To verify the APK, use the following signing certificate fingerprints:

SHA-256: 6aa80fdf4a8cc13737cfb434fc0cde486f09cf8fcda21a67bea5ee1ca2700886
SHA-1: 49ce310cdd0c09c8c34eb31a8005c6bf13f5a4f1

Features

Molly has unique features compared to Signal:

  • Data encryption at rest - Protect your app database with passphrase encryption
  • Secure RAM wiper - Securely shred sensitive data from device memory
  • Automatic lock - Lock the app automatically under user-defined conditions
  • Multi-device support - Link multiple devices to a single Signal account, including Android tablets
  • UnifiedPush - Receive push notifications without Google through the UnifiedPush protocol
  • Block unknown contacts - Block messages and calls from unknown senders for security and anti-spam
  • Disappearing call history - Clear call logs together with expiring messages
  • Custom backup scheduling - Set daily or weekly interval and the number of backups to retain
  • SOCKS proxy and Tor support - Tunnel app network traffic via proxy and Orbot
  • Debug logs are optional - Android logging can be disabled

Additionally, you will find all the features of Signal, along with some minor tweaks and improvements.

Free and Open-Source

Molly is open-source just like Signal. But Signal depends on proprietary Google software for some features.

To support a 100% free and auditable app, Molly comes in two versions: one with proprietary blobs like Signal, and one without. They are called Molly and Molly-FOSS, respectively. You can install the flavor of your choice at any time, and it will replace any previously installed version. The data and settings will be preserved so that you do not have to re-register.

Feature Comparison

Here's how some key features work in different versions of the app:

Feature Molly-FOSS Molly Signal
Push notifications (1) ✔ WebSocket
✔ UnifiedPush
⚠ FCM
✔ WebSocket
✔ UnifiedPush
⚠ FCM
✔ WebSocket
Location sharing ✔ OpenStreetMap ⚠ Google Maps ⚠ Google Maps

(1) You might need to turn off system-level battery restrictions for the app to receive messages when the app isn't open.

UnifiedPush

UnifiedPush is an open standard for delivering push notifications, offering a privacy-friendly alternative to Google's proprietary FCM service. It allows users to choose their own notification distributor.

Important

To use UnifiedPush notifications, you need access to a MollySocket server to link your Signal account to UnifiedPush. You can either run MollySocket on a server you control (strongly advised) or use a public instance.

Currently, UnifiedPush is unavailable for linked devices.

Compatibility with Signal

Molly and Signal apps can be installed on the same device. If you need a second number for messaging, you can register Molly with a different number while keeping Signal active. Any phone number capable of receiving SMS or calls can be used during registration.

If you wish to use the same phone number for both Molly and Signal, you must register Molly as a linked device. Registering the same number independently on both apps will result in only the most recently registered app staying active, while the other will go offline.

For Signal users looking to switch to Molly without changing the phone number, please refer to the Migrating From Signal guide on the wiki.

Backups

Backups are fully compatible. Signal backups can be restored in Molly, and the other way around, simply by choosing the backup folder and file. However, to import a backup from Signal, you must use a matching or newer version of Molly.

Feedback

Reproducible Builds

Molly supports reproducible builds, so that anyone can run the build process to reproduce the same APK as the original release.

Please check the guide in the reproducible-builds directory.

Changelog

See the Changelog to view recent changes.

License

License and legal notices in the original README.

Disclaimer

This project is NOT sponsored by Signal Messenger or the Signal Foundation.

The software is produced independently of Signal and carries no guarantee about quality, security or anything else. Use at your own risk.