Encrypts a small amount of data in an encrypt stream. NOTE To use AES for one record ciphers, you must first create an AES key, which is stored in the logical name table (encrypted). The key name of an AES key is specified as an address of a descriptor that contains the ASCII text for the selected AESmmmkkk (mode and key size) algorithm, for example, AESCBC256. The input and output buffers (descriptor addresses) are also provided. Format ENCRYPT$ENCRYPT_ONE_RECORD input, output, key-name, algorithm
1 – Arguments
input type: char_string access: read only mechanism: by descriptor Plaintext record to be encrypted. The input argument is the address of a string descriptor pointing to a byte-aligned buffer containing the input record to be encrypted. output type: char_string access: write only mechanism: by descriptor Ciphertext record resulting when the routine completes execution. The output argument is the address of a string descriptor pointing to a byte-aligned buffer that will contain the ciphertext record. If the descriptor is dynamic, and insufficient space is allocated to contain the output record, storage is allocated from dynamic memory. If insufficient space exists to contain the output of the operation, an error is returned. The ENCRYPT$ENCRYPT_ONE_RECORD routine adjusts the length of the output descriptor, if possible, to reflect the actual length of the output string. key-name type: char_string access: read only mechanism: by descriptor Key used to initialize the encrypt stream. The key-name argument is the address of a string descriptor pointing to the name of the previously defined user key to be used. algorithm type: char_string access: read only mechanism: by descriptor Algorithm used for the encryption operation. The algorithm argument is the address of a string descriptor pointing to a code for the selected algorithm. The algorithm code is an ASCII string. For descriptor type value, use one of the following: o DSC$K_DTYPE_T (text) o DSC$K_DTYPE_VT (varying text) o DSC$K_DTYPE_Z (unspecified) For DES, the following algorithms are valid: o DESCBC (default) o DESECB o DESCFB For AES, the following algorithms are valid: o Cipher block chaining: AESCBC128 (default) AESCBC192 AESCBC256 o Electronic code book: AESECB128 AESECB192 AESECB256 o Cipher feedback: AESCFB128 AESCFB192 AESCFB256 o Output feedback: AESOFB128 AESOFB192 AESOFB256