개발자의 길

DB 값 암호화/복호화 작업(AES_ENCRYPT/AES_DECRYPT) 본문

3. DB

DB 값 암호화/복호화 작업(AES_ENCRYPT/AES_DECRYPT)

자르르 2010. 2. 26. 16:02


보통 주민등록번호를 암호화 해서 저장 할 때 쓰인다.

예제 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 ;



이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
공유하기 링크
Comments