홈 · 개발 참고자료

개발 참고자료

오라클에서 자바파일 암호화 사용하기-SHA256

작성자
왕희복
작성일
2015-03-08
조회
14571
분류
오라클
1. SHA256 자바파일 생성package common.base;




import java.security.MessageDigest;


import java.security.NoSuchAlgorithmException;




public class SHA256Encryptor {


public static String SHA256(String str){


String SHA = "";


try{


MessageDigest sh = MessageDigest.getInstance("SHA-256");


sh.update(str.getBytes());


byte byteData[] = sh.digest();




StringBuffer sb = new StringBuffer();


for(int i = 0 ; i < byteData.length ; i++){


sb.append(Integer.toString((byteData[i]&0xff) + 0x100, 16).substring(1));


}


SHA = sb.toString();


}catch(NoSuchAlgorithmException e){


e.printStackTrace();


SHA = null;


}


return SHA;


}




public static void main(String[] args) {


String in_str = args[0];


String out_str = SHA256(in_str);




System.out.println(">>in["+in_str+ "],out[" + out_str + "]" + out_str.length() );


}


}


2. cmd 실행 후 자바파일 로드하기


생성 : C:\>loadjava -u 아이디/암호@계정 -v -resolve C:\a.java


제거 : C:\>dropjava -u 아이디/암호@계정 -v -resolve C:\a.java


3. Oracle 함수 생성하기


CREATE OR REPLACE FUNCTION SHA(NAME VARCHAR2) RETURN VARCHAR2


AS LANGUAGE JAVA


NAME 'common.base.SHA256Encryptor.SHA256(java.lang.String) return java.lang.String';


4. 사용하기


실행문 : SELECT SHA('1234') FROM DUAL;


결과값 : 03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4