What is a meet-in-the-middle attack?
Meet-in-the-middle is a known attack that can exponentially reduce the number of brute force permutations required to decrypt text that has been encrypted by more than one key. Such an attack makes it much easier for an intruder to gain access to data.
The meet-in-the-middle attack targets block cipher cryptographic functions. The intruder applies brute force techniques to both the plaintext and ciphertext of a block cipher. He then attempts to encrypt the plaintext according to various keys to achieve an intermediate ciphertext (a text that has only been encrypted by one key). Simultaneously, he attempts to decrypt the ciphertext according to various keys, seeking a block of intermediate ciphertext that is the same as the one achieved by encrypting the plaintext. If there is a match of intermediate ciphertext, it is highly probable that the key used to encrypt the plaintext and the key used to decrypt the ciphertext are the two encryption keys used for the block cipher.
The name for this exploit comes from the method. Because the attacker tries to break the two-part encryption method from both sides simultaneously, a successful effort enables him to meet in the middle of the block cipher.
Although a meet-in-the-middle exploit can make the attacker's job easier, it can't be conducted without a piece of plaintext and corresponding ciphertext. That means the attacker must have the capacity to store all possible intermediate ciphertext values from both the brute force encryption of the plaintext and decryption of the ciphertext.
Meet-in-the-middle is a passive attack, which means that although the intruder can access messages, in most situations he can not alter them or send his own. The attack is not practical for the average hacker and is more likely to be used in corporate espionage or some other venue that can accomodate the storage required to carry it out.
A meet-in-the-middle attack is not the same thing as a man in the middle attack.