文本框和密码框都是input元素,只是type属性值不一样,因此只要将type属性由text修改为password即可实现文本框变密码框。示例如下:
1、HTML结构
<input type="text" id="test" value="请输入密码" onclick="fun(this)">
2、javascript代码
function fun(obj){ obj.value = "" obj.type = "password"}
3、效果演示
加密在我们前端的开发中也是经常遇见的。本文只把我们常用的加密方法进行总结。不去纠结加密的具体实现方式(密码学,太庞大了)。
常见的加密算法基本分为这几类,
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是一种编码方式而不是加密算法。只是看上去像是加密而已(吓唬人)。
知乎登录踩坑记。。
打开主页,登录,抓包三连。根据响应内容,可以确定这个就是登录的包:
虽然找到了解决办法,得到正确的结果。但是这个办法不是我想要找到的办法,就这样稀里糊涂的过了自己也没什么收获。于是我花了很久去研究到底是触发了什么检测导致的结果不同,最后终于找到了关键点。其实答案我们早就找到了,只是没去注意而已。
结束~~
算是见识到逻辑混淆的厉(e)害(xin)了,真的是一不注意就进坑。。他不对也不给你报错,就走一个相反的逻辑给个错误的执行结果就行了,然后也不好排查问题所在。知乎的这个算是个低配版的头条_signature吧,头条的那个要更恶心一点。年轻人就要多踩坑···