How to use this document

Read an overview of the information in each section of this document.

For encryption, CCA supports Advanced Encryption Standard (AES), Data Encryption Standard (DES), public key cryptography (PKA or RSA), and elliptic curve cryptography (ECC). These are very different cryptographic systems. Additionally, CCA provides APIs for generating and verifying Message Authentication Codes (MACs), Hashed Message Authentication Codes (HMACs), hashes, and PINS, as well as other cryptographic functions.

IBM CCA programming includes the following chapters:

CCA verbs includes the following topics:

  • Using CCA nodes and resource control verbs describes using the CCA resource control verbs.
  • Managing AES, DES, and HMAC cryptographic keys describes the verbs for generating and maintaining DES and AES cryptographic keys, the Random Number Generate verb (which generates 8-byte random numbers), the Random Number Generate Long verb (which generates up to 8192 bytes of random content), and the Secure Sockets Layer (SSL) security protocol. This chapter also describes utilities to build DES and AES tokens, generate and translate control vectors, and describes the PKA verbs that support DES and AES key distribution.
  • Protecting data describes the verbs for enciphering and deciphering data.
  • Verifying data integrity and authenticating messages describes the verbs for generating and verifying Message Authentication Codes (MACs), generating and verifying Hashed Message Authentication Codes (HMACs), generating Modification Detection Codes (MDCs), and generating hashes (SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, MD5, RIPEMD-160).
  • Key storage mechanisms describes the use of key storage, key tokens, and associated verbs.
  • Financial services describes the verbs for use in support of finance-industry applications. This includes several categories.
    • Verbs for generating, verifying, and translating personal identification numbers (PINS).
    • Verbs that generate and verify VISA card verification values and American Express® card security codes.
    • Verbs to support smart card applications using the EMV (Europay MasterCard Visa) standards.
  • Financial services for DK PIN methods describes the verbs for PIN methods and requirements for financial services specified by the German Banking Industry Committee, Deutsche Kreditwirtschaft (DK).
  • TR-34 symmetric key management describes the verbs used to manage TR-34 key blocks and TR-34 functions.
  • TR-31 symmetric key management describes the verbs used to manage TR-31 key blocks and TR-31 functions.
  • Using digital signatures describes the verbs that support using digital signatures to authenticate messages.
  • Managing PKA cryptographic keys describes the verbs that generate and manage PKA keys.
  • Utility verbs describes the utility verb CSNBXEA which is provided for code conversion.

Reference information includes the following information: