4

A is claiming that B has sent him a certain WhatsApp message. And if this incident is proven to be true, this will mean social and legal harm for B.

But as a matter of fact, B has not really sent the message.

What is the best way for B to deny that he has not sent the message?

Masroor
  • 171
  • 5
  • 3
    I would say that, *legally* speaking, A has the onus of proving that B has sent a message, not B to defend against the claim. A has to prove that his evidence is also authentic – usr-local-ΕΨΗΕΛΩΝ Feb 17 '19 at 13:11
  • 2
    Whatsapp uses Signal's encryption protocol, which has deniability. Refer to the articles explaining how Whatsapp uses the Signal protocol, then refer to the audits of the Signal protocol, and argue that BY DESIGN the real message is indistinguishable from false messages planted by the purported recipient, so these chat logs are no stronger evidence than word of mouth / testimony by that purported recipient, as he himself could have edited the chat log. However, please note that the court might STILL value that as strong evidence if they find that person credible (same as if he took notes) – Natanael Feb 17 '19 at 17:38
  • 1
    @Steve They didn't remove it. Sender can easily craft a message with a valid key and can claim it to be coming from the recepient. Where did you read that they removed it? – defalt Feb 17 '19 at 18:22
  • 1
    @Steve They would have announced it somewhere on their [Github page](https://github.com/signalapp) or at their [Signal blog](https://www.signal.org/blog/). Why is it private information? – defalt Feb 17 '19 at 18:45

1 Answers1

3

WhatsApp uses Signal protocol which is by design offers plausible deniability in pairwise encrypted messaging. In pairwise messaging, every message is sent with HMAC-SHA256 to verify the integrity of the cipher text. HMAC uses a shared secret known to both sender and receiver.

Quoting from an answer on Difference between non-repudiation and plausible deniability

A recepient can prove the authenticity of the message that it is indeed sent by you. If it's not him who wrote the message then it must be you who wrote it. In either manner, both the sender and the recipient can verify who sent the message. But neither of them can prove authorship of the message to others. A recepient can easily forge HMAC with a valid key to make it look like sender has sent this. He can also give away the shared secret to a 3rd party to forge HMACs in future messages.

Also, once a message is delivered, the key is deleted so there is no way to prove authorship.

In WhatsApp, you don't even have to forge HMACs. All sent & received messages are stored in Sqlite database file msgstore.db in unencrypted form in the internal storage (/data/data/com.whatsapp/files). A recepient can edit this file and modify any message that are sent by you to frame you for anything.

Even if Alice claims that Bob has sent her a message , she can't prove this to anyone. Bob can deny sending of any message sent by him.

Plausible deniability doesn't hold up in WhatsApp group messaging. In group messaging, a sender signs the message with its private Signature key so they cannot be denied and that can be used by the law.

In a legal context, plaintext messages are almost always considered proof anyways regardless of whether the underlying protocol is deniable or not. So it also depends how judicial system in your country treats plaintext messages.

defalt
  • 6,231
  • 2
  • 22
  • 37