DB 값 암호화/복호화 작업(AES_ENCRYPT/AES_DECRYPT)
보통 주민등록번호를 암호화 해서 저장 할 때 쓰인다.
예제 mysql fucntion 이다
암호화 function
DELIMITER $$
USE `db_nm`$$
DROP FUNCTION IF EXISTS `GET_AES_ENCRYPT_FN`$$
CREATE DEFINER=`root`@`%` FUNCTION `GET_AES_ENCRYPT_FN`(p_restNo VARCHAR(16)) RETURNS tinyblob
BEGIN
DECLARE r_key VARCHAR(24);
DECLARE r_value TINYBLOB;
SET r_key := "ByjmghwQtT3EQ5nVYKlyEw==";
SET r_value := AES_ENCRYPT(p_restNo,r_key);
RETURN r_value;
END$$
DELIMITER ;
복호화 function
DELIMITER $$
USE `db_nm`$$
DROP FUNCTION IF EXISTS `GET_AES_DECRYPT_FN`$$
CREATE DEFINER=`root`@`%` FUNCTION `GET_AES_DECRYPT_FN`(p_restNo TINYBLOB) RETURNS varchar(16) CHARSET utf8
BEGIN
DECLARE r_key VARCHAR(24);
DECLARE r_value VARCHAR(16);
SET r_key := "ByjmghwQtT3EQ5nVYKlyEw==";
SET r_value := AES_DECRYPT(p_restNo,r_key);
RETURN r_value;
END$$
DELIMITER ;