数据库安全与服务拆分:密码存储、用户认证及服务架构优化
1. 数据库中安全存储密码
在当今数字化时代,公司泄露用户敏感数据(包括密码)的事件屡见不鲜。许多情况下,泄露的密码采用的加密方式极其薄弱,甚至以明文形式存储,这使得黑客能够轻易破解。由于用户普遍存在重复使用密码的习惯,一旦数据泄露,将导致大量用户的邮箱和密码组合被盗用。因此,开发者有责任采取措施减轻黑客入侵服务器所造成的损害。
1.1 使用 Bcrypt 加密
Bcrypt 是一种强大的密码哈希算法,可以有效提高密码存储的安全性。以下是使用 Bcrypt 的步骤:
1. 安装 Bcrypt :将 bcrypt 添加到 base.in 文件中,并按照之前的方法进行安装(编写本文时版本为 3.1.4)。如果安装过程中遇到问题,可以参考安装说明: http://url.marcuspen.com/pypi - bcrypt 。
2. 创建盐(Salt) :Bcrypt 创建密码哈希需要密码和盐。盐是一串随机字符。在 Python 中创建盐的示例代码如下:
>>> from bcrypt import gensalt
>>> gensalt()
b'$2b$12$fiDoHXkWx6WMOuIfOG4Gku'
<
超级会员免费看
订阅专栏 解锁全文

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



