Server IP : 185.86.78.101 / Your IP : 216.73.216.124 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/server/mysql/mysql-test/t/ |
Upload File : |
--echo ############################################## --echo #### Tests for ECB Mode --echo ############################################## SET @IV='abcd1234efgh5678'; SET @KEYS=REPEAT('c', 16); SET @ENCSTR=REPEAT('d', 256); --echo "--------------------------------------------" let $block_mode=aes-128-ecb; --echo ##################### Testing with mode : $block_mode eval SET SESSION block_encryption_mode="$block_mode"; SELECT @@global.block_encryption_mode; SELECT @@session.block_encryption_mode; --echo ####Test without tables --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS), @KEYS)=@ENCSTR; --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS, @IV), @KEYS, @IV)=@ENCSTR; --echo ####Test with InnoDB tables DROP TABLE IF EXISTS t1; CREATE TABLE t1(f1 varchar(256)); INSERT INTO t1 values(@ENCSTR); --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS), @KEYS)=@ENCSTR FROM t1; --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS, @IV), @KEYS, @IV)=@ENCSTR FROM t1; --echo ####Test with MyISAM tables DROP TABLE IF EXISTS t1; CREATE TABLE t1(f1 varchar(256)) engine=MyISAM; INSERT INTO t1 values(@ENCSTR); --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS), @KEYS)=@ENCSTR FROM t1; --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS, @IV), @KEYS, @IV)=@ENCSTR FROM t1; --echo "--------------------------------------------" let $block_mode=aes-192-ecb; --echo ##################### Testing with mode : $block_mode eval SET SESSION block_encryption_mode="$block_mode"; SELECT @@global.block_encryption_mode; SELECT @@session.block_encryption_mode; --echo ####Test without tables --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS), @KEYS)=@ENCSTR; --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS, @IV), @KEYS, @IV)=@ENCSTR; --echo ####Test with InnoDB tables DROP TABLE IF EXISTS t1; CREATE TABLE t1(f1 varchar(256)); INSERT INTO t1 values(@ENCSTR); --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS), @KEYS)=@ENCSTR FROM t1; --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS, @IV), @KEYS, @IV)=@ENCSTR FROM t1; --echo ####Test with MyISAM tables DROP TABLE IF EXISTS t1; CREATE TABLE t1(f1 varchar(256)) engine=MyISAM; INSERT INTO t1 values(@ENCSTR); --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS), @KEYS)=@ENCSTR FROM t1; --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS, @IV), @KEYS, @IV)=@ENCSTR FROM t1; --echo "--------------------------------------------" let $block_mode=aes-256-ecb; --echo ##################### Testing with mode : $block_mode eval SET SESSION block_encryption_mode="$block_mode"; --echo should return 1 SELECT @@global.block_encryption_mode; --echo should return 1 SELECT @@session.block_encryption_mode; --echo ####Test without tables --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS), @KEYS)=@ENCSTR; --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS, @IV), @KEYS, @IV)=@ENCSTR; --echo ####Test with InnoDB tables DROP TABLE IF EXISTS t1; CREATE TABLE t1(f1 varchar(256)); INSERT INTO t1 values(@ENCSTR); --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS), @KEYS)=@ENCSTR FROM t1; --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS, @IV), @KEYS, @IV)=@ENCSTR FROM t1; --echo ####Test with MyISAM tables DROP TABLE IF EXISTS t1; CREATE TABLE t1(f1 varchar(256)) engine=MyISAM; INSERT INTO t1 values(@ENCSTR); --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS), @KEYS)=@ENCSTR FROM t1; --echo should return 1 SELECT AES_DECRYPT(AES_ENCRYPT(@ENCSTR, @KEYS, @IV), @KEYS, @IV)=@ENCSTR FROM t1; DROP TABLE IF EXISTS t1; --echo "--------------------------------------------" --echo ############################################## --echo "Tests related to RANDOM_BYTES()" --echo ############################################## --echo should return 1 select LENGTH(RANDOM_BYTES(1))=1; --echo should return 1 select LENGTH(RANDOM_BYTES(1024))=1024; SET @KEYS=RANDOM_BYTES(1); SET @KEYS=RANDOM_BYTES(1024); --error 1690 select RANDOM_BYTES(0); --error 1690 select RANDOM_BYTES(1025); --echo ############################################## --echo "Tests related to boundary values of IV" --echo ############################################## SET @IV='abcdefghijklmnophelloworldworldisgreat'; SET @IV1='abcdefghijklmnopqrstuvwxyz'; SET @KEYS='helloworld'; SET @ENCSTR=REPEAT('K',100); SET @@session.block_encryption_mode = 'aes-256-cbc'; --echo should return 1 select AES_ENCRYPT(@ENCSTR, @KEYS, @IV)=AES_ENCRYPT(@ENCSTR, @KEYS, @IV1); --echo ############################################## --echo "Few negative tests with invalid/different keys and IV" --echo ############################################## SET @IV='ijkl8765mnop2345'; SET @KEYS='helloworld1234567890'; SET @ENCSTR=REPEAT('J',255); SET @@session.block_encryption_mode = 'aes-128-ecb'; DROP TABLE IF EXISTS t1; CREATE TABLE t1(f1 varchar(256)); INSERT INTO t1 values(AES_ENCRYPT(@ENCSTR, @KEYS, @IV)); --echo Combination1.............. SET @@session.block_encryption_mode = 'aes-192-ecb'; --echo should return NULL SELECT AES_DECRYPT(f1, @KEYS, @IV)=@ENCSTR FROM t1; --echo Combination2.............. SET @@session.block_encryption_mode = 'aes-256-ecb'; --echo should return NULL SELECT AES_DECRYPT(f1, @KEYS, @IV)=@ENCSTR FROM t1; --echo Combination3.............. SET @@session.block_encryption_mode = 'aes-128-cbc'; --echo should return 0 or NULL SELECT COALESCE (AES_DECRYPT(f1, @KEYS, @IV)=@ENCSTR,0) FROM t1; --echo Combination4.............. SET @@session.block_encryption_mode = 'aes-192-cbc'; --echo should return NULL SELECT AES_DECRYPT(f1, @KEYS, @IV)=@ENCSTR FROM t1; --echo Combination5.............. SET @@session.block_encryption_mode = 'aes-256-cbc'; --echo should return NULL SELECT AES_DECRYPT(f1, @KEYS, @IV)=@ENCSTR FROM t1; --echo Combination6.............. SET @@session.block_encryption_mode = 'aes-128-ecb'; --echo should return 1 SELECT AES_DECRYPT(f1, @KEYS, @IV)=@ENCSTR FROM t1; SET @@session.block_encryption_mode = DEFAULT; DROP TABLE IF EXISTS t1; --echo # --echo # End of 5.7 tests --echo #