嗨,我想知道如何制作一个即使关闭 shell 也能记住用户名和密码的程序
问问题
76 次
1 回答
2
我认为最好的方法是将用户名和密码哈希的组合存储在数据库中。我最熟悉使用 SQL 数据库,这对你有用。
为了详细说明密码散列的概念,您永远不应该以明文形式存储密码——使用hashlib 对它们进行散列。散列函数接受输入字符串并确定性地将其转换为固定长度的字符混杂。给定输入,很容易确定散列,但给定散列,很难确定创建它的输入。
因此,您需要在用户首次设置密码时对其进行哈希处理,将哈希值保存在数据库中,然后对用户在登录时提供的输入进行哈希处理以检查是否匹配。
说了这么多,如果你真的想从头开始实现一个安全的身份验证系统,你可能会不知所措。即使是非常优秀的程序员也可能没有意识到安全方面的许多细微差别,许多框架都内置了这种类型的功能是有原因的。
但是,如果这只是一个理论练习,或者是学习一些编程技术的一种方式,那么我将首先查看有关使用 Python 与 SQL 数据库交互的教程。
于 2013-01-09T23:17:13.073 回答