数据库安全与服务拆分:密码存储、服务架构及 Flask 应用实现
1. 数据库中安全存储密码的重要性
在当今数字化时代,数据泄露事件频发,许多公司因密码存储方式不当,导致用户敏感数据(包括密码)泄露给黑客。部分公司采用的加密手段极差,甚至直接以明文形式存储密码,这使得黑客能够轻易破解。由于用户常重复使用密码,此类疏忽会导致数百万用户的邮箱和密码组合泄露。因此,开发者有责任采取措施减轻黑客入侵服务器造成的损失。
例如,2016 年 10 月,知名视频分享平台 Dailymotion 遭遇数据泄露,8500 万个账户被盗,其中 1800 万个账户有密码。幸运的是,这些密码使用 Bcrypt 进行了哈希处理,以如今的硬件水平,黑客需数十年甚至数百年的暴力计算才能破解。
2. 使用 Bcrypt 进行密码哈希处理
2.1 安装 Bcrypt
首先,将 Bcrypt 添加到 base.in 文件中,并按照之前的流程进行安装(编写本文时版本为 3.1.4)。若安装过程中遇到问题,可参考安装说明: http://url.marcuspen.com/pypi - bcrypt 。
2.2 创建盐(Salt)
Bcrypt 创建密码哈希需要密码和盐,盐是一串随机字符。以下是在 Python 中创建盐的示例:
>>> from bcry
超级会员免费看
订阅专栏 解锁全文
872

被折叠的 条评论
为什么被折叠?



