一种基于深度学习的用户密码猜测系统技术方案

技术编号:16129000 阅读:27 留言:0更新日期:2017-09-01 20:56
本发明专利技术提供一种基于深度学习的用户密码猜测系统,通过对泄露密码数据集进行分析,可挖掘用户密码常见构成模式;依据学习到的密码常见构成模式,基于用户个人信息,可生成该用户可能使用的密码,包括数据处理,模式训练,常见模式提取,密码生成这四个子系统;对用户密码数据进行分析;根据用户密码数据,提出基于递归神经网络的方法建立用户密码模式概率模型;基于学习得到的用户密码模式概率模型,根据Beam Search方法生成最常见的用户密码模式;根据生成的常用密码模式,基于用户个人信息,生成该用户可能使用的密码;本发明专利技术可用于猜测用户密码;也可用于评估用户密码强度;还可以为用户提供尽可能少的修改建议,提升用户密码强度等。

A user password guessing system based on depth learning

The invention provides a user password guessing based on deep learning system, through the analysis of the password data set, mining user password common pattern; according to the common mode of learning code, based on the user's personal information, the user may use can generate passwords, including data processing, model training, common mode extraction, password generation of the four subsystems; the password data is analyzed; according to the user password data, proposed the establishment of user password mode based on probability model based on recurrent neural network; user password mode probability model based on the acquisition, according to the Beam Search user password generation method of the most common pattern; according to the generated password based on the model, the user's personal information, the user may use the generated password; the invention can be used for speculation Password can also be used to assess the strength of user passwords; also can provide users with as little as possible suggestions for changes, enhance the user's password strength.

