URL 加密解密完整解决方案 采用: java
URLEncoder
encode(Base64 编码(加密字串), StringCode) 这样的方法来对url 中的参数进行加密
首先我们先说一下如何加密
一、算法的选择: 对于像对url 中的参数进行加密的过程,我不建议使用rsa 或者是三重 des 这样的加密算法,主要原因在于性能和速度会受影响
我建议大家使用对称加密如:DES 或者是 PBE 算法
我们在这边就使用PBEWithMD5AndDES 来实现加密
二、加密原理 对于一个纯文本,加密后它会变成一堆乱码,这堆乱码包括了许多非法字符,我们不希望把这些字符放入 bean 中,因此在加密完后,我们还要对加密结果进行base64 编码
PBE 从字面上理解,它必须使用一个口令,我们不希望我们的加密过于复杂而影响页面跳转的速度,因此我们不采用口令+KEY 的形式,我们这边的口令就是我们的KEY
因此: 我们的整个加密过程实现如下: 输入口令(KEY)--> 加密文本 --> 以base64 对加密后的结果进行编码-->以java
URLEncoder
encode 编码成浏览器可以识别的形式-->传输给接受的action 而解密过程如下: 接受的action 得到参数-->以base64 对结果进行解码-->得到纯加密文本-->解密-->得到解密后的值 三、BASE64 这边对于 BASE64 的原理不多说了,只说实现,目前网上有很多实现方式,有自己写的,有用 sun
*的,我们在这个例子里将使用 javax
internet
MimeUtility 自带的base64编码工具
需要引入activation
jar 和 mail
jar 两个包
下面是具体的实现: import javax
interne