3 ms·
> and its cryptographic security is trivially verifiable That's going quite far. Even with all the details of it documented and open, there's a relatively smal
by viraptor 2y ago
> and its cryptographic security is trivially verifiable
That's going quite far. Even with all the details of it documented and open, there's a relatively small number of people who can actually verify that both the implementation is correct and the design is safe. Even though I can understand how it works, I wouldn't claim I can verify it in any meaningful way.
- tptacek 2y agoMultiple teams have done formal verification of the Signal Protocol, which won the Levchin Prize at Real World Crypto in 2017.
- viraptor 2y agoSure, there are teams who have done it. But it's not trivial. The fact there's a price for it shows it's not trivial. If I choose a random developer, it's close to guaranteed they wouldn't be able to reproduce that. The chances go to 0 for a random Signal user. Alternatively: it's trivial for people sufficiently experienced with cryptography. And that's a tiny pool of people overall.
- tptacek 2y agoThe idea isn't that you do formal verification of the protocol every time you run it. It suffices for the protocol to be formally verified once, and then just to run that one protocol. If you thought otherwise, you might as well stop trusting AES and ChaCha20.
- greyface- 2y agoIt is possible for the core protocol to be tightly secure, while a bug in a peripheral area of the software leads to total compromise. Weakest link, etc. One-time formal verification is only sufficient in a very narrow sense.
- tptacek 2y agoIt is also possible for a state-level adversary to simply hijack your phone, whatever it is, and moot everything Signal does to protect your communications. Cryptographically speaking, though, Signal is more or less the most trustworthy thing we have.
- chasil 2y agoJust look at PuTTY and e521 keys. Or go back to Dual_EC_DRBG. Unless DJB has blessed it, I'll pass.
- tptacek 2y agoWhat do those two issues have to do with each other?