Python预估破译密码所需时间

Python预估破译密码所需时间,第1张

概述密码长度、组成不同时,破译密码需要的时间也不同用python判断一下破解该密码需要多长时间##判断破译密码所需要的时间,对着理论表格敲代码就行了。importrepassword=input()length=len(password)alpha='qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM'

密码长度、组成不同时,破译密码需要的时间也不同
用python判断一下破解该密码需要多长时间

# # 判断破译密码所需要的时间,对着理论表格敲代码就行了。import repassword = input()length = len(password)Alpha = 'qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM'num = '0123456789'char = '~!@#$%^&*()_+{}|":?><`,./;[]\=-?\''# # 最开始设置含有字母、数字、字符为Falsecontain_Alpha = Falsecontain_num = Falsecontain_char = False# # local = bool(re.findall(password, Alpha))  # # 找到返回True,没找到返回False# # print(local)if length < 3 and length > 0:    print('破译密码需要: 0.001秒')elif length == 3:    print('破译密码需要: 0.001秒')elif length == 4:    print('破译密码需要: 0.001秒')elif length == 5:    if password.isnumeric():        print('破译密码需要: 0.001秒')    if password.isAlpha():        print('破译密码需要: 0.001秒')    else:        # #  判断密码中的每一位,密码不长,时间复杂度可以接受,找到了设置相应的包含字母、数字、符号为True即可        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 3秒')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 10秒')elif length == 6:    if password.isnumeric():        print('破译密码需要: 0.001秒')    if password.isAlpha():        print('破译密码需要: 8秒')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 3分钟')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 13分钟')elif length == 7:    if password.isnumeric():        print('破译密码需要: 0.001秒')    if password.isAlpha():        print('破译密码需要: 5分钟')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 3小时')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 17小时')elif length == 8:    if password.isnumeric():        print('破译密码需要: 0.001秒')    if password.isAlpha():        print('破译密码需要: 3小时')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 10天')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 57天')elif length == 9:    if password.isnumeric():        print('破译密码需要: 4秒')    if password.isAlpha():        print('破译密码需要: 4天')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 153天')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 12年')elif length == 10:    if password.isnumeric():        print('破译密码需要: 40秒')    if password.isAlpha():        print('破译密码需要: 169天')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 1年')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 928年')elif length == 11:    if password.isnumeric():        print('破译密码需要: 6分钟')    if password.isAlpha():        print('破译密码需要: 16年')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 106年')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 7万1千年')elif length == 12:    if password.isnumeric():        print('破译密码需要: 1小时')    if password.isAlpha():        print('破译密码需要: 600年')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 6千年')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 5百万年')elif length == 13:    if password.isnumeric():        print('破译密码需要: 11小时')    if password.isAlpha():        print('破译密码需要: 2万1千年')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 10万8千年')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 4亿2千3百万年')elif length == 14:    if password.isnumeric():        print('破译密码需要: 4天')    if password.isAlpha():        print('破译密码需要: 77万8千年')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 2千5百万年')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 50亿年')elif length == 15:    if password.isnumeric():        print('破译密码需要: 46天')    if password.isAlpha():        print('破译密码需要: 2千8百万年')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 10亿年')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 2万亿年')elif length == 16:    if password.isnumeric():        print('破译密码需要: 1年')    if password.isAlpha():        print('破译密码需要: 10亿年')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 9百7十亿年')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 193万亿年')elif length == 17:    if password.isnumeric():        print('破译密码需要: 12年')    if password.isAlpha():        print('破译密码需要: 360亿年')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 6万亿年')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 约无穷年')elif length == 18:    if password.isnumeric():        print('破译密码需要: 126年')    if password.isAlpha():        print('破译密码需要: 1万亿年')    else:        for i in password:            if bool(re.findall(i, Alpha)):                contain_Alpha = True            if bool(re.findall(i, num)):                contain_num = True            if bool(re.findall(i, char)):                contain_char = True        if contain_Alpha and contain_num and not contain_char:  # # 密码仅包含数字字母            print('破译密码需要: 374万亿年')        if contain_Alpha and contain_num and contain_char:            print('破译密码需要: 约无穷年')

随笔记录

侵删 总结

以上是内存溢出为你收集整理的Python预估破译密码所需时间全部内容,希望文章能够帮你解决Python预估破译密码所需时间所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1185295.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存