Notice
Recent Posts
Recent Comments
Link
투케이2K
118. (java/자바) SHA256 사용해서 데이터 인코딩(암호화)실시 본문
/* =========================== */
[ 개발 환경 설정 ]
개발 툴 : Eclipse
개발 언어 : Java
/* =========================== */
/* =========================== */
[소스 코드]
package AI3;
import java.security.MessageDigest;
import java.util.Arrays;
public class MainActivity22 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("[SHA256 사용해서 데이터 인코딩(암호화)실시]");
/*[설 명]
* 1. SHA-256 - 단방향 암호화 기법으로 디코딩(복호화)를 할 수 없는 방법입니다
* 2. SHA-256은 SHA 시리즈 중에서 가장 보편적으로 사용되고 있습니다
*/
String data = "hello"; //초기 문자열 변수 선언 실시
System.out.println("원본 : "+data);
System.out.println("sha256 인코딩(문자열) : "+getSHA256(data));
byte encode[] = getSHA256_ByteArray(data);
System.out.println("sha256 인코딩(바이트) : "+Arrays.toString(encode));
}//메인 종료
// ==== [SHA256 인코딩 - 문자열] ====
public static String getSHA256(String data) {
String SHA = "";
try {
MessageDigest sh = MessageDigest.getInstance("SHA-256");
sh.update(data.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 (Exception e) {
e.printStackTrace();
SHA = null;
}
return SHA;
}
// ==== [SHA256 인코딩 - 바이트] ====
public static byte[] getSHA256_ByteArray (String data) {
byte byteData[] = null;
try {
MessageDigest sh = MessageDigest.getInstance("SHA-256");
sh.update(data.getBytes());
byteData = sh.digest();
} catch (Exception e) {
e.printStackTrace();
}
return byteData;
}
}//클래스 종료
/* =========================== */
[결과 출력]
[SHA256 사용해서 데이터 인코딩(암호화)실시]
원본 : hello
sha256 인코딩(문자열) : 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
sha256 인코딩(바이트) : [44, -14, 77, -70, 95, -80, -93, 14, 38, -24, 59, 42, -59, -71, -30, -98, 27, 22, 30, 92, 31, -89, 66, 94, 115, 4, 51, 98, -109, -117, -104, 36]
/* =========================== */
/* =========================== */
[요약 설명]
* 1. SHA-256 - 단방향 암호화 기법으로 디코딩(복호화)를 할 수 없는 방법입니다
* 2. SHA-256은 SHA 시리즈 중에서 가장 보편적으로 사용되고 있습니다
/* =========================== */
반응형
'Java' 카테고리의 다른 글
Comments