I have a presentation to make on Social Network Security. I have been doing some research regarding this.

I did a lot of searching, but was unable to find the Crypto Algorithm used by WhatsApp for end-to-end Encryption.

  • Maybe just as import is their implementation of said algorithms though.
    – Jacco
    Commented Apr 13, 2016 at 8:14

3 Answers 3


WhatsApp partnered with Open Whisper Systems for the cryptographic portions of messaging. The process involves a variation of Off the Record (OTR), Perfect Forward Secrecy (PFS), and the Double Ratchet Algorithm (DRA).

Open Whisper Systems has blog posts on cryptographic ratcheting, and their Signal Protocol Integration for WhatsApp.

  • Thanks alot.. Do Facebook or any other social site also use any Cryptography algorithms ? Commented Apr 12, 2016 at 12:06
  • 6
    @TahaKirmani here is a detailed article about those who are, and those who aren't using encryption recode.net/2015/12/21/is-your-messaging-app-encrypted
    – munkeyoto
    Commented Apr 12, 2016 at 13:14
  • 4
    "Do Facebook or any other social site also use any Cryptography algorithms?" -- They almost certainly use TLS! Commented Apr 12, 2016 at 18:59

Whatsapp uses the Curve25519 based algorithm. The history of Curve25519 is worth noting as it was introduced after the concerns over allegations that certain parameters of the previously prevalent P-256 NIST standards have been manipulated by NSA for easier snooping. Elliptic Curve Diffie Hellman algorithm is a mathematical algorithm which helps two communicating entities to agree up on a shared secret without actually sending the actual keys to each other. Even the Facebook Messenger, viber uses this algorithm.

Refer this for more information: https://www.linkedin.com/pulse/how-whatsapp-uses-end-encryption-ashish-bijawat


It uses Message Key which is generated by HMAC-SHA256 and Message Key is Protected by AES256 for end to end.

So basically, they use SHA256 for Message key to be delivered to the client and these keys are responsible for decrypting messages (actual). For key protection, they use AES256 in CBC mode for encryption of keys generally.


  • 1
    Ok, but you've missed some important details. You've only described the session key, which is just one part of the whole.
    – schroeder
    Commented Jun 14, 2020 at 14:07

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .