Java security MD5加密算法

利用java.security对字符串进行MD5加密:

 1 import java.security.MessageDigest;
 2 import java.security.NoSuchAlgorithmException;
 3
 4 public class MD5 {
 5     public static final String MD5CODE = "";
 6
 7     private static MessageDigest messageDigest = null;
 8
 9     public static String Encode(final String Source) {
10         return Encode(Source + MD5CODE, null);
11     }
12
13     public static String Encode(final String Source, final String charset) {
14         if (Source == null)
15             return null;
16         if (messageDigest == null) {
17             try {
18                 messageDigest = MessageDigest.getInstance("MD5");
19             } catch (NoSuchAlgorithmException e) {
20                 return null;
21             }
22         }
23         if (charset == null || charset.trim().length() <= 0){
24             messageDigest.update(Source.getBytes());
25             }else {
26             try {
27                 messageDigest.update(Source.getBytes(charset));
28             } catch (Exception e) {
29                 messageDigest.update(Source.getBytes());
30             }
31         }
32         byte[] digesta = messageDigest.digest();
33         return Bytes2Hex(digesta);
34     }
35
36     public static byte[] EncodeBytes(byte[] Source) {
37         if (messageDigest == null) {
38             try {
39                 messageDigest = MessageDigest.getInstance("MD5");
40             } catch (NoSuchAlgorithmException e) {
41                 return null;
42             }
43         }
44         messageDigest.update(Source);
45         byte[] ret = messageDigest.digest();
46         return ret;
47     }
48
49     public static String Bytes2Hex(final byte[] Source) {
50         String hs = "";
51         String stmp = "";
52         for (int n = 0; n < Source.length; n++) {
53             stmp = (java.lang.Integer.toHexString(Source[n] & 0xFF));
54             if (stmp.length() == 1)
55                 hs = hs + "0" + stmp;
56             else
57                 hs = hs + stmp;
58         }
59         return hs;
60     }
61
62     public static void main(String args[]) {
63
64         String str = "123456";
65         String encode = MD5.Encode(str);
66         String encode1 = MD5.Encode(str);
67         String encode2 = MD5.Encode(str);
68         System.out.println("MD5.encode 123456="+encode+"---"+encode1+"---"+encode2);
69
70     }
71 }
时间: 2024-12-15 22:27:20

Java security MD5加密算法的相关文章

MD5加密算法(java及js)

为了防止用户登陆过程中信息被拦截导致信息泄露,我们应该在客户端就对用户密码进行加密.浏览器提交给服务器的是加密后的信息,即使被恶意拦截,被拦截信息也已做了加密处理,现在比较安全的一种加密算法是MD5加密算法,尽管MD5是一种单向的加密算法,但网上也有破解网站,所以为了进一步提高安全性,可以进行两次md5加密,或者结合其他的加密方法如3des等进行二次加密. 代码如下: js版: var hexcase = 0; function hex_md5(a) { if (a == "") re

java加密算法小结(2)--MD5加密算法

上一篇文章整理了Base64算法的相关知识,严格来说,Base64只能算是一种编码方式而非加密算法,这一篇来整理一下一个被广泛应用的加密算法---MD5. 简单了解 MD5(Message Digest Algorithm 5),翻译过来是消息摘要算法第五版,按照惯例,我们推理可能也有MD2,MD3这样名字的历史版本.. 即使完全不了解这个算法的原理,我们也可以从命名中看出一些眉道,所谓摘要,就是一个简短的概括,像我写过的毕业论文,上来第一部分就是摘要,它对后面长篇大论的文章做了一个简短有力的概

java加密算法小结--MD5加密算法

上一篇文章整理了Base64算法的相关知识,严格来说,Base64只能算是一种编码方式而非加密算法,这一篇来整理一下一个被广泛应用的加密算法---MD5. 简单了解 MD5(Message Digest Algorithm 5),翻译过来是消息摘要算法第五版,按照惯例,我们推理可能也有MD2,MD3这样名字的历史版本.. 即使完全不了解这个算法的原理,我们也可以从命名中看出一些眉道,所谓摘要,就是一个简短的概括,像我写过的毕业论文,上来第一部分就是摘要,它对后面长篇大论的文章做了一个简短有力的概

利用Java自带的MD5加密java.security.MessageDigest;

MD5加密算法,即"Message-Digest Algorithm 5(信息-摘要算法)",它由MD2.MD3.MD4发展而来的一种单向函数算法(也就是HASH算法),它是国际著名的公钥加密算法标准RSA的第一设计者R.Rivest于上个世纪90年代初开发出来的.MD5的最大作用在于,将不同格式的大容量文件信息在用数字签名软件来签署私人密钥前"压缩"成一种保密的格式,关键之处在于——这种"压缩"是不可逆的. Java JDK已经自带了MD5的实

Java中的MD5加密算法完整版

在进行Java软件开发过程中,难免会对一些数据进行加密,因此Java中提供了自带的MessageDigest实现对文本的加密算法,下面是一个对文本进行加密的MD5加密工具类代码示例: package net.yuerwan.commons.util; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import org.apache.commons.lang.StringUtil

MD5加密算法的java实现

package other; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; /* * MD5 算法 */ public class MD5 { // 全局数组 private final static String[] strDigits = { "0", "1", "2", "3", "4&quo

Java Base64、AES、SHA1、MD5加密算法

package com.example.decript;   import java.io.UnsupportedEncodingException; import java.security.InvalidKeyException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.security.SecureRandom; import javax.c

Java Base64、AES、SHA1、MD5加密算法(转载)

1 package com.example.decript; 2 3 import java.io.UnsupportedEncodingException; 4 import java.security.InvalidKeyException; 5 import java.security.MessageDigest; 6 import java.security.NoSuchAlgorithmException; 7 import java.security.SecureRandom; 8

Java与C++实现相同的MD5加密算法

转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47025267 1.Java版 package com.lyz.utils.common; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; /** * MD5加密 * @aut