Key exchange protocols

learn more… | top users | synonyms

228
votes
13answers
25k views

How is it possible that people observing an HTTPS connection being established wouldn't know how to decrypt it?

I've often heard it said that if you're logging in to a website - a bank, GMail, whatever - via HTTPS, that the information you transmit is safe from snooping by 3rd parties. I've always been a little ...
8
votes
2answers
439 views

Is there a way to negotiate a secret between 2 parties with no prior knowledge?

Is there a way for 2 parties to negotiate a shared secret (for example, a session key) without having a pre-shared knowledge? SSL does this by using asymmetric encryption. Is there any other way to ...
26
votes
5answers
17k views

“Diffie-Hellman Key Exchange” in plain English

Can someone explain to me what is Diffie-Hellman Key Exchange in plain English? I have read in a non-tech news page that twitter has just implemented this technology which allows two persons to ...
11
votes
3answers
2k views

How to exchange RSA public keys safely between two parties?

How to exchange RSA public keys safely between two parties via internet?
2
votes
1answer
247 views

Any obvious flaws in this protocol?

Are there any particular flaws in this protocol? (Yes I know about SSL) Three participants: Login Server LS Game Server GS Client C Asymmetric key-pair Kpriv Kpub Shared 128bit secret key Ksec ...
5
votes
2answers
291 views

What steps can you take to make offline cracking of SRP harder?

In the aftermath of the Blizzard hack, what steps can I take to make offline cracking of SRP more difficult? My question assumes that your database is already gone and that you implemented SRP more ...
38
votes
3answers
21k views

Is there any particular reason to use Diffie-Hellman over RSA for key exchange?

I often see RSA being recommended as a method of key exchange. However, the Diffie-Hellman key exchange method appears to be secure as well. Is there any considerations one should take into account ...
12
votes
1answer
13k views

How to implement an API-Key-Mechanism

first of all: I am quite unsure about the questions title, so if you have a better idea, please feel free to tell (: I would like to know about best-practise examples where services (like Twitter or ...
1
vote
1answer
159 views

Is there a known vetted alternative to this key-exchange protocol?

I have three participants: A client A in possession of the public key Kpub A login server S in possession of the private key Kpriv Game servers B (B1, B2 etc) S and all B may share a finite number ...
9
votes
2answers
5k views

Is 1024bit Diffie Hellman key exchange secure?

My system uses AES-256, 4096bit RSA CA key and 2048bit RSA keys for servers together with SHA-256 signing. Does using 1024bit DH key exchange lower its security? I read on one mailing list that ...
5
votes
1answer
2k views

What are the OpenSSL standard Diffie Hellmann parameters (primes)?

I recently generated some custom Diffie Hellmann parameters which are basically just long (in the below case 4096 bit) primes. Those are then used in the key exchange process. I used the following ...
3
votes
1answer
2k views

How do I share my S/MIME public key?

I have setup S/MIME encryption for my email address, and I'd like to allow people to download the public key from my website, rather than having to first receive an email from me. I want the public ...
3
votes
1answer
817 views

ECDH and Forward Secrecy

I just read about ECDH and while getting a overview over the process, I noticed that this key exchange method does neither provide any forward secrecy, nor does it protect against replay-attacks, ...
8
votes
3answers
625 views

Which authentication at the end of the Secure Remote Password protocol?

For the the client and server to prove to each other that they have the same premaster shared key, the original author suggests this: M = H(A | B | K) --> <-- H(A | M | K) ...
6
votes
2answers
655 views

Implementing Secure Remote Password: Constructing the verifier

The SRP protocol as described in RFC 2945 generates the password verifier: x = SHA(<salt> | SHA(<username> | ":" | <raw password>))` v = g^x % N I have three questions: why use ...
6
votes
3answers
1k views

Using Secure Remote Password without sending the username in the clear

To initiate a key exchange using the SRP protocol the client sends the username so the server can look up the salt and password verifier. Is there a simple way to change this so that an evesdropper ...
5
votes
2answers
321 views

Authenticating client without hardcoding key?

A basic question, but I'm not a master and this is puzzling me- How is it possible to authenticate a client from the server's perspective? i.e. imagine you're the server, and you want to give the ...
3
votes
3answers
291 views

Does the hash change the security of the Secure Remote Password protocol?

I'm implementing the Secure Remote Password protocol, and similar to this question, I'm wondering if I can use the SHA-512 hash function instead of SHA-1 currently being used. Would this help improve ...
1
vote
2answers
2k views

Client-server encryption technique explanation (TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, 128 bit keys)

I opened a web page using https. When I looked at the page info provided by my browser (Firefox) I saw following: Connection encrypted: High-grade Encryption ...
1
vote
2answers
196 views

How do key servers resolve conflicts?

According to the PGP network FAQ While a number of key servers exist, it is only necessary to send your key to one of them. The key server will take care of the job of sending your key to all ...