5
$\begingroup$

I want to know whether there is a difference between key exchange & key distribution in private key cryptography as well as public key cryptography? or is it the same term?

$\endgroup$
  • $\begingroup$ While I don't know about key exchange, there can be / is certainly a difference between "key distribution" / "key transport" and "key agreement", even with private-key-only protocols. $\endgroup$ – SEJPM Jun 8 '17 at 18:13
2
$\begingroup$

I think the difference between key exchange and key distribution can be very subtle, but it probably comes down to the former being an active way of "dealing" keys, while the latter is something that can be more passive.

I think a few examples may make this more clear.

Key exchange

Alice and Bob want to communicate over a private channel. They both know each other's public keys ($PK_A$ and $PK_B$), and Alice sends Bob a message, a content encryption key, which she encrypted using Bob's public key.

Bob recovers this key by decrypting it using his private key, tied to $PK_B$.

Alice and Bob now have a common content encryption key, which they exchanged.

Key agreement

Not really covered by your question, but mentioned by @SEJPM to be relevant, key agreement is very much like key exchange, except that the key as such never crossed the channel.

This for example happens in Diffie-Hellman key agreement, where both parties have (publically) agreed to use a generator $g$ and a modulus $p$. Alice and Bob respectively choose secret integers $a$ and $b$, and they exchange values $A = g^a \mod p$ and $B=g^b \mod p$. Both Alice and Bob can then calculate the same common key (they agreed upon a key) $K \equiv A^b \mod p \equiv B^a \mod p = g^{ab} \mod p$, which they can use (after using a key derivation function) for a symmetric cipher.

N.b., the difference between key agreement and key exchange might be vague, up to the point that the terms are used interchangeably.

Key distribution

Key distribution deals with the problem that if $N$ parties want to securely communicate with each other, without any other party eavesdropping on the conversation, $\frac{N\cdot(N-1)}{2}$ keys are to be distributed.

This is, for example, a problem in the key distribution in wireless sensor networks, or the Web of Trust in PGP.

For example in PGP, all participants have a public key, which they can use in a fitting key agreement/key exchange protocol to establish a private channel with another participant.

In wireless sensor networks, depending on the expected number of nodes, it is sometimes opted to pre-distribute (hence key-distribution) a list of symmetric keys.


Key distribution is thus more of solving a many-to-many problem, while key agreement and key exchange both cover the one-to-one problem.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.