我正在App Engine应用中尝试passlib.hash.sha256_crypt算法,实现起来相当简单。
这是否足够安全,它的自动生成盐和80,000轮的默认参数?它应该首先用随机字符填充吗?
密码正在从表单中过帐并按上述方式加密。
答案 0 :(得分:2)
我无法判断“足够安全”是什么意思。
最后我读到最好的选项是scrypt,bcrypt或pbkdf2。如果您不能使用那些,那么我建议使用sha512进行数千次迭代。使用passlib CryptContext的好处之一是您可以在以后根据需要更新您的方案(以及更好的实现可用),同时保持与以前存储的密码的轻松兼容性。使用passlib CryptContext在GAE上很容易实现sha512_crypt。
我不确定用字符填充(在salting之上)会添加任何内容。