CN112765594B - 一种弱口令检测方法及装置 - Google Patents
一种弱口令检测方法及装置 Download PDFInfo
- Publication number
- CN112765594B CN112765594B CN202110073184.4A CN202110073184A CN112765594B CN 112765594 B CN112765594 B CN 112765594B CN 202110073184 A CN202110073184 A CN 202110073184A CN 112765594 B CN112765594 B CN 112765594B
- Authority
- CN
- China
- Prior art keywords
- weak password
- dictionary
- root
- weak
- detected
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 105
- 238000012795 verification Methods 0.000 claims abstract description 228
- 238000012545 processing Methods 0.000 claims abstract description 43
- 238000000034 method Methods 0.000 claims abstract description 30
- 238000004590 computer program Methods 0.000 claims description 17
- 238000003860 storage Methods 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种弱口令检测方法及装置,涉及信息安全技术领域。所述方法包括:获取待检测对象;根据所述待检测对象以及词根字典,获得所述待检测对象对应的词根;根据所述待检测对象对应的词根,获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典;根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成所述待检测对象对应的弱口令校验任务;其中,每个弱口令校验任务对应一个所述第一弱口令字典或者所述第二弱口令字典;通过并行处理的方式处理各个弱口令校验任务,获得所述待检测对象的弱口令检测结果。所述装置用于执行上述方法。本发明实施例提供的弱口令检测方法及装置,提高了弱口令检测的效率。
Description
技术领域
本发明涉及信息安全技术领域,具体涉及一种弱口令检测方法及装置。
背景技术
在使用具有注册功能的系统时,用户通常需要自行注册账户并设置登录口令。上述系统对用户设置的登录口令有复杂度限制,会对用户设置的登录口令的强弱进行检测。
传统的弱口令检测机制仅判断口令的长度、复杂度、是否和历史口令重复等,往往忽略类似“Password123!”、“1qaz@WSX”等具有一定长度和复杂度的口令,而这些口令通过弱口令字典可以轻易破解。由于完整的弱口令字典通常容量较大,查找过程需要耗费较多时间,所以实际应用中通常使用容量较小的弱口令字典,但由于没有覆盖所有的弱口令,存在安全风险。
发明内容
针对现有技术中的问题,本发明实施例提供一种弱口令检测方法及装置,能够至少部分地解决现有技术中存在的问题。
一方面,本发明提出一种弱口令检测方法,包括:
获取待检测对象;
根据所述待检测对象以及词根字典,获得所述待检测对象对应的词根;其中,所述词根字典是预设的;
根据所述待检测对象对应的词根,获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典;其中,所述第一弱口令词典是预设的;
根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成所述待检测对象对应的弱口令校验任务;其中,每个弱口令校验任务对应一个所述第一弱口令字典或者所述第二弱口令字典;所述第二弱口令字典是预设的;
通过并行处理的方式处理各个弱口令校验任务,获得所述待检测对象的弱口令检测结果。
另一方面,本发明提供一种弱口令检测装置,包括:
获取单元,用于获取待检测对象;
第一获得单元,用于根据所述待检测对象以及词根字典,获得所述待检测对象对应的词根;其中,所述词根字典是预设的;
第二获得单元,用于根据所述待检测对象对应的词根,获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典;其中,所述第一弱口令词典是预设的;
生成单元,用于根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成所述待检测对象对应的弱口令校验任务;其中,每个弱口令校验任务对应一个所述第一弱口令字典或者所述第二弱口令字典;所述第二弱口令字典是预设的;
执行单元,用于通过并行处理的方式处理各个弱口令校验任务,获得所述待检测对象的弱口令检测结果。
再一方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述弱口令检测方法的步骤。
又一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述弱口令检测方法的步骤。
本发明实施例提供的弱口令检测方法及装置,能够获取待检测对象,根据待检测对象以及词根字典,获得待检测对象对应的词根,根据待检测对象对应的词根,获得待检测对象对应的词根中每个词根对应的第一弱口令词典,根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成待检测对象对应的弱口令校验任务,通过并行处理的方式处理各个弱口令校验任务,获得待检测对象的弱口令检测结果,通过设置第一弱口令词典和第二弱口令字典并对各个弱口令校验任务进行并行处理,在保证弱口令全面检测的同时,提高了弱口令检测的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明一实施例提供的弱口令检测方法的流程示意图。
图2是本发明另一实施例提供的弱口令检测方法的流程示意图。
图3是本发明一实施例提供的弱口令检测系统的结构示意图。
图4是本发明一实施例提供的词根字典以及弱口令字典的结构示意图。
图5是本发明又一实施例提供的弱口令检测方法的流程示意图。
图6是本发明再一实施例提供的弱口令检测方法的流程示意图。
图7是本发明还一实施例提供的弱口令检测方法的流程示意图。
图8是本发明一实施例提供的弱口令检测装置的结构示意图。
图9是本发明一实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1是本发明一实施例提供的弱口令检测方法的流程示意图,如图1所示,本发明实施例提供的弱口令检测方法,包括:
S101、获取待检测对象;
具体地,服务器可以获取待检测对象,所述待检测对象可以是登录口令、密码等,本发明实施例不做限定。其中,本发明实施例提供的弱口令检测方法的执行主体包括但不限于服务器。
例如,用户A在注册账号时输入登录口令,所述服务器会接收上述登录口令,并将上述登录口令作为待检测对象。
例如,用户B在更改邮箱密码时,输入新密码,所述服务器会接收到上述新密码,并将上述新密码作为待检测对象。
S102、根据所述待检测对象以及词根字典,获得所述待检测对象对应的词根;其中,所述词根字典是预设的;
具体地,所述服务器在获得所述待检测对象之后,会将所述待检测对象与词根字典中的每个词根进行匹配,将与所述待检测对象匹配的词根作为所述待检测对象对应的词根。
其中,所述词根字典是预设的,包括多个词根,所述词根字典包括的词根的数量根据实际情况进行设置,本发明实施例不做限定。所述词根是通过弱口令的前缀获得的,根据实际需要进行设置,本发明实施例不做限定。每个词根对应至少一个第一弱口令字典,每个第一弱口令字典包括不超过预设数量的弱口令。所述预设数量根据实际经验进行设置,本发明实施例不做限定。
例如,对于待检测对象password@2020,所述服务器从所述词根字典获取每个词根,将每个词根与password@2020进行比较,如果该词根与password@2020从p开始的连续几位相同,那么该词根与password@2020匹配。比如所述词根字典中有词根pass,pass与password@2020的前四位pass相同,那么pass与password@2020匹配,pass可以作为password@2020对应的词根。
S103、根据所述待检测对象对应的词根,获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典;其中,所述第一弱口令词典是预设的;
具体地,所述服务器在获得所述待检测对象对应的词根之后,可以根据所述待检测对象对应的词根中的每个词根获得与每个词根对应的第一弱口令词典。一个词根可以对应一个第一弱口令词典,也可以对应两个或两个以上的第一弱口令词典,取决于以该词根为前缀的弱口令的数量。其中,所述第一弱口令词典是预设的,与一个词根对应。
S104、根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成所述待检测对象对应的弱口令校验任务;其中,每个弱口令校验任务对应一个所述第一弱口令字典或者所述第二弱口令字典;所述第二弱口令字典是预设的;
具体地,所述服务器在获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典之后,可以获取所有的第二弱口令字典,然后为每个词根对应的第一弱口令词典生成一个弱口令校验任务和为每个第二弱口令字典生成一个弱口令校验任务,各个弱口令校验任务构成了所述待检测对象对应的弱口令校验任务。每个弱口令校验任务用于查找该弱口令校验任务对应的第一弱口令字典或者第二弱口令字典中是否存与所述待检测对象相同的弱口令。其中,所述第二弱口令字典是预设的,根据实际需要进行设置,本发明实施例不做限定。所述第二弱口令字典没有对应的词根。
例如,某些词根对应的弱口令较少以及没有词根的弱口令,不适合构成一个第一弱口令字典,那么可以将上述这些弱口令合并在一起,形成一个或几个第二弱口令字典,每个第二弱口令字典中的弱口令的数量不超过所述预设数量。
例如,可以建立一个弱口令字典索引表,在弱口令字典索引表中包括所有的第一弱口令字典的标识和存储信息,以及第二弱口令字典的标识和存储信息,所述存储信息可以是内存地址、文件名或者数据库信息。还可以在弱口令字典索引表中记录每个第一弱口令字典对应的词根。所述服务器可以通过弱口令字典索引表获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典,还可以从弱口令字典索引表获得所有的第二弱口令字典。
S105、并行执行各个弱口令校验任务,获得所述待检测对象的弱口令检测结果。
具体地,所述服务器在生成所述待检测对象对应的弱口令校验任务之后,可以通过并行处理的方式处理各个弱口令校验任务,获得每个弱口令校验任务的校验结果,所述服务器可以根据各个弱口令校验任务的校验结果,获得所述待检测对象的弱口令检测结果。所述待检测对象的弱口令检测结果为是弱口令或者非弱口令,弱口令检测结果为是弱口令表明所述待检测对象为弱口令,弱口令检测结果为非弱口令表明所述待检测对象不是弱口令。
本发明实施例提供的弱口令检测方法,能够获取待检测对象,根据待检测对象以及词根字典,获得待检测对象对应的词根,根据待检测对象对应的词根,获得待检测对象对应的词根中每个词根对应的第一弱口令词典,根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成待检测对象对应的弱口令校验任务,通过并行处理的方式处理各个弱口令校验任务,获得待检测对象的弱口令检测结果,通过设置第一弱口令词典和第二弱口令字典并对各个弱口令校验任务进行并行处理,在保证弱口令全面检测的同时,提高了弱口令检测的效率。
在上述各实施例的基础上,进一步地,所述获得所述待检测对象的弱口令检测结果包括:
若某个弱口令校验任务的校验结果为弱口令,则输出所述弱口令检测结果为弱口令。
具体地,弱口令校验任务执行完成之后,会输出弱口令校验任务的校验结果,弱口令校验任务的校验结果为是弱口令或者非弱口令,校验结果为是弱口令表明在弱口令校验任务对应的第一弱口令词典或者第二弱口令词典中存在与所述待检测对象相同的弱口令,校验结果为非弱口令表明在弱口令校验任务对应的第一弱口令词典或者第二弱口令词典中不存在与所述待检测对象相同的弱口令。所述服务器可以获得每个弱口令校验任务的校验结果,如果获知某个弱口令校验任务的校验结果为弱口令,那么确定所述待检测对象为弱口令,可以输出所述弱口令检测结果为弱口令。
在上述各实施例的基础上,进一步地,所述获得所述待检测对象的弱口令检测结果包括:
若所有弱口令校验任务的校验结果为非弱口令,则输出所述弱口令检测结果为非弱口令。
具体地,所述服务器可以获得每个弱口令校验任务的校验结果,弱口令校验任务的校验结果为是弱口令或者非弱口令。所述服务器如果获知所有弱口令校验任务的校验结果为非弱口令,那么确定所述待检测对象为非弱口令,可以输出所述弱口令检测结果为非弱口令。
在上述各实施例的基础上,进一步地,所述获得所述待检测对象的弱口令检测结果包括:
若在预设时间内没有获得到任何一个弱口令校验任务的校验结果或者已获得的弱口令校验任务的校验结果为非弱口令,则输出所述弱口令检测结果为非弱口令。
具体地,在实际应用场景中,通常会对弱口令检测的时长进行限制,以避免给用户带来等待时间长的不好体验。所述服务器如果在预设时间内没有接收到任何一个弱口令校验任务的校验结果,那么可以输出所述弱口令检测结果为非弱口令。所述服务器如果在所述预设时间内获得部分弱口令校验任务的校验结果,而没有获得其余弱口令校验任务的校验结果,如果已经获得的部分弱口令校验任务的校验结果都是非弱口令,那么输出所述弱口令检测结果为非弱口令。其中,所述预设时间根据实际经验进行设置,本发明实施例不做限定。
在上述各实施例的基础上,进一步地,所述通过并行处理的方式处理各个弱口令校验任务包括:
启动N个线程并行执行各个弱口令校验任务,每个线程对应至少一个弱口令校验任务;其中,N为大于等于2的正整数。
具体地,所述服务器可以在本地并行处理各个弱口令校验任务,即启动N个能够并行执行的线程,每个线程处理至少一个弱口令校验任务。其中,每个线程对应至少一个弱口令校验任务。N为大于等于2的正整数。
例如,有6个弱口令校验任务,所述服务器能够开启10个线程。所述服务器可以开启6个并行执行的线程,每个线程处理一个弱口令校验任务。
例如,有17个弱口令校验任务,所述服务器能够开启10个线程。所述服务器可以开启10个线程并行执行,其中有7个弱口令校验任务对应2个弱口令校验任务,有3个弱口令校验任务对应一个弱口令校验任务。
图2是本发明另一实施例提供的弱口令检测方法的流程示意图,如图2所示,在上述各实施例的基础上,进一步地,所述通过并行处理的方式处理各个弱口令校验任务包括:
S201、根据每个弱口令校验任务对应一个第一弱口令字典或者第二弱口令字典,确定每个弱口令校验任务对应的分布式服务器;
具体地,当第一弱口令字典和/或第二弱口令字典包括的弱口令较多时,可以将第一弱口令字典和第二弱口令字典分布式部署在分布式服务器上,以提高每个弱口令校验任务的执行效率。所述服务器可以根据每个弱口令校验任务对应的第一弱口令字典,查询获得第一弱口令字典对应的分布式服务器,作为对应的弱口令校验任务对应的分布式服务器;所述服务器还可以根据每个弱口令校验任务对应的第二弱口令字典,查询获得第二弱口令字典对应的分布式服务器,作为对应的弱口令校验任务对应的分布式服务器。其中,第一弱口令字典与分布式服务器之间的对应关系是预设的,第二弱口令字典与分别式服务器之间的对应关系是预设的。
S202、将每个弱口令校验任务发送给每个弱口令校验任务对应的分布式服务器。
具体地,所述服务器在获得每个弱口令校验任务对应的分布式服务器,可以获得该分布式服务器的IP地址,然后基于每个弱口令校验任务对应的分布式服务器的IP地址,将每个弱口令校验任务发送给每个弱口令校验任务对应的分布式服务器。每个弱口令校验任务对应的分布式服务器接收到弱口令校验任务之后,会根据所述待检测对象在对应的第一弱口令字典或者第二弱口令字典中查询是否存在与所述待检测对象相同的弱口令,如果存在与所述待检测对象相同的弱口令,那么相应地弱口令校验任务的校验结果为是弱口令,如果不存在与所述待检测对象相同的弱口令,那么相应地弱口令校验任务的校验结果为非弱口令。每个分布式服务器会将获得的弱口令校验任务的校验结果返回给所述服务器。每个分布式服务器部署至少一个第一弱口令字典或者第二弱口令字典,根据实际需要进行设置,本发明实施例不做限定。
在上述各实施例的基础上,进一步地,本发明实施例提供的弱口令检测方法还包括:
若根据所述待检测对象以及所述词根字典,没有获得所述待检测对象对应的词根,则根据所有第二弱口令字典生成所述待检测对象对应的弱口令校验任务。
具体地,所述服务器在获得所述待检测对象之后,会将所述待检测对象与词根字典中的每个词根进行匹配,如果在所述词根字典中没有词根与所述待检测对象匹配,那么所述服务器没有获得所述待检测对象对应的词根。所述服务器会获取所有第二弱口令字典,为每个第二弱口令字典生成一个弱口令校验任务,各个弱口令校验任务构成了所述待检测对象对应的弱口令校验任务。
图3是本发明一实施例提供的弱口令检测系统的结构示意图,如图3所示,本发明实施例提供的弱口令检测系统包括客户端31和服务器32,其中:
客户端31与服务器32通信连接。其中,客户端31包括但不限于台式机、笔记本、手机、平板电脑等。
客户端31包括前端校验模块311,前端校验模块311由于对用户在客户端31输入的待检测对象进行前端校验,所述前端校验用于检查用户输入的待检测对象是否为空、长度是否符合要求、是否包含无效字符等,根据实际需要进行设置,本发明实施例不做限定。所述待检测对象包括但不限于登录口令和密码等。在所述待检测对象通过前端校验之后,客户端31会向服务器32发送弱口令校验请求,所述弱口令校验请求会携带所述待检测对象。例如,用户在客户端31上对使用的浏览器进行账户注册,在注册账户时,需要输入登录口令,前端校验模块311会对输入的登录口令进行前端校验。客户端31在输入的登录口令通过前端校验之后,会向服务器32发送弱口令校验请求,所述弱口令校验请求包括上述登录口令。
服务器32包括有效性校验模块321和弱口令校验模块322,有效性校验模块321和弱口令校验模块322相连。
有效性校验模块321可以从弱口令校验请求中获得待检测对象,然后对待检测对象进行有效性校验,所述有效性校验包括但不限于检查待检测对象的长度是否满足要求、复杂度是否满足要求、是否与历史口令重复等,根据实际需要进行设置,本发明实施例不做限定。有效性校验模块321在所述待检测对象通过有效性校验之后,将所述待检测对象发送给弱口令校验模块322。
弱口令校验模块322用于根据所述待检测对象以及词根字典,获得所述待检测对象对应的词根;其中,所述词根字典是预设的;根据所述待检测对象对应的词根,获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典;其中,所述第一弱口令词典是预设的;根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成所述待检测对象对应的弱口令校验任务;其中,每个弱口令校验任务对应一个所述第一弱口令字典或者所述第二弱口令字典;所述第二弱口令字典是预设的;通过并行处理的方式处理各个弱口令校验任务,获得所述待检测对象的弱口令检测结果。
弱口令校验模块322可以包括分发汇总处理单元3221,分发汇总处理单元3221用于启动N个线程并行执行各个弱口令校验任务,或者根据每个弱口令校验任务对应一个第一弱口令字典或者第二弱口令字典,确定每个弱口令校验任务对应的分布式服务器;将每个弱口令校验任务发送给每个弱口令校验任务对应的分布式服务器。其中,每个线程对应至少一个弱口令校验任务;其中,N为大于等于2的正整数。
图4是本发明一实施例提供的词根字典以及弱口令字典的结构示意图,如图4所示,词根字典包括词根部分和空词根部分,弱口令字典包括词根的字典和空词根的字典。
词根部分包括多个词根的相关信息,每个词根的相关信息包括词根、词根对应的字典数和字典索引列表。如图4所示,词根部分包括词根1、词根2……词根M的相关信息,总共M个词根的相关信息。词根1的相关信息包括词根1、词根1字典数和词根1字典索引表,词根1字典索引表包括词根1对应的各个字典的索引,总共有字典1、字典2……字典N,N个字典索引,每个字典索引对应一个词根1的字典,词根1的字典1索引对应词根1的字典1,词根1的字典2索引对应词根1的字典2,以此类推,词根1的字典N索引对应词根1的字典N。其中,词根1的字典1、字典2……字典N为第一弱口令字典。类似的,词根2的字典和词根N的字典也是第一弱口令字典。
空词根部分包括字典数和字典索引列表,空词根部分的字典索引列表中包括字典1索引、字典2索引……字典E索引,总共E个字典索引,每个字典索引对应空词根的字典,空词根部分的字典1索引对应空词根的字典1,字典2索引对应空词根的字典2,以此类推,空词根的字典E索引对应空词根的字典E。其中,空词根的字典1、空词根的字典2……空词根的字典E为第二弱口令字典。
可理解的是,如果词根字典中包括的词根数量较多,在通过词根字典查找与待检测对象匹配的词根时,会耗费较长时间。可以将词根字典拆分为多个小词根字典,每个小词根字典包括不超过设定数量的词根,在在通过多个小词根字典查找与待检测对象匹配的词根时,可以通过并行处理的方式进行查询,以提高查询效率。
图5是本发明又一实施例提供的弱口令检测方法的流程示意图,如图5所示,本发明实施例提供的弱口令检测方法的流程如下:
第一步、接收登录口令。客户端接收用户设置的登录口令。
第二步、进行前端校验。客户端对登录口令进行前端校验,以校验登录口令是否为空、长度是否符合要求和是否包含无效字符。如果登录口令不为空、长度满足符合要求且没有包含无效字符,那么登录口令通过前端校验,客户端会向服务器发送弱口令检测请求,弱口令检测请求携带上述登录口令。其中,前端校验所要求的登录口令的长度和无效字符根据实际需要进行设置,本发明实施例不做限定。
第三步、进行有效性校验。服务器接收弱口令校验请求,并对登录口令进行有效性校验。所述有效性校验可以包括检查登录口令的长度是否满足要求、复杂度是否满足要求、是否与历史口令重复。如果登录口令的长度满足要求,复杂度满足要求并且没有与历史口令重复,那么登录口令通过有效性校验。其中,有效性校验所要求的登录口令的长度与前端校验所要求的登录口令的长度保持一致,有效性校验的复杂度要求包括但不限于要求登录口令包括大写字母、小写字母、数字、@和#等特殊字符,根据实际需要进行设置,本发明实施例不做限定。有效性校验的与历史口令重复,可以限定与所有历史口令都不重复,或者与最近10次历史口令不重复,根据实际需要进行设置,本发明实施例不做限定。
第四步、进行弱口令检测。在登录口令通过有效性校验之后,服务器会对登录口令进行弱口令检测。弱口令检测的具体过程详见图6及其说明。
第五步、返回检测结果。在对登录口令进行弱口令检测之和,服务器会获得登录口令的弱口令检测结果,然后将登录口令的弱口令检测结果返回给客户端。如果登录口令的弱口令检测结果为是弱口令,那么客户端可以提示用户重新设置登录口令,如果登录口令的弱口令检测结果为非弱口令,那么客户端可以提示用户登录口令设置成功。
图6是本发明再一实施例提供的弱口令检测方法的流程示意图,如图6所示,本发明实施例提供的弱口令检测方法的具体流程如下:
第一步、获得登录口令对应的词根。服务器将登录口令与词根字典中的每个词根进行匹配,将与登录口令匹配的词根作为登录口令对应的词根。
第二步、获得词根对应的第一弱口令字典。服务器根据登录口令对应的词根中的每个词根查询与每个词根对应的第一弱口令词典。
第三步、生成弱口令校验任务。服务器为登录口令对应的词根中每个词根对应的第一弱口令词典生成一个弱口令校验任务,并获取所有的第二弱口令字典,为每个第二弱口令字典生成一个弱口令校验任务。
第四步、并行处理弱口令校验任务。服务器采用并行处理的方式处理上述各个弱口令校验任务,获得每个弱口令校验任务的校验结果,然后根据各个弱口令校验任务的校验结果获得登录口令的弱口令检测结果。根据各个弱口令校验任务的校验结果获得登录口令的弱口令检测结果的具体过程详见图7及其说明
图7是本发明还一实施例提供的弱口令检测方法的流程示意图,如图7所述,本发明实施例提供的弱口令检测方法的具体流程如下:
第一步、判断是否超时。服务器会判断在预设时间内是否获得所有弱口令校验任务的校验结果,如果没有获得所有弱口令校验任务的校验结果,那么超时,进入第三步;如果获得所有弱口令校验任务的校验结果,那么没有超时,进入第二步。
第二步、判断校验结果中是否存在是弱口令。对于每个弱口令校验任务的校验结果,服务器会判断是否为是弱口令,如果某个弱口令校验任务的校验结果为弱口令,那么校验结果中存在是弱口令的校验结果,进入第五步;如果所有弱口令校验任务的校验结果为非弱口令,那么校验结果中不存在是弱口令的校验结果,进入第六步。
第三步、判断是否获得部分校验结果。服务器如果没有获得任何一个弱口令校验任务的校验结果,那么没有获得部分校验结果,进入第六步;服务器如果获得部分弱口令校验任务的校验结果,那么进入第四步。
第四步、判断部分校验结果中是否存在是弱口令。对于部分弱口令校验任务的校验结果中的每个弱口令校验任务的校验结果,服务器会判断是否为是弱口令,如果某个弱口令校验任务的校验结果为弱口令,那么部分校验结果中存在是弱口令的校验结果,进入第五步;如果部分弱口令校验任务的校验结果中每个弱口令校验任务的校验结果为非弱口令,那么部分校验结果中不存在是弱口令的校验结果,进入第六步。
第五步、获得是弱口令的检测结果。服务器获得登录口令的弱口令检测结果为是弱口令。
第六步、获得非弱口令的检测结果。服务器获得登录口令的弱口令检测结果为非弱口令。
本发明实施例提供的弱口令检测方法,采用特殊设计的弱口令字典结构,结合并行处理的方式,提高了弱口令检测的速度。在保证检测速度的前提下,保证了弱口令检测结果的准确性,提高了系统的安全性。
图8是本发明一实施例提供的弱口令检测装置的结构示意图,如图8所示,本发明实施例提供的弱口令检测装置包括获取单元801、第一获得单元802、第二获得单元803、生成单元804和执行单元805,其中:
获取单元801用于获取待检测对象;第一获得单元802用于根据所述待检测对象以及词根字典,获得所述待检测对象对应的词根;其中,所述词根字典是预设的;第二获得单元803用于根据所述待检测对象对应的词根,获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典;其中,所述第一弱口令词典是预设的;生成单元804用于根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成所述待检测对象对应的弱口令校验任务;其中,每个弱口令校验任务对应一个所述第一弱口令字典或者所述第二弱口令字典;所述第二弱口令字典是预设的;执行单元805用于通过并行处理的方式处理各个弱口令校验任务,获得所述待检测对象的弱口令检测结果。
具体地,获取单元801可以获取待检测对象,所述待检测对象可以是登录口令、密码等,本发明实施例不做限定。
在获得所述待检测对象之后,第一获得单元802会将所述待检测对象与词根字典中的每个词根进行匹配,将与所述待检测对象匹配的词根作为所述待检测对象对应的词根。
在获得所述待检测对象对应的词根之后,第二获得单元803可以根据所述待检测对象对应的词根中的每个词根获得与每个词根对应的第一弱口令词典。一个词根可以对应一个第一弱口令词典,也可以对应两个或两个以上的第一弱口令词典,取决于以该词根为前缀的弱口令的数量。其中,所述第一弱口令词典是预设的,与一个词根对应。
在获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典之后,生成单元804可以获取所有的第二弱口令字典,然后为每个词根对应的第一弱口令词典生成一个弱口令校验任务和为每个第二弱口令字典生成一个弱口令校验任务,各个弱口令校验任务构成了所述待检测对象对应的弱口令校验任务。每个弱口令校验任务用于查找该弱口令校验任务对应的第一弱口令字典或者第二弱口令字典中是否存与所述待检测对象相同的弱口令。其中,所述第二弱口令字典是预设的,根据实际需要进行设置,本发明实施例不做限定。所述第二弱口令字典没有对应的词根。
在生成所述待检测对象对应的弱口令校验任务之后,执行单元805可以通过并行处理的方式处理各个弱口令校验任务,获得每个弱口令校验任务的校验结果,执行单元805可以根据各个弱口令校验任务的校验结果,获得所述待检测对象的弱口令检测结果。所述待检测对象的弱口令检测结果为是弱口令或者非弱口令,弱口令检测结果为是弱口令表明所述待检测对象为弱口令,弱口令检测结果为非弱口令表明所述待检测对象不是弱口令。
本发明实施例提供的弱口令检测装置,能够获取待检测对象,根据待检测对象以及词根字典,获得待检测对象对应的词根,根据待检测对象对应的词根,获得待检测对象对应的词根中每个词根对应的第一弱口令词典,根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成待检测对象对应的弱口令校验任务,通过并行处理的方式处理各个弱口令校验任务,获得待检测对象的弱口令检测结果,通过设置第一弱口令词典和第二弱口令字典并对各个弱口令校验任务进行并行处理,在保证弱口令全面检测的同时,提高了弱口令检测的效率。
本发明实施例提供的装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
图9是本发明一实施例提供的电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)901、通信接口(Communications Interface)902、存储器(memory)903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信。处理器901可以调用存储器903中的逻辑指令,以执行如下方法:获取待检测对象;根据所述待检测对象以及词根字典,获得所述待检测对象对应的词根;其中,所述词根字典是预设的;根据所述待检测对象对应的词根,获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典;其中,所述第一弱口令词典是预设的;根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成所述待检测对象对应的弱口令校验任务;其中,每个弱口令校验任务对应一个所述第一弱口令字典或者所述第二弱口令字典;所述第二弱口令字典是预设的;通过并行处理的方式处理各个弱口令校验任务,获得所述待检测对象的弱口令检测结果。
此外,上述的存储器903中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:获取待检测对象;根据所述待检测对象以及词根字典,获得所述待检测对象对应的词根;其中,所述词根字典是预设的;根据所述待检测对象对应的词根,获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典;其中,所述第一弱口令词典是预设的;根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成所述待检测对象对应的弱口令校验任务;其中,每个弱口令校验任务对应一个所述第一弱口令字典或者所述第二弱口令字典;所述第二弱口令字典是预设的;通过并行处理的方式处理各个弱口令校验任务,获得所述待检测对象的弱口令检测结果。
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述各方法实施例所提供的方法,例如包括:获取待检测对象;根据所述待检测对象以及词根字典,获得所述待检测对象对应的词根;其中,所述词根字典是预设的;根据所述待检测对象对应的词根,获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典;其中,所述第一弱口令词典是预设的;根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成所述待检测对象对应的弱口令校验任务;其中,每个弱口令校验任务对应一个所述第一弱口令字典或者所述第二弱口令字典;所述第二弱口令字典是预设的;通过并行处理的方式处理各个弱口令校验任务,获得所述待检测对象的弱口令检测结果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种弱口令检测方法,其特征在于,包括:
获取待检测对象;
根据所述待检测对象以及词根字典,获得所述待检测对象对应的词根;其中,所述词根字典是预设的;
根据所述待检测对象对应的词根,获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典;其中,所述第一弱口令词典是预设的;
根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成所述待检测对象对应的弱口令校验任务;其中,每个弱口令校验任务对应一个所述第一弱口令字典或者所述第二弱口令字典;所述第二弱口令字典是预设的;
通过并行处理的方式处理各个弱口令校验任务,获得所述待检测对象的弱口令检测结果;
其中,在弱口令字典索引表中包括所述第一弱口令字典和所述第二弱口令字典的标识和存储信息,所述弱口令字典索引表中记录每个第一弱口令字典对应的词根,所述第二弱口令字典没有对应的词根。
2.根据权利要求1所述的方法,其特征在于,所述获得所述待检测对象的弱口令检测结果包括:
若某个弱口令校验任务的校验结果为是弱口令,则输出所述弱口令检测结果为是弱口令。
3.根据权利要求1所述的方法,其特征在于,所述获得所述待检测对象的弱口令检测结果包括:
若所有弱口令校验任务的校验结果为非弱口令,则输出所述弱口令检测结果为非弱口令。
4.根据权利要求1所述的方法,其特征在于,所述获得所述待检测对象的弱口令检测结果包括:
若在预设时间内没有获得到任何一个弱口令校验任务的校验结果或者已获得的弱口令校验任务的校验结果为非弱口令,则输出所述弱口令检测结果为非弱口令。
5.根据权利要求1所述的方法,其特征在于,所述通过并行处理的方式处理各个弱口令校验任务包括:
启动N个线程并行执行各个弱口令校验任务,每个线程对应至少一个弱口令校验任务;其中,N为大于等于2的正整数。
6.根据权利要求1所述的方法,其特征在于,所述通过并行处理的方式处理各个弱口令校验任务包括:
根据每个弱口令校验任务对应一个第一弱口令字典或者第二弱口令字典,确定每个弱口令校验任务对应的分布式服务器;
将每个弱口令校验任务发送给每个弱口令校验任务对应的分布式服务器。
7.根据权利要求1至6任一项所述的方法,其特征在于,还包括:
若根据所述待检测对象以及所述词根字典没有获得所述待检测对象对应的词根,则根据所有第二弱口令字典生成所述待检测对象对应的弱口令校验任务。
8.一种弱口令检测装置,其特征在于,包括:
获取单元,用于获取待检测对象;
第一获得单元,用于根据所述待检测对象以及词根字典,获得所述待检测对象对应的词根;其中,所述词根字典是预设的;
第二获得单元,用于根据所述待检测对象对应的词根,获得所述待检测对象对应的词根中每个词根对应的第一弱口令词典;其中,所述第一弱口令词典是预设的;
生成单元,用于根据每个词根对应的第一弱口令字典以及所有第二弱口令字典,生成所述待检测对象对应的弱口令校验任务;其中,每个弱口令校验任务对应一个所述第一弱口令字典或者所述第二弱口令字典;所述第二弱口令字典是预设的;
执行单元,用于通过并行处理的方式处理各个弱口令校验任务,获得所述待检测对象的弱口令检测结果;
其中,在弱口令字典索引表中包括所述第一弱口令字典和所述第二弱口令字典的标识和存储信息,所述弱口令字典索引表中记录每个第一弱口令字典对应的词根,所述第二弱口令字典没有对应的词根。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110073184.4A CN112765594B (zh) | 2021-01-20 | 2021-01-20 | 一种弱口令检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110073184.4A CN112765594B (zh) | 2021-01-20 | 2021-01-20 | 一种弱口令检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112765594A CN112765594A (zh) | 2021-05-07 |
CN112765594B true CN112765594B (zh) | 2024-03-22 |
Family
ID=75703380
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110073184.4A Active CN112765594B (zh) | 2021-01-20 | 2021-01-20 | 一种弱口令检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112765594B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117034251B (zh) * | 2023-09-28 | 2024-01-05 | 杭州海康威视数字技术股份有限公司 | 弱口令自适应筛查方法、装置及设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104268450A (zh) * | 2014-09-11 | 2015-01-07 | 浙江工业大学 | 一种批量口令分级先验检验方法 |
KR20150053483A (ko) * | 2013-11-08 | 2015-05-18 | 한국전자통신연구원 | 사전 문자열의 자동 조합을 이용한 패스워드 탐색 장치 및 방법 |
CN106411531A (zh) * | 2016-10-25 | 2017-02-15 | 国家电网公司 | 一种弱口令的筛选方法 |
CN106934274A (zh) * | 2015-12-31 | 2017-07-07 | 中国移动通信集团黑龙江有限公司 | 一种弱口令检测方法、装置及系统 |
CN107437022A (zh) * | 2016-05-27 | 2017-12-05 | 北京神州泰岳软件股份有限公司 | 一种弱口令核查方法和装置 |
CN107872323A (zh) * | 2017-11-06 | 2018-04-03 | 中国科学院信息工程研究所 | 一种基于用户信息检测的口令安全性评估方法及系统 |
CN109587110A (zh) * | 2018-10-09 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 一种弱口令检测方法、装置、计算机设备及业务服务器 |
CN110635914A (zh) * | 2019-09-23 | 2019-12-31 | 南京经纬信安科技有限公司 | 一种弱口令检测方法及检测系统 |
CN110781351A (zh) * | 2019-10-12 | 2020-02-11 | 苏州浪潮智能科技有限公司 | 一种字典值文件生成方法、系统及相关装置 |
CN110929253A (zh) * | 2019-11-28 | 2020-03-27 | 深圳昂楷科技有限公司 | 一种弱口令检测的方法、装置及智能设备 |
CN111914247A (zh) * | 2020-07-15 | 2020-11-10 | 中国民航信息网络股份有限公司 | 一种弱密码检测系统、方法及装置 |
-
2021
- 2021-01-20 CN CN202110073184.4A patent/CN112765594B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150053483A (ko) * | 2013-11-08 | 2015-05-18 | 한국전자통신연구원 | 사전 문자열의 자동 조합을 이용한 패스워드 탐색 장치 및 방법 |
CN104268450A (zh) * | 2014-09-11 | 2015-01-07 | 浙江工业大学 | 一种批量口令分级先验检验方法 |
CN106934274A (zh) * | 2015-12-31 | 2017-07-07 | 中国移动通信集团黑龙江有限公司 | 一种弱口令检测方法、装置及系统 |
CN107437022A (zh) * | 2016-05-27 | 2017-12-05 | 北京神州泰岳软件股份有限公司 | 一种弱口令核查方法和装置 |
CN106411531A (zh) * | 2016-10-25 | 2017-02-15 | 国家电网公司 | 一种弱口令的筛选方法 |
CN107872323A (zh) * | 2017-11-06 | 2018-04-03 | 中国科学院信息工程研究所 | 一种基于用户信息检测的口令安全性评估方法及系统 |
CN109587110A (zh) * | 2018-10-09 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 一种弱口令检测方法、装置、计算机设备及业务服务器 |
CN110635914A (zh) * | 2019-09-23 | 2019-12-31 | 南京经纬信安科技有限公司 | 一种弱口令检测方法及检测系统 |
CN110781351A (zh) * | 2019-10-12 | 2020-02-11 | 苏州浪潮智能科技有限公司 | 一种字典值文件生成方法、系统及相关装置 |
CN110929253A (zh) * | 2019-11-28 | 2020-03-27 | 深圳昂楷科技有限公司 | 一种弱口令检测的方法、装置及智能设备 |
CN111914247A (zh) * | 2020-07-15 | 2020-11-10 | 中国民航信息网络股份有限公司 | 一种弱密码检测系统、方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112765594A (zh) | 2021-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019080661A1 (zh) | 用户意图识别方法及装置 | |
CN107766393B (zh) | 基于数据库的信息处理方法、客户端及服务器 | |
CN109933617B (zh) | 一种数据处理方法、装置以及相关设备和介质 | |
CN112765594B (zh) | 一种弱口令检测方法及装置 | |
CN104184653A (zh) | 一种消息过滤的方法和装置 | |
CN110874401A (zh) | 信息处理方法、模型训练方法、装置、终端及计算设备 | |
CN110990811A (zh) | 一种身份认证方法及装置 | |
CN110929173A (zh) | 同人识别方法、装置、设备及介质 | |
CN109857450B (zh) | 一种校验服务编排方法及装置 | |
CN112131100A (zh) | 一种基于元数据的前后端校验方法及装置 | |
CN112307462A (zh) | 提示弱密码的方法、装置、电子设备及计算机可读存储介质 | |
CN109101630B (zh) | 一种应用程序搜索结果的生成方法、装置及设备 | |
CN109104297B (zh) | 一种业务流程的处理方法及装置 | |
CN111125369A (zh) | 一种默契度检测方法、设备、服务器及可读存储介质 | |
CN109840294B (zh) | 电子元件配套资料查询方法、存储介质及终端 | |
CN105141673A (zh) | 智能终端及其处理用户信息的方法 | |
CN111737036B (zh) | 一种基于机器人流程自动化的业务处理方法及装置 | |
CN114254591A (zh) | 一种简繁转换工具的构建方法及装置 | |
CN110188274B (zh) | 搜索纠错方法及装置 | |
CN111767060A (zh) | 多阶段灰度验证方法、装置、电子设备及介质 | |
CN112015993B (zh) | 一种信息查询方法及装置 | |
CN114048312B (zh) | 一种自然语言查询任务的模型输入信息处理方法及装置 | |
US11921770B2 (en) | Electronic element supporting data inquiry method, storage medium and terminal | |
CN116541801B (zh) | 多设备信息集中处理系统、设备及存储介质 | |
CN113238765B (zh) | 小程序的分发方法、装置、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |