java编程md5_SHA-1和MD5示例程序 Java编写详解

/**

* SHA-1和MD5示例程序 Java编写

*/

package com.koal.svs;

public class MYDigest {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

MYDigest mydigest=new MYDigest();

mydigest.testDigest();

}

public void testDigest()

{

try

{

String myinfo="my test information!";

java.security.MessageDigest alga=java.security.MessageDigest.getInstance("SHA-1");

alga.update(myinfo.getBytes());

byte[] digesta=alga.digest();

System.out.println("本信息SHA-1摘要是:"+byte2hex(digesta));

java.security.MessageDigest algb=java.security.MessageDigest.getInstance("MD5");

algb.update(myinfo.getBytes());

byte[] digestb=algb.digest();

System.out.println("本信息MD5摘要是:  "+byte2hex(digestb));

if(algb.isEqual(digesta, algb.digest()))

{

System.out.println("equal!");

}

else

{

System.out.println("failure");

}

}

catch(java.security.NoSuchAlgorithmException ex)

{

System.out.println(ex.toString());

}

}

public String byte2hex(byte[] b)

{

String hs="";

String stmp="";

for(int n=0;n

{

stmp=(java.lang.Integer.toHexString(b[n] & 0XFF));

if(stmp.length()==1)

hs=hs+'0'+stmp;

else

hs=hs+stmp;

if(n

hs=hs+':';

}

return hs.toUpperCase();

}

}

程序运行结果如下:

本信息SHA-1摘要是:DC:22:48:48:0E:6F:6B:90:A8:F0:D1:0E:66:D6:D4:63:EB:E2:FC:5A

本信息MD5摘要是:  C9:AA:1A:FB:B9:DA:A6:CC:AD:7D:38:0A:48:F1:2E:B6

failure

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值