`
CrackRen
  • 浏览: 170361 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

MD5使用

    博客分类:
  • Java
 
阅读更多

写个工具把不同文件夹下的文件拷贝到一个文件夹下去,碰到格问题,需要考虑到生成唯一文件名,想来想去还是使用MD5计算吧

 

 

import java.security.MessageDigest;

/**
 *
 * @author apple
 */
public class xMD5 {
    
    public final static String MD5(String s) {
        char hexDigits[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
            'A', 'B', 'C', 'D', 'E', 'F'};
        try {
            byte[] strTemp = s.getBytes();
            //使用MD5创建MessageDigest对象
            MessageDigest mdTemp = MessageDigest.getInstance("MD5");
            mdTemp.update(strTemp);
            byte[] md = mdTemp.digest();
            int j = md.length;
            char str[] = new char[j * 2];
            int k = 0;
            for (int i = 0; i < j; i++) {
                byte b = md[i];
                //将没个数(int)b进行双字节加密
                str[k++] = hexDigits[b >> 4 & 0xf];
                str[k++] = hexDigits[b & 0xf];
            }
            return new String(str);
        } catch (Exception e) {
            return null;
        }
    }
  
}
 

 

分享到:
评论

相关推荐

    分享JavaScript与Java中MD5使用两个例子

    标题《分享JavaScript与Java中MD5使用两个例子》中的知识点涉及了如何在JavaScript和Java语言中使用MD5加密算法,以及如何将字符串转换为MD5格式。MD5是一种广泛使用的密码散列函数,它可以产生一个128位的散列值...

    C++中MD5使用

    MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,主要应用于信息安全领域,用于对数据进行摘要处理,生成一个固定长度的哈希值。这个哈希值可以看作是原始数据的一种指纹,通常用于验证数据的完整性和...

    MD5 使用与jar包 java

    此为MD5的加密所需要的jar文件 MD5加密只需要此jar包 和如下代码将可获得加密结果,希望大家用的开心 //导入此import import cryptix.jce.provider.MD5; //MD5加密签名 String password ="1234567"; MD5 md5 = ...

    使用MD5进行加密的使用方法和程序

    MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,主要设计用于加密和数据完整性验证。MD5由美国密码学家Rivest在1991年开发,它将任意长度的数据转换为固定长度的128位(16字节)摘要,通常以32个十六...

    md5使用例子

    在实际编程中,MD5函数的使用通常是简单的。用户只需要提供待处理的数据,函数会返回对应的MD5摘要。例如,在C++中,可以有一个如下的函数原型: ```cpp std::string calculateMD5(const std::string& data); ``` ...

    MD5使用方式与头文件

    MD5,全称为Message-Digest Algorithm 5,是一种广泛使用的哈希函数,设计者是Ronald Rivest。它能够将任意长度的数据转化为一个固定长度的摘要,通常为128位,以32位十六进制数的形式表示。在IT行业中,MD5主要用于...

    MD5使用.zip

    MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,由计算机科学家Ronald Rivest在1991年设计。它将任意长度的数据转化为一个固定长度的128位(16字节)的摘要,通常用32个十六进制数字表示。在IT领域,...

    spark-md5-js中通用的md5加密

    Spark-md5是一个用JavaScript编写的快速、高效的md5库。它根据MD5算法,将输入的任意长度的明文,经过一系列的操作,转换成一个128位(16字节)的密文。 Spark-md5实现了在浏览器中对文件进行哈希计算,并且在上传...

    md5_MD5ppt下载_md5算法_

    在初始化阶段,MD5使用一组预定义的常数值填充内部状态。接着,在字节选择步骤,输入数据被分成512位的块,并进行一系列复杂的运算,包括位移、异或和非线性函数。这个过程会在四个不同的32位寄存器中进行,每个步骤...

    MD5算法VC++

    3. **MD5的内部状态**:MD5使用四个32位的变量A、B、C和D来保存中间计算结果,这四个变量在算法过程中不断更新。 4. **填充与初始化向量**:在计算之前,原始消息需要进行填充,使其长度对512的倍数,并且加上一个...

    易语言偷懒实现md5加密

    2. **初始值设定**:MD5使用四个32位的变量A、B、C和D作为初始值,这些值是固定的。 3. **分块处理**:将填充后的数据分为多个512位的块进行处理。每个块通过一系列的变换,包括左移位、异或和加法操作,影响到A、B...

    使用MD5算法对密码进行加密

    2. **初始值设定**:MD5使用四个32位的变量A、B、C和D,它们的初始值是固定的。 3. **消息块迭代**:将填充后的数据分割成512位的块,对每个块进行一系列的循环操作。每个循环包括16次不同的操作,每个操作都会根据...

    多种MD5源代码

    在初始化阶段,MD5使用一组预定义的常量初始化四个32位的变量,称为A、B、C和D。接着,它将输入数据分为多个512位的数据块进行处理。每个数据块会被进一步分为16个32位的子块,然后通过一系列的循环操作,包括左移、...

    pb9 md5 nvo_md5

    标题中的"pb9 md5 nvo_md5"可能是指一个涉及PB9(可能是某种编程语言或框架的版本)和MD5哈希值的项目或工具,其中...通过深入研究这些文件和代码,可以更全面地理解这个PB9项目中的MD5使用方式以及相关的编程实践。

    delphi MD5加密的用法

    MD5(Message-Digest Algorithm 5)是一种广泛应用...通过`MD5使用DEMO`这个压缩包中的示例代码,你可以更深入地了解MD5加密在Delphi中的具体实现和使用方式。记得在实际项目中,务必遵循最佳实践,确保数据的安全性。

    MD5加密模块

    在初始化阶段,MD5使用一组固定的初始值填充四个32位的寄存器。处理阶段,算法将输入数据分为64个块,每个块处理过程都包含16轮迭代。每一轮由四个子函数(F, G, H, I)和四个32位的中间变量进行操作。压缩阶段将...

    MD5算法源码 下载

    1. **初始化**: MD5使用四个32位的变量A、B、C和D作为初始状态,并设置为特定的常数值。 2. **分块处理**: 输入的数据被分割成512位的块,每个块经过一系列的处理。每个块分为16个32位的子块。 3. **循环计算**: 对...

    MD5的C++实现与使用实例

    MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,它能够将任意长度的输入数据转换为固定长度的128位(16字节)摘要。在C++中实现MD5,通常需要引入专门的库或者自定义算法。下面我们将详细探讨MD5的...

    matlab实现md5算法,md5算法详解,matlab源码.zip

    初始化阶段,MD5使用一组固定的初始值填充四个32位的中间变量A、B、C和D。接着,对输入的数据进行分块处理,每个块是512位,分为16个32位的小块。在循环运算阶段,MD5通过一系列的迭代操作,包括替换、异或、左移等...

    简单MD5计算器(支持32及16位MD5和大小写)

    初始化阶段,MD5使用一组预定义的常量初始化四个128位的中间变量。分块处理阶段,数据被分割成512位的块,每个块经过一系列复杂的运算,包括位操作、加法和圆桌旋转,更新这四个中间变量。消息扩展是在不足512位的...

Global site tag (gtag.js) - Google Analytics