【技术实现步骤摘要】
一种基于深度学习的用户密码猜测系统
本专利技术属于数据挖掘
,特别涉及一种基于深度学习的用户密码猜测系统。
技术介绍
随着互联网时代的到来,互联网服务越来越多,而这些互联网服务广泛采用的用户认证方式就是文本密码,在可预见的未来,文本密码依然会占据不可替代的主导地位。尽管人们已经提出了多种不同的用户认证机制,然而没有任何一种能在不给用户引入额外负担的前提下保留文本密码的所有优势。因此,从攻击者的角度猜测用户密码有利于加深人们对于密码强度的理解,另一方面,猜测方法也可用于评估用户密码的强度,所提方法可帮助用户挑选强度更高的密码串,增强用户账号的安全性。为了便于记忆,用户密码往往并不是随机字符串,用户密码中或多或少会包含用户的个人信息,包括用户名、姓名、出生日期、身份证号、手机号、邮箱等等。因此,为了提高密码猜测的速度和密码强度评估的准确度,我们应当考虑用户个人信息在用户密码构成中的重要作用以及个人信息对于密码强度的影响。综上,如何根据用户个人信息猜测用户密码和评估密码强度就有着极为重要的理论和现实意义。目前已经有一些方法尝试根据个人信息猜测用户密码,如马尔科夫模型等,但是这些方法都或多或少都存在一些缺点。马尔科夫模型并不能捕捉密码串字符间的长距离依赖关系,另外,用户个人信息也并不能很自然地嵌入模型中。
技术实现思路
为了克服上述现有技术的缺点,本专利技术的目的在于提供一种基于深度学习的用户密码猜测系统,本专利技术的一项优势在于,采用深度递归神经网络对用户密码模式进行建模,能够捕捉用户密码串中的长距离依赖关系,因此模型的表达能力更强;本专利技术的另一项优势在于,在用户密码生成过程中,充分考虑用户个人信息这一影响因素,用户个人信息可自然地嵌入到模型中;本专利技术的又一项优势在于,所提方法不仅可以生成用户可能使用的密码,也可用于评估用户密码的强度。为了实现上述目的,本专利技术采用的技术方案是:基于深度学习的用户密码猜测系统,包括:数据处理子系统,实现输入数据的预处理,根据用户个人信息和用户密码生成用户密码模式;具体地,给定用户个人信息和对应的用户密码字符串,借鉴自然语言处理分词思路,采用最长正向匹配算法对用户个人信息和用户密码字符串进行匹配,找到包含用户个人信息,如用户名、姓名、出生日期、身份证号、手机号、邮箱的子串,匹配完成后,从左到右扫描匹配结果并根据结果生成该特定密码串的构成模式。模式训练子系统,通过分析用户密码模式数据,基于递归神经网络构建用户密码模式概率模型;具体地,所述模式训练子系统基于数据处理子系统得到的用户密码构成模式,构建深度递归神经网络(RNN,RecurrentNeuralNetwork)模型对用户密码构成模式进行分析,从而识别出密码构成模式中的长时依赖关系和共现关系,得到的密码构成模式概率模型可用于模式提取子系统生成最常用密码模式。模式提取子系统,基于模式训练子系统得到的用户密码模式概率模型,利用BeamSearch方法生成用户最常用密码模式;具体地,基于模式训练子系统得到的用户密码模式概率模型,本专利技术利用BeamSearch方法生成用户最常用密码模式。采用BeamSearch方法可有效降低搜索空间,极大地提升算法效率,将时间复杂度从指数级别降到线性级别。密码生成子系统,根据模式提取子系统生成的用户最常用密码模式,基于用户个人信息,生成用户可能使用的密码。与现有技术相比,本专利技术的有益效果是:1、使用递归神经网络模型对用户密码构成模式进行建模,提升了模型的表达能力。本专利技术使用递归神经网络对用户密码构成模式进行建模,可捕捉密码构成模式中的长时依赖关系和共现关系,提升了模型的表达能力。2、通过引入个人信息,可降低猜对用户密码所需的猜测次数,另外也可提升密码强度评估的准确度。本专利技术将个人信息很自然地嵌入模型中,由于用户密码中普遍包含用户个人信息,因此本专利技术所提方法可降低猜对特定用户密码所需的猜测次数;通过引入个人信息,密码强度评估准确度也能得到较大提升。3、通过引入BeamSearch方法,可极大地减少算法搜索空间,提升算法效率。引入BeamSearch方法后,可将搜索空间控制在合理的范围内,提升算法运行效率,将算法时间复杂度从指数级别降至线性级别。4、本专利技术有别于其他密码猜测系统,在密码猜测过程中充分利用用户个人信息,通过利用用户个人信息,可减少用户密码平均猜测次数,也可提高用户密码强度评估准确度。附图说明图1为本专利技术系统整体结构图。图2为本专利技术数据处理子系统流程图。图3为本专利技术数据处理子系统最大正向匹配算法示例图。图4为本专利技术模式训练子系统流程图。图5为模式训练子系统递归神经网络示意图。图6为递归神经网络GRU单元结构图。图7为本专利技术模式提取子系统流程图。图8为本专利技术密码生成子系统流程图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面结合附图和实施例详细说明本专利技术的实施方式。如图1所示,本系统由四个子系统组成,分别是数据处理子系统,模式训练子系统,模式提取子系统和密码生成子系统。系统的输入数据为用户的个人信息和对应的密码,用户个人信息包括用户名、姓名、出生日期、身份证号、手机号、邮箱等;首先,将上述用户个人信息以及密码数据输入数据处理子系统,利用自然语言处理正向最大匹配算法对每组个人信息和密码进行匹配,根据匹配结果从左到右扫描生成密码串对应的密码模式;其次,使用模式训练子系统对数据处理子系统得到的密码模式进行分析。为了捕捉用户密码模式中的长时依赖关系和共现关系,本专利技术采用递归神经网络对用户密码模式进行建模,构建用户密码模式概率模型,得到的模型可用于模式提取子系统生成最常用的用户密码模式;再次,模式提取子系统利用模式训练子系统得到的用户密码模式概率模型,根据集束搜索(BeamSearch)算法生成用户最常用的密码模式;最后,根据模式提取子系统得到的最常用密码模式,按概率从高到低的顺序将密码模式中的每个部分使用相应的部分进行替换,生成用户可能使用的密码。本专利技术中各个子系统的详细介绍如下:1、数据处理子系统主要实现输入数据的预处理,生成密码串对应的密码模式。为了描述方便,下表1给出可能匹配上的所有密码模式:表1待匹配密码模式信息注:匹配过程优先与用户个人信息进行匹配,以上所有个人信息均匹配不上时密码片段才会被标记为字母、数字或特殊符号类别。具体地,如图2所示,数据处理子系统对用户密码数据的处理过程如下:用户个人信息包括用户名、姓名、出生日期、身份证号、手机号、邮箱等,其中姓名为中文汉字形式,需要将其转化为拼音的形式。借鉴自然语言处理领域中文分词思路,本专利技术采用正向最大匹配算法对用户个人信息和密码进行匹配,匹配流程如下(示例如附图3所示):1)从密码字符串左端开始匹配,考察窗口大小为最大匹配长度的子串,按2)流程进行匹配,若匹配成功,则标记匹配结果,否则左移结束位置,继续进行匹配,直到匹配成功或找不到匹配项。若找不到匹配项,则右移开始匹配位置;2)将子串与用户个人信息一一进行匹配,若成功,则返回匹配结果,否则,转1)。个人信息匹配流程如下所示:a)对于用户姓名,生成用户密码中常用的组合,如姓+名、名首字母+姓等16中不同组合形式,若子串能够与所有姓名可能组合之一完全匹配上,则匹配成功;b)本文档来自技高网...
一种基于深度学习的用户密码猜测系统

