!!! Overview [{$pagename}] (also known as [Key-Establishment]) is any method in [Cryptography] by which [cryptographic] [keys] are exchanged between users, allowing use of a cryptographic algorithm.[1] [{$pagename}] in [Communication] [contexts] if [Successful|Success] results in [Key agreement]. Often [{$pagename}] and [Key agreement] are used interchangeably. (As [{$applicationname}] sees it) If [Alice] and [Bob] wish to exchange [encrypted] [messages], each must be equipped to perform [encryption] on [messages] to be sent and perform [decryption] messages received. The nature of the equipping they require depends on the [Encryption] technique they might use. If they use a code, both will require a copy of the same codebook. If they use a [cipher], they will need appropriate [keys]. If the [Cipher] is a [Symmetric Key] [cipher], both will need a copy of the same key. If an [Asymmetric Key] cipher with the [Public Key]/[Private Key] property, both will need the other's [Public Key]. Preferably [RSA] should only be used for [Authentication] and the [{$pagename}] should be performed using [Diffie-Hellman key-exchange]. In [TLS], the [{$pagename}] is specified in the [Cipher Suite] the is negotiated with the [ServerKeyExchange] and the [ClientKeyExchange] Messages. [Diffie-Hellman or RSA] !! More Information There might be more information for this subject on one of the following: [{ReferringPagesPlugin before='*' after='\n' }] ---- * [#1] - [Key Exchange|Wikipedia:Key_exchange|target='_blank'] - based on 2015-03-23