{"id":3621,"date":"2018-03-19T10:16:23","date_gmt":"2018-03-19T01:16:23","guid":{"rendered":"http:\/\/haisins.epac.to\/wordpress\/?p=3621"},"modified":"2018-03-19T10:16:23","modified_gmt":"2018-03-19T01:16:23","slug":"oracle-%ec%95%94%ed%98%b8%ed%99%94-obfuscation-toolkit-%ec%9d%98-%ed%99%9c%ec%9a%a9","status":"publish","type":"post","link":"http:\/\/haisins.synology.me\/wordpress\/?p=3621","title":{"rendered":"oracle \uc554\ud638\ud654 obfuscation toolkit \uc758 \ud65c\uc6a9"},"content":{"rendered":"<p>RDBMS Version : 8.1.6\uc774\uc0c1<\/p>\n<p>* DES \uc18c\uac1c<\/p>\n<p>Data\uc758 \ubcf4\uc548\uc744 \uc704\ud55c encryption\uacfc decryption\uc758 \ubc29\ubc95\ub860\uc774 \uc5ec\ub7ec\uac00 \uc9c0 \uc18c\uac1c \ub418\uc5c8\ub2e4.<\/p>\n<p>data\uac00 \ucc98\ub9ac\ud574\uc57c \ud558\ub294 \ud504\ub85c\uc138\uc2a4\ub294 data\ub97c \uc0dd\uc131\u00a0 \ub610\ub294 \ud68d\ub4dd\ud558\uc5ec \uc774\ub97c \uc800\uc7a5\ud558\uac70\ub098 \uc804\uc1a1\ud558\ub294 \uacfc\uc815\uc5d0\uc11c\uc758 \ubcf4\uc548\uc744 \uc704\ud574 \uc774\ub97c Encryption\ud558\uace0, \uc800\uc7a5\ub41c data\ub97c \uc77d\uac70\ub098 \uc804\uc1a1\uc744 \ubc1b\ub294 \ud504\ub85c\uc138 \uc2a4\uac00 \uc774\ub97c \ub2e4\uc2dc Decryption\ud558\uac8c \ub41c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; DES<\/p>\n<p>DES\ub294 1974\ub144 IBM\uc5d0 \uc758\ud574 \uc81c\uc548\ub418\uc5c8\ub2e4. data\ub97c \uc8fc\uc5b4\uc9c4 key\ub85c \uc554\ud638\ud654 \ud558\uace0, \uc554\ud638\ud654 \ub41c data(Ciphertext)\ub294 \ub2e4\uc2dc \ub3d9\uc77c\ud55c key\ub97c \uc774\uc6a9\ud558\uc5ec \ud574\ub3c5 \ud560 \uc218 \uc788\ub294 \uad6c\uc870\uc774\ub2e4.<\/p>\n<p>DES\ub294 8 byte\uc758 data\ub97c 56bit\uc758 key\ub85c encrypt\ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; Triple DES (DES3)<\/p>\n<p>DES3\ub294 \uae30\uc220\ub825\uc758 \ubc1c\ub2ec\ub85c \uc778\ud574 DES\uac00 \ub354 \uc774\uc0c1 \uc548\uc804\ud558\uc9c0 \uc54a\uc544 \uc9d0\uc73c\ub85c \uc0c8\ub85c \uc81c\uc2dc\ub41c \ud45c\uc900\uc774\ub2e4.<\/p>\n<p>\uc2e4\uc81c DES\ub294 1998\ub144\uc5d0 \ub098\uc628 DES Cracker\ub85c\u00a0 3\uc77c \uc774\ub0b4\uc5d0 \ud574\ub3c5 \ub418\uc5b4\uc9c4\ub2e4.<\/p>\n<p>\uc804\uc6a9\uc7a5\ube44\ub4f1\uc744 \uc774\uc6a9\ud560 \uacbd\uc6b0 key\ub97c \ucc3e\uc544 \ub0b4\ub294\ub370 3.5\uc2dc\uac04\uc774\ub0b4\uc758 \uc2dc\uac04\uc774 \uc18c\uc694\ub418\ub294 \ub4f1 \ub354 \uc774\uc0c1 \uc548\uc804\ud55c \ubc29\ubc95\uc774 \uc544\ub2c8\ub2e4.<\/p>\n<p>DES3\ub294 DES\uc640 \ud06c\uac8c \ub2e4\ub974\uc9c0 \uc54a\uc73c\uba70, 192bit\uc758 key\ub97c \uc0ac\uc6a9\ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>\uc6d0\ub9ac\ub294 \ub2e4\uc74c\uacfc \uac19\ub2e4.<\/p>\n<p>C = Ek3(Dk2(Ek1(P)))<\/p>\n<p>E is DES Encryption round<br \/>\nD is DES Decryption round<br \/>\nP is the plaintext<br \/>\nC is the ciphertext<\/p>\n<p>&nbsp;<\/p>\n<p>\uc989, 56bit\uc758 \ud0a4\ub85c encrypt\ud558\uace0, \uc774\ub97c \ub2e4\uc2dc 56bit\uc758 key\ub85c decrypt \ud574\uc11c, \ub098\uba38\uc9c0 56bit key\ub85c \ub2e4\uc2dc encrypt\ud55c\ub2e4.<\/p>\n<p>\uae30\uc874\uc758 DES\uc758 56bit\uc758 key\ubcf4\ub2e4 192bit key\ub97c \uc0ac\uc6a9\ud568\uc73c\ub85c key\ub97c\u00a0 generation\ud574\uc11c \ud574\ub3c5\ud574 \ub0b4\ub294 \uac83\uc744 \ubcf4\ub2e4 \uc5b4\ub835\uac8c \ud55c\ub2e4.<\/p>\n<p>&#8211; Cipher Block Chaining(CBC) and Initialization Vector(IV)<\/p>\n<p>\uc554\ud638\ud654 \ub300\uc0c1\uc758 data\uc758 \uc774\uc804 8 byte\uc758 \ub0b4\uc6a9\uc774 \ub2e4\uc74c 8byte\uc758 \uc554\ud638\ud654 \uc5d0 \uc601\ud5a5\uc744 \uc900\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>\uc6d0\ub9ac\ub294 \ub2e4\uc74c\uacfc \uac19\ub2e4.<\/p>\n<p>C = Ek3(Dk2(Ek1(P Xor (PC or IV))))<\/p>\n<p>PC is ciphertext from previous 8 bytes.<br \/>\nIV is Initialization Vector.<\/p>\n<p>&nbsp;<\/p>\n<p>\ub9cc\uc57d encrypt\ud558\uace0\uc790 \ud558\ub294 data\uac00 \ucc98\uc74c 8 bytes\ub77c\uba74 \uc774\uc804\uc5d0 \uc554\ud638\ud654 \ud55c data\uac00 \uc5c6\uc74c\uc73c\ub85c \uc774\ub54c\ub294 \uc8fc\uc5b4\uc9c4 8 bytes\uc758 \uac12\uc744 \uc774\uc6a9\ud558\ub294\ub370 \uc774\ub97c Initialization Vector(IV)\ub77c\uace0 \ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>* DBMS_OBFUSCATION_TOOLKIT \uad6c\uc870.<\/p>\n<p>&#8211; Oracle\uc740 Oracle8 8.1.6 \uc774\ud6c4 \ubc84\uc804\uc5d0\uc11c DBMS_OBFUSCATION_TOOLKIT package\ub97c \ud1b5\ud574 DES \uae30\ub2a5\uc744 \uc81c\uacf5\ud558\uace0 \uc788\ub2e4.<\/p>\n<p>package\uc5d0\uc11c \uc81c\uacf5\ub418\uc5b4\uc9c0\ub294 procedure\uc640 function\uc740 \ub2e4\uc74c\uacfc \uac19\ub2e4.<\/p>\n<p>DESENCRYPT, DES3ENCRYPT<br \/>\nDESDECRYPT, DES3DECRYPT<\/p>\n<p>\uc704\uc5d0 \ub098\uc5f4\ud55c \uc774\ub984\uc740 \ubaa8\ub450 procedure\uc640 function\uc73c\ub85c, argument\uc5d0\ub294 RAW\uc640 varchar2\ub85c overload\ub418\uc5b4\uc788\uc5b4 \ud544\uc694\uc5d0 \ub530\ub77c \uc0ac\uc6a9 \ud560 \uc218 \uc788\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; 8.1.6\uc740 DES3\ub97c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294\ub2e4.<br \/>\n\ud544\uc694\uc2dc\uc5d0\ub294 DES\ub97c \uc774\uc6a9\ud558\uc5ec \uc9c1\uc811 \uad6c\ud604\ud558\uc5ec\uc57c \ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; argument\ub294 RAW\uc640 VARCHAR2\ub97c \ubaa8\ub450 \uc0ac\uc6a9\uac00\ub2a5\ud558\ub098 \ud63c\uc6a9\ud558\uc5ec \uc0ac\uc6a9\ud560<br \/>\n\uc218 \uc5c6\uc73c\uba70, value\ub294 \ubc18\ub4dc\uc2dc 8 byte\uc758 \ubc30\uc218\uc774\uc5b4\uc57c \ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; Oracle\uc740 2 key(128bit)\uacfc 3 key(192bit) \ubc29\uc2dd \ubaa8\ub450\ub97c \uc9c0\uc6d0\ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; Oracle\uc740 IV\ub85c \uace0\uc815\ub41c \uac12\uc778 &#8216;0123456789ABCDEF&#8217;\ub97c \uc0ac\uc6a9\ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; key\ub294 \ubc18\ub4dc\uc2dc \ub2e4\uc74c\uc5d0 \uc81c\uc2dc\ub418\ub294 \ud06c\uae30\ub85c \uc0ac\uc6a9\ub418\uc5b4\uc838\uc57c \ud55c\ub2e4.<\/p>\n<p>DES : 64bit(8 bytes)<br \/>\nDES3 : 128bit(16 bytes) or 192bit(24 bytes)<\/p>\n<p>&nbsp;<\/p>\n<p>\uc2e4\uc81c \uc0ac\uc6a9\ub418\ub294 56bit(\ub610\ub294 112, 168bit)\ubcf4\ub2e4 \ud070 key\ub97c \ub118\uae30\ub294\u00a0 \uc774\uc720\ub294 encrypt, decrypt\uacfc\uc815\uc5d0\uc11c key\uc5d0\uc11c \uc77c\ubd80 bit\ub97c \ubc84\ub9ac\uae30\u00a0 \ub54c\ubb38\uc774\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; \uc0ac\uc6a9\ub418\uc5b4\uc9c0\ub294 key\uac00 \ud544\uc694\ud55c \uac12\ubcf4\ub2e4 \ub9ce\uc744 \uacbd\uc6b0, \ud544\uc694\ud55c bit \uc774\uc0c1\uc740 \ubb34\uc2dc\ub41c\ub2e4. \uc608\ub97c \ub4e4\uc5b4 DES\uc5d0 9 bytes\uc758 key\ub97c \ub118\uae30\uc5d0 \ub418\uba74 9\ubc88\uc9f8 byte\ub294 \ubb34\uc2dc\ub41c\ub2e4.<\/p>\n<p>&#8211; Oracle\uc740 DBMS_OBFUSCATION_TOOLKIT\uc744 autonomous transaction\uc5d0\uc11c \uc0ac\uc6a9\ud558\ub294 \uac83\uc744 \ud5c8\uc6a9\ud558\uc9c0 \uc54a\ub294\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>* Error code \uc18c\uac1c.<\/p>\n<p>ORA-28231 : plaintext(input value)\uac00 NULL.<br \/>\nORA-28232 : plaintext\uc758 \uae38\uc774\uac00 8\uc758 \ubc30\uc218\uac00 \ub418\uc9c0 \ubabb\ud558\ub294 \uacbd\uc6b0.<br \/>\nORA-28233 : plaintext\uac00 \uc544\ub2cc ciphertext\uac00 encrypt\uc2dc\ub3c4\ub420 \uacbd\uc6b0.<\/p>\n<p>\uc989, encrypt\ud55c \ud6c4 \ub2e4\uc2dc encrypt\ud558\ub824 \ud560 \uacbd\uc6b0 \ubc1c\uc0dd.<\/p>\n<p>&nbsp;<\/p>\n<p>ORA-28234 : key length\uac00 \uc694\uad6c\ub418\ub294 \uac83\ubcf4\ub2e4 \uc801\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>* Sample<\/p>\n<pre class=\"lang:plsql decode:true \">==============================================================\r\n-- enc.sql\r\n\r\nset serveroutput on\r\ndeclare\r\ntemp1 raw(2048);\r\nkey1 raw(2048);\r\ncipher1 raw(2048);\r\nbegin\r\ntemp1 := utl_raw.cast_to_raw('abcdefghijklmnop');\r\nkey1 := utl_raw.cast_to_raw('qazxswedcvfrtgbnhyujm,ki');\r\n\r\ndbms_obfuscation_toolkit.des3encrypt(\r\ninput=&gt;temp1,\r\nkey=&gt;key1,\r\nencrypted_data=&gt;cipher1,\r\nwhich=&gt;1 -- 3 key used.\r\n);\r\n\r\ndbms_output.put_line(\r\n'INPUT DATA : ['\r\n|| utl_raw.cast_to_varchar2(temp1)\r\n|| ']'\r\n);\r\ndbms_output.put_line(\r\n'OUTPUT(HEX) ['\r\n|| cipher1\r\n|| ']'\r\n);\r\nend;\r\n\/\r\n\r\n==============================================================\r\n-- dec.sql\r\n\r\nset serveroutput on\r\ndeclare\r\ncipher1 raw(2048);\r\nkey1 raw(2048);\r\nplaintext1 raw(2048);\r\nbegin\r\ncipher1 := hextoraw('A4E7E8FBE8C6A2D79832D8F4214F0D0F');\r\nkey1 := utl_raw.cast_to_raw('qazxswedcvfrtgbnhyujm,ki');\r\n\r\ndbms_obfuscation_toolkit.des3decrypt(\r\ninput=&gt;cipher1,\r\nkey=&gt;key1,\r\ndecrypted_data=&gt;plaintext1,\r\nwhich=&gt;1 -- 3 key used.\r\n);\r\n\r\ndbms_output.put_line(\r\n'Encrypted DATA : ['\r\n|| cipher1\r\n|| ']'\r\n);\r\ndbms_output.put_line(\r\n'Original data ['\r\n|| utl_raw.cast_to_varchar2(plaintext1)\r\n|| ']'\r\n);\r\nend;\r\n\/\r\n\r\n==============================================================\r\n\r\nSQL&gt; @enc\r\nINPUT DATA : [abcdefghijklmnop]\r\nOUTPUT(HEX) [A4E7E8FBE8C6A2D79832D8F4214F0D0F]\r\n\r\nPL\/SQL procedure successfully completed.\r\n\r\nSQL&gt; @dec\r\nEncrypted DATA : [A4E7E8FBE8C6A2D79832D8F4214F0D0F]\r\nOriginal data [abcdefghijklmnop]\r\n\r\nPL\/SQL procedure successfully completed.\r\n\r\n==============================================================<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>* DES \uc0ac\uc6a9\uc5d0 \ub530\ub978 \uace0\ub824 \uc0ac\ud56d.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; key\uc758 \uc800\uc7a5 \ubb38\uc81c.<\/p>\n<p>\uc0ac\uc2e4\uc0c1 encrypt\ub41c data\ub294 key\uac00 \ub178\ucd9c \ub420 \uacbd\uc6b0 \ubaa8\ub4e0 data\uac00 \ub178\ucd9c \ub41c \uac83\uacfc \uac19\ub2e4. \ub530\ub77c\uc11c key\ub97c \uc5b4\ub5bb\uac8c \uc800\uc7a5\ud558\ub290\ub0d0\uac00 \uc911\uc694\ud55c \ubb38\uc81c\uc774\ub2e4.<\/p>\n<p>\ub9cc\uc57d PL\/SQL\uc744 \uc0ac\uc6a9\ud558\ub294 \uacbd\uace0, module\uc5d0 key\ub97c \uc9c1\uc811 \ud3ec\ud568 \ud560 \uacbd\uc6b0 DBA\uad8c\ud55c\uc744 \uac16\ub294 \uc790\ub294 \uc27d\uac8c \uc774\ub97c \ud655\uc778 \ud560 \uc218 \uc788\uc5b4, key\uc758 \ub178\ucd9c\uc774 \uc27d\ub2e4.<\/p>\n<p>\ub530\ub77c\uc11c PL\/SQL\ub85c \uc791\uc131\ud560 \uacbd\uc6b0 \ubc18\ub4dc\uc2dc wrap \ucc98\ub9ac\ub97c \ud558\uc5ec source\uac00 \ubcf4\uc774\uc9c0 \uc54a\ub3c4\ub85d \ud560 \ud544\uc694\uac00 \uc788\ub2e4.<\/p>\n<p>\uc774 \uc678\uc5d0, \uc0ac\uc6a9\uc790\uac00 \ud544\uc694\uc5d0 \ub530\ub77c \uc9c1\uc811 \uc785\ub825\ud558\uac8c \ud558\ub294 \ubc29\ubc95\uacfc, OS\uc758 \ud30c\uc77c\ub4f1\uc744 \uc774\uc6a9\ud558\uc5ec \uc800\uc7a5\ud558\uc5ec \ub193\ub294 \ubc29\ubc95\uc774 \uc788\uc73c\uba70, \ubaa8\ub450 \uc7a5\ub2e8\uc810\uc774 \uc788\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; \ubcf4\ub2e4 \ub192\uc740 \ubcf4\uc548\uc744 \uc704\ud574 \uc2e4\uc81c data \uc55e\uc5d0 8 byte\uc758 random text \ub97c \ucd94\uac00\ud558\ub294 \ubc29\ubc95.<\/p>\n<p>Oracle\uc740 IV\ub97c \uace0\uc815\ub41c \uac12\uc73c\ub85c \uc0ac\uc6a9\ud558\uace0 \uc788\uc73c\uba70, \ub2e4\ub978 \uac00\ubcc0\uc801\uc73c\ub85c \uc9c0\uc815\uc744 \ud560 \uc218 \uc788\ub2e4\ud558\ub354\ub77c\ub3c4 \uac19\uc740 data\ub97c encrypt\ud558\uba70 \ud56d\uc0c1 \uac19\uc740 ciphertext\ub97c \uc5bb\uc744 \uc218 \ubc16\uc5d0 \uc5c6\ub2e4.<\/p>\n<p>\uc774\ub97c \uc545\uc758\ub97c \uac16\uace0 data\ub97c access\ud558\uace0\uc790 \ud558\ub294 \uc790\uc5d0\uac8c data\uc758 \ud2b9\uc131\uc744 \ucd94\uce21\ud558\uac8c \ud560 \uc218 \uc788\ub294 \uc694\uc18c\uac00 \ub420 \uc218 \uc788\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>\ub530\ub77c\uc11c \uc2e4 data \uc55e 8 byte\ub97c random data\ub85c \ucd94\uac00\ud574\uc11c DES3\ub85c \ucc98\ub9ac \ud560 \uacbd\uc6b0 \uac19\uc740 data\ub77c \ud558\ub354\ub77c\ub3c4 \ub9e4 \ubc88 \ub2e4\ub978 ciphertext \ub97c \uc5bb\uc744 \uc218 \uc788\uc5b4, \ubd84\uc11d\uc744 \uc5b4\ub835\uac8c \ud560 \uc218 \uc788\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>* \uacbd\uace0 : ciphertext\uac04\uc758 \ube44\ud638\ud658 \ubb38\uc81c.<\/p>\n<p>&#8211; platform\uac04\uc758 ciphertext\uac04\uc758 \ube44 \ud638\ud658.<\/p>\n<p>DBMS_OBFUSCATION_TOOLKIT\uc758 \ucd08\uae30 \ubc84\uc804\uc5d0\ub294 CPU\uc758 type\uc5d0 \ub530\ub77c ciphertext\uac00 \uc11c\ub85c \ud638\ud658\ub418\uc9c0 \uc54a\ub294\ub2e4\ub294 \ubb38\uc81c\uc810\uc774 \ubc1c\uacac \ub418\uc5c8\ub2e4. \uc774 \ub85c \uc778\ud574, Solaris box\uc5d0\uc11c encrypt\ub41c \uac83\uc740 NT\uc5d0\uc11c decrypt\ud560 \uacbd\uc6b0<br \/>\n\uc5c9\ub6b1\ud55c \uacb0\uacfc\uac00 \ub098\uc62c \uc218 \uc788\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; Oracle Version\uc5d0 \ub530\ub978 \ube44 \ud638\ud658 (upgrade \ud3ec\ud568)<\/p>\n<p>\ub3d9\uc77c platform\uc774\ub77c \ud558\ub354\ub77c\ub3c4 Oracle8i\uc640 Oracle9i\uac04\uc758 ciphertext \ub294 \uc11c\ub85c \ud638\ud658\ub418\uc9c0 \uc54a\uc744 \uc218 \uc788\ub2e4. \uc774\ub294 \uc704\uc5d0\uc11c \uc5b8\uae09\ud55c \uc7a5\ube44\uac04 \ud638\ud658 \ubb38\uc81c\ub97c \ud574\uacb0\ud558\uba74\uc11c DES \uad6c\ud604\uc774 Oracle9i\uc5d0\uc11c \ubcc0\uacbd\ub418\uc5b4 Oracle8i\uc5d0<br \/>\n\uc11c encrypt\ub41c data\uac00 Oracle9i\uc5d0\uc11c decrypt \ubd88\uac00\ub2a5 \ud560 \uc218 \uc788\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; DES\uc758 IV(initialization value) \uace0\uc815\uc73c\ub85c \uc778\ud55c \ube44 \ud638\ud658<\/p>\n<p>Oracle\uc740 IV\ub97c \uace0\uc815\ub41c \uac12\uc73c\ub85c \uc0ac\uc6a9\ud558\uace0 \uc788\uc5b4, Oracle\uc774 \uc544\ub2cc 3RD party module\uc744 \uc774\uc6a9\ud558\uc5ec IV\ub97c \uc9c0\uc815\ud558\uace0 encrypt\ud560 \uacbd\uc6b0 decrypt\uac00 \ubd88\uac00\ub2a5 \ud558\ub2e4.<\/p>\n<p>\uc774 \ubb38\uc81c\ub85c \uc778\ud574 \ub0b4\ubd80\uc801\uc778 data\uc758 encrypt\uc640 decrypt \ub294 \uc9c0\uc7a5\ubc1b\uc9c0 \uc54a\uc73c\ub098, client \ubaa8\ub4c8\ub4f1\uc5d0\uc11c \uc9c1\uc811 DES3\ub97c \ucc98\ub9ac \ud560 \uacbd\uc6b0 \ud638\ud658\uc131\uc774 \ub5a8\uc5b4\uc9c0\uac8c \ub41c\ub2e4.<\/p>\n<p>\uc774 \ubb38\uc81c\ub294 9.2.0.2\uc5d0\uc11c IV\ub97c \uc9c0\uc6d0\ud558\ub3c4\ub85d \ud558\uc5ec \ud574\uacb0 \ud558\uc600\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>* \uad8c\uace0\uc0ac\ud56d \ubc0f \uc8fc\uc758\uc0ac\ud56d<\/p>\n<p>cipher\ub97c access\ud558\ub294 \ubc94\uc8fc\uc5d0 \ub530\ub77c \uc2e4\uc81c DESEncrypt\uc640 DESDecrypt \ub97c \uc5b4\ub514\uc11c \uc218\ud589\ud558\ub290\ub0d0\uac00 \uacb0\uc815\ub418\uc5b4\uc838\uc57c \ud55c\ub2e4.<\/p>\n<p>\uc608\ub97c \ub4e4\uc5b4 data\ub97c access\ud558\ub294 client\uac00 \ub2e4\uc591\ud558\uace0 \ubaa8\ub450\uac00 client\uc5d0\uac8c cipher\ub97c \uadf8\ub300\ub85c \ub118\uaca8\uc8fc\uc5b4 client\uac00 \uc9c1\uc811 \uc774\ub97c decrypt\ud558\uac8c \ud560 \uac83\uc778\uc9c0, \uc544\ub2c8\uba74 data base\ub0b4\ubd80\uc640 client\uac00 \uc774\ub97c \ubd84\ud560 \ud558\uc5ec \ub2f4\ub2f9 \ud560\uc9c0\uac00 \uacb0\uc815\ub418\uc5b4\uc838\uc57c \ud55c\ub2e4.<\/p>\n<p>\uc720\uc77c\ud55c module\uc744 \ub450\uc5b4 encrypt\uc640 decrypt\ub97c \ub2f4\ub2f9\ud558\ub3c4\ub85d \ud558\ub294\uac83 \ub3c4 \ud558\ub098\uc758 \ubc29\ubc95\uc774 \ub420 \uc218 \uc788\ub2e4.<\/p>\n<p>Oracle\uc5d0\uc11c \uc81c\uacf5\ud558\ub294 DBMS_OBFUSCATION_TOOLKIT\uc740 8.1.6\uc5d0 \ucd5c\ucd08 \uc81c\uacf5\ub418\uc5b4\uc9c0\uace0, platform\uac04 \ubc0f standard\uc640\uc758 \ud638\ud658\uc131 \ud5a5\uc0c1 \ubc0f \uae30\ub2a5\uc758 \ucd94\uac00\ub85c \uc778\ud574 \ubc84\uc804\uac04\uc758 \ud638\ud658\uc131\uc744 \ubcf4\uc7a5 \ud560 \uc218 \uc5c6\ub2e4.<\/p>\n<p>\ub530\ub77c\uc11c, \ud55c instance\ub0b4\uc5d0\uc11c\ub9cc access\ub418\uc5b4\uc9c0\ub294 data\ub85c \uad6d\ud55c\ud560 \ud544\uc694\uac00 \uc788\ub2e4.<\/p>\n<p>\uc801\uc6a9\ud558\uace0\uc790 \ud558\ub294 Oracle version\uc774 Oracle8.1.x\uc778 \uacbd\uc6b0 Oracle9\uc73c \ub85c upgrade \ud560 \uacbd\uc6b0 \uae30\uc874\uc5d0 \uc800\uc7a5\ud55c cipher\uac00 \ud638\ud658\ub418\uc9c0 \uc54a\uc744 \uc218 \uc788\uc74c\uc744 \uc5fc\ub450\ud574\uc57c \ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>* References<\/p>\n<p>&#8211; Oracle9i Supplied PL\/SQL Packages and Types Reference (Part No. A96612-01)<br \/>\n&#8211; Note 166884.1<br \/>\n&#8211; Note 102902.1<\/p>\n<p>@ BUG 1411221<br \/>\n@ BUG 2127974<\/p>\n","protected":false},"excerpt":{"rendered":"<p>RDBMS Version : 8.1.6\uc774\uc0c1 * DES \uc18c\uac1c Data\uc758 \ubcf4\uc548\uc744 \uc704\ud55c encryption\uacfc decryption\uc758 \ubc29\ubc95\ub860\uc774 \uc5ec\ub7ec\uac00 \uc9c0 \uc18c\uac1c \ub418\uc5c8\ub2e4. data\uac00 \ucc98\ub9ac\ud574\uc57c \ud558\ub294 \ud504\ub85c\uc138\uc2a4\ub294 data\ub97c \uc0dd\uc131\u00a0 \ub610\ub294 \ud68d\ub4dd\ud558\uc5ec \uc774\ub97c \uc800\uc7a5\ud558\uac70\ub098 \uc804\uc1a1\ud558\ub294 \uacfc\uc815\uc5d0\uc11c\uc758 \ubcf4\uc548\uc744 \uc704\ud574 \uc774\ub97c Encryption\ud558\uace0, \uc800\uc7a5\ub41c data\ub97c \uc77d\uac70\ub098 \uc804\uc1a1\uc744 \ubc1b\ub294 \ud504\ub85c\uc138 \uc2a4\uac00 \uc774\ub97c \ub2e4\uc2dc Decryption\ud558\uac8c \ub41c\ub2e4. &nbsp; &#8211; DES DES\ub294 1974\ub144 IBM\uc5d0 \uc758\ud574 \uc81c\uc548\ub418\uc5c8\ub2e4. data\ub97c \uc8fc\uc5b4\uc9c4 key\ub85c [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2427,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"spay_email":""},"categories":[336],"tags":[1042,1039,1040,1041],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/haisins.synology.me\/wordpress\/wp-content\/uploads\/2018\/01\/data-encryption-facts.jpg?fit=468%2C327","amp_enabled":true,"_links":{"self":[{"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/3621"}],"collection":[{"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3621"}],"version-history":[{"count":1,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/3621\/revisions"}],"predecessor-version":[{"id":3622,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/3621\/revisions\/3622"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/media\/2427"}],"wp:attachment":[{"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3621"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3621"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3621"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}