Symmetric key cryptography is characterized by the use of a single key to perform both the encrypting and decrypting of data. Since the algorithms are public knowledge, security is determined by the level of protection afforded the key (i.e., ensuring that the key is known only to the parties involved in the communication). If kept secret, both the secrecy and authentication services are provided. Secrecy is provided, because if the message is intercepted, the intruder cannot transform the ciphertext into its plaintext format. Assuming that only two users know the key, authentication is provided because only a user with the key can generate ciphertext that a recipient can transform into meaningful plaintext.
The secrecy of the key does not ensure the integrity of the message. To provide this service, a cryptographic checksum, called a MAC (Message Authentication Code), is appended to the message. A MAC is a hashed representation of a message, and has the following characteristics:
The MAC is computed by the message originator as a function of the message being transmitted and the secret key. Upon receipt, the MAC is computed in a similar fashion by the message recipient. If the MAC computed by the recipient matches the MAC appended to the message, the recipient is assured that the message was not modified.
Figure 11.2 illustrates the steps used to provide secrecy, authentication, and integrity in a conventional cryptosystem. It assumes the originator and recipient have agreed upon relevant algorithms and keys. In the figure the following conventions are used:
Figure 11.2: Security Services in a Conventional Cryptosystem.
Note that in figure 11.2, the message originator appended the MAC after encrypting the plaintext. If secrecy of the MAC is required, the MAC may be appended to the plaintext, and encrypted with it.