Java MD5生成器

简介:

这是使用Java Swing写的一个MD5生成器。

项目名:create_md5

项目语言:Java swing;

构建工具:maven

使用IDE:eclipse

程序运行界面如下:

 

功能

(1)获取指定文件的MD5值;

(2)获取指定一段文本的MD5值

说明:本文中,MD5值使用十六进制位串表示。

 

如何获取文件的MD5值呢?

Java代码   收藏代码
  1. /** 
  2.      * Get MD5 of one file:hex string,test OK! 
  3.      *  
  4.      * @param file 
  5.      * @return : hex string 
  6.      */  
  7.     public static String getFileMD5(File file) {  
  8.         if (!file.exists() || !file.isFile()) {  
  9.             return null;  
  10.         }  
  11.         MessageDigest digest = null;  
  12.         FileInputStream in = null;  
  13.         byte buffer[] = new byte[1024];  
  14.         int len;  
  15.         try {  
  16.             digest = MessageDigest.getInstance("MD5");  
  17.             in = new FileInputStream(file);  
  18.             while ((len = in.read(buffer, 01024)) != -1) {  
  19.                 digest.update(buffer, 0, len);  
  20.             }  
  21.             in.close();  
  22.         } catch (Exception e) {  
  23.             e.printStackTrace();  
  24.             return null;  
  25.         }  
  26.         BigInteger bigInt = new BigInteger(1, digest.digest());  
  27.         return bigInt.toString(16);  
  28.     }  
  29. /*** 
  30.      * Get MD5 of one file!test ok! 
  31.      *  
  32.      * @param filepath 
  33.      * @return 
  34.      */  
  35.     public static String getFileMD5(String filepath) {  
  36.         File file = new File(filepath);  
  37.         return getFileMD5(file);  
  38.     }  

 

如何获取一段文本的MD5值呢?

Java代码   收藏代码
  1. public static final char[] HEXCHAR = { '0''1''2''3''4''5''6',  
  2.             '7''8''9''a''b''c''d''e''f' };  
  3. public static byte[] digest(byte srcBytes[], String algorithm)  
  4.             throws NoSuchAlgorithmException {  
  5.         MessageDigest digest = MessageDigest.getInstance(algorithm);  
  6.         digest.update(srcBytes);  
  7.         byte digestBytes[] = digest.digest();  
  8.         return digestBytes;  
  9.     }  
  10. public static String getMD5(String source) throws NoSuchAlgorithmException {  
  11.         byte bytes[] = digest(source.getBytes(), "MD5");  
  12.         return toHexString(bytes);  
  13.     }  
  14. /*** 
  15.      * convert byte array to hex(16) bit string 
  16.      *  
  17.      * @param byte[] 
  18.      * @return hex(16) bit string 
  19.      */  
  20.     public static String toHexString(byte[] b) {  
  21.         StringBuilder sb = new StringBuilder(b.length * 2);  
  22.         for (int i = 0; i < b.length; i++) {  
  23.             sb.append(HEXCHAR[(b[i] & 0xf0) >>> 4]);  
  24.             sb.append(HEXCHAR[b[i] & 0x0f]);  
  25.         }  
  26.         return sb.toString();  
  27.     }  

 

项目结构如下:

相关文章
|
4月前
|
存储 Java
创建一个乘法练习题生成器 using Java
创建一个乘法练习题生成器 using Java
|
5月前
|
算法 Java 数据安全/隐私保护
java MD5 32位加密
java MD5 32位加密
54 0
|
5月前
|
编解码 算法 安全
怎么Java进行MD5摘要加密?
MD5(Message-Digest Algorithm 5)是一种常用的摘要算法,用于将任意长度的数据转换为固定长度的摘要值(通常为128位)。MD5算法的原理是将原始数据分成若干个固定长度的块,对每个块进行一系列的数据处理,最终得到一个128位的摘要值。这个摘要值可以作为数据的唯一标识,用于验证数据的完整性和真实性。
75 1
|
4月前
|
算法 Java 数据处理
Java中MD5加密算法的实现
Java中MD5加密算法的实现
|
2月前
|
存储 算法 Java
在Java中使用MD5对用户输入密码进行加密存储、同时登录验证。
这篇文章详细介绍了在Java项目中如何使用MD5算法对用户密码进行加密存储和登录验证,包括加入依赖、编写MD5工具类、注册时的密码加密和登录时的密码验证等步骤,并通过示例代码和数据库存储信息展示了测试效果。
在Java中使用MD5对用户输入密码进行加密存储、同时登录验证。
|
2月前
|
Java C# 数据安全/隐私保护
如何 使 Java、C# md5 加密的值保持一致
如何 使 Java、C# md5 加密的值保持一致
27 0
|
3月前
|
算法 安全 Java
Java中MD5加密算法的原理与实现详解
Java中MD5加密算法的原理与实现详解
|
4月前
|
Java 数据安全/隐私保护
JAVA中MD5加密(MD5工具类)
JAVA中MD5加密(MD5工具类)
142 1
|
3月前
|
算法 Java 数据处理
Java中MD5加密算法的实现
Java中MD5加密算法的实现
|
5月前
|
Java 关系型数据库 MySQL
MySql数据库级别MD5加密java MD5加密解密工具包
MySql数据库级别MD5加密java MD5加密解密工具包
下一篇
无影云桌面