加入收藏 | 设为首页 | 会员中心 | 我要投稿 惠州站长网 (https://www.0752zz.com.cn/)- 办公协同、云通信、物联设备、操作系统、高性能计算!
当前位置: 首页 > 建站 > 正文

一文搞懂Web中暗藏的密码学

发布时间:2019-11-14 12:20:10 所属栏目:建站 来源:前端劝退师
导读:副标题#e# 【线上直播】11月21日晚8点贝壳技术总监侯圣文《数据安全之数据库安全黄金法则》 前言 开发网站登录功能时,如何保证密码在传输过程/储存的安全? 相信不少前后端的朋友,在面试时都会被问到类似的问题。 在我对密码学一无所知时,也仅会回答:MD5

强大的哈希算法几乎会为每个唯一输入创建一个新存储桶。

一文搞懂Web中暗藏的密码学

3.2 例子二:网站登陆

在web开发中,哈希算法使用最频繁的是在网站登陆应用上:

绝大多数的网站,在将登陆数据存入时,都会将密码哈希后存储。

  • 这是为了避免他人盗取数据库信息后,还原出你的初始输入。
  • 且下次登录时,Web 应用程序将再次对你的密码进行哈希处理,并将此哈希与之前存储的哈希进行比较。
  • 如果哈希匹配,即使 Web 应用程序中没有实际的密码存储,Web 应用程序也确信你知道密码。

注册:

一文搞懂Web中暗藏的密码学

登陆:

一文搞懂Web中暗藏的密码学

哈希算法的一个有趣的方面是:无论输入数据的长度如何,散列的输出始终是相同的长度。

从理论上讲,碰撞冲突将始终在可能性的范围之内,尽管可能性很小。

与之相反的是编码。

4. 什么是编码?

编码定义:将数据从一种形式转换为另一种形式的过程,与加密无关。

它不保证机密性,完整性和真实性这三种加密属性,因为:

  • 不涉及任何秘密且是完全可逆的。
  • 通常会输出与输入值成比例的数据量,并且始终是该输入的唯一值。
  • 编码方法被认为是公共的,普遍用于数据处理。
  • 编码永远不适用于操作安全性相关。

4.1 URL编码

又叫百分号编码,是统一资源定位(URL)编码方式。URL地址(常说网址)规定了:

  • 常用的数字,字母可以直接使用,另外一批作为特殊用户字符也可以直接用(/,:@等)
  • 剩下的其它所有字符必须通过%xx编码处理。

现在已经成为一种规范了,基本所有程序语言都有这种编码,如:

  • js:encodeURI、encodeURIComponent
  • PHP:urlencode、urldecode 等。

(编辑:惠州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读