3. ½ÇÇà ¿¹Á¦
1) EncryptÇÏ¿© µ¥ÀÌÅÍ ÀÔ·Â
-- Å×½ºÆ® Å×À̺íÀ» »ý¼º ÇÕ´Ï´Ù.
SQL>create table encrypt_table( id number, passwd varchar(20) );
-- Å×½ºÆ® µ¥ÀÌÆ®·² ÀÔ·Â ÇÕ´Ï´Ù. -- CryptIT.encrypt(ºñ¹Ð¹øÈ£, Å°°ª)
SQL>INSERT INTO encrypt_table VALUES( 1, CryptIT.encrypt('1234', 'storm')); 1 °³ÀÇ ÇàÀÌ ¸¸µé¾îÁ³½À´Ï´Ù.
SQL>INSERT INTO encrypt_table VALUES( 2, CryptIT.encrypt('5678', 'oramaster')); 1 °³ÀÇ ÇàÀÌ ¸¸µé¾îÁ³½À´Ï´Ù.
2) DecryptÇÏ¿© µ¥ÀÌÅÍ Á¶È¸ --> DecryptÇÏÁö ¾ÊÀ¸¸é ¾ÏÈ£ÈµÈ µ¥ÀÌÅÍ¿Í ºñ±³µÇ¼ °á°ú°ªÀÌ Ãâ·ÂµÇÁö ¾Ê½À´Ï´Ù. SQL> select id, passwd from encrypt_table where passwd = '1234'; ¼±ÅÃµÈ ·¹Äڵ尡 ¾ø½À´Ï´Ù. --> ÀúÀåÀåÄ¡¿¡ EncryptµÈ °ªÀ¸·Î ÀúÀå µË´Ï´Ù.
SQL> col passwd format a60 SQL> select id, dump(passwd) passwd from encrypt_table;
ID PASSWD ---------- ------------------------------------------------------------- 1 Typ=1 Len=8: 246,27,80,184,227,225,245,31 2 Typ=1 Len=8: 175,231,213,125,85,223,46,133
--> EncryptÇÒ ¶§ »ç¿ëÇÑ Key·Î¸¸ DecryptÇÒ ¼ö ÀÖ½À´Ï´Ù. SQL>SELECT id, CryptIT.decrypt(passwd,'storm') passwd FROM encrypt_table WHERE CryptIT.decrypt(passwd,'storm') = '1234'; ID PASSWD ---------- ----------- 1 1234 SQL>SELECT id, CryptIT.decrypt(passwd,'oramaster') passwd FROM encrypt_table WHERE CryptIT.decrypt(passwd,'oramaster') = '5678'; ID PASSWD ---------- ----------- 2 5678 ÁÖÀÇ) Table¿¡ Á¢±Ù ±ÇÇÑÀÌ ÀÖ´Â ´Ù¸¥ À¯Àúµµ Key°ªÀ» ¾Ë¸é DecryptÇÒ ¼ö ÀÖ½À´Ï´Ù. 4) °ü·Ã ORA error number ORA error 28231 "Invalid input to Obfuscation toolkit" - input data, key°ªÀÌ NULLÀÏ °æ¿ì ¹ß»ý ORA error 28232 "Invalid input size for Obfuscation toolkit" - input data°¡ 8 bytes ¹è¼ö°¡ ¾Æ´Ò °æ¿ì ¹ß»ý ORA error 28233 "Double encryption not supported by DESEncrypt in Obfuscation toolkit" - encrypt data¸¦ ´Ù½Ã encrypt°æ¿ì ¹ß»ý
°ü ·Ã ÀÚ ·á =========== Oracle8i Supplied PL/SQL Packages Reference Release 2 (8.1.6)
|