如何在编码算法中存储PIN码? PYTHON3

时间:2017-05-23 16:20:59

标签: algorithm python-3.x

我目前正在教自己如何使用Python3进行编码。我通过各种练习等来做这件事。基本上,我有一个程序,用户将通过一个唯一的PIN码登录程序。在此任务中,我被要求通过执行以下操作来扩展我的程序:

“创建一种编码算法,将以只能查看文件无法读取的格式存储PIN。只有通过相同的算法运行PIN尝试才能找到匹配。”

这究竟是什么意思?由于我是Python新手,我不完全确定要问的是什么。有人能以正确的方式指出我,以及我将如何处理这个问题?

2 个答案:

答案 0 :(得分:1)

您可以轻松使用hash

a = hash("1234") 
assert(hash("1234") == a)

这个想法是,对于每个引脚输入,您将得到一个输出,您可以存储和比较但不是引脚本身。

答案 1 :(得分:0)

当用户创建帐户并存储结果时,您应该对引脚进行散列。然后,当用户再次输入pin进行登录时,对输入的引脚进行散列,并将结果与​​存储的结果进行比较。如果他们两个都匹配,他就有正确的针脚。

使用SHA256进行散列。研究如何使用SHA256。

不要使用MD5或SHA1。他们不再安全了。

以下是我通过互联网撰写各种文章的摘录。我用它作为我自己的参考,但它可能对你有帮助。

https://hnode.github.io/website/blog/guides/passwords.html

该链接探讨了处理密码的各种方法:从纯文本到哈希拉伸,以及哈希如何工作。

免责声明:我不拥有该文章的内容。我从各种相关文章中收集了它,并将该集合格式化为一篇文章。