function eb(ting)
{
//传入要加密的url
//获取url参数部分
var paraString = ting.substring(ting.indexOf("?")+1,ting.length)
//将加密后的参数重新组合到url中
var rul=ting.substring(0,ting.indexOf("?")+1)+escape(paraString)
//跳转到rul页面呢
location.href=rul
}
解密代码
var urlPara = location.search//获取参数部分
urlPara=unescape(urlPara)//对参数解密
//分析参数
function getPara(paraName){
var reg = new RegExp("[&|?]"+paraName+"=([^&$]*)", "gi")
var a = reg.test(urlPara)
return a ? RegExp.$1 : ""
}
//捕获参数并进行操作
//window.onload = function(){
//var url= getPara("id")//捕获到url参数
//document.getElementById("TextBox1").value = url
//}
你的描述是不准确的:数据安全并不仅仅是保证数据的完整性,数据传输的安全包括:真实性、保密性、完整性以及不可抵赖等等方面。如果你仅仅要实现数据的完整性也就是不可篡改,其实很简单,自己写一个hash算法,对传输的数据进行数字签名,后台用相同的算法对内容进行hash,再和数据的数字签名进行对比即可,如果不一样,则说明是篡改过的,一样则是完整的。
如果你要达到更高的的数据安全,则必须使用https协议(你这里的前台、后台我暂时理解为使用http协议传输),具体的过程你可搜索https相关内容。
加密在我们前端的开发中也是经常遇见的。本文只把我们常用的加密方法进行总结。不去纠结加密的具体实现方式(密码学,太庞大了)。
常见的加密算法基本分为这几类,
RSA加密:RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。(这才是正经的加密算法)
非对称加密算法:非对称加密算法需要两个密钥:公开密钥(publickey:简称公钥)和私有密钥(privatekey:简称私钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。
DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法
DES算法的入口参数有三个:Key、Data、Mode。其中Key为7个字节共56位,是DES算法的工作密钥;Data为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。
AES这个标准用来替代原先的DES
DES/AES我们合并在一起介绍其用法和特点
Base64是一种用64个字符来表示任意二进制数据的方法。base64是一种编码方式而不是加密算法。只是看上去像是加密而已(吓唬人)。