一种用于安全口令输入的方法与流程

文档序号:33299207发布日期:2023-02-28 22:20阅读:43来源:国知局
一种用于安全口令输入的方法与流程

1.本发明属于信息安全技术领域,特别涉及一种用于安全口令输入的方法。


背景技术:

2.现有安全软键盘对键盘布局进行全部随机打乱以抵抗鼠标记录的攻击,提高口令的安全性,但错乱的键盘布局与人们习惯中布局相驳斥,需花费一些时间寻找真实口令,会带来使用上的不便,且无法有效抵御肩窥、拍摄等攻击。


技术实现要素:

3.本发明的目的,在于提供一种用于安全口令输入的方法,能够提高安全软键盘的可用性,并兼顾口令的安全性。
4.为了达成上述目的,本发明的解决方案是:
5.一种用于安全口令输入的方法,包括如下步骤:
6.步骤一,设置软键盘布局,并在用户每点击一次软键盘任意按键后,重新设置软键盘布局;
7.步骤二,用户先在客户端设备输入账号名并提交至认证服务器,而后基于记忆中注册账号时选择的口令输入方案输入口令数据;
8.步骤三,客户端设备利用认证服务器反馈的该账号名预设口令安全输入方案,提取出真实口令数据;
9.步骤四,客户端设备提取到真实口令数据后,将连同账号名用于进行身份认证。
10.采用上述方案后,本发明具有以下有益效果:
11.(1)本发明针对安全软键盘全部打乱键盘布局的方式在使用中多有不便的缺陷,设计一种基于局部打乱和实时更新的安全软键盘,利用局部打乱方式控制随机化的范围,提高安全软键盘的可用性,同时结合实时更新机制,以兼顾口令的安全性;
12.(2)本发明基于混淆口令输入思想,设计利用隐蔽传递提示信息方式输入固定长度的多位混淆口令和利用标记符输入可变长度的多位混淆口令的2种口令输入方式,进一步加强口令的安全性,可有效抵抗偷窥或拍摄等攻击。
附图说明
13.图1是本发明的流程图;
14.图2是本发明中进行局部打乱后的软键盘显示示意图;
15.其中,(a)是字母按键示意图,(b)是数字按键示意图,(c)是特殊符号按键示意图;
16.图3是本发明中口令输入过程示意图;
17.图4是本发明中口令提取过程示意图。
具体实施方式
18.以下将结合附图,对本发明的技术方案及有益效果进行详细说明。
19.如图1所示,本发明提供一种用于安全口令输入的方法,包括如下步骤:
20.s1,局部打乱软键盘内容,并对其进行实时更新;
21.本发明基于26键布局软键盘设计基于局部打乱和实时更新的安全软键盘,且只对字母、数字和特殊符号这3种字符按键进行打乱:
22.其中,局部打乱的具体过程是:首先,客户端设备生成伪随机数;其次,客户端设备利用随机数对软键盘中n1个字母、n2个数字和n3个特殊符号进行随机打乱操作;最后,再对被打乱的字符进行高亮显示,以降低用户认知负担;
23.其中,实时更新的具体内容是:每点击一次软件键盘任意按键后,软键盘都会重复上述步骤,进行实时更新键盘,对前述n1个字母、n2个数字和n3个特殊符号再次局部随机打乱;
24.其中,n1、n2和n3可由用户自定义设置,通常可设置为26≥n1≥5,10≥n2≥3,26≥n3≥5;图2所示是n1=5,n2=3,n3=5的软键盘布局图,其中,字母dgtqu、数字795、特殊符号\《^.?进行了高亮显示;
25.s2,根据口令安全输入方案输入口令数据;
26.配合图3所示,用户需在客户端设备先输入账号名,并点击提交。客户端设备通过安全传输通道将账号名发给认证服务器,请求该账号注册所选择的口令安全输入方案序号及相关设置参数,以便后期真实口令数据提取,而用户凭借记忆中账号注册时所选择的口令输入方案,利用局部打乱的软键盘进行口令输入。
27.本发明设计了3种口令输入方案,假设真实口令为pw={pw1,pw2,...,pwi,...,pwm},i∈[1,m],下面将分别对3种口令输入方案进行说明。
[0028]
若用户注册时设置的口令输入为方案1,通过隐蔽传递提示信息方式输入固定长度的多位混淆口令方式进行口令输入,则具体口令输入实现步骤如下:
[0029]
step1:用户输入一位真实口令pwi(pwi∈pw,i∈[1,m-1])后,观察客户端设备是否有发生振动,若有,则输入k位混淆字符,再输入下一位真实口令pw
i+1
,同时客户端设备记录该现象及其在口令中所处位置;若无,则进入继续下一步骤(k由用户在账号注册时自定义设置,要求k≥0);
[0030]
step2:用户自选择是否启动构造提示信息方法输入混淆口令,若是,则停顿双击(而不是快速双击)字母大写切换键作为提示信息,然后输入l位混淆字符,最后输入下一位真实口令pw
i+1
,同时客户端设备记录该现象及其在口令中所处位置;若否,则直接输入下一位真实口令pw
i+1
(l可由用户在账号注册时自定义设置,要求l≥0);
[0031]
step3:判断口令是否输入结束,若是,则停止口令输入,点击登录即可;若否,则重复步骤1和2。
[0032]
客户端设备将实时监测口令输入状态,若用户构造提示信息,则需待用户输入l位混淆字符后,再自行随机确定是否发出振动;若触发一次振动,则需待用户输入k位混淆字符后,再自行随机确定是否发出振动。为了防止攻击者获取到振动的声音,无论是否包含振动,客户端设备都会发出仿振动噪声以隐藏振动的声音或扰乱攻击者对声音的判断。同时为了防止客户端设备中其他通知的振动干扰,将在口令输入过程屏蔽其他通知的振动。
[0033]
该口令输入方案中所述利用客户端设备振动传达隐蔽信息和停顿双击字母大写切换键构建提示信息的方法,可根据需要将其替换为其他合适的方法,如发声、点击屏幕空白处等。
[0034]
若用户注册时设置的口令输入为方案2,通过标记符输入可变长度的多位混淆口令方式进行口令输入。该方法将口令pw前输入p位混淆口令cpw
st
和pw后输入q位混淆口令cpw
ed
。当p>2时,可将口令前多位混淆口令中前两位设置为标识符,用于在口令中间随意一个区间输入混淆字符。考虑到标记符可能会出现与真实口令字符相似会引起冲突,本实施例提供两种防竞争机制方案以处理冲突的问题,用户可自定义选择设置(其中p和q由用户在账号注册时自定义设置):
[0035]
基于防竞争方案1的口令输入具体实现步骤如下:
[0036]
step1:用户先输入混淆口令cpw
st
={cpw
st,1
,...,cpw
st,i
,...,cpw
st,p
},p≥0,i∈[1,p];由用户自己判断p是否满足p>2,且cpw
st,1
和cpw
st,2
是否满足:cpw
st,1
≠cpw
st,2
≠cpw
st,i
≠cpwi(式中:cpw
st,1
,cpw
st,2
,cpw
st,i
∈cpw
st
,i∈[3,p],cpwi∈pw,i∈[1,m],同时区分大小写),若都是,则记flag=1,否则记flag=0,继续下一步骤;
[0037]
step2:用户输入一位真实口令pwi(pwi∈pw,i∈[1,m-1])后,若flag=1且用户想输入多位混淆口令,用户可利用标识符cpw
st,1
和cpw
st,2
设置混淆口令区间,输入混淆口令:cpw
rd
={cpw
st,1
,cpw
rd,1
,...,cpw
rd,i
,...,cpw
rd,u
,cpw
st,2
},u≥1,i∈[1,u],cpw
rd,i
≠cpw
st,1
≠cpw
st,2
,最后输入下一位真实口令pw
i+1
;若flag=0,或flag=1且用户户不想输入多位混淆口令,则直接输入下一位真实口令pw
i+1
,继续下一步骤;
[0038]
step3:判断口令是否输入结束,若否,则重复步骤1和2;若是,则在输入混淆口令cpw
ed
={cpw
ed,1
,...,cpw
ed,i
,...,cpw
ed,q
},q≥0,i∈[1,q],然后点击登录即可。
[0039]
基于防竞争方案2的口令输入具体实现步骤如下:
[0040]
step1:用户先输入混淆口令cpw
st
={cpw
st,1
,...,cpw
st,i
,...,cpw
st,p
},p≥0,i∈[1,p];
[0041]
step2:输入一位真实口令pwi(pwi∈pw,i∈[1,m-1])后,若用户想输入多位混淆口令,用户可利用标识符cpw
st,1
和cpw
st,2
随机设置一个混淆口令区间,输入混淆口令:cpw
rd
={cpw
st,1
,cpw
rd,1
,...,cpw
rd,i
,...,cpw
rd,u
,cpw
st,2
},u≥1,i∈[1,u]。(其中,在输入cpw
st,1
和cpw
st,2
前,用户需通过点击键盘收起和再次打开方式构造提示信息告知系统该字符为标识符(为避免与口令输入方案1中提示信息冲突,该提示信息设置需不一样))。最后输入下一位真实口令pw
i+1
,同时客户端设备会记录该现象及其在口令中所处位置;若否,则直接输入下一位真实口令pw
i+1

