3 ms·
Seems to be talking about encrypted communication. I'm talking more about authentication over a channel that's not necessarily encrypted. The point being, avo
by hasenj 11y ago
Seems to be talking about encrypted communication.
I'm talking more about authentication over a channel that's not necessarily encrypted.
The point being, avoiding having the client send its "secret pass word" to the server, but still allowing the server to verify the identity of the client.
- tptacek 11y agoDiffie Hellman is the cryptographic standard solution to "share a secret (and thus authenticate) over an unencrypted channel". It's also what SSH uses. Hope that's helpful!
- hasenj 11y agoThe point is doing without sharing the secret. I don't want to share my secret with you. You just throw a test at me that only I could possibly answer. The point is, every time you should throw a completely different test at me. Not only you can verify my identity, but anyone who's listening to the conversation can also verify my identity, and I don't have to share any secret.
- tptacek 11y agoThat's the point of Diffie Hellman. Look at the paint can diagram on the Wikipedia page; a lot of people find it helpful. Yes, once you've done a DH exchange, you can use the established key to relay a nonce to prove both sides have the same key.
- chongli 11y agoThe secret that's being shared with DH is thrown away and generated brand new every time you start a new session. Your private key is never shared with anyone. The term shared secret refers to material that is totally unrelated to a private key.
- Pharaoh2 11y agoThe ideal answer is a zero knowledge exchange. https://en.wikipedia.org/wiki/Zero-knowledge_proof https://en.wikipedia.org/wiki/Zero-knowledge_proof But tptacek obviously knows what he is talking about.