package com.util; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import sun.misc.BASE64Encoder; public class MD5{ public static final String Md(String plainText,boolean judgeMD) { StringBuffer buf = new StringBuffer(""); try { MessageDigest md = MessageDigest.getInstance("MD5"); md.update(plainText.getBytes()); byte b[] = md.digest(); int i; for (int offset = 0; offset < b.length; offset++) { i = b[offset]; if(i<0) i+= 256; if(i<16) buf.append("0"); buf.append(Integer.toHexString(i)); } // System.out.println("32位:result: " + buf.toString());//32位的加密 // System.out.println("16位:result: " + buf.toString().substring(8,24));//16位的加密 } catch (NoSuchAlgorithmException e) { // TODO Auto-generated catch block e.printStackTrace(); } if(judgeMD == true){ return buf.toString(); }else{ return buf.toString().substring(8,24); } } public static final String EncoderPwdByMd5(String str) throws NoSuchAlgorithmException, UnsupportedEncodingException { // 确定计算方法 MessageDigest md5 = MessageDigest.getInstance("MD5"); BASE64Encoder base64en = new BASE64Encoder(); // 加密后的字符串 String newstr = base64en.encode(md5.digest(str.getBytes("utf-8"))); return newstr; } //测试 public static void main(String[] args) { Md("a", true); try { System.out.println("64位:result: " + EncoderPwdByMd5("12345678") + "**"); } catch (NoSuchAlgorithmException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
相关推荐
c#语言实现的原始MD5加密算法,支持16位加密和32位加密.
这是一个MD5加密的算法,可以是16位,也可以是32位。算法不需C#的内核引用即可实现,是学习MD5算法的一个很好的例子。
这个是以md5加密32位小写具体算法实例。可直接用于云mas的HTTP、和webservice接口。
VB的md5加密算法(32位支持中文) 所谓MD5,即“Message-Digest Algorithm 5(信息-摘要算法)”,它由MD2、MD3、MD4发展而来的一种单向函数算法(也就是HASH算法),它是国际著名的公钥加密算法标准RSA的第一设 计者R...
纯PB6实现MD5的16位以及32位加密算法,可以轻松升级到任意版本的PB,内附PB6.5的代码演示程序
md5加密代码,32位的,16位的 代码描述
MD5 加密算法JS文件,MD5算法原版描述
md5加密算法详解md5加密算法详解md5加密算法详解md5加密算法详解md5加密算法详解md5加密算法详解md5加密算法详解md5加密算法详解
MD5加密算法VC++MD5加密算法VC++MD5加密算法VC++MD5加密算法VC++MD5加密算法VC++MD5加密算法VC++MD5加密算法VC++
C++实现 MD5加密算法 可直接调用 hash1加密算法 MD5加密算法 MD5加密算法
VBA MD5加密 算法
MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特...
MD5加密算法(16位,32位)的C#实现
jquery 实现MD5加密,MD5加密是一种不可逆的加密算法,可加密成16位小写,16位大写,32位小写,32位大写。
一 \md5加密是对字符或密码进行的16位或32位等加密方式! 一般在普通MDB数据库经常用到,比如论坛数据库等.有用! 二 \加密解密并不矛盾,比如银行系统的128位加密现在谁可以轻易破的了呢? 虽然md5加密不算很难破,但...
md5加密算法md5加密算法md5加密算法md5加密算法md5加密算法md5加密算法md5加密算法
MD5_加密算法程序_C51验证可以用 在串口助手中验证了.
MD5就是采用单向加密的加密算法,对于MD5而言,有两个特性是很重要的,第一是任意两段明文数据,加密以后的密文不能是相同的;第二是任意一段明文数据,经过加密以后,其结果必须永远是不变的。前者的意思是不可能有...
1、 对字符串进行MD5不可逆算法加密,生成32位MD5密码; 2、对文件生成32位MD5指纹,确保文件在传输使用过程中没有被修改,没有出错,没有被植入木马、病毒等; 3、比对文件的MD5指纹,确定文件是否被修改(如果仅靠...
密码学md5加密技术..........................................................................................................................................................................................