没法,md5加密会生产16位或者32位字符串,不同个数的空格产生的md5码不同,因为加密不可逆,到后台根本没法判断。
其实密码输入空格也无大碍,这样反而可以提高密码安全性(试问哪个黑客会料到你的密码是10个空格...)
如果你struts2必须校验密码空格的话,那只能使用双向加密技术了,在js端加密,在后台再解密还原
不可用MD5为JS文件加密,MD5是摘要算法,结果是不可逆的,是单向的 JS经过MD5后无法进行还原,加密后JS将永远无法使用
CryptoJS是JavaScript的一个加解密库集合,可以说平时开发中需要用到的加解密方法,它这里都包含了
1、MD5加密,这是一种不可逆的加密
2、SHA-1加密,是现有 SHA 哈希函数中最成熟的,它用于各种安全应用程序和协议
3、SHA-2加密,不像 SHA-1 那样广泛使用,尽管它似乎提供了更好的安全性
4、AES加解密, 是美国联邦信息处理标准 (FIPS)提出的高级加密标准
5、DES加解密, DES 是以前占主导地位的加密算法,并作为官方联邦信息处理标准 (FIPS) 发布,由于密钥大小较小,DES 现在被认为是不安全的
6、转Base64
好了常用的加解密方法就介绍到这了
觉得效果不错的请帮忙加个关注点个赞,经常分享前端实用开发技巧
JS加密其实就是对字符进行编码,也不是一定要用工具有两个函数的document.write(escape("你好,这是测试!")+"br");
document.write(unescape("%u4F60%u597D%uFF0C%u8FD9%u662F%u6D4B%u8BD5%uFF01"));
在网页中加入一个,然后在加密代码中找document.write(),eval(),execScript()或VBS的EXECUTE语句,并用document.getElementById("textareaID").innerText=STR 替换。加密就不攻自破了。
(STR是转换好的字符串变量,如在加密代码中找到 document.write(s); 就用 document.getElementById("textareaID").innerText=s; 替换)