Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.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
Security 此密码生成算法易受暴力攻击吗?_Security_Brute Force - Fatal编程技术网

Security 此密码生成算法易受暴力攻击吗?

Security 此密码生成算法易受暴力攻击吗?,security,brute-force,Security,Brute Force,我想我有了一种新的方法来创建非常难破解的密码。假设你有密码,一些简单的单词,如“安全”或短语“cantHackMe”。确保这些密码很容易被强行使用。因此,如果你把它放在某个地方,而它们只是md5散列的,那么使用字典,用bruteforce很容易破解它们 如果你正在考虑一个更长的密码,比如20个字母——哦,天哪,这太难记住了。如果你有一个很容易记住的随机密码,并且你可以将你的安全性和它结合起来,那该怎么办 我想我找到了一个简单的方法来获得任意长度的随机密码:只要看看你的键盘,想一些算法来处理这些字

我想我有了一种新的方法来创建非常难破解的密码。假设你有密码,一些简单的单词,如“安全”或短语“cantHackMe”。确保这些密码很容易被强行使用。因此,如果你把它放在某个地方,而它们只是md5散列的,那么使用字典,用bruteforce很容易破解它们

如果你正在考虑一个更长的密码,比如20个字母——哦,天哪,这太难记住了。如果你有一个很容易记住的随机密码,并且你可以将你的安全性和它结合起来,那该怎么办

我想我找到了一个简单的方法来获得任意长度的随机密码:只要看看你的键盘,想一些算法来处理这些字母。最简单的方法是从“q”到“p”,再到下一行,从“a”到“l”,再到下一行,从“z”到“b”。因此,您将获得qwertyuiopasdfghjklzxcvbsecurity。如果攻击者打算使用字典,他无疑会猜到,你决定在键盘上使用什么数字以及使用多少次。然后他就得把这个词放到字典里。您是否发现此方法中存在任何漏洞

我不是说从左到右一个接一个地输入键盘字母。你可以走任何容易记住的路。在任何一点开始和结束。这是一个简单的方法来记住真正没有意义的随机字母序列。因此,您可以制作类似qazxswedcvfrtgbnhyujmsecurity的东西—它是一个从上到下按压的字母序列。很容易记住,很难粗暴对待


Gumbo指出有一种破解密码的策略,使用像这样的密码。但正如您所见,只有当字母数量相对较少且您不使用密码时,它才起作用。如果密码相当大(超过20个字母就足够了),并且你在里面的某个地方添加了真实的密码,那么它几乎是不可破解的。

你所考虑的类似于密码短语,这是一堆容易记住的单词。这使得暴力破解密码变得越来越困难

然而,服务器端密码保护的最新技术非常好。使用像Blowfish这样的现代散列使得暴力破解甚至相对较短的密码非常非常昂贵


另外,如果有人破解了你的帐户,那么在不同的系统中使用不同的密码就没有什么意义了,这可能是一个更容易为人类实现的系统。

我认为这种方法有一个简单的问题,键盘布局可能会在键盘之间发生变化,使得该方法难以实现,例如,当从台式计算机移动到笔记本电脑,甚至移动设备时,可能会导致结果不同……

我同意。但是它有多大的不同呢?大多数信件都在它们的位置上。当然,对于那些在真正不同的键盘之间切换的人来说,这种方法是没有用的。但它只是少数人。这只是一个需要考虑的事情,取决于你想要使用的字符(除了字母),如符号或数字,而且事实上,使用不同的键盘语言设置也会改变某些字符,绝对如此。如果你使用的是dvorak和普通键盘,或者一些游戏键盘和其他键盘,它们是不同的,而不是你做事的方式。不过,如果你有想象力,并且能想出一种方法来处理所有键盘上相同的字母,那就行了。另外要注意的是,一些清晰易用的规则仍然会使你的单词出现在任何键盘上。这是有意义的,我想在使用你的方法时,记住这些事情是很重要的,以确保它在最可能的键盘上工作,如果你做得很好,并且人们正在托管网站或制作软件也做得很好。这很难打破。但是假设可能有一个糟糕的散列算法,比如md5,或者你正在使用你的旧密码(我知道没有人这么做,尤其是像我们这样的聪明人,但让我们想象一下这个天真的人会这么做)。这就是使用和记住的方法。河豚是一种密码而不是散列算法。我想你指的是bcrypt,它是一个基于Blowfish的键派生函数。实际上有一些字典包含这样的键盘模式,例如。虽然他的字典没有那么广泛,但也有研究提出了一个有效的密码破解系统,与暴力破解相反。谢谢,Gumbo,这是一个非常有趣的观点。但请注意,如果密码相对较短且仅包含此类模式,则可以使用键盘模式有效破解密码。所以,如果你使用一种长模式(整个键盘一次)和你的真实密码,它几乎是牢不可破的。@Gumbo更新了关于你发送的链接的问题。