본문 바로가기

IT노트(구)/Java

자바 SHA256 암호화 예제

자바에서 java.security.MessageDigest를 사용하면

외부 라이브러리를 사용하지 않고 SHA256 암호화를 구현할 수 있다.

예제 소스는 다음과 같다!(SHA1도 가능하다.)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
 
...
 
public String encryptSHA256(String str) {
    String SHA = null;
    try {
        MessageDigest sh = MessageDigest.getInstance("SHA-256"); // 이 부분을 SHA-1으로 바꿔도 된다!
        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+ 0x10016).substring(1));
        }
        SHA = sb.toString();
    } catch(NoSuchAlgorithmException e){
        e.printStackTrace(); 
    }
    return SHA;
}
cs