[0042]
step3:判断口令是否输入结束,若否,则重复步骤1和2;若是,则输入混淆口令cpw
ed
={cpw
ed,1
,...,cpw
ed,i
,...,cpw
ed,q
},q≥0,i∈[1,q],然后点击登录即可。
[0043]
基于防竞争方案2的口令输入方案中所述点击键盘收起再打开按键来构建提示信息的方法,可根据需要将其替换为其他合适的方法,如点击屏幕空白处等。
[0044]
若用户注册时设置的口令输入为方案3,则是基于前述方案1和方案2的组合方式进行口令输入,具体实现步骤如下:
[0045]
step1:用户根据需求先随机输入p位任意字符作为混淆口令cpw
st
,若用户选择在后续输入口令过程中随机多次输入可变长度的多位混淆口令,则cpw
st
需满足p≥2,并记
flag=1,进入下一步骤;若无,则可输入任意字符作为混淆口令,并记flag=0,进入下一步骤;
[0046]
step2:用户输入第一位真实口令pwi(i=1);
[0047]
step3:若用户在输入下一位真实口令前,收到客户端设备发出的振动提示,则输入k位任意字符作为混淆字符,跳转至step6,若无提示,则进入下一步骤;
[0048]
step4:若flag=0,则由用户自定义选择是否构造提示信息,若是,则停顿双击字母大写切换键后,输入l位任意字符作为混淆字符,跳转至step6,若无,则跳转至step6;若flag=1,进入下一步骤;
[0049]
step5:由用户自定义选择口令输入方案:口令输入方案1构造提示信息输入混淆口令、口令输入方案2设置混淆口令区间、口令输入方案3不输入混淆口令,若选择1,则停顿双击字母大写切换键后,输入l位任意字符作为混淆字符,进入下一步骤;若选择2,利用标识符cpw
st,1
和cpw
st,2
设置混淆口令区间,在区间内随机输入任意字符,进入下一步骤;若选择3,则直接进入下一步骤;
[0050]
step6:输入下一位口令pw
i+1
,判断i+1是否等于m,若不等于,则跳转至步骤3;若等于,则进入下一步骤;
[0051]
step7:输入q位任意字符作为混淆口令cpw
ed
,再输入数字q,以结束口令输入点击登录。
[0052]
注:由客户端设备随机抉择以触发振动,为了区分真实口令和混淆口令,客户端设备将实时监测口令输入的状态,若当前用户选择口令输入方案1,设备的振动触发机制需待用户输入l或k位混淆口令后,方可再次触发;若当前用户选择口令输入方案2,则设备的振动触发机制需待用户输入提示信息和标识符cpw
st,2
后,方可再次触发;若当前用户选择口令输入方案3,则设备可直接随机抉择是否触发振动机制。
[0053]
s3,根据口令输入时所采用的口令安全输入方案提取口令;
[0054]
配合图4,假设用户根据口令安全输入方案输入的最后口令数据为pw
last
(pw
last
={pw
lt,1
,....,pw
lt,i
,...,pw
lt,h
),i∈[1,h],客户端设备将利用认证服务器反馈的用户所设口令输入方案序号及相关参数设置,剔除混淆口令提取出真实口令。
[0055]
若用户注册时设置的口令输入为方案1,则口令输入方案1对应的口令提取方案1具体操作步骤如下:
[0056]
step1:判断客户端设备是否有触发振动的记录,若有,则根据客户端设备记录的振动位置、振动次数和k值,找到根据客户端设备发出的提示信息输入的混淆口令数据,并将其删除;若无,则进入下一步;
[0057]
step2:判断客户端设备是否有用户构造提示信息的记录,若有,则根据客户端设备记录的提示信息位置、次数和l值,找到构造提示信息输入的混淆口令数据,并将其删除;若无,则进入下一步;
[0058]
step3:至此,已将口令pw
last
中混淆口令剔除完毕。
[0059]
若用户注册时设置的口令输入为方案2,则口令输入方案2对应的口令提取方案2具体操作步骤如下:
[0060]
step1:判断p是否大于等于2,若是,则提取pw
lt,1
(即为p)和pw
lt,h
(即为q),将pw
last
中第二位和第三位口令记为标识符cpw
st,2
和cpw
st,3
,并将pw
last
中前p位口令数据删除,进入
下一步骤,若不是,则将pw
last
中前p位和后q位口令数据删除,即可得到真实口令数据;
[0061]
step2:依托标识符cpw
st,1
和cpw
st,2
和客户端设备记录的提示信息找到混淆口令区间,并将其删除,至此得到的口令数据记为真实口令数据。
[0062]
若用户注册时设置的口令输入为方案3,则口令输入方案3对应的口令提取方案3具体操作步骤如下:
[0063]
step1:判断p是否大于等于2,若是,则提取pw
lt,1
(即为p)和pw
lt,h
(即为q),将pw
last
中第二位和第三位口令记为标识符cpw
st,2
和cpw
st,3
,进入下一步骤,若不是,则直接进入下一步骤;
[0064]
step2:删除pw
last
前p位口令pw
lt,1
,...,pw
lt,p
,和后q位口令pw
lt,h-q
,....,pw
lt,h

[0065]
step3:判断客户端设备是否有触发振动的记录,若有,则根据客户端设备记录的振动位置、振动次数和k值,找到根据客户端设备发出的提示信息输入的混淆口令数据,并将其删除;若无,则进入下一步;
[0066]
step4:判断客户端设备是否有用户构造提示信息的记录,若有,则根据客户端设备记录的提示信息位置、次数和l值,找到构造提示信息输入的混淆口令数据,并将其删除;若无,则进入下一步;
[0067]
step5:依托标识符cpw
st,1
和cpw
st,2
和客户端设备记录的提示信息找到混淆口令区间,并将其删除,至此得到的口令数据记为真实口令数据。
[0068]
s4,利用提取到的口令进行身份认证
[0069]
客户端设备提取到真实口令数据后,将连同账号名用于进行身份认证。
[0070]
综合上述,本发明设计了一种基于局部打乱和实时更新的安全软键盘,控制随机化范围,提高使用的便利性;并基于混淆口令输入思想,提出一种用于安全口令输入的方法,该方法中设计利用隐蔽传递提示信息方式输入固定长度的多位混淆口令和利用标记符输入可变长度的多位混淆口令的2种口令输入方式提出了三种口令安全输入方案,进一步加强口令的安全性,实现即使遭到偷窥或拍摄等攻击,攻击者也无法获悉真实口令数据。
[0071]
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1