`
sushi0k
  • 浏览: 2771 次
  • 性别: Icon_minigender_1
  • 来自: 桂林
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

MD5加密算法

 
阅读更多
package com.a.a;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/**
 * MD5加密算法
 */
public class Md5Encrypt {
    /**
     * 对字符串进行MD5加密
     * @param text 明文
     * @return 密文
     */
    public static String md5(String text) {
        MessageDigest msgDigest = null;

        try {
            msgDigest = MessageDigest.getInstance("MD5");
        } catch (NoSuchAlgorithmException e) {
            throw new IllegalStateException("System doesn't support MD5 algorithm.");
        }
        msgDigest.update(text.getBytes());

        byte[] bytes = msgDigest.digest();
        byte   tb;
        char   low;
        char   high;
        char   tmpChar;

        String md5Str = new String();
        for (int i = 0; i < bytes.length; i++) {
            tb = bytes[i];
            tmpChar = (char) ((tb >>> 4) & 0x000f);
            if (tmpChar >= 10) {
                high = (char) (('a' + tmpChar) - 10);
            } else {
                high = (char) ('0' + tmpChar);
            }
            md5Str += high;
            tmpChar = (char) (tb & 0x000f);
            if (tmpChar >= 10) {
                low = (char) (('a' + tmpChar) - 10);
            } else {
                low = (char) ('0' + tmpChar);
            }
            md5Str += low;
        }

        return md5Str;
    }
    
    public static void main(String[] args) {
    	String paseword="paseword";
    	System.out.println(paseword=Md5Encrypt.md5("xunhai"+paseword));
	}
}
分享到:
评论

相关推荐

    md5加密算法

    ### MD5加密算法详解 #### 一、MD5算法简介 MD5(Message-Digest Algorithm 5)是一种广泛使用的散列函数,它能够接收任意长度的信息,并产生一个128位(16字节)的散列值。该算法由Ron Rivest在1991年设计,作为...

    md5加密算法 C语言(经过测试验证完整版)

    md5加密算法 C语言(经过测试验证完整版) 经过调试验证,与工具结果一致 MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash...

    MD5 加密算法 C++实现源码

    在C++中实现MD5加密算法,通常包括以下几个步骤: 1. **初始化MD5状态**: 创建一个128位的缓冲区,用于存储中间结果,初始化为一组固定的常量。 2. **处理输入数据**: 将输入的明文数据按照512位的块进行处理。...

    VBA MD5加密算法实现

    VBA MD5加密 算法

    VB6.0 MD5加密算法 支持中文(调用Window API计算)

    在VB6.0中实现MD5加密算法,主要是为了确保数据的完整性和不可篡改性,比如在存储密码、数字签名等方面有重要作用。 在VB6.0中实现MD5加密,通常需要调用Windows API函数,因为VB6.0本身并不直接支持MD5。Windows ...

    md5加密算法源码,c语言源码

    md5加密算法源码: 一 \md5加密是对字符或密码进行的16位或32位等加密方式! 一般在普通MDB数据库经常用到,比如论坛数据库等.有用! 二 \加密解密并不矛盾,比如银行系统的128位加密现在谁可以轻易破的了呢? 虽然md5...

    md5加密算法 C++源码

    总的来说,MD5加密算法在C++中的实现涉及到哈希函数的理解、位操作和循环结构的运用,以及可能的第三方库的集成。理解MD5的工作原理,结合C++编程技巧,可以有效地实现和应用这一重要的信息安全工具。

    java实现MD5加密算法

    总结,Java实现MD5加密算法主要是通过`java.security.MessageDigest`类,经过`getInstance("MD5")`获取MD5实例,然后使用`digest()`和`update()`方法处理数据,最终将二进制摘要转换为十六进制字符串。尽管MD5的安全...

    MD5加密算法源码.rar

    在给定的"MD5加密算法源码"中,你可能会看到以下结构: 1. **初始化**: 使用一组预定义的常量初始化四个32位的中间结果寄存器A、B、C和D。 2. **处理消息块**: MD5处理的是512位的消息块,将消息块分为16个32位的...

    加密算法-使用C++来实现md5加密算法.zip

    加密算法_使用C++来实现md5加密算法

    MD5加密算法的VB6.0类模块实例.doc

    MD5加密算法的VB6.0类模块实例 MD5加密算法是目前广泛使用的一种加密算法,主要用于数据完整性和身份验证。VB6.0是微软公司开发的一种编程语言,广泛应用于Windows操作系统的开发中。该类模块实例将MD5加密算法与VB...

    MD5加密算法程序

    在给定的压缩包中,`MD5.cpp` 和 `MD5.h` 文件是实现MD5加密算法的源代码。`MD5.cpp` 文件包含了MD5算法的具体实现,可能包括了MD5的初始化、更新、最终化等核心步骤。而 `MD5.h` 文件则可能定义了相关的类或函数...

    原创:可指定加密次数,经简单变异后的MD5加密算法。

    相信网站用上这个MD5加密算法函数会更加的安全。 没啥技术含量,大家见笑了。 可指定加密次数,经简单变异后的MD5加密算法。 '作用:更加安全,cmd5.com这样的网站破解不了。 '原理:置换了网上流传的md5加密算法...

    经典的MD5加密算法

    在学习MD5加密算法时,理解其内部工作原理和代码实现至关重要。同时,应该了解MD5的局限性和安全性问题,以便在实际应用中做出适当的决策。对于密码存储,更推荐使用SHA-256或更安全的散列函数。在文件完整性校验...

Global site tag (gtag.js) - Google Analytics