mj@home:~$

SHA 암호화

hash 암호화

  • hash 암호화는 암호화만 가능하고 복호화는 불가능
  • 데이터를 비교 할때는 암호화된 내용을 복호화하는 것이 아니라 둘다 암호화하여 비교해야한다.

SHA

Secure Hash Algorithm

  • SHA-0, SHA-1, SHA256, SHA512 등이 있다.
  • 위키

JAVA 예제

public static String encrypt(String target) {
  try {
    MessageDigest md = MessageDigest.getInstance("SHA-512");
    md.update(target.getBytes());
    byte byteData[] = md.digest();

    // convert the byte to hex format method 1
    StringBuffer hashCodeBuffer = new StringBuffer();
    for (int i = 0; i < byteData.length; i++) {
      hashCodeBuffer.append(Integer.toString((byteData[i] & 0xff) + 0x100, 16).substring(1));
    }
    return hashCodeBuffer.toString();
  } catch (NoSuchAlgorithmException nsae) {
    nsae.printStackTrace();
  }

  return "";
}

Mysql 예제

SELECT lower(sha2("string", 512));