public class Cropto {
//主函数
public static void main(String args[]) throws NoSuchAlgorithmException{
useMD5();
}
//使用MD5得到信息摘要,抛出一个没有这种算法运算的规则异常
public static void useMD5() throws NoSuchAlgorithmException{
//需要计算摘要的原文
String msg="aaaaabbbbbcccccc";
byte []date =msg.getBytes();
//取得MD5摘要对象
java.security.MessageDigest md5A=MessageDigest.getInstance("MD5");
md5A.update(date);//用MD5处理原文
//得到信息摘要
byte []secdate=md5A.digest();
System.out.println("A方摘要"+new String(secdate));
//A------>B(原文+摘要)
//B利用原文生成摘要,与A发送过来的摘要进行对比
java.security.MessageDigest md5B=MessageDigest.getInstance("MD5");
md5B.update(date);
byte []destdate=md5B.digest();
System.out.println("B方摘要"+new String(destdate));
//比较两个数组
if(java.util.Arrays.equals(secdate, destdate)){
System.out.println("摘要相同");
}else{
System.out.println("摘要不相同");
}
}
}