Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 无法使crypt正常工作_Python_Crypt - Fatal编程技术网

Python 无法使crypt正常工作

Python 无法使crypt正常工作,python,crypt,Python,Crypt,我只是在胡闹,看看我是否可以使用“密码”模块,我似乎遇到了一个我一生都无法解决的问题。运行此命令后的输出如下: Password Not Found. secret HXXxJi0n6Huro HXXxJi0n6Huro 这意味着cryptoword和cryptopass是相同的,那么为什么程序不执行if cryptoword==cryptopass:,并打印“find Password: 我一点也不明白 txt文件中多次包含单词secret,都在单独的行中。而evil.txt文件有这样一行:

我只是在胡闹,看看我是否可以使用“密码”模块,我似乎遇到了一个我一生都无法解决的问题。运行此命令后的输出如下:

Password Not Found. secret HXXxJi0n6Huro HXXxJi0n6Huro
这意味着cryptoword和cryptopass是相同的,那么为什么程序不执行if cryptoword==cryptopass:,并打印“find Password:

我一点也不明白

txt文件中多次包含单词secret,都在单独的行中。而evil.txt文件有这样一行:

test_user:HXXxJi0n6Huro
据我所知,一切正常吗?但是有些事情阻碍了它的正常工作,我就是想不出来。任何帮助都将不胜感激

import crypt

def testPass(cryptPass):

        salt = cryptPass[0:2]
        dictFile = open('dictionary.txt', 'r')
        for word in dictFile.readlines():
            word = word.strip('\n')
            cryptWord = crypt.crypt(word, salt)
            if cryptWord == cryptPass:
                print "[+] Found Password: "+word+"\n"
                return
        print "[-] Password Not Found. " +word,  cryptWord,  cryptPass+  "\n"
        return


def main():

    passFile= open('evil.txt')
    for line in passFile.readlines():
        if ":" in line:
            user = line.split(':')[0]
            cryptPass = line.split(':')[1]
            print "[*] Cracking Password For: "+user
            testPass(cryptPass)
if __name__ == '__main__':

        main()
crypPass值仍然有一个换行符附加到它。先把它剥掉:

user, cryptPass = line.split(':')
cryptPass = cryptPass.strip()
crypPass值仍然有一个换行符附加到它。先把它剥掉:

user, cryptPass = line.split(':')
cryptPass = cryptPass.strip()

如果我有声望,我会投票支持你。但谢谢你,在我加上那句话后,它马上就起作用了。我一定会的!你回答得太快了,我不得不等几分钟。哈哈。如果我有声望,我会投你一票。但谢谢你,在我加上那句话后,它马上就起作用了。我一定会的!你回答得太快了,我不得不等几分钟,哈哈。请不要在问题标题中添加[已解决];这就是“接受答案”标记的目的:-没问题,但是为什么你也去掉了“接受答案”的标记呢?你可以把它留在里面!:-这就是我想说的,把答案标记为接受,这就是它的目的。但您不应在问题标题中添加[已解决]。请参阅不要在问题标题中添加[已解决];这就是“接受答案”标记的目的:-没问题,但是为什么你也去掉了“接受答案”的标记呢?你可以把它留在里面!:-这就是我想说的,把答案标记为接受,这就是它的目的。但您不应在问题标题中添加[已解决]。请参阅