用python存储密码

2024-04-19 12:14:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个用python编写的程序,我需要存储一些密码。这些密码将是ftp服务器的密码,因此重要的是它们不只是对每个人都可见。这也意味着我不能像在web服务器上那样存储不可逆的密码散列,因为我没有检查是否有人输入了正确的密码,我只是将密码转发给其他人。
那么,存储密码的最佳方法是什么?我使用的是python,程序将仅限于linux。


Tags: 方法程序服务器web密码linuxftp
3条回答

有一种方便且不安全的方法:将它们存储为纯文本,如果您真正使用的是FTP(而不是SFTP),那么它们将与托管它们的机器一样安全(这意味着不太安全)。FTP是在通过网络发送明文密码被认为“足够安全”的时候编写的;那些日子已经一去不复返了。即使在python源代码中对明文密码进行编码也没有真正的帮助,因为在某些情况下,您必须取消对它们的编码。

安全方法需要更多的设置。这是一张decent tutorial,我希望有更好的。

根据发行版的不同,如果有密钥链的话,您可以将其存储在密钥链中。

否则,请查看一些可用的加密算法(PGP/GPG、DES、AES等)及其Python端口/模块,但这是您必须才能解决的难题。

您可以使用系统的钥匙圈,例如GNOME钥匙圈或KDE钱包。

有一个名为keyring的Python模块支持多个密钥环提供程序。我只在Windows上试过,但还不能正常工作。似乎开发不是很活跃,但你应该试试。您还可以尝试使用“python gnomekeyring”包,它是GNOME特有的,并且是更低级的。

相关问题 更多 >