The Authentication APIs help you to ensure the following:
Data has not been altered.
Data is not from an impostor.
The Authentication APIs include:
Calculate Hash (QC3CALHA, Qc3CalculateHash) uses a one-way hash function to produce a fixed-length output string from a variable-length input string.
Calculate HMAC (QC3CALHM, Qc3CalculateHMAC) uses a one-way hash function and a secret shared key to produce an authentication value.
Calculate MAC (QC3CALMA, Qc3CalculateMAC) produces a message authentication code.
Calculate Signature (QC3CALSG, Qc3CalculateSignature) produces a digital signature by hashing the input data and encrypting the hash value using a public key algorithm (PKA).
Decrypt With MAC (QC3DECWM, Qc3DecryptWithMAC) decrypts and verifies data that was encrypted and authenticated with the Encrypt With MAC (OPM, QC3ENCWM; ILE, Qc3EncryptWithMAC) API.
Encrypt With MAC (QC3ENCWM, Qc3EncryptWithMAC) both authenticates and encrypts data in a single operation.
Verify Signature (QC3VFYSG, Qc3VerifySignature) verifies that a digital signature is correctly related to the input data.