Python中的安全密码处理,非常重要!知道这些hei客也奈何不了你

本文探讨了Python中安全处理密码的方法,包括使用getpass库提示用户输入密码,利用xkcdpass库生成强密码,通过bcrypt进行散列和加盐,以及使用keyring库安全存储密码。介绍了安全存储用户凭据的重要性,防止密码明文存储,并提倡使用现代身份验证方法替代传统密码。
摘要由CSDN通过智能技术生成

几乎每个应用程序都需要某种形式的身份验证、密码处理或使用安全凭据(如API密钥)。您可能不是安全专家,但您应该知道如何安全地处理所有这些密码和凭据,以保护应用程序用户的凭据和数据以及您自己的API密钥和各种令牌。

确保这些安全元素的安全包括:生成它们、验证它们、安全地存储它们以及保护它们不受敌人的攻击。因此,在这篇文章中,我们将探索Python库、工具和概念,这些工具和概念将起到同样的作用!

提示密码

让我们简单地开始–您有带有命令行接口的基本Python应用程序。您需要向用户询问密码。你可以用input(),但这将显示终端中的密码,以避免使用getpass相反:

import getpassuser = getpass.getuser()password = getpass.getpass()# Do Stuff...

getpass是一个非常简单的包,它允许您提示用户输入密码,并通过提取当前用户的登录名获取他们的用户名。但是要注意,并不是每个系统都支持隐藏密码。Python将尝试对此发出警告,所以只需在命令行中读取警告即可。

生成

有时,最好生成密码,而不是提示用户输入密码。例如,如果您希望设置第一次登录时更改的初始密码。最后,如果你的时间不是很紧张,并且又想快速的python提高,最重要的是不怕吃苦,建议你可以价位@762459510 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~

没有生成密码的库,但实现它并不困难:

import stringimport secretslength = 15
# Choose wide set of characters, 
but consider what your system can handlealphabet = 
string.ascii_letters + string.digits + string.punctuationpassword = ''
.join(secrets.choice(alphabet) 
for i in range(length))

使用上述代码生成的密码将很强,但很难记住。如果它只是一个初始的、临时的密码或短暂的令牌,那么就可以了,但是如果用户应该使用更长的密码,那么使用密码就更合适了。

我们可以像上面使用简单的密码那样构建一个密码生成器,但是如果有可用的库,为什么还要麻烦呢?这个图书馆叫做xkcdpass后著名XKCD关于密码强度,它所做的正是漫画所描述的–产生了由文字组成的强大的密码:

# pip install xkcdpassfrom xkcdpass import xkcd_password as xpword_file = 
xp.locate_wordfile()words = xp.generate_wordlist(wordfile=word_file, min_length=5, max_length=10)
for i in range(4):    
print(xp.generate_xkcdp
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值