1、md5加密,该加密算法是单向加密,即加密的数据不能再通过解密还原。相关类包含在java.security.MessageDigest包中。
2、3-DES加密,该加密算法是可逆的,解密方可以通过与加密方约定的密钥匙进行解密。相关类包含在javax.crypto.*包中。
3、base64编码,是用于传输8bit字节代码最常用的编码方式。相关类在sun.misc.BASE64Decoder 和sun.misc.BASE64Encoder 中。
4、URLEncoder编码,是一种字符编码,保证被传送的参数由遵循规范的文本组成。相关类在java.net.URLEncoder包中。
细节:
1、进行MD5加密,得到byte[] 

/** 
* 进行MD5加密 
* @param String 原始的SPKEY 
* @return byte[] 指定加密方式为md5后的byte[] 
*/ 
private byte[] md5(String strSrc) 
{ 
byte[] returnByte = null; 
try 
{ 
MessageDigest md5 = MessageDigest.getInstance("MD5"); 
returnByte = md5.digest(strSrc.getBytes("GBK")); 
} 
catch(Exception e) 
{ 
e.printStackTrace(); 
} 
return returnByte; 
}

2、得到3-DES的密钥匙 
/** 
* 得到3-DES的密钥匙 
* 根据根据需要,如密钥匙为24个字节,md5加密出来的是16个字节,因此后面补8个字节的0 
* @param String 原始的SPKEY 
* @return byte[] 指定加密方式为md5后的byte[] 
*/ 
private byte[] getEnKey(String spKey) 
{ 
byte[] desKey=null; 
try 
{ 
byte[] desKey1 = md5(spKey); 
desKey = new byte[24]; 
int i = 0; 
while (i 

3、3-DES加密
/** 
* 3-DES加密 
* @param byte[] src 要进行3-DES加密的byte[] 
* @param byte[] enKey 3-DES加密密钥 
* @return byte[] 3-DES加密后的byte[] 
*/ 
public byte[] Encrypt(byte[] src,byte[] enKey) 
{ 
byte[] encryptedData = null; 
try 
{ 
DESedeKeySpec dks = new DESedeKeySpec(enKey); 
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DESede"); 
SecretKey key = keyFactory.generateSecret(dks); 
Cipher cipher = Cipher.getInstance("DESede"); 
cipher.init(Cipher.ENCRYPT_MODE, key); 
encryptedData = cipher.doFinal(src); 
} 
catch(Exception e) 
{ 
e.printStackTrace(); 
} 
return encryptedData; 
}

4、对字符串进行Base64编码
/** 
* 对字符串进行Base64编码 
* @param byte[] src 要进行编码的字符 
* 
* @return String 进行编码后的字符串 
*/ 
public String getBase64Encode(byte[] src) 
{ 
String requestValue=""; 
try{ 
BASE64Encoder base64en = new BASE64Encoder(); 
requestValue=base64en.encode(src); 
//System.out.println(requestValue); 
} 
catch(Exception e){ 
e.printStackTrace(); 
} 

return requestValue; 
}

12下一页阅读全文

java易懂易用的MD5加密(可直接运行) (1)第1/2页的更多相关文章

  1. Swift开发教程--如何对字符串进行md5加密

    在swift工程中随便建一个objective-c类,会提示你生成一个Bridging-Header,点YES,然后删除刚才建立的objective-c类,只留下[工程名]-Bridging-Header.h文件。

  2. OC获取文件MD5值与swift字符串MD5加密方法

    3,调用varfielad:Nsstring=字符串.md5()//字符串MD5加密extensionString{funcmd5()->String!

  3. swift MD5 加密

    是计算机广泛使用的杂凑算法之一,主流编程语言普遍已有MD5实现。其作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式。

  4. 使用Swift 3.0实现原生的MD5加密

    对称加密以DataEncryptionStandard数据加密标准算法即DES为典型代表,非对称加密通常以RivestShamirAdleman即RSA算法为代表。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法,如图2所示:图2MD5加密MD5的全称是MessageDigestAlgorithm5,即消息摘要算法第五版,是计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。不同之处是在第16行的代码中,给NSData添加了一个名为MD5的扩展方式,用来实现数据的MD5加密

  5. Swift3实现字符串的MD5加密

    Swift3实现字符串的MD5加密新建一个oc文件使用桥接头文件引入扩展String建立一个md5的方法新建一个OC文件如图所示接着下一步下一步使用桥接头文件引入接上一步xcode会自动提醒你实现点击CreateBridgingHeader即可之后在新建的.h文件上添加如图所示代码扩展String建立一个md5的方法新建一个Swift文件添加如下代码之后就大功告成了可以这么使用

  6. swift3.0 MD5加密源码

    因为MD5加密是不可逆的,所以一般只有MD5加密的算法,而没有MD5解密的算法。

  7. 如何在swift语言中使用CC_MD5方法

    在objective-c中,我们可以通过以下代码用md5加密字符串但现在CC_MD5不工作在swift。

  8. Java利用POI实现导入导出Excel表格

    这篇文章主要为大家详细介绍了Java利用POI实现导入导出Excel表格,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  9. Java 阻塞队列BlockingQueue详解

    本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景,通过实例代码介绍了Java 阻塞队列BlockingQueue的相关知识,需要的朋友可以参考下

  10. Java Bean 作用域及它的几种类型介绍

    这篇文章主要介绍了Java Bean作用域及它的几种类型介绍,Spring框架作为一个管理Bean的IoC容器,那么Bean自然是Spring中的重要资源了,那Bean的作用域又是什么,接下来我们一起进入文章详细学习吧

随机推荐

  1. 基于EJB技术的商务预订系统的开发

    用EJB结构开发的应用程序是可伸缩的、事务型的、多用户安全的。总的来说,EJB是一个组件事务监控的标准服务器端的组件模型。基于EJB技术的系统结构模型EJB结构是一个服务端组件结构,是一个层次性结构,其结构模型如图1所示。图2:商务预订系统的构架EntityBean是为了现实世界的对象建造的模型,这些对象通常是数据库的一些持久记录。

  2. Java利用POI实现导入导出Excel表格

    这篇文章主要为大家详细介绍了Java利用POI实现导入导出Excel表格,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  3. Mybatis分页插件PageHelper手写实现示例

    这篇文章主要为大家介绍了Mybatis分页插件PageHelper手写实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  4. (jsp/html)网页上嵌入播放器(常用播放器代码整理)

    网页上嵌入播放器,只要在HTML上添加以上代码就OK了,下面整理了一些常用的播放器代码,总有一款适合你,感兴趣的朋友可以参考下哈,希望对你有所帮助

  5. Java 阻塞队列BlockingQueue详解

    本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景,通过实例代码介绍了Java 阻塞队列BlockingQueue的相关知识,需要的朋友可以参考下

  6. Java异常Exception详细讲解

    异常就是不正常,比如当我们身体出现了异常我们会根据身体情况选择喝开水、吃药、看病、等 异常处理方法。 java异常处理机制是我们java语言使用异常处理机制为程序提供了错误处理的能力,程序出现的错误,程序可以安全的退出,以保证程序正常的运行等

  7. Java Bean 作用域及它的几种类型介绍

    这篇文章主要介绍了Java Bean作用域及它的几种类型介绍,Spring框架作为一个管理Bean的IoC容器,那么Bean自然是Spring中的重要资源了,那Bean的作用域又是什么,接下来我们一起进入文章详细学习吧

  8. 面试突击之跨域问题的解决方案详解

    跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。那怎么解决这个问题呢?接下来我们一起来看

  9. Mybatis-Plus接口BaseMapper与Services使用详解

    这篇文章主要为大家介绍了Mybatis-Plus接口BaseMapper与Services使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  10. mybatis-plus雪花算法增强idworker的实现

    今天聊聊在mybatis-plus中引入分布式ID生成框架idworker,进一步增强实现生成分布式唯一ID,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

返回
顶部