2024年如何安全的保存密码

1.1、http和https

HTTP 在传输数据的过程中,所有的数据都是明文传输,自然没有安全性可言,特别是一些敏感数据,比如用户密码和信用卡信息等,一旦被第三方获取,后果不堪设想。

HTTPS可以理解为HTTP+SSL/TLS, 即 HTTP 下加入 SSL 层,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL,用于安全的 HTTP 数据传输。

如果要做到密码的安全传输,使用https协议是必不可少的。但是https无法做到绝对的安全。因此,很多开发者都会在https协议之上再进行一次私有的加密。拿登录场景为例,常见的有单项加密(MD5 HASH)和非对称机密比较常见。一般小公司会直接MD5传输。但是在一下大厂,支付宝、腾讯、爱奇艺等这些网站并没有直接通过MD5进行传输,为什么呢?

1.2、非对称加密优化

在各个大厂的登录请求,一个登录请求乱七八糟的,各种字段,各种信息的传输,有的登录都无法直接定位到密码是由哪个字段传输,但是不管其登录多乱,大部分情况会在登录的Ajax的附近找到一个公钥,就肯定是非对称加密了。

为什么现在很多人使用了非对称加密呢?因为只要保证私钥不泄露。那么在传输过程中,通过加密的账号密码是很难破解的。 而且随着社会发展,很多平台都在使用手机号当作账号,慢慢的账号也变成了相对敏感的信息。因此通过这种方式同时也可以对账号信息加密。

二、安全输入

黑客:“既然我没办法在传输的时候破解你,那我就在你输入的时候直接获取”。所以,就出现了键盘记录器。键盘记录器可以分为硬件记录和软件记录。硬件键盘记录有人分享过文章,有兴趣的可以看看https://zhuanlan.zhihu.com/p/147862345

软件键盘记录器就相对可以理解,就好比启动了一个后台程序记录键盘。所以在支付平台就有了密码控件,也就是在密码输入的时候就对其进行了处理。

密码控件说到底也是计算机对于密码输入时的安全处理,也有很多绕过的方式,这是一场开发者与逆向大佬之间的博弈。个人以为,我这种小菜鸡暂时只需要看清楚他们打架的招式即可。并没有太多深入的研究。

三、安全存储

3.1、 明文传输

最烂的存储方式,目前很少有人这么干了,在此不再叙述。

3.2、MD5保存

一种次烂的存储方式。严谨的说,MD5并不是加密算法,这是一种常用的Hash算法。与之类似的还有SHA1、SHA2、SHA3等。这些算法在短时间内可以将信息计算其摘要,并且是不可逆的。密码通过Hash之后提交给服务器,利用其不可逆的特性,实现密码的安全。

看似这是一种很不错的方案,但是这种方案,并不完美。由于Hash的速度很快,现代服务器每秒可以计算大约330MB的 MD5 哈希值 。如果您的用户有小写、字母数字和 6 个字符长的密码,您可以在大约40 秒内尝试该大小的每个可能的密码。如果有自己的小型计算机集群。让您每秒尝试大约 700,000,000 个密码。按照这个速度,您将以每秒超过一个的速度破解这些密码。

被人撞库就麻烦了。

3.3、 MD5+盐值

盐:一个随机的字符串,往明文密码里加盐就是把明文密码和一个随机的字符串拼接在一起。

为了应对黑客们用彩虹表破解密码,我们可以先往明文密码加盐,然后再对加盐之后的密码用哈希算法加密。由于盐在密码校验的时候还要用到,因此通常盐和密码的哈希值是存储在一起的。采用加盐的哈希算法对密码加密,要确保要往每个密码里添加随机的唯一的盐,而不是让所有密码共享一样的盐。虽然加盐的算法能有效应对彩虹表的破解法,但它的安全级别并不高,因为计算哈希值耗时极短,黑客仍然可以用穷举法来破解,只是增加了一些耗时,没有实质性的防御力。

3.4、bcrypt

一种很慢的算法,比MD5慢好几个数量级。 我们可以通过参数设置重复计算的次数,重复计算的次数越多耗时越长。如果计算一个哈希值需要耗时1秒甚至更多,那么黑客们采用暴利法破解密码将几乎不再可能。破解一个6位纯数字密码需要耗时11.5天,更不要说高安全级别的密码了。虽然它很慢,但是在登录这种并发不高的场景,足够了。bcrypt 内置了盐来防止彩虹表攻击。

结论

其实丝毫许久,讨论了一整篇文档都在讨论密码。但是,我想说最好的密码就是没有密码,这个大家可以自己想一下,你可能听说过有人的QQ被盗,但是你等说过微信号被盗的吗?

给大家的福利

零基础入门

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

同时每个成长路线对应的板块都有配套的视频提供:

在这里插入图片描述

因篇幅有限,仅展示部分资料

网络安全面试题

绿盟护网行动

还有大家最喜欢的黑客技术

网络安全源码合集+工具包

所有资料共282G,朋友们如果有需要全套《网络安全入门+黑客进阶学习资源包》,可以扫描下方二维码领取(如遇扫码问题,可以在评论区留言领取哦)~

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 19
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值