필요한 부분이 있는데요.....

 

MD5(String, String)

SHA(String, String)

 

이렇게 놓고

앞에 String에서 암호화하면 뒤의 String값에 암호화된 값이 들어가게 하려는데요

 

암호화 코드자체는 찾아봐서 알겠는데요...

뭐...그냥 MD5(String inpara)형식이더군요...

inpara가 뭐죠???

그리고... 아래 함수들 사용법좀 가르쳐주세여

 

 

----------------------------------------------------

 

import java.security.MessageDigest;

import java.security.GeneralSecurityException;

public class MD5 {

public static String MD5(String inpara) {

byte[] bpara = new byte[inpara.length()];

byte[] rethash;

int i;

for (i=0; i < inpara.length(); i++)

bpara[i] = (byte)(inpara.charAt(i) & 0xff );

try {

MessageDigest md5er = MessageDigest.getInstance("MD5");

rethash = md5er.digest(bpara);

} catch (GeneralSecurityException e) {

throw new RuntimeException(e);

}

StringBuffer r = new StringBuffer(32);

for (i=0; i < rethash.length; i++) {

String x = Integer.toHexString(rethash[i] & 0xff).toUpperCase();

if (x.length()<2)

r.append("0");

r.append(x);

}

return r.toString();

}

}

 

 

 

 

-----------------------------------------------------

//SHA-256
public static String makeSha256Key(String str){

MessageDigest sha256;

try {
sha256 = MessageDigest.getInstance("SHA-256");
} catch (NoSuchAlgorithmException e) {
return str+"-"+System.currentTimeMillis();
}

try {
sha256.update(str.getBytes("utf-8"));
} catch (UnsupportedEncodingException ue) {
ue.printStackTrace();
}

//sha256.update(str.getBytes());
byte[] bytes = sha256.digest();
int bytes_length = bytes.length

StringBuffer strBuffer = new StringBuffer();

for(int i = 0 ; i < bytes_length; i++){
strBuffer.append(Integer.toString((bytes[i] & 0xff) + 0x100, 16).substring(1));
}

System.out.println(strBuffer.toString().toUpperCase());

return strBuffer.toString().toUpperCase();
}

 

 

 

그리고... sha256.digest();

md5.digest();

가 암호화 같기는 한데 맞나여?