JAVA SHA256 암호화(Encrypt)
개발을 하다 보면, 암호를 종종 다루어야 하는데, 암호를 저장할 때는 일방향 암호화를 해야한다.
보통 개인정보가 들어가는 곳에 대해서는 일방향 암호화가 필수이기 때문에 암호를 저장할 때 암호를 복호화가 불가능한 일방향 암호를 이용하곤 한다.
이번 포스팅에서는 자바에서 SHA 256으로 일방향 암호화를 하는 방법에 대해 알아보자.
JAVA SHA256 Encrypt
별도의 플러그인이 필요하지는 않고 자바의 secutiry 패키지에 있는 MessageDigest를 이용한 방법이다.
.public class Sha256Util { private Logger logger = LogManager.getLogger(); public String encoding(String param) throws Exception{ String result = ""; try { MessageDigest md = MessageDigest.getInstance("SHA-256"); // SHA-256 또는 MD5 md.update(param.getBytes()); byte bs[] = md.digest(); StringBuffer sb = new StringBuffer(); for(int i=0; i<bs.length; i++) { sb.append(Integer.toString((bs[i]&0xff) + 0x100, 16).substring(1)); } result = sb.toString(); logger.debug(result); // 결과물이 출력됨. aed19017dbb4d25a580b7f9e012e29be089bd1f3 //65자 } catch(NoSuchAlgorithmException e){ logger.error(e.toString()); throw e; } catch(Exception e){ logger.error(e.toString()); throw e; } return result; } }
위와 같이 소스를 작성하고 아래와 같이 실행하면 된다.
그렇게 하면 아래와 같은 결과가 출력된다.
.
이렇게 하면 암호를 SHA256으로 쉽게 암호화할 수 있다.
자바로 암호화하는 방법은 위와 같고, JAVASCRIPT로도 SHA256으로 암호화할 수 있는데, 다음 포스팅에서는 자바스크립트로 SHA256 암호화하는 방법에 대해 알아보자.
클라이언트단에서부터 암호화가 되어 이동되기 때문에 자바로 암호화하는 것보다 더 안전할 수 있다.
'Web' 카테고리의 다른 글
checkbox 속성 추가(다건의 attribute) (0) | 2017.05.05 |
---|---|
Javascript SHA256 Encrypt(자바스크립트 SHA256 암호화) (0) | 2017.02.22 |
자바스크립트 리터럴이란?(javascript literal) (0) | 2017.01.03 |
html5 예제 (기본 형식) (0) | 2016.10.29 |
html 우클릭 방지, 복사 금지 (0) | 2016.10.16 |