精华内容
下载资源
问答
  • md5加密解密1、maven 引入jar包org.apache.commonscommons-lang33.3.22、代码package com.qunar.hadoop.util;import org.apache.commons.codec.digest.DigestUtils;public class MD5 {/*** @param text明文* @param ...

    md5加密解密

    1、maven 引入jar包

    org.apache.commons

    commons-lang3

    3.3.2

    2、代码package com.qunar.hadoop.util;

    import org.apache.commons.codec.digest.DigestUtils;

    public class MD5 {

    /**

    * @param text明文

    * @param key密钥

    * @return 密文

    */

    // 带秘钥加密

    public static String md5(String text, String key) throws Exception {

    // 加密后的字符串

    String md5str = DigestUtils.md5Hex(text + key);

    System.out.println("md5加密后的字符串为:" + md5str);

    return md5str;

    }

    // 不带秘钥加密

    public static String md52(String text) throws Exception {

    // 加密后的字符串

    String md5str = DigestUtils.md5Hex(text);

    System.out.println("MD52加密后的字符串为:" + md5str + "\t长度:" + md5str.length());

    return md5str;

    }

    /**

    * MD5验证方法

    *

    * @param text明文

    * @param key密钥

    * @param md5密文

    */

    // 根据传入的密钥进行验证

    public static boolean verify(String text, String key, String md5) throws Exception {

    String md5str = md5(text, key);

    if (md5str.equalsignorecase(md5)) {

    System.out.println("MD5验证通过");

    return true;

    }

    return false;

    }

    // 测试

    public static void main(String[] args) throws Exception {

    // String str =

    // "181115.041650.10.88.168.148.2665.2419425653_1";181115.040908.10.88.181.118.3013.1655327821_1

    String str = "181115.040908.10.88.181.118.3013.1655327821_1";

    System.out.println("加密的字符串:" + str + "\t长度:" + str.length());

    MD5.md52(str);

    }

    }

    相关阅读

    前阵子,华为召开nova5系列新品发布会发布新机的同时,也给用户们带来了华为手环B5的新配色--铅石青新款。华为手环B5自去年7月正式发

    可以用绑定的账号登陆,例如QQ或者微信具体在绑定或者关联:到网页百度云盘,然后出现下面界面。这时候要等刷新完成,才可以,出现这个账号

    对称密码算法的加密密钥和解密密钥相同,对于大多数对称密码算法,加解密过程互逆。

    通常使用的有 DES  3DES  AES  ,加解密

    特点:

    在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML、JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的

    今天偶然有人问到端口的范围0-65535;百度了一下说是这个范围。仔细想了一下,这个回答太笼统,0是不是可以做端口?65535是不是包含

    展开全文
  • java实现md5加密解密 notNET加密和解密的实现方法亦或是旅途风光 7-141918℃ 22【 ee21.cn - ASP.NET 】 .NET将原来独立的API和SDK合并到一个框架,这对于程序开发人员非常有利。它将CryptoAPI改编进.NET的...

    java实现md5加密解密 notNET中加密和解密的实现方法

    亦或是旅途风光 7-14

    1918℃ 22

    9865cb3902643d40eae5d6d61e3b6ec4.png

    【 ee21.cn - ASP.NET 】 .NET将原来独立的API和SDK合并到一个框架中,这对于程序开发人员非常有利。它将CryptoAPI改编进.NET的System.Security.Cryptography名字空间,使密码服务摆脱了SDK平台的神秘性,变成了简单的.NET名字空间的使用。由于随着整个框架组件一起共享,密码服务更容易实现了,现在仅仅需要学习System.Security.Cryptography名字空间的功能和用于解决特定方案的类。

    加密和解密的算法  System.Security.Cryptography名字空间包含了实现安全方案的类,例如加密和解密数据、管理密钥、验证数据的完整性并确保数据没有被篡改等等。本文重点讨论加密和解密。  加密和解密的算法分为对称(symmetric)算法和不对称(asymmetric)算法。对称算法在加密和解密数据时使用相同的密钥和初始化矢量,典型的有DES、 TripleDES和Rijndael算法,它适用于不需要传递密钥的情况,主要用于本地文档或数据的加密。不对称算法有两个不同的密钥,分别是公共密钥和私有密钥,公共密钥在网络中传递,用于加密数据,而私有密钥用于解密数据。不对称算法主要有RSA、DSA等,主要用于网络数据的加密。

    加密和解密本地文档  下面的例子是加密和解密本地文本,使用的是Rijndael对称算法。  对称算法在数据流通过时对它进行加密。因此首先需要建立一个正常的流(例如I/O流)。文章使用FileStream类将文本文件读入字节数组,也使用该类作为输出机制。  接下来定义相应的对象变量。在定义SymmetricAlgorithm抽象类的对象变量时我们可以指定任何一种对称加密算法提供程序。代码使用的是Rijndael算法,但是很容易改为DES或者TripleDES算法。.NET使用强大的随机密钥设置了提供程序的实例,选择自己的密钥是比较危险的,接受计算机产生的密钥是一个更好的选择,文中的代码使用的是计算机产生的密钥。  下一步,算法实例提供了一个对象来执行实际数据传输。每种算法都有CreateEncryptor和CreateDecryptor两个方法,它们返回实现ICryptoTransform接口的对象。  最后,现在使用BinaryReader的ReadBytes方法读取源文件,它会返回一个字节数组。BinaryReader读取源文件的输入流,在作为CryptoStream.Write方法的参数时调用ReadBytes方法。指定的CryptoStream实例被告知它应该操作的下层流,该对象将执行数据传递,无论流的目的是读或者写。  下面是加密和解密一个文本文件的源程序片断:

    namespace com.billdawson.crypto{class TextFileCrypt{public static void Main(string[] args){string file = args[0];string tempfile = Path.GetTempFileName();//打开指定的文件FileStream fsIn = File.Open(file,FileMode.Open,FileAccess.Read);FileStream fsOut = File.Open(tempfile, FileMode.Open,FileAccess.Write);//定义对称算法对象实例和接口SymmetricAlgorithm symm = new RijndaelManaged();ICryptoTransform transform = symm.CreateEncryptor();CryptoStream cstream = new CryptoStream(fsOut,transform,ryptoStreamMode.Write);BinaryReader br = new BinaryReader(fsIn);// 读取源文件到cryptostream cstream.Write(br.ReadBytes((int)fsIn.Length),0,(int)fsIn.Length);cstream.FlushFinalBlock();cstream.Close();fsIn.Close();fsOut.Close();Console.WriteLine("created encrypted file {0}", tempfile);Console.WriteLine("will now decrypt and show contents");// 反向操作--解密刚才加密的临时文件fsIn = File.Open(tempfile,FileMode.Open,FileAccess.Read);transform = symm.CreateDecryptor();cstream = new CryptoStream(fsIn,transform,CryptoStreamMode.Read);StreamReader sr = new StreamReader(cstream);Console.WriteLine("decrypted file text: " + sr.ReadToEnd());fsIn.Close();}}}

    加密网络数据  如果我有一个只想自己看到的文档,我不会简单的通过e-mail发送给你。我将使用对称算法加密它;如果有人截取了它,他们也不能阅读该文档,因为他们没有用于加密的唯一密钥。但是你也没有密钥。我需要使用某种方式将密钥给你,这样你才能解密文档,但是不能冒密钥和文档被截取的风险。  非对称算法就是一种解决方案。这类算法使用的两个密钥有如下关系:使用公共密钥加密的信息只能被相应的私有密钥解密。因此,我首要求你给我发送你的公共密钥。在发送给我的途中可能有人会截取它,但是没有关系,因为他们只能使用该密钥给你的信息加密。我使用你的公共密钥加密文档并发送给你。你  本文由亦或是旅途风光

    分享,文章内容系作者个人观点,不代表21中文网对观点赞同或支持。

    如需转载,请注明本文地址:http://www.ee21.cn/zw/17306/69120210.html

    展开全文
  • 如何在java中实现md5加密和解密关注:273答案:1mip版解决时间 2021-01-19 20:37提问者精神疯裂2021-01-19 05:36如何在java中实现md5加密和解密最佳答案二级知识专家青禾鹭草2021-01-19 06:07package endecrypt;...

    如何在java中实现md5加密和解密

    关注:273  答案:1  mip版

    解决时间 2021-01-19 20:37

    e6cb1a03ad541b3098697807b7bf1798.png

    提问者精神疯裂

    2021-01-19 05:36

    如何在java中实现md5加密和解密

    最佳答案

    e6cb1a03ad541b3098697807b7bf1798.png

    二级知识专家青禾鹭草

    2021-01-19 06:07

    package endecrypt;

    02.

    03.import java.io.UnsupportedEncodingException;

    04.import java.security.MessageDigest;

    05.import java.security.NoSuchAlgorithmException;

    06.

    07.

    12.public class MD5Util {

    13.

    14.

    17. public static String string2MD5(String inStr){

    18. MessageDigest md5 = null;

    19. try{

    20. md5 = MessageDigest.getInstance("MD5");

    21. }catch (Exception e){

    22. System.out.println(e.toString());

    23. e.printStackTrace();

    24. return "";

    25. }

    26. char[] charArray = inStr.toCharArray();

    27. byte[] byteArray = new byte[charArray.length];

    28.

    29. for (int i = 0; i < charArray.length; i++)

    30. byteArray[i] = (byte) charArray[i];

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

    32. StringBuffer hexValue = new StringBuffer();

    33. for (int i = 0; i < md5Bytes.length; i++){

    34. int val = ((int) md5Bytes[i]) & 0xff;

    35. if (val < 16)

    36. hexValue.append("0");

    37. hexValue.append(Integer.toHexString(val));

    38. }

    39. return hexValue.toString();

    40.

    41. }

    42.

    43.

    46. public static String convertMD5(String inStr){

    47.

    48. char[] a = inStr.toCharArray();

    49. for (int i = 0; i < a.length; i++){

    50. a[i] = (char) (a[i] ^ 't');

    51. }

    52. String s = new String(a);

    53. return s;

    54.

    55. }

    我要举报

    如果感觉以上信息为低俗/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

    点此我要举报以上信息!

    推荐资讯

    大家都在看

    展开全文
  • 方法一:只加密import java.security.*;...class MD5_test {public final static String MD5(String s) {char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9','a', 'b', 'c',...

    方法一:只加密

    import java.security.*;

    import java.security.spec.*;

    class MD5_test {

    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();

    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 byte0 = md[i];

    str[k++] = hexDigits[byte0 >>> 4 & 0xf];

    str[k++] = hexDigits[byte0 & 0xf];

    }

    return new String(str);

    } catch (Exception e) {

    return null;

    }

    }

    public static void main(String[] args) {

    // MD5_Test aa = new MD5_Test();

    System.out.print(MD5_test.MD5("b"));

    }

    }

    方法二:加密与解密

    import java.security.MessageDigest;

    public class MD5andKL {

    // MD5加码。32位

    public static String MD5(String inStr) {

    MessageDigest md5 = null;

    try {

    md5 = MessageDigest.getInstance("MD5");

    } catch (Exception e) {

    System.out.println(e.toString());

    e.printStackTrace();

    return "";

    }

    char[] charArray = inStr.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();

    }

    // 可逆的加密算法

    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;

    }

    // 加密后解密

    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("a");

    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))));

    }

    }

    参考自:http://happymen001.javaeye.com/blog/576388

    展开全文
  • java中MD5加密解密

    2014-07-17 15:35:00
    package com.util; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import sun.misc.BASE64Encoder;... * MD5加密解密  * @author HouYong  *  */ public
  • java-MD5解密算法

    千次阅读 2013-01-07 09:35:44
    在网络中MD5是著名的不可逆算法,但是如果知道MD5的加密的字符串 则可以通过自己的加密算法对明文进行加密,对加密后的密文与字符串匹配; 匹配成功,表示找到明文;但是此程序的时间耗费较高!仅提供一个解密的...
  • JAVA中MD5加密解密(MD5工具类)

    千次阅读 2019-12-05 17:45:26
    ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码) ...工具类如下: import org.apache.commons.codec.digest.DigestUtils; import java.math.BigInteger;...import java.se...
  • 基础:MessageDigest类的使用其实要在Java中完成MD5加密,MessageDigest类大部分都帮你实现好了,几行代码足矣:/*** 对字符串md5加密** @param str* @return*/import java.security.MessageDigest;public static ...
  • Java中使用MD5摘要还是很方便的,直接上代码。1 packagecom.cxc.nothing;23 importjava.nio.charset.Charset;4 importjava.security.MessageDigest;56 public classMD5Test {7 public static voidmain(String[] ...
  • java实现md5 加密解密

    热门讨论 2013-08-20 09:58:44
    java实现md5 加密解密(在网络中MD5是著名的不可逆算法,但是如果知道MD5的加密的字符串 则可以通过自己的加密算法对明文进行加密,对加密后的密文与字符串匹配; 匹配成功,表示找到明文;但是此程序的时间耗费较高!仅...
  • package org.hzp.util;...import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.security.SecureRandom; i...
  • 基础:MessageDigest类的使用其实要在Java中完成MD5加密,MessageDigest类大部分都帮你实现好了,几行代码足矣:/*** 对字符串md5加密** @param str* @return*/import java.security.MessageDigest;public static ...
  • java MD5加密解密

    千次阅读 2012-12-21 10:06:18
    Java中,java.security.MessageDigest (rt.jar中)已经定义了 MD5 的计算,所以我们只需要简单地调用即可得到 MD5 的128 位整数。然后将此 128 位计 16 个字节转换成 16 进制表示即可。     下面是一个可...
  • 如果对安全性的需求不是太高,MD5仍是使用非常方便和普及的加密方式,比如Java中自带的MessageDigest类就提供了支持,这里就为大家带来Java实现MD5加密及解密的代码实例分享:
  • java中常用的工具类之String和MD5加密解密类我们java程序员在开发项目的是常常会用到一些工具类。今天我分享一下我的两个工具类,大家可以在项目中使用。一、String工具类package com.itjh.javaUtil;import java.io....
  • 基础:MessageDigest类的使用其实要在Java中完成MD5加密,MessageDigest类大部分都帮你实现好了,几行代码足矣:/*** 对字符串md5加密** @param str* @return*/import java.security.MessageDigest;public static ...
  • 我的后端使用Java,所以我想知道如何使用 Java 解密MD5 Javascript加密?这是我正在使用的MD5函数的JS等效项:Ext.util.MD5 = function(s,raw,hexcase,chrsz) {raw = raw || false;hexcase = hexcase || fals...
  • 基础:MessageDigest类的使用其实要在Java中完成MD5加密,MessageDigest类大部分都帮你实现好了,几行代码足矣:/*** 对字符串md5加密** @param str* @return*/import java.security.MessageDigest;public static ...
  • 基础:MessageDigest类的使用其实要在Java中完成MD5加密,MessageDigest类大部分都帮你实现好了,几行代码足矣:/*** 对字符串md5加密** @param str* @return*/import java.security.MessageDigest;public static ...
  • 03_Java中的加解密MD5 一.消息摘要: 消息摘要(Message Digest): 又称为数字摘要(Digital Digest)。它是一个对应一条消息或文本的固定长度的唯一的值,该值由一个单向的Hash加密函数对消息进行作用而产生。如果...
  • Hutool的工具方法来自于每个用户的精雕细琢,它涵盖了Java开发底层代码的方方面面,它既是大型项目开发解决小问题的利器,也是小型项目的效率担当;Hutool是项目“util”包友好的替代,它节省了开发人员对...
  • Java MD5 加密 解密 工具类

    千次阅读 2013-12-11 10:58:52
    public class MD5Helper { // 标准的构造函数,调用md5Init函数进行初始化工作 public MD5Helper() { md5Init(); return; } // RFC1321定义的标准4*4矩阵的常量定义。 static final int
  • MD5简单介绍大家都知道,地球上任何人都有自己独一无二的指纹,这常常成为公安机关鉴别罪犯身份最值得信赖的方法;与之类似,MD5就可以为任何文件(不管其大小、格式、数量)产生一个同样独一无二的“数字指纹”,如果...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 502
精华内容 200
关键字:

java中md5解密

java 订阅