`
zhaoshijie
  • 浏览: 2268478 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

MD5加密与解密艺术

阅读更多



关键字:MD5加密与解密艺术

import java.security.MessageDigest;

public class MD5 {

/**
* <pre>
* MD5加密。32位 .
* </pre>
*
* @param pstrPassword  未加密的原文密码
* @return the string
* @author 赵士杰 2011-4-29
*/
public static String md5(String pstrPassword) {
MessageDigest md5 = null;
try {
md5 = MessageDigest.getInstance("MD5");
} catch (Exception e) {
e.printStackTrace();
return "";
}
char[] charArray = pstrPassword.toCharArray();
byte[] byteArray = new byte[charArray.length];

for (int i = 0; i < charArray.length; i++)
byteArray[i] = (byte) charArray[i];

byte[] md5Bytes = md5.digest(byteArray);

StringBuffer hexValue = new StringBuffer();

for (int i = 0; i < md5Bytes.length; i++) {
int val = ((int) md5Bytes[i]) & 0xff;
if (val < 16)
hexValue.append("0");
hexValue.append(Integer.toHexString(val));
}

return hexValue.toString();
}

/**
* <pre>
* 可逆的加密算法(即:对MD5再进行加密).
* </pre>
*
* @param inStr the in str
* @return the string
* @author 赵士杰 2011-4-29
*/
public static String KL(String inStr) {
// String s = new String(inStr);
char[] a = inStr.toCharArray();
for (int i = 0; i < a.length; i++) {
a[i] = (char) (a[i] ^ 't');
}
String s = new String(a);
return s;
}

/**
* <pre>
* 加密后解密(即:将二次加密密码解密为 MD5格式).
* </pre>
*
* @param inStr the in str
* @return the string
* @author 赵士杰 2011-4-29
*/
public static String JM(String inStr) {
char[] a = inStr.toCharArray();
for (int i = 0; i < a.length; i++) {
a[i] = (char) (a[i] ^ 't');
}
String k = new String(a);
return k;
}

// 测试主函数
public static void main(String args[]) {
String s = new String("19840808zsj赵士杰");
System.out.println("原始:" + s);
System.out.println("MD5加密后:" + md5(s));
System.out.println("MD5后再加密:" + KL(md5(s)));
System.out.println("解密为MD5后的:" + JM(KL(md5(s))));
System.out.println("加密的:" + KL(s));
System.out.println("解密的:" + JM(KL(s)));
}
}
  • MD5.rar (911 Bytes)
  • 下载次数: 27
分享到:
评论
2 楼 zhaoshijie 2013-09-09  
LinApex 写道
建议将这篇博客名改成,对MD5再次加密解密的艺术

请问为什么 改成这个样的名字  有什么好的解释吗?
1 楼 LinApex 2013-09-06  
建议将这篇博客名改成,对MD5再次加密解密的艺术

相关推荐

    JAVA加密和解密的艺术(第二版).zip

    接着,书中详细讲解了数字签名、消息摘要(MD5、SHA系列)和哈希函数等概念,这些是保证数据完整性和防止篡改的关键工具。此外,作者还阐述了证书和证书链的概念,以及如何使用Java的KeyStore管理密钥和证书。 在...

    Java加密与解密的艺术.pdf 下载

    标题和描述均提到了“Java加密与解密的艺术”,这暗示了文档主要聚焦于Java语言在数据加密和解密领域的应用。尽管提供的“部分内容”并未给出具体的技术细节,但我们可以根据这一主题,深入探讨Java中加密与解密的...

    Java加密与解密的艺术配书源代码

    《Java加密与解密的艺术》是一本深入探讨Java平台下加密和解密技术的专业书籍,其源代码提供了丰富的实例和示例,帮助读者理解和实践相关的加密算法与安全机制。本书涵盖了从基础的对称加密、非对称加密到数字签名、...

    Java加密与解密的艺术PDF和源码

    "Java加密与解密的艺术"是一本深入探讨这个主题的专业书籍,它提供了详细的理论知识和实际操作示例,帮助开发者掌握如何在Java环境中实现安全的数据加密和解密。这本书的PDF版本和源码一起提供,为读者提供了更直观...

    Java加密与解密的艺术配书源代码源码整理

    源代码整理部分,`javaSrc175.zip`可能包含了与书中各个章节对应的示例代码,这些代码可以帮助读者更直观地理解和实现上述加密解密技术。下载并解压后,按照`下载及使用说明.txt`的指示,可以浏览和运行代码,加深对...

    java加密与解密的艺术全包括源码.rar

    本资源“java加密与解密的艺术全包括源码.rar”提供了全面的Java加密解密技术实现,涵盖了多种算法和应用场景。下面我们将深入探讨其中涉及的一些核心知识点。 1. **对称加密**:对称加密是最常见的加密方式,如DES...

    Java加密与解密的艺术.rar 完整源代码

    通过学习这份"Java加密与解密的艺术"的源代码,你可以深入理解加密过程的实现细节,包括密钥的生成、加密解密流程、异常处理以及如何与其他Java安全组件集成。同时,你可以看到实际项目中如何使用这些概念,从而提升...

    java 加密与解密艺术

    《Java加密与解密艺术》是一本专注于Java平台上的安全技术专著,涵盖了从基础的加密概念到高级的实现策略的全面内容。这本书对于任何希望深入理解如何在Java环境中保护数据安全的开发者来说,都是宝贵的资源。作者...

    Java加密与解密艺术

    本文将深入探讨“Java加密与解密艺术”,从基础概念到实际应用,帮助你从入门到精通。 1. 密码学基础 - 对称加密:这种加密方式使用同一密钥进行加密和解密,如DES(Data Encryption Standard)和AES(Advanced ...

    Java加密与解密的艺术

    《Java加密与解密的艺术》是一本深入探讨Java平台下密码学和安全技术的专业书籍,旨在为开发者提供全面且深入的加密与解密知识。在Java编程领域,理解和应用加密技术是确保数据安全、保护用户隐私以及防范网络攻击的...

    Java加密与解密的艺术PDF

    通过学习《Java加密与解密的艺术》,开发者不仅可以掌握Java平台上的加密解密技术,还能提升网络安全意识,为开发安全的应用程序提供坚实的基础。同时,对于Java开发者来说,理解和应用这些加密技术也是提升专业技能...

    Java加密与解密的艺术kindle高清版

    通过阅读《Java加密与解密的艺术》高清版,读者不仅可以掌握基本的加密解密原理,还能了解到实际应用中的最佳实践,提高在开发过程中处理安全问题的能力。无论是初学者还是经验丰富的开发者,都能从中受益匪浅。

    Java加密与解密的艺术.(梁栋)

    《Java加密与解密的艺术》是由梁栋撰写的一本深入探讨Java平台上的加密与解密技术的专业书籍。这本书涵盖了从基础的加密原理到高级的加密算法应用,旨在帮助读者理解和掌握如何在Java环境中安全地处理敏感数据。 1....

    Java加密与解密的艺术.pdf

    《Java加密与解密的艺术》是一本专注于Java平台上的安全技术专著,涵盖了广泛的加密和解密技术。这本书深入探讨了如何在Java环境中实施高效且安全的加密算法,以保护数据的隐私和完整性。以下是对该主题的一些关键...

    Java加密与解密的艺术(配书源代码)

    《Java加密与解密的艺术》是一本深入探讨Java平台上的加密和解密技术的专业书籍,由梁栋撰写。书中的内容并非全文,但包含了几个关键章节,这些章节对于理解和实践安全编程至关重要。以下是对这几个章节的重点知识的...

    Java加密与解密的艺术-电子书-迷你版

    总的来说,《Java加密与解密的艺术-电子书-迷你版》旨在帮助读者全面了解Java环境下的加密解密技术,提升其在信息安全领域的专业素养,为构建安全的应用程序提供坚实的理论和技术支持。通过深入阅读和实践,开发者...

Global site tag (gtag.js) - Google Analytics