So, I’m interested how the implementation of “Perfect Forward Secrecy” in Signal looks like, like does every messages has a different encryption key? or does it change over time like #whatsapp does? I tried to find any official documention of this, sadly did not find anything.

Thats why I’m asking, does anyone of you know smth about this and maybe can provide a link to a official source?

#signal #signalapp #privacy #encryption @signalapp @SignalUpdateInfo @privacy

deleted by creator

Don’t know about Signal but the way PFS usually works is there is something like a Diffie-Hellman (DH) key exchange. Each person generates a random (private) number, remembers it, crunches it mathematically into a public number, and sends the public number to the other person. Each then combines their private number with the public number that they got from the other person, and this (because of how DH works) cleverly gives both people the same secret number they use for the encryption, but the secret can’t be reconstructed without knowing at least one of the private numbers. Finally, the PFS part is simply that each person permanently deletes both the shared secret and the private number they generated for that exchange (they will create new ones next time they want to communicate). That means there is no way to reconstruct the secret and re-decrypt the message.

Of course, authentication also has to be added to all this.

For more info, probably easiest to look up Diffie-Hellman key exchange online.

Diffie-Hellman is only a key exchange protocol and does not provide forward secrecy. Imagine that my and your client figure out our shared secred (key) with DH, then encrypt our chat with that. If someone breaks only a bit of our traffic, then they can read newer messages as well.

https://en.wikipedia.org/wiki/Forward_secrecy

Forward secrecy means that at any point messages are encrypted with keys that aren’t reused forever, which means if an attacker can intercept traffic and read a bit, or crack the encryption, that they don’t automatically get access to our future conversation as well.

The PFS comes from deleting the secret DH parameters after you are done using them.

sino
link
fedilink
-210M

deleted by creator

@sexy_peach@feddit.de
link
fedilink
16
edit-2
10M

https://en.wikipedia.org/wiki/Double_Ratchet_Algorithm

This is the encryption that they developed. Whatsapp and OMEMO (XMPP) use it as well. It has forward secrecy because if an attacker has the key for a message they can’t calculate the key for the key for the next message etc.

Voxel
creator
link
fedilink
310M

@sexy_peach So when I understood it right (just skimmed the text), the encryption keys changes per message?

@sexy_peach@feddit.de
link
fedilink
4
edit-2
10M

Double Ratchet Messaging Encryption - Computerphile

https://youtu.be/9sO2qdTci-s?si=qPbDZ2-x_VSiEZ-1

@PipedLinkBot@feddit.rocks
bot account
link
fedilink
110M

Here is an alternative Piped link(s): https://piped.video/9sO2qdTci-s?si=qPbDZ2-x_VSiEZ-1

Piped is a privacy-respecting open-source alternative frontend to YouTube.

I’m open-source, check me out at GitHub.

essentially, yes. There are two levels of encryption keys and they “ratchet” along (change). Only the lower level is used to encrypt the text so it’s much harder to figure out the other one.

Voxel
creator
link
fedilink
110M

@sexy_peach Thank you very much! Just now wondering, handle WA this differently? Since Ig we all know this message which appears when the “keys” ig, changed

@sexy_peach@feddit.de
link
fedilink
2
edit-2
10M

Since Ig we all know this message which appears when the “keys” ig, changed

I don’t know if I fully understand you here.

To my understanding whatsapp does it like this too. The key changing must be the high level key, since the message means that it’s an unknown key (thus not yet trusted). From new install or new device.

Voxel
creator
link
fedilink
1
edit-2
10M

@sexy_peach Okay, got it, ig.

WhatsApp uses the encryption protocol developed for Signal, so I’d not expect them to be significantly different.

Voxel
creator
link
fedilink
110M

@Rose True, but there are still differences, for example Signal encrypts everything, while WA only encrypts chats and calls, so the implementation is a bit different, which maybe could be also in Signal with PFS.

Atemu
link
fedilink
210M

The main advantages of Signal over WA is that Signal minimises the amount of metadata Signal has access to and promises to not store or analyse the little remaining metadata.

The data (as in: the actual message content) should be similarly secure in both.

Create a post

A place to discuss privacy and freedom in the digital world.

Privacy has become a very important issue in modern society, with companies and governments constantly abusing their power, more and more people are waking up to the importance of digital privacy.

In this community everyone is welcome to post links and discuss topics related to privacy.

Some Rules

  • Posting a link to a website containing tracking isn’t great, if contents of the website are behind a paywall maybe copy them into the post
  • Don’t promote proprietary software
  • Try to keep things on topic
  • If you have a question, please try searching for previous discussions, maybe it has already been answered
  • Reposts are fine, but should have at least a couple of weeks in between so that the post can reach a new audience
  • Be nice :)

Related communities

Chat rooms

much thanks to @gary_host_laptop for the logo design :)

  • 0 users online
  • 57 users / day
  • 383 users / week
  • 1.5K users / month
  • 5.7K users / 6 months
  • 1 subscriber
  • 2.44K Posts
  • 57.6K Comments
  • Modlog