예제 text 파일이랑 spool 자료까지

http://sinufam.tistory.com/23





간단한 예제

http://www.ezslookingaround.com/blog/tech/?no=1776


오라클 암호화... 

from http://mcpicdtl.blogspot.com/2008/09/oracle-dbmscrypto.html

oracle dbms_crypto (오라클 암호화) 
1. oracle md5
ex : 
select rawtohex(DBMS_CRYPTO.Hash(to_clob(to_char('mcpicdtl.blogspot.com')),2)) 
from dual;

함수 DBMS_CRYPTO.Hash 의 2번자 인자에 2가 들어가 있다. 
이 파라미터가 1 : md4, 2 : md5, 4 : sh1 암호화 방식을 지징한다

위 함수를 실행 시키기 위해서는 sysdba 으로 로그인 해야 하거나 . 
sysdba로 부터 DBMS_CRYPTO 에 대한 EXECUTE 권한을 위임 받으면 된다. (GRANI 참조)

By Haru(Vins) 위치 9/01/2008   

Tag Oracle 


//////////////////////////////////////////////////////////////////////////////////


http://setong.tistory.com/entry/%EC%98%A4%EB%9D%BC%ED%81%B4-%EC%95%94%ED%98%B8%ED%99%94



오라클 암호화에 대해 
http://blog.naver.com/mhs0519?Redirect=Log&logNo=10001979808
의 내용을 약간 수정 하였다.

난 FUNCTION으로~ ^^

[오라클 암호화를 하는 과정]
1. sys 계정으로 접속한다. (로컬이라면 그냥 /as sysdba .. )

2. 접속 후 아래의 명령어 입력
@%ORACLE_HOME%/rdbms/admin/dbmsobtk.sql
@%ORACLE_HOME%/rdbms/admin/prvtobtk.plb

grant execute on sys.crypto to public;

3. 함수를 만든다.
1) 암호화


CREATE OR REPLACE FUNCTION FN_ENCRYPT( str VARCHAR2  ) RETURN VARCHAR2 
IS
raw_input RAW(128);
key_string VARCHAR2(16):='keyvalues';
raw_key RAW(128):=UTL_RAW.CAST_TO_RAW(key_string);
encrypted_raw RAW(2048);
BEGIN
    raw_input:=UTL_RAW.CAST_TO_RAW(RPAD(str,FLOOR((LENGTHB(Str)/8+.9))*8));
    dbms_obfuscation_toolkit.DESEncrypt(
        input => raw_input
      , key=> raw_key
      , encrypted_data => encrypted_raw);
RETURN rawtohex(encrypted_raw);
END;



2) 복호화


CREATE OR REPLACE FUNCTION FN_DECRYPT( str VARCHAR2 ) RETURN VARCHAR2 
IS
key_string VARCHAR2(16) := 'keyvalues';
raw_key RAW(128):=UTL_RAW.CAST_TO_RAW(key_string);
encrypted_raw RAW(2048);
decrypted_raw RAW(2048);   
BEGIN
    encrypted_raw:=hextoraw(str);
    dbms_obfuscation_toolkit.DESDecrypt(
          input => encrypted_raw
        , key=> raw_key
        , decrypted_data => decrypted_raw);
    RETURN UTL_RAW.CAST_TO_VARCHAR2(decrypted_raw);
END;
4. 테스트


Posted by 야동우
,