반응형
특정 텍스트를 암호화 하여 DB에 보관해야 할 일들이 있다.
특히 패스워드 같은것은 입력받은 문자 그대로 저장하는것보다 암호화 하여 저장하는것이 보안을 더 높일수 있다.
1. SHA256 암호화
/** * 문자열을 SHA-256 방식으로 암호화 * @param txt 암호화 하려하는 문자열 * @return String * @throws Exception */ public String getEncSHA256(String txt) throws Exception{ StringBuffer sbuf = new StringBuffer(); MessageDigest mDigest = MessageDigest.getInstance("SHA-256"); mDigest.update(txt.getBytes()); byte[] msgStr = mDigest.digest() ; for(int i=0; i < msgStr.length; i++){ byte tmpStrByte = msgStr[i]; String tmpEncTxt = Integer.toString((tmpStrByte & 0xff) + 0x100, 16).substring(1); sbuf.append(tmpEncTxt) ; } return sbuf.toString(); }
2. MD5 암호화
/** * 문자열을 MD-5 방식으로 암호화 * @param txt 암호화 하려하는 문자열 * @return String * @throws Exception */ public String getEncMD5(String txt) throws Exception { StringBuffer sbuf = new StringBuffer(); MessageDigest mDigest = MessageDigest.getInstance("MD5"); mDigest.update(txt.getBytes()); byte[] msgStr = mDigest.digest() ; for(int i=0; i < msgStr.length; i++){ String tmpEncTxt = Integer.toHexString((int)msgStr[i] & 0x00ff) ; sbuf.append(tmpEncTxt) ; } return sbuf.toString() ; }
아울러 네이버 개발자 블로그에 "안전한 패스워드 저장" 이라는 글이 있으니, 한번 읽어보는것도 좋음.
'Language > Java / JSP' 카테고리의 다른 글
[Java] 엑셀 파일 만들기 (0) | 2014.08.01 |
---|---|
[Java] Gmail SMTP를 이용한 메일 보내기 (8) | 2014.07.28 |
[Java] 디렉토리내 일정기간 지난 파일 삭제 (0) | 2014.07.28 |
[Java] 디렉토리내 특정 파일 리스트 출력 (0) | 2014.07.28 |
[Java] json 쉽게 만들기 (0) | 2014.07.25 |