WL#6781: Support multiple AES Encryption modes

Affects: Server-5.7   —   Status: Complete

MySQL implements AES encryption/decryption functions
AES_ENCRYPT/AES_DECRYPT. These are using a relatively insecure
key size (128 bits, corresponding to "SECRET" according to NSA)
and block mode (ECB, encrypting equal blocks with equal code
blocks) to calculate the cipher.

This work aims to enhance the security strength of these
functions by supporting for larger key sizes and different block
modes.

User Documentation
==================

http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-17.html
http://dev.mysql.com/doc/refman/5.6/en/encryption-functions.html#function_aes-
encrypt
http://dev.mysql.com/doc/refman/5.6/en/encryption-functions.html#function_aes-
decrypt
http://dev.mysql.com/doc/refman/5.6/en/encryption-functions.html#function_random-
bytes
http://dev.mysql.com/doc/refman/5.6/en/server-system-
variables.html#sysvar_block_encryption_mode