密码加密js
Ⅰ 小程序:JS AES加密解密(ECB/CBC)
序言:介绍一下javascript下AES加密和解密,运用的工作模式为ECB(电码本模式Electronic Codebook Book),填充方式为(NoPadding),及CBC(密码分组链接模式Cipher Block Chaining)。这饥帆里用烂迟雹到旦裂的是CryptoJS。
Ⅱ HTML5三种对密码加密的方法
1、base64加密:在页面中引入base64.js文件,调用方法为:
2、md5加密:在页面中引用md5.js文件,调用方法为
3、sha1加密,据说这是最安全的加密:页面中引入sha1.js,调用方法为
base64.js: http://files.cnblogs.com/mofish/base64.js
md5.js: http://files.cnblogs.com/mofish/md5.js
sha1.js: http://files.cnblogs.com/mofish/sha1.js
我们可以知道:escape()除了 ASCII 字母、数字和特定的符号外,对传进来的字符串全部进行转义编码,因此如果想对URL编码,最好不要使用此方法。而encodeURI() 用于编码整个URI,因为URI中的合法字符都不会被编码转换。encodeURIComponent方法在编码单个URIComponent(指请求参数)应当是最常用的,它可以讲参数中的中文、特殊字符进行转义,而不会影响整个URL。
请注意 encodeURIComponent() 函数 与 encodeURI() 函数的区别之处,前者假定它的参数是 URI 的一部分(比如协议、主机名、路径或查询字符串)。因此 encodeURIComponent() 函数将转义用于分隔 URI 各个部分的标点符号。
一、encodeURI()//转义一个URI中的字符
语法:encodeURI(uri)//这个在编码不同的AJAX请求时,解决中文乱码问题经常用到。
二、decodeURI()//解码一个URI中的字符
语法:decodeURI(uri)
三、encodeURIComponent()//转义URI组件中的字符
四、decodeURIComponent()//解码一个URI组件中的字符
五、escape()//编码一个字符串
语法:escape(value);
六、unecape()//解码一个由escape()函数编码的字符串
Ⅲ 记录一下前端使用CryptoJS的几种加密方式
自己太小白了,之前在PC端项目中使用的MD5加密,现在的小程序项目使用了 CryptoJS 里面的 enc-base64 和 hmac-sha1 ,之前没有用到过这两种,所以比较疑惑,为何在小程序不继续使用 MD5 呢?所以在这里记录一下自己解疑惑的一些知识点。
随着互联网的兴起,我们对信息的安全越来越受重视,这样就导致在web开发中,对用户密码等各种加密变得更加重要了。与服务器的交互中,为了确保数据传输的安全性,避免被黑客抓包篡改。
对于Base64编码的,我觉得看一篇文章能够解决你的疑惑,我在这里就不赘述了
🧐 Base64编码原理
如: 用户密码,请求参数,文件加密
如: 接口参数签名验证服务
支付数据、CA数字证书
前端的朋友可能会关注前端js加密,我们在做 WEB 的登录功能时一般是通过 Form 提交或 Ajax 方式提交到服务器进行验证的。为了防止抓包,登录密码肯定要先进行一次加密(RSA),再提交到服务器进行验证。一些大公司都在使用,比如淘宝、京东、新浪 等。
前端加密也有很多现成的js库,如:
JS-RSA: 用于执行OpenSSL RSA加密、解密和密钥生成的Javascript库, https://github.com/travist/jsencrypt
MD5: 单向散列加密md5 js库, https://github.com/blueimp/JavaScript-MD5
crypto-js: 对称加密AES js库, https://github.com/brix/crypto-js
-CryptoJS (crypto.js) 为 JavaScript 提供了各种各样的加密算法。
HMAC 系列是消息验证,用于验证一个消息是否被篡改——如网站上传递 email 和 hmac(email),则接收时可以通过 hmac(email) 获知 email 是否是用户伪造的
Ⅳ 功能强大的JS加密库-CryptoJS
CryptoJS是JavaScript的一个加解密库集合,可以说平时开发中需要用到的加解密方法,它这里都包含了
1、MD5加密,这是一种不可逆的加密
2、SHA-1加密,是现有 SHA 哈希函数中最成熟的,它用于各种安全应用程序和协议
3、SHA-2加密,不像 SHA-1 那样广泛使用,尽管它似乎提供了更好的安全性
4、AES加解密, 是美国联邦信息处理标准 (FIPS)提出的高级加密标准
5、DES加解密, DES 是以前占主导地位的加密算法,并作为官方联邦信息处理标准 (FIPS) 发布,由于密钥大小较小,DES 现在被认为是不安全的
6、转Base64
好了常用的加解密方法就介绍到这了
觉得效果不错的请帮忙加个关注点个赞,经常分享前端实用开发技巧
Ⅳ 用JavaScript加密保护网站页面
我们经常会遇到一些必须庆绝输入用户名和密码才能进入的网站。其实我们也可以对自己的网站页面进行简单的加密改核,具体操作请看下文:
第一步:创建密码登录页
将如下代码加入HTML的BODY区:
[code]
script LANGUAGE="JavaScript"
!--
flag=0
flag2=0
--
/script
script LANGUAGE="JavaScript" SRC="password.txt" //密码表文件
/script
script LANGUAGE="JavaScript" SRC="password1.txt" //密码验证文件
/script
h1 align="center"Login/h1
script LANGUAGE="JavaScript"
!--
function main()
{
member = document.all.username.value
pass = document.all.password.value
encryption()
password()
}
--
/script
p输入用户名: input TYPE="TEXT" ID="username" size="20" br
请输入密码: input TYPE="PASSWORD" ID="password" size="20"
input TYPE="BUTTON" ID="button" onclick="main()" value="Enter!" align="center" /p[/code][button value="复制代码"]
第二步:分别编辑文件1(password.txt)和文件2(password1.txt)核差掘,适合你自己的页面情况,主要是密码设定和用户名设定。
文件1:password.txt
一张密码表,一看就懂,没有什么难度。可以自由设计,注意大小写的区别。
[code]function encryption()
{
mm = "Z"
k = "j"
b = "p"
mmmm = ""
ccc = "6"
l = "i"
c = "q"
m = "s"
abcd = "m"
o = "n"
u = "z"
e = "d"
gg = "U"
p = "u"
jj = "O"
v = "a"
j = "y"
x = "c"
r = "n"
bb = "D"
cc = "K"
z = "w"
a = "x"
ee = "G"
n = "f"
ff = "T"
i = "g"
w = "r"
ii = "V"
kk = "I"
q = "o"
oooo = ")"
d = "e"
nn = "E"
oo = "P"
pp = "X"
t = "h"
s = "v"
rr = "S"
ss = "L"
tt = "R"
uu = "A"
h = "k"
vv = "C"
ww = "M"
aa = "Y"
xx = "Q"
hh = "B"
yy = "H"
zz = "W"
y = "t"
qq = "J"
aaa = "8"
bbb = "0"
f = "b"
ddd = "9"
eee = " "
fff = "3"
dd = "N"
ggg = "4"
hhh = "1"
iii = "2"
jjj = "7"
kkk = "5"
lll = "."
mmm = ","
nnn = ";"
ooo = ":"
ppp = ""
qqq = ""
rrr = ""
sss = "-"
ttt = "_"
uuu = "="
vvv = "/"
www = "?"
xxx = "`"
yyy = "~"
zzz = "*"
aaaa = "+"
bbbb = "["
cccc = "]"
g = "l"
dddd = "{"
eeee = "}"
ffff = ""
gggg = "|"
hhhh = "!"
iiii = "@"
jjjj = "#"
kkkk = "code:quot;
llll = "%"
nnnn = "("
}[/code][button value="复制代码"]
文件2:password1.txt
[code]function password()
{
if(member==i+p+d+m+y) //第一个用户名;对照密码表翻译为:guest
{
if(pass==hhh+iii+fff+ggg) //第一个密码;对照密码表翻译为:1234
{
alert("还在外面傻站着干吗 " + member + "...") //输入正确后的提示语
window.location.href = x+q+e+d+lll+t+y+abcd //密码正确后进入的页面code.htm(对密码表)
flag2=1
}
}
if(member==k+v+j) //设定第二个用户名,以下类推...
{
if(pass==f+i+p+d)
{
alert("还在外面傻站着干吗 " + member + "...")
window.location.href = s+b+v+x+x+lll+t+y+abcd
flag2=1
}
}
if(member==qqq+llll+ttt+llll+rrr) //设定第三个用户名,以下类推...
{
if(pass==ooo+sss+oooo)
{
alert("还在外面傻站着干吗 " + member + "...")
window.location.href = s+b+v+x+x+lll+t+y+abcd
flag2=1
}
}
if(member=="")
{
}
else
{
if(flag==3) //设定允许连续输错密码的次数
{
window.location.href = "" //连续3次输错后导向该页面
flag2=1
}
if(flag2==1)
else
{
alert ("对不起,今天我心情不好,在外面待会儿吧!") //输错密码后的警示语
flag=flag+1
}
}
}[/code][button value="复制代码"]
Ⅵ js中常见的数据加密与解密的方法
加密在我们前端的开发中也是经常遇见的。本文只把我们常用的加密方法进行总结。不去纠结加密的具体实现方式(密码学,太庞大了)。
常见的加密算法基本分为这几类,
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是一种编码方式而不是加密算法。只是看上去像是加密而已(吓唬人)。
Ⅶ 前端js 加密解密方式
一、base64加密
使用JS函数的window.btoa()和 window.atob(),分别是编码和解码
二、编码和解码字符串
使用JS函数的escape()和unescape(),分别是编码和解码
三、AES加密解密
四、RSA加密解密