MD5加密

来源:互联网 发布:java获取本周的第一天 编辑:程序博客网 时间:2024/06/08 18:04

  MD5即Message-Digest Algorithm 5(信息-摘要算法 5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。

         MD5的作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的十六进制数字串)计算后的MD5值是唯一的。这个过程是不可逆的。

使用方向:

       1.安全访问认证


         在登录时验证密码正确与否时,将本次的密码作MD5运算后与上次的作比较。


       2.一致性验证


         根据文件内容或信息计算出它的MD5值,如果文件或者信息修改后再次计算出的MD5值必将不同


        以上参考百度百科总结而来。地址   http://baike.baidu.com/view/7636.html

    

        

         以下是我使用java的MD5加密 32位

[java] view plaincopy
  1. import java.security.MessageDigest;  
  2.   
  3. public class BWMD5 {  
  4.     public final static String MD5(String s){  
  5.          char hexDigits[] = {  
  6.              '0''1''2''3''4''5''6''7''8''9''a''b''c''d',  
  7.              'e''f'};  
  8.          try {  
  9.            byte[] strTemp = s.getBytes();  
  10.            MessageDigest mdTemp = MessageDigest.getInstance("MD5");  
  11.            mdTemp.update(strTemp);  
  12.            byte[] md = mdTemp.digest();  
  13.            int j = md.length;  
  14.            char str[] = new char[j * 2];  
  15.            int k = 0;  
  16.            for (int i = 0; i < j; i++) {  
  17.              byte byte0 = md[i];  
  18.              str[k++] = hexDigits[byte0 >>> 4 & 0xf];  
  19.              str[k++] = hexDigits[byte0 & 0xf];  
  20.              }  
  21.              return new String(str);  
  22.            }  
  23.            catch (Exception e)  
  24.            {  
  25.              return null;  
  26.            }  
  27.        }  
  28. }  
0 0
原创粉丝点击