检测口令的方法、口令检测设备及存储介质转让专利
申请号 : CN201910907337.3
文献号 : CN112637110B
文献日 : 2022-04-05
发明人 : 王显雷
申请人 : 华为云计算技术有限公司
摘要 :
权利要求 :
1.一种检测口令的方法,其特征在于,所述方法包括:接收至少一个用户请求之后,接收第一用户请求,所述第一用户请求携带待检测口令;
从所述第一用户请求中获取所述待检测口令;
确定所述待检测口令的计数值,所述待检测口令的计数值为所述至少一个用户请求中携带所述待检测口令的用户请求的数量;
根据所述待检测口令的计数值,确定所述待检测口令是否合法;
所述根据所述待检测口令的计数值,确定所述待检测口令是否合法,包括:从预先存储的计数值与弱口令概率之间的映射关系中获取所述待检测口令的计数值所对应的弱口令概率,根据所述弱口令概率确定所述待检测口令是否合法;
或者,根据所述待检测口令的计数值与预设计数阈值的大小关系,确定所述待检测口令是否合法。
2.根据权利要求1所述的方法,其特征在于,所述至少一个用户请求携带有至少一个口令;
所述接收第一用户请求之前,所述方法还包括:对所述至少一个口令进行脱密处理得到至少一个标识;
确定所述待检测口令的计数值,包括:对所述待检测口令进行所述脱密处理得到所述待检测口令的标识;
根据所述待检测口令的标识和所述至少一个标识的匹配结果确定所述待检测口令的计数值。
3.根据权利要求2所述的方法,其特征在于,对所述至少一个口令进行脱密处理得到至少一个标识,包括:将所述至少一个口令中的每个口令映射到m个标识中的一组标识,其中,所述m个标识对应m个计数值,所述m个计数值表示从所述至少一个用户请求中获取的口令的数量,m为正整数;
对所述待检测口令进行所述脱密处理得到所述待检测口令的标识,包括:将所述待检测口令映射到m个标识中匹配的一组标识;
根据所述待检测口令的标识和所述至少一个标识的匹配结果确定所述待检测口令的计数值,包括:
获取所述匹配的一组标识中各个标识对应的计数值;
根据获取的计数值确定所述待检测口令的计数值。
4.根据权利要求3所述的方法,其特征在于,将所述至少一个口令中的每个口令映射到m个标识中的一组标识,包括:通过k次哈希运算将所述至少一个口令中的每个口令映射到m个标识中的k个标识,其中k为正整数,且k不大于m;
所述将所述待检测口令映射到m个标识中匹配的一组标识,包括:通过所述k次哈希运算将所述待检测口令映射到所述m个标识中匹配的k个标识;
获取所述匹配的一组标识中各个标识对应的计数值,包括:获取所述匹配的k个标识中各个标识对应的计数值。
5.根据权利要求3或4所述的方法,其特征在于,根据获取的计数值确定所述待检测口令的计数值,包括:将所述获取的计数值中的最小值确定为所述待检测口令的计数值。
6.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:每隔预设时长,将所述m个计数值中每个计数值减1。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:每隔预设时长,将所述m个计数值中每个计数值减1。
8.一种口令检测设备,其特征在于,所述口令检测设备包括:接收模块,用于接收至少一个用户请求之后,接收第一用户请求,所述第一用户请求携带待检测口令;
获取模块,用于从所述第一用户请求中获取所述待检测口令;
确定模块,用于确定所述待检测口令的计数值,所述待检测口令的计数值为所述至少一个用户请求中携带所述待检测口令的用户请求的数量;
检测模块,用于根据所述待检测口令的计数值,确定所述待检测口令是否合法;
所述检测模块,用于:
从预先存储的计数值与弱口令概率之间的映射关系中获取所述待检测口令的计数值所对应的弱口令概率,根据所述弱口令概率确定所述待检测口令是否合法;
或者,根据所述待检测口令的计数值与预设计数阈值的大小关系,确定所述待检测口令是否合法。
9.根据权利要求8所述的口令检测设备,其特征在于,所述至少一个用户请求携带有至少一个口令;
所述确定模块还用于,对所述至少一个口令进行脱密处理得到至少一个标识;
所述确定模块具体用于:
对所述待检测口令进行所述脱密处理得到所述待检测口令的标识;
根据所述待检测口令的标识和所述至少一个标识的匹配结果确定所述待检测口令的计数值。
10.根据权利要求9所述的口令检测设备,其特征在于,所述确定模块具体用于:
将所述至少一个口令中的每个口令映射到m个标识中的一组标识,其中,所述m个标识对应m个计数值,所述m个计数值表示从所述至少一个用户请求中获取的口令的数量,m为正整数;
所述确定模块具体还用于:
将所述待检测口令映射到m个标识中匹配的一组标识;
获取所述匹配的一组标识中各个标识对应的计数值;
根据获取的计数值确定所述待检测口令的计数值。
11.根据权利要求10所述的口令检测设备,其特征在于,所述确定模块具体用于:
通过k次哈希运算将所述至少一个口令中的每个口令映射到m个标识中的k个标识,其中k为正整数,且k不大于m;
所述确定模块具体还用于:
通过所述k次哈希运算将所述待检测口令映射到所述m个标识中匹配的k个标识;
获取所述匹配的k个标识中各个标识对应的计数值。
12.根据权利要求10或11所述的口令检测设备,其特征在于,所述确定模块具体用于:将所述获取的计数值中的最小值确定为所述待检测口令的计数值。
13.根据权利要求10或11所述的口令检测设备,其特征在于,所述口令检测设备还用于:
每隔预设时长,将所述m个计数值中每个计数值减1。
14.根据权利要求12所述的口令检测设备,其特征在于,所述口令检测设备还用于:每隔预设时长,将所述m个计数值中每个计数值减1。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述权利要求1‑7任一所述的方法。
16.一种计算设备,其特征在于,所述计算设备包括处理器和存储器;
所述存储器用于存储程序代码,所述处理器执行所述程序代码以实现权利要求1‑7任一项所述的方法。
说明书 :
检测口令的方法、口令检测设备及存储介质
技术领域
背景技术
该口令即为后续登录该用户账号时对该用户账号进行认证的口令。其中,在设置用户账号
对应的口令时,用户输入的口令可能是一个众所周知或有规律的弱口令。在这种情况下,该
口令被破解的可能性将较大,这将导致用户账号存在较大的安全风险。基于此,为了避免用
户设置的口令为弱口令,在接收到口令之后,可以检测该口令是否为弱口令,以便根据检测
结果对用户进行提示。
内。后续,当接收到用户设置的口令时,服务器可以判断该口令是否在布隆过滤器内,如果
在布隆过滤器内,则确定该口令为弱口令。
度不高。
发明内容
述待检测口令;确定所述待检测口令的计数值,所述待检测口令的计数值为所述至少一个
用户请求中携带所述待检测口令的用户请求的数量;根据所述待检测口令的计数值,确定
所述待检测口令是否合法。
用户请求中携带该待检测口令的用户请求的数量。之后,可以根据该待检测口令的计数值
来确定待检测口令是否合法。在此基础上,根据待检测口令的计数值来确定待检测口令是
否合法,相当于是以统计数据为基础对待检测口令进行检测,提高了口令检测的准确度。
所述待检测口令的计数值的实现过程可以为:对所述待检测口令进行所述脱密处理得到所
述待检测口令的标识;根据所述待检测口令的标识和所述至少一个标识的匹配结果确定所
述待检测口令的计数值。
存储明文口令,提高了用户设置的口令的安全性,保护了用户隐私。
程可以为:若至少一个标识中包括待检测口令的标识,则将至少一个标识中与待检测口令
的标识匹配的标识的计数值作为待检测口令的计数值。若至少一个标识中不包括待检测口
令的标识,则确定待检测口令的计数值为0;将待检测口令的标识进行存储,并将待检测口
令的标识的计数值更新为1。
应m个计数值,所述m个计数值表示从所述至少一个用户请求中获取的口令的数量,m为正整
数;相应地,对所述待检测口令进行所述脱密处理得到所述待检测口令的标识的实现过程
可以为:将所述待检测口令映射到m个标识中匹配的一组标识;获取所述匹配的一组标识中
各个标识对应的计数值;根据获取的计数值确定所述待检测口令的计数值。
标识,其中k为正整数,且k不大于m。在此基础上,所述将待检测口令映射到m个标识中匹配
的一组标识的实现过程可以为:通过所述k次哈希运算将所述待检测口令映射到所述m个标
识中匹配的k个标识。获取所述匹配的一组标识中各个标识对应的计数值的实现过程可以
为:获取所述匹配的k个标识中各个标识对应的计数值。
于实现上述第一方面所提供的检测口令的方法。
存储用于实现上述第一方面所提供的检测口令的方法所涉及的数据。所述处理器被配置为
用于执行所述存储器中存储的程序。所述存储设备的操作装置还可以包括通信总线,该通
信总线用于该处理器与存储器之间建立连接。
用户请求中携带该待检测口令的用户请求的数量。之后,可以根据该待检测口令的计数值
来确定待检测口令是否合法。在此基础上,根据待检测口令的计数值来确定待检测口令是
否合法,相当于是以统计数据为基础对待检测口令进行检测,提高了口令检测的准确度。
附图说明
具体实施方式
口令,以便后续登录该用户账号时,服务器基于该口令来对该用户账号进行安全认证管理。
例如,当用户在某个网站中注册用户账号时,可以输入该用户账号对应的口令。终端在接收
到该口令时,可以将该口令传输至服务器。服务器保存该口令和用户账号之间的映射关系,
这样,后续当该用户登录该用户账号时,即可以通过该口令对用户账号进行认证。或者,在
某些情况下,用户可能还需要重新设置用户账号的口令或者是对口令进行修改。
致用户账号存在较大的安全风险。基于此,本申请实施例提供了一种检测口令的方法,用于
在接收到用户设置的口令时,判断该口令是否为不合法的弱口令,进而根据判断结果为用
户提供后续服务。
器102通信,服务器102可以与口令检测设备103通信。
是,该用户请求可以为账号注册请求,也可以为用于请求进行口令重置或修改的请求。
将该用户请求中携带的待检测口令发送至口令检测设备103。
群。口令检测设备103可以是指用于提供口令检测服务的服务器。
口令是指用户在注册用户账号时设置的口令,当第一用户请求为口令重置请求时,携带的
待检测口令为用户为当前的用户账号重新设置的口令,当该第一用户请求为口令修改请求
时,该待检测口令为用户设置的修改后的口令。
求时,该口令检测设备可以获取该用户请求中携带的口令,并对携带的口令进行计数。
口令的标识之后,如果口令检测设备中已经存储有该标识,则口令检测设备可以将该标识
的计数值加1。否则,口令检测设备可以存储该标识,并将该标识的计数值设置为1。
同的脱密算法对该口令进行脱密处理,从而得到包含有k个标识的一组标识。此时,这组标
识中的k个标识可能完全相同,也可能部分相同,部分不同,也可能各个都不同。例如,该口
令检测设备可以通过k次哈希运算对该口令进行处理,进而得到k个标识。在得到该用户请
求携带的口令的一组标识之后,如果口令检测设备中存储有这组标识中的全部标识,则口
令检测设备可以将这组标识中的每个标识的计数值加1。如果口令检测设备中未存储有这
组标识中的全部标识,则口令检测设备可以将这组标识中已经存储在口令检测设备中的标
识的计数值加1,对于这组标识中未存储在口令检测设备中的标识,则可以对其进行存储,
并将对应的计数值设置为1。
一个用户请求中的有些用户请求携带的口令可能相同,有些用户请求携带的口令可能不相
同。因此,如果对每个口令脱密处理时得到一个标识,则通过对至少一个口令进行处理之
后,口令检测设备中存储的至少一个标识的数量将小于或等于接收到的至少一个用户请求
中携带的口令的种类数量,并且,该至少一个标识中有的标识的计数值可能为1,有的标识
的计数值可能大于1。此时,每个标识的计数值均可以用于指示已经接收到的用户请求中携
带有相应标识所表征的口令的请求数量,也即,该口令被使用的次数。
后,该口令检测设备中存储的标识的数量m将大于或等于k,此时,至少一个口令中的每个口
令均可以映射到该m个标识中的一组标识。并且,m个标识中的每个标识的计数值可能为1,
也可能大于1。
还可以存储在其他口令检测设备中,在这种情况下,当前口令检测设备可以通过与其他口
令检测设备进行通信交互来实现上述过程。
实现方式中,口令检测设备也可以直接存储接收到的口令,并对接收到的各个口令的次数
进行计数。
中,口令复杂度规则可以包括字符数量小于第一阈值,包含的字符的种类数量小于第二阈
值等复杂度条件中的一种或多种。基于此,该口令检测设备可以检测该待检测口令是否满
足口令复杂度规则中的复杂度条件中的一种或多种,如果满足,则可以确定该待检测口令
为简单口令。由此可见,通过上述口令复杂度规则检测到的简单口令即是指包含的字符的
数量小于第一阈值和/或包含的字符的种类数量小于第二阈值的口令。
数量,如果待检测口令包含的字符的数量小于第一阈值,则可以确定待检测口令为简单口
令。如果待检测口令包含的字符的数量不小于第一阈值,则该口令检测设备可以确定待检
测口令包含的字符的种类数量,如果该种类数量小于第二阈值,则说明该待检测口令为简
单口令,否则,则确定该待检测口令不为简单口令。
待检测口令为简单口令。如果字符数量小于第一阈值,种类数量不小于第二阈值,则可以确
定待检测口令不为简单口令。如果字符数量不小于第一阈值,种类数量小于第二阈值,则可
以确定待检测口令不为简单口令。
账号的口令,在检测这一类待检测口令是否为简单口令时所采用的第一阈值,即可以大于
检测诸如社交应用、视频应用中用户账号的待检测口令时所采用的第一阈值。另外,字符的
种类数量用于指示口令中包含有多少种类型的字符。其中,字符的类型可以包括英文字符、
数字、特殊字符等。
备可以直接确定该待检测口令不合法。
待检测口令的标识,根据待检测口令的标识和存储的至少一个标识的匹配结果确定待检测
口令的计数值。
在本步骤中,口令检测设备也可以采用两种不同的方式来对待检测口令进行脱密处理。
法对待检测口令进行处理,从而得到待检测口令对应的一个标识。
设备可以确定待检测口令的计数值为0。之后,该口令检测设备可以存储该待检测口令的标
识,并将该检测口令的标识的计数值设置为1。可选地,如果至少一个标识中存储有该待检
测口令的标识,则口令检测设备可以获取存储的至少一个标识中与待检测口令匹配的标识
的计数值,将该计数值作为待检测口令的计数值,之后,口令检测设备可以将与至少一个标
识中与该待检测口令匹配的标识的计数值加1。
用同样的脱密处理算法对该待检测口令进行脱密处理,得到待检测口令的一组标识。在此
基础上,如果存储的m个标识中包含有待检测口令的这组标识中的每个标识,则口令检测设
备可以获取m个标识中与该待检测口令的这组标识匹配的一组标识中各个标识对应的计数
值,并根据获取的计数值确定该待检测口令的计数值。
可以将获取的计数值的平均值作为该待检测口令的计数值。
0。之后,口令检测设备可以将m个标识中包含的与这组标识中的部分标识匹配的标识的计
数值加1。对于这组标识中未包含在m个标识中的标识,口令检测设备可以将其进行存储,并
将其对应的计数值设置为1。
标识之后,还可以判断匹配的这组标识中的各个标识的当前计数值是否小于该计数上限
值。对于匹配的这组标识中当前计数值小于该计数上限值的标识,该口令检测设备可以将
这些标识的计数值加1。而对于当前计数值等于该计数上限值的标识,该口令检测设备可以
保持这些标识的计数值不变。其中,计数上限值可以为127、255、511等数值,本申请实施例
对此不做限定。
之前携带待检测口令的用户请求的数量可以反映出该待检测口令的使用频次。也即,该待
检测口令的计数值为待检测口令的判别提供了统计数据支撑,在此基础上,以该待检测口
令的计数值来检测待检测口令是否合法,更为准确。
免存储明文的口令,提高了口令的安全性,保护了用户隐私。
口令,如果包含有待检测口令,则获取存储的待检测口令的计数值。之后,口令检测设备可
以将存储的待检测口令的计数值加1,以完成对待检测口令的计数值的更新。如果存储的多
个口令中不包含有待检测口令,则口令检测设备可以确定待检测口令的计数值为0,之后,
口令检测设备可以存储该待检测口令,并将待检测口令的计数值设置为1。
计数值所对应的弱口令概率,并根据该弱口令概率来判定该待检测口令是否合法。
为3时,对应的弱口令概率为90%;当计数值为4时,对应的弱口令概率为95%;当计数值大
于或等于5时,对应的弱口令概率为100%。
1 0%
2 50%
3 90%
4 95%
≥5 100%
为合法口令。其中非法口令是指该口令检测设备不允许设置的口令,合法口令是指该口令
检测设备允许设置的口令。
待检测口令对应的计数值小于预设计数阈值,则该口令检测设备可以将该待检测口令确定
为合法口令,否则,将该待检测口令确定为非法口令。
据该弱口令概率进行后续操作。
中的最小计数值时,该口令检测设备还可以每隔预设时长,将存储的所有标识的计数值减
1。其中,预设时长可以为6个月或者12个月等。这样,对于某些口令,可能在某一段时间内,
该口令为弱口令,而在这段时间之后,随着时间流逝,使用该口令的用户可能越来越少,频
率越来越低。在这种情况下,通过定期对每个标识的计数值减1,即可以使得这一类口令重
新调整为非弱口令。也即,通过上述方法可以对弱口令进行动态调整,进而使得对口令的合
法性的判别更加准确。
限值。对于计数值等于计数下限值的标识,该口令检测设备可以保持该标识的计数值不变。
对于计数值大于计数下限值的标识,该口令检测设备可以将该标识的计数值减1。
一。本申请实施例在此不再赘述。
到的至少一个用户请求中携带该待检测口令的用户请求的数量。之后,可以根据该待检测
口令的计数值来确定待检测口令是否合法。由此可见,本申请实施例可以根据接收到的用
户请求,动态的收集并统计各个口令的使用频次。在此基础上,根据待检测口令的计数值来
确定待检测口令是否合法,相当于是以统计数据为基础对待检测口令进行检测,提高了口
令检测的准确度。
映射关系表中。这样,在本步骤中,该口令检测设备可以直接从映射关系中获取每个口令的
标识对应的计数值。
理,以恢复得到排在前N位的口令标识所对应的口令。根据确定的排在前N位的口令生成弱
口令排行榜。其中,该弱口令排行榜中包括N个口令以及每个口令对应的计数值。
弱口令排行榜中查找对应的计数值小于该待检测口令对应的计数值的口令。如果查找到,
则该口令检测设备可以执行步骤305,否则,该口令检测设备可以结束操作。
并将该待检测口令添加至该弱口令排行榜中最后一个位置。如果查找到的口令的个数为多
个,则该口令检测设备可以将查找到的多个口令中计数值最小的口令删除,并将该待检测
口令插入至查找到的多个口令中计数值最大的口令与其相邻的口令之间。
终端,以便终端显示该弱口令排行榜,以提醒用户避免设置该弱口令排行榜上的口令,减小
用户设置弱口令的概率,提高用户设置的口令的安全性。
值大于上限阈值,则该口令检测设备还可以生成告警信息,该告警信息用于指示该待检测
口令对应的用户账号为恶意账号。其中,上限阈值大于前述实施例中弱口令概率为100%时
所对应的计数值范围中的最小计数值。
号。在这种情况下,该口令检测设备即可以生成告警信息。例如,以表1中所示的计数值与弱
口令概率之间的映射关系为例,弱口令概率为100%所对应的计数值中的最小计数值为5,
基于此,设置上限阈值为10。如果一个待检测口令的计数值大于10,则说明该待检测口令不
仅100%为弱口令,而且还有很大概率是机器植入的恶意账号,此时,该口令检测设备即可
以生成告警信息。
恶意账号。在这种情况下,发送该待检测口令的服务器可以根据该告警信息决定是否允许
该用户账号的注册。
进而将判断结果反馈至发送待检测口令的服务器,以便发送待检测口令的服务器可以根据
该判断结果来执行后续操作。
口令的数量,m为正整数;
至少一个用户请求中携带该待检测口令的用户请求的数量。之后,可以根据该待检测口令
的计数值来确定待检测口令是否合法。由此可见,本申请实施例可以根据接收到的用户请
求,动态的收集并统计各个口令的使用频次。在此基础上,根据待检测口令的计数值来确定
待检测口令是否合法,相当于是以统计数据为基础对待检测口令进行检测,提高了口令检
测的准确度。
能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部
分功能。另外,上述实施例提供的口令检测设备与检测口令的方法实施例属于同一构思,其
具体实现过程详见方法实施例,这里不再赘述。
501,通信总线502,存储器503以及至少一个通信接口504。
个用于控制本申请方案程序执行的集成电路。
信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器
(Electrically Erasable Programmable Read‑Only Memory,EEPROM)、只读光盘(Compact
Disc Read‑Only Memory,CD‑ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光
碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备、或者能够用于携带或
存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但
不限于此。存储器503可以是独立存在,通过通信总线502与处理器501相连接。存储器503也
可以和处理器501集成在一起。
也可以是一个多核(multi‑CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或
用于处理数据(例如计算机程序指令)的处理核。
是液晶显示器(liquid crystal display,LCD),发光二级管(light emitting diode,LED)
显示设备,阴极射线管(cathode ray tube,CRT)显示设备,或投影仪(projector)等。输入
设备507和处理器501通信,可以以多种方式接收用户的输入。例如,输入设备507可以是鼠
标、键盘、触摸屏设备或传感设备等。
施例不限定计算设备的类型。
产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分
地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、
计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或
者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令
可以从一个网站站点、计算机、服务器或数据中心通过有线(例如:同轴电缆、光纤、数据用
户线(Digital Subscriber Line,DSL))或无线(例如:红外、无线、微波等)方式向另一个网
站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够
存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储
设备。所述可用介质可以是磁性介质(例如:软盘、硬盘、磁带)、光介质(例如:数字通用光盘
(Digital Versatile Disc,DVD))、或者半导体介质(例如:固态硬盘(Solid State Disk,
SSD))等。
存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或
B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,为了便于清楚描述本
申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用
基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并
不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。