Confidentiality Data Integrity Authentication

Key Management: General 18 3 Security Services Cryptography may be used to perform or support several basic security services: confidentiality, integrity authentication, source authentication, authorization and non- repudiation. These services may also be required to protect cryptographic keying material. In addition, there are other cryptographic and non-cryptographic mechanisms that are used to support these security services. In general, a single cryptographic mechanism may provide more than one service e.g., the use of digital signatures can provide integrity authentication, and source authentication, but not all services.

3.1 Confidentiality

Confidentiality is the property whereby information is not disclosed to unauthorized parties. Secrecy is a term that is often used synonymously with confidentiality. Confidentiality using cryptography is achieved using encryption to render the information unintelligible except by authorized entities. The information may become intelligible again by using decryption. In order for encryption to provide confidentiality, the cryptographic algorithm and mode of operation must be designed and implemented so that an unauthorized party cannot determine the secret or private keys associated with the encryption or be able to derive the plaintext directly without using the correct keys.

3.2 Data Integrity

Data integrity is a property whereby data has not been modified in an unauthorized manner since it was created, transmitted or stored. Modification includes the insertion, deletion and substitution of data. Cryptographic mechanisms, such as message authentication codes or digital signatures, can be used to detect with a high probability both accidental modifications e.g., modifications that sometimes occur during noisy transmissions or by hardware memory failures and deliberate modifications by an adversary. Non-cryptographic mechanisms are also often used to detect accidental modifications, but cannot be relied upon to detect deliberate modifications. A more detailed treatment of this subject is provided in Appendix A . In this Recommendation, the statement that a cryptographic algorithm provides data integrity means that the algorithm is used to detect unauthorized modifications. Authenticating integrity is discussed in the next section.

3.3 Authentication

Two types of authentication services can be provided using cryptography: integrity authentication and source authentication. • An integrity authentication service is used to verify that data has not been modified, i.e., this service provides integrity protection. • A source authentication service is used to verify the identity of the user or system that created information e.g., a transaction or message. Several cryptographic mechanisms may be used to provide authentication services. Most commonly, digital signatures or message authentication codes are used to provide authentication; some key-agreement techniques also provide an authentication service. Key Management: General 19 When multiple individuals are permitted to share the same source authentication information such as a password or cryptographic key, it is sometimes called role-based authentication. See [FIPS140] .

3.4 Authorization