투케이2K

119. (java/자바) MD5 사용해서 데이터 인코딩(암호화) 실시 본문

Java

119. (java/자바) MD5 사용해서 데이터 인코딩(암호화) 실시

투케이2K 2021. 1. 13. 16:09
반응형

/* =========================== */

[ 개발 환경 설정 ]

개발 툴 : Eclipse

개발 언어 : Java

/* =========================== */

/* =========================== */

[소스 코드]

 

package AI3;

import java.security.MessageDigest;

public class MainActivity23 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println("[MD5 사용해서 데이터 인코딩(암호화) 실시]");
		
		/*[설 명]
		 * 1. MD5는 메세지 축약 알고리즘으로써, 파일 무결성 검사용도로 많이 쓰이고 있다
		 * 2. MD5는 SHA256과 동일하게 단방향 암호화 방식이며 디코딩(복호화)할 수 없다
		 * 3. SHA256은 160bit 의 해쉬를 제공하지만 MP5는 128bit 의 해쉬를 제공한다
		 */
		
		String data = "hello"; //초기 데이터 변수 선언
		
		System.out.println("MD5 인코딩(문자열) - "+getMD5(data));

	}//메인 종료
	
	// ==== [MD5 인코딩 실시] ====
	public static String getMD5(String data) {
		String MD5 = "";
		try {
			MessageDigest md = MessageDigest.getInstance("MD5");
			md.update(data.getBytes());
			byte byteData[] = md.digest();
			StringBuffer sb = new StringBuffer();
			for (int i = 0; i < byteData.length; i++) {
				sb.append(Integer.toString((byteData[i] & 0xff) + 0x100, 16).substring(1));
			}
			MD5 = sb.toString();

		} catch (Exception e) {
			e.printStackTrace();
			MD5 = null;
		}
		return MD5;
	}

}//클래스 종료

/* =========================== */

[결과 출력]

[MD5 사용해서 데이터 인코딩(암호화) 실시]

MD5 인코딩(문자열) - 5d41402abc4b2a76b9719d911017c592

/* =========================== */

/* =========================== */

[요약 설명]

* 1. MD5는 메세지 축약 알고리즘으로써, 파일 무결성 검사용도로 많이 쓰이고 있다

* 2. MD5는 SHA256과 동일하게 단방향 암호화 방식이며 디코딩(복호화)할 수 없다

* 3. SHA256은 160bit 의 해쉬를 제공하지만 MP5는 128bit 의 해쉬를 제공한다

/* =========================== */

반응형
Comments