A session key is a key used for encrypting one message or a group of messages in a communication session. A closely related term is traffic encryption key or TEK, which refers to any key used to encrypt messages as opposed to different uses, such as encrypting other keys (key encryption key) A key is a piece of information that controls the operation of a cryptography algorithm. ... This article is about algorithms for encryption and decryption. ... Message in its most general meaning is an object of communication. ... Communication is the process of exchanging information, usually via a common protocol. ...
Session keys introduce complication in a crypto system, normally an undesirable end. However, they also help with some real problems, which is why they are used. There are two primary reasons for session keys:
First, several cryptanalytic attacks are made easier as more material encrypted with a specific key is available. By limiting the material processed using a particular key, those attacks are made more difficult.
Second, many otherwise good encryption algorithms require that keys be distributed securely before encryption can be used. All secret key algorithms have this undesirable property. There are other algorithms which don't require secure distribution of secret keys, but they are too slow to be practical for encrypting long messages (see public key cryptography). By using one of these "asymmetric" algorithms to distribute an encrypted secret key for another, faster, algorithm, it's possible to improve overall performance considerably.
Like all cryptographic keys, session keys must be chosen so that they are unpredictable by an attacker. In the usual case, this means that they must be chosen randomly. Failure to choose session keys (or any key) properly is a major (and too common in actual practice) design flaw in any crypto system. This article is about algorithms for encryption and decryption. ... Symmetric-key algorithms are a class of algorithms for cryptography that use trivially related cryptographic keys for both decryption and encryption. ... Public key cryptography is a form of cryptography which generally allows users to communicate securely without having prior access to a shared secret key, by using a pair of cryptographic keys, designated as public key and private key, which are related mathematically. ... A key is a piece of information that controls the operation of a cryptography algorithm. ...