GitHub user xwq opened a pull request: https://github.com/apache/incubator-trafodion/pull/839
[TRAFODION-2228]Add AES_ENCRYPT/AES_DECRYPT functions Add two functions which used to encrypt and decrypt the data using the official AES (Advanced Encryption Standard) algorithm. AES_ENCRYPT(str, key_str[, init_vector]) AES_DECRYPT(crypt_str, key_str[, init_vector]) Both these two function have optional init_vector argument which provides an initalization vector for block encryption modes that require it. For modes that require the optional init_vector argument, an error occurs if init_vector is missing. For modes that don't need init_vector, it will raise a unused argument waring if init_vector is provided. The new CQD block_encryption_mode controls the mode for block-based encryption algorithm. The default value is 0, which use aes-128-ecb. Here is the list for diffferent values for block_encryption_mode CQD value algorithm 0 aes-128-ecb 1 aes_192_ecb 2 aes_256_ecb 3 aes_128_cbc 4 aes_192_cbc 5 aes_256_cbc 6 aes_128_cfb1 7 aes_192_cfb1 8 aes_256_cfb1 9 aes_128_cfb8 10 aes_192_cfb8 11 aes_256_cfb8 12 aes_128_cfb128 13 aes_192_cfb128 14 aes_256_cfb128 15 aes_128_ofb 16 aes_192_ofb 17 aes_256_ofb You can merge this pull request into a Git repository by running: $ git pull https://github.com/xwq/incubator-trafodion encryption_function Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-trafodion/pull/839.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #839 ---- commit 38bbe1f6b5d7e3038d27028f55702fd0e1aafa6e Author: Weiqing Xu <weiqing...@esgyn.cn> Date: 2016-11-17T17:20:42Z [TRAFODION-2228]Add AES_ENCRYPT/AES_DECRYPT functions Add two functions which used to encrypt and decrypt the data using the official AES (Advanced Encryption Standard) algorithm. AES_ENCRYPT(str, key_str[, init_vector]) AES_DECRYPT(crypt_str, key_str[, init_vector]) Both these two function have optional init_vector argument which provides an initalization vector for block encryption modes that require it. For modes that require the optional init_vector argument, an error occurs if init_vector is missing. For modes that don't need init_vector, it will raise a unused argument waring if init_vector is provided. The new CQD block_encryption_mode controls the mode for block-based encryption algorithm. The default value is 0, which use aes-128-ecb. Here is the list for diffferent values for block_encryption_mode CQD value algorithm 0 aes-128-ecb 1 aes_192_ecb 2 aes_256_ecb 3 aes_128_cbc 4 aes_192_cbc 5 aes_256_cbc 6 aes_128_cfb1 7 aes_192_cfb1 8 aes_256_cfb1 9 aes_128_cfb8 10 aes_192_cfb8 11 aes_256_cfb8 12 aes_128_cfb128 13 aes_192_cfb128 14 aes_256_cfb128 15 aes_128_ofb 16 aes_192_ofb 17 aes_256_ofb ---- --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---