【技术保护点】
一种基于深度学习的用户密码猜测系统,其特征在于,包括:数据处理子系统,实现输入数据的预处理,根据用户个人信息和用户密码生成用户密码模式;模式训练子系统,通过分析用户密码模式数据,基于递归神经网络构建用户密码模式概率模型;模式提取子系统,基于模式训练子系统得到的用户密码模式概率模型,利用Beam Search方法生成用户最常用密码模式;密码生成子系统,根据模式提取子系统生成的用户最常用密码模式,基于用户个人信息,生成用户可能使用的密码。

【技术特征摘要】
1.一种基于深度学习的用户密码猜测系统,其特征在于,包括:数据处理子系统,实现输入数据的预处理,根据用户个人信息和用户密码生成用户密码模式;模式训练子系统,通过分析用户密码模式数据,基于递归神经网络构建用户密码模式概率模型;模式提取子系统,基于模式训练子系统得到的用户密码模式概率模型,利用BeamSearch方法生成用户最常用密码模式;密码生成子系统,根据模式提取子系统生成的用户最常用密码模式,基于用户个人信息,生成用户可能使用的密码。2.根据权利要求1所述基于深度学习的用户密码猜测系统,其特征在于,所述数据处理子系统根据用户个人信息和对应的密码,利用最长正向匹配算法将用户个人信息和密码进行匹配,根据匹配结果生成用户密码使用的密码模式,为模式训练子系统准备数据条件。3.根据权利要求2所述基于深度学习的用户密码猜测系统,其特征在于,所述将用户个人信息和密码进行匹配指找到包含用户个人信息的子串,匹配完成后,从左到右扫描匹配结果并根据结果生成该特定密码串的构成模式,所述用户个人信息包括用户名、姓名、出生日期、身份证号、手机号、邮箱。4.根据权利要求1所述基于深度学习的用户密码猜测系统,其特征在于,所述模式训练子系统使用递归神经网络(RNN,RecurrentNeuralNetwork)来对用户密码模式进行分析,对用户密码模式中时序上的依赖关系和共现关系进行建模,假定用户密码模式输入存在一定时序上的先后关系,则递归神经网络每个时刻的输入为当前时刻用户密码模式,输出为下一时刻用户密码模式,以此构建用户密码模式概率模型。5.根据权利要求4所述基于深度学习的用户密码猜测系统,其特征在于,所述用户密码模式概率模型为:其中N为递归神经网络所有训...

【专利技术属性】
技术研发人员:王平辉陶敬梁肖陈雅静孙飞扬兰林贾鹏田栋文柳哲孙立远
申请(专利权)人:西安交通大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1