首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

人工智能为什么能做的事情这么多?密码猜测在它面前也能行得通

AiTechYun

编辑:yining

密码猜测之所以有效是因为…

人类是可预测的

如果你要求小明设置一个密码。他可能只是简单地把密码设置为“xiaoming”。现在,系统告诉他密码必须包含数字。他或许会尝试“xiaoming123”这样的密码。虽然你很聪明,不会把这种不安全的密码放在各种网站里,但实际上还是有很多像小明这样只会设置简单、好猜测的密码的人。

从Rootkit上泄露密码

你可以在上图泄漏的密码中看到一种固定模式。它们中的大多数密码可能是一个或多个名字、姓氏、出生日期或喜欢的实体(汽车、自行车、男女演员等)的组合。

密码猜测工具,如HashCat或John the Ripper通常使用字典式攻击(dictionary attack)密码生成规则来猜测密码。

字典式攻击只是简单地将字典中的单词作为密码输入,以查看哪个单词是有效的。

使用密码生成规则的字典式攻击是通过手动检查泄漏密码的列表,并为密码生成制定规则。例如:如果泄露的密码被发现是一个实体加上123的组合,如“福特123”,然后将数字123与字典上的单词相连接就是一个生成规则。

在密码猜测工具中,这些工具是手动定义的,或者换句话说,它们是人类定义的规则。这些规则的问题在于人类的行为和兴趣会随着时间的推移而改变。因此,随着更多的泄漏发生,这些规则必须经常更新。此外,当泄露的密码列表非常庞大时,手动查找模式将是一个十分困难的过程。因为有些模式很有可能被忽视。

研究人员利用生成的敌对神经网络(GANs)来实现这一功能。GANs由两个神经网络组成。一个神经网络用来生成,另一个用来提供反馈。你可以把它当作教师和学生。当一名学生试图做一些事情时,老师会给出反馈,说“你需要尝试更多”或者“你很接近正确的答案了”等等。这些神经网络正是如此,它们运行多次迭代,直到得到令人满意的结果。

这使得整个过程完全自动化。研究人员还发现,虽然在某些情况下,神经网络无法匹配准确的密码,但生成的密码看起来就像给定的密码。例如:如果密码是“AEF@123”,生成的却是“AEF@123”。

从好的方面来说,我们可以通过可预测的密码使基于密码的系统更加安全。如果你想了解技术细节,可以看一下这篇“一种深入学习密码的方法”的论文。

论文地址:https://arxiv.org/abs/1709.00440

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171227B0IRJD00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券