The following encryption modes exist:

  • C, C++

Encryption mode

Description

Direct encryption

The direct encryption encrypts or decrypts a sequence with a fixed length (usually 16 bytes) directly in the CmContainer.

Use CmCrypt2  with the flags CM_CRYPT_DIRECT_...

Indirect encryption

 

Use CmCrypt2 with the flags CM_CRYPT_STREAM, CM_CRYPT_AES_... but not CM_CRYPT_AES_ENC_CBC_DIRECT or CM_CRYPT_AES_DEC_CBC_DIRECT

Software encryption

The software encryption encrypts or decrypts sequence without using any CmContainer. This implements standard AES encryption with cipher block chaining (CBC) mode. Two parameters influence the encryption result: the AES key and the initialization vector (IV) (both see CMCRYPT2).

Use CmCrypt2 with the flags CM_CRYPT_AES_ENC_CBC_DIRECT or CM_CRYPT_AES_DEC_CBC_DIRECT.

The software encryption is supported since 4.30 and is implemented in the library part of CodeMeter (dll).