If you have a fully end-end encrypted app, should the push messages sent to the APNS or GCM also be encrypted.

The payload only contains message ids, from uid n conversation gid. Is there a major risk if we don't encrypt this ?

How do other Apps like WhatsApp or Signal do it ? I read Signal only sends a wakeup call with no extra details in their payload of Push notifications.

  • 1
    Question is: what is the cost of encrypting the payload? If it's minor, why not do it?
    – Tom K.
    Jan 19, 2018 at 9:00
  • 1
    Also depends on how sensitive your message feed is. Is it possible that your users could get in trouble for simply requesting your push messages? And by the way: Signal and WhatsApp are maybe not the best examples for secure chat apps. They recently got some bad press because their group chat features are not as secure as advertised.
    – Philipp
    Jan 19, 2018 at 10:35
  • Could you elaborate this a little ? _ it possible that your users could get in trouble for simply requesting your push messages?_ What are your best examples of secure chat apps ? Jan 20, 2018 at 12:48

2 Answers 2


I think you should encrypt this, because of profiling data leak, this information can contain the time of chat between two clients (even they delete messages) and it's very good for branding, you can say you have the fully encrypted application. but to determinate the actual risk you need to ask your self, with that information like "message ids" what you can get about the user, when I say you I mean every person with access to the database and server. can you find out the message from who and for who? if yes its data leak risk.

about the signal app you according to this link they have data leak in the desktop application(but they send text body in notifications its nightmare) but in your case, you don't send text body to the clients.

according to whats app faq: your messages, photos, videos, voice messages, documents, status updates, and calls are secured from falling into the wrong hands.

its seems they don't encrypt notifications. but zulip mobile encrypt notifications


It all depends on the level of security you want for your users/clients or what your users/clients require. Usually message IDs are not much of an information for an attacker who wants to know your conversations.

I don't know how Whatsapp do it but Apple has UNNotificationServiceExtension which allows you to fully encrypt payload of notification through APNS and then let the app do the decryption before displaying the notification. I am sure there is a similar API in android.

And since there are already APIs that helps you get this done very easily.. why take the risk of not encrypting?!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.