Hacker News new | ask | show | jobs
by henearkr 1986 days ago
Not if the keys are generated by the client.

Signal also offers to label contacts for which you could verify the authenticity by another way.

Doing a video call with the contact can be a simple way to clear doubts, even if it is not a proper different channel.

2 comments

Video calls alone won't stop a MITM attack. They would just send both video streams along, and record both sides.

Signal does have the capability to have a verification phrase displayed, which is generated from the session key. Reading that off can make the video more difficult to MITM, because then they'd have to morph the audio to match the phrase, and if it's done after the video is setup, morph the video as well. Not impossible, but difficult.

This is false. A video call will not prevent or detect MITM. You may be suggesting that a video call is used to authenticate the key, which is certainly a step in the right direction, but I don't think Signal supports this.
It will, because it will prove (or give you a lot of confidence) that the agent who sent you their public key is your legit correspondent.

This uses the fact that the client on each side is open source and inspectable, so that each side knows that they sent only the public key that they generated on their own device.

PS: to answer your last sentence, Signal allows you to flag specifically contacts that you managed to verify. Which is technically equivalent to say that you verified that the public key is theirs.

Yes, but it doesn't support doing that whilst in a video call with them.
[edited]

Indeed it is far from straightforward that merely doing a video call suffices to check the keys.

Signal is famously using a special protocol for secure key sharing through the server, which I have not studied.

But as said by another comment, there is no way around verifying explicitly the public key using an independent channel.