Signal is known for its robust, seemingly impossible encryption technology for securing users’ data. However, Cellebrite now claims to have devised a technique to decrypt the Signal app data on Android devices. (Though, the technical details don’t sound like Cellebrite can actually break Signal’s encryption.).
Cellebrite To Decrypt Signal App
Recently, Cellebrite – a known Israeli digital forensics firm – has claimed to decrypt the Signal app. Specifically, these claims relate to the decryption of data stored on Android devices.
Cellebrite Physical Analyzer now allows lawful access to Signal app data. At Cellebrite, we work tirelessly to empower investigators in the public and private sector to find new ways to accelerate justice, protect communities, and save lives.
While this post doesn’t include any more details, a longer web-archived version of the article also exists.
However, Cellebrite later edited (and shortened) their post, for which, they explained,
The original blog post on the company website was replaced because it was an internal draft.
In the previous version, the company has detailed the precise steps to use the tool for decryption, which also explains a lot more.
Briefly, the tool works by extracting the decryption key, the “AndroidSecretKey” to read the Signal’s database stored on the device. This AndroidSecretKey is stored in the Android Keystore.
After obtaining the key, they then decrypted the database, about which, they described,
Once the decrypted key is obtained, we needed to know how to decrypt the database. To do it, we used Signal’s open-source code and looked for any call to the database.
After finding this, we simply ran SqlCipher on the database with the decrypted key and the values 4096 and 1 for page size and kdf iterations. By doing so we managed to decrypt the database.
They could then work further to decrypt the encrypted attachments as well.
Signal’s Response To Cellebrite’s Claims
As Cellebrite’s post gained media traction, Moxie Marlinspike was quick to respond. Nonetheless, to make things clearer for the users, Signal has also released a detailed blog post addressing the matter.
Specifically, they have elaborated that Cellebrite’s tool isn’t dangerous unless they have physical access to the device. Cellebrite, in itself, does not perform surveillance activities. As stated in the post,
It is important to understand that any story about Cellebrite Physical Analyzer starts with someone other than you physically holding your device, with the screen unlocked, in their hands. Cellebrite does not even try to intercept messages, voice/video, or live communication, much less “break the encryption” of that communication. They don’t do live surveillance of any kind.
As for the users concerned about their security, Signal’s disappearing messages feature is always there.
If you are concerned about a situation where someone else might end up physically holding your device with the screen unlocked in their hands, Signal can still help. Features like disappearing messages and view-once media messages allow you to communicate more ephemerally and keep your conversations tidy.
Should Cellebrite Celebrate?
Although, Cellebrite’s work to decrypt the Signal client’s database is interesting. However, it has a few limitations.
At first, as the method explains, this tool works for Android devices only. It’s unclear if Cellebrite can do the same for Signal iOS clients as well.
Secondly, it requires explicit access to the target device in the unlocked state. Only then, it would be possible for someone to browse and find the Signal app’s database.
This particular limitation was what the Signal’s creator and co-founder, Moxie Marlinspike, responded,
This (was!) an article about "advanced techniques" Cellebrite uses to decode a Signal message db… on an *unlocked* Android device! They could have also just opened the app to look at the messages.
The whole article read like amateur hour, which is I assume why they removed it.
— Moxie Marlinspike (@moxie) December 11, 2020
So, it sounds like Cellebrite’s tool doesn’t really affect Signal encryption in itself. However, a few key things remain unanswered and may bother Signal users.
Particularly, it isn’t clear if someone with remote access to the target device can crack the users’ Signal data or not.
In case of a ‘yes’, then this tool would make Signal users’ privacy at risk since an adversary can easily gain access to a target device via a malware attack. We already know of countless incidents where malicious apps installed malware on users’ devices to steal data. Perhaps, someone with a precise aim in mind can easily spy on Signal users.
If not, then Signal users might not need to worry much until they lose physical access to their device.
Anyhow, using disappearing messages seems a pretty helpful feature in the case of both physical as well as remote access threats.