java生成字符串md5函数类

import java.security.MessageDigest;

/**
 * Md5 工具
 */
public class Md5Util {

    private static MessageDigest md5 = null;
    static {
        try {
            md5 = MessageDigest.getInstance("MD5");
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }
    }

    /**
     * 用于获取一个String的md5值
     * @param string
     * @return
     */
    public static String getMd5(String str) {
        byte[] bs = md5.digest(str.getBytes());
        StringBuilder sb = new StringBuilder(40);
        for(byte x:bs) {
            if((x & 0xff)>>4 == 0) {
                sb.append("0").append(Integer.toHexString(x & 0xff));
            } else {
                sb.append(Integer.toHexString(x & 0xff));
            }
        }
        return sb.toString();
    }

    public static void main(String[] args) {
        System.out.println(getMd5("hello world"));
    }
}

  

时间: 2024-11-07 07:22:29

java生成字符串md5函数类的相关文章

java生成字符串md5函数类(javaSE)

//实现生成MD5值 import java.io.BufferedInputStream; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import ja

java生成字符串的MD5值

下面的代码实现了MD5值的生成: public class MD5Test2 { public static void main(String[] args) { System.out.println(MD5Test2.MD5Operation("hello")); System.out.println(MD5Test2.getMD5("hello")); } //通过java.math包的BigInteger类实现十六进制的转换 public final stat

java生成excel文件工具类实例

import java.io.File; import java.io.IOException; import jxl.Workbook; import jxl.write.Label; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; import jxl.write.WriteException; import jxl.write.biff.RowsExceededException; import org.

QT中生成字符串md5的方法

QT提供了QCryptographicHash类,想转md5或者sda1都很方便 QString fileText = original_Image.text(); QString fileCut = fileText.remove(256,fileText.count() - 256); fileCut += QTime::currentTime().toString();//加上时间戳再生成 QByteArray ba; ba =QCryptographicHash::hash(fileCu

db2使用Java存储过程实现MD5函数

1.数据库版本 2.Java脚本 import java.security.MessageDigest; import COM.ibm.db2.app.UDF; public class MD5UDF extends UDF { public static String MD5(String s) { String s1 = new String(""); char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8',

Java 获取字符串Hash值

Java 生成字符串的Hash值: /** * A hashing method that changes a string (like a URL) into a hash suitable for using as a * disk filename. */ public static String hashKeyForDisk(String key) { String cacheKey; try { final MessageDigest mDigest = MessageDigest.g

JAVA 生成 MD5摘要 和SHA1摘要 及MD5的彩虹表破解

MD5  和SHA1 这两个摘要算法,使用很普遍,几乎每个项目我们都会用这两个算法来骗自己和骗用户,看啊,我们保存的用户密码是加密的.对,存的不是明文,是密文.然而MD5真的安全么? 上干货 JAVA生成MD5摘要的代码: MessageDigest md5 =MessageDigest.getInstance("MD5");         String messageStr="123456";         md5.update(messageStr.getB

Java MD5加密类

1 /************************************************* 2 md5 类实现了RSA Data Security, Inc.在提交给IETF 3 的RFC1321中的MD5 message-digest 算法. 4 *************************************************/ 5 public class MD5 { 6 /* 下面这些S11-S44实际上是一个4*4的矩阵,在原始的C实现中是用#define

java生成MD5校验码

在Java中,java.security.MessageDigest (rt.jar中)已经定义了 MD5 的计算,所以我们只需要简单地调用即可得到 MD5 的128 位整数.然后将此 128 位计 16 个字节转换成 16 进制表示即可. 下面是一个可生成字符串或文件MD5校验码的例子,测试过,可当做工具类直接使用,其中最主要的是getMD5String(String s)和getFileMD5String(File file)两个方法,分别用于生成字符串的md5校验值和生成文件的md5校验值