一种验证方法和装置与流程

文档序号:20770142发布日期:2020-05-15 19:34阅读:150来源:国知局
一种验证方法和装置与流程

本公开涉及数字安防领域,更具体地,涉及一种验证方法和装置。



背景技术:

在已有的验证系统中,例如在智能门锁系统中,通常设置有数字0-9的按键面板或触摸屏面板,由用户通过选择面板上正确数字的方式输入用户密码,用户无需再携带机械钥匙,操作十分便利。然而,在侧重于用户操作便利性的同时,这种输入密码的方式十分容易被非法者窥视到用户密码,从而威胁到用户的生命财产安全。



技术实现要素:

针对背景技术中的问题,本公开提出了一种验证方法和装置,目的在于提高验证过程的安全性。

为此,本发明实施例一方面提出了一种验证方法,包括:将第一字符序列的第i个字符显示在多个子显示区域中的与第二字符序列的第i个字符对应的子显示区域中,并将随机选自第一字符集的多个字符显示在所述多个子显示区域中并且所述多个子显示区域显示的所有字符各不相同,使得每个子显示区域显示至少两个字符,i=1,2,…,n,n为自然数;接收对子显示区域进行选择的操作,并根据第二字符序列对与被选择的子显示区域对应的字符进行验证,其中,第一字符序列基于所述第一字符集中的选定字符生成,第二字符序列基于不同于第一字符集的第二字符集生成,第二字符集中的各个字符分别对应于各个子显示区域。

可选地,根据第二字符序列对被选择的子显示区域对应的字符进行验证,包括:将第1次到第n次被选择的子显示区域对应的字符依次排列生成第三字符序列,将第二字符序列与第三字符序列进行比较;或者将第二字符序列的第i个字符与第i次被选择的子显示区域对应的字符进行比较。

可选地,该方法还包括:每当符合预定条件时,重新生成第二字符序列。

可选地,该方法还包括:每当符合预定条件时,重新生成第二字符集,基于重新生成的第二字符集生成第二字符序列,并生成与重新生成的第二字符集中的各个字符分别对应的多个子显示区域。

本发明实施例另一方面提供了一种验证方法,包括:将第一字符序列的第i个字符显示在多个子显示区域中的与第二字符序列的第i个字符对应的子显示区域中,并将随机选自第一字符集的多个字符显示在所述多个子显示区域中,使得每个子显示区域显示至少两个字符并且所述多个子显示区域显示的所有字符各不相同,i=1,2,…,n,n为自然数;接收对子显示区域进行选择的操作,并根据第三字符序列对与被选择的子显示区域对应的字符进行验证,其中,第三字符序列是基于第一字符序列与第二字符序列之间的字符对应关系并根据初始字符序列对第二字符序列进行扩展生成,初始字符序列基于所述第一字符集中的选定字符生成,第一字符序列通过对初始字符序列进行滤重处理得到,第二字符序列基于不同于第一字符集的第二字符集生成,第二字符集中的各个字符分别对应于各个子显示区域。

可选地,根据第三字符序列对被选择的子显示区域对应的字符进行验证,包括:将第1次到第n次被选择的子显示区域对应的字符依次排列生成第四字符序列,将第四字符序列与第三字符序列进行比较;或者将第三字符序列的第i个字符与第i次被选择的子显示区域对应的字符进行比较。

可选地,该方法还包括:每当符合预定条件时,重新生成第二字符序列,并重新生成第三字符序列。

可选地,该方法还包括:每当符合预定条件时,重新生成第二字符集,基于重新生成的第二字符集生成第二字符序列,并重新生成第三字符序列,且生成与重新生成的第二字符集中的各个字符分别对应的多个子显示区域。

可选地,该方法还包括;每当符合预定条件时,重新设定第二字符集中的各个字符与各个子显示区域之间的对应关系。

可选地,第二字符序列基于第二字符集中的至少部分字符而生成。

可选地,第二字符序列基于第二字符集而随机生成。

本发明实施例同时提出了一种验证装置,包括:存储器,配置为存储计算机可执行指令;处理器,配置为执行所述计算机可执行指令以执行上述任一实施方案的验证方法。

本发明实施例一方面还提出了一种验证装置,包括:显示单元,其包括多个子显示区域,并配置为根据处理单元的指令进行显示;处理单元,其配置为将第一字符序列的第i个字符显示在所述多个子显示区域中的与第二字符序列的第i个字符对应的子显示区域中,并将随机选自第一字符集的多个字符显示在所述多个子显示区域中,使得每个子显示区域显示至少两个字符并且所述多个子显示区域显示的所有字符各不相同,i=1,2,…,n,n为自然数;接收单元,其配置为接收对子显示区域进行选择的操作;验证单元,其配置为根据第二字符序列对与被选择的子显示区域对应的字符进行验证,其中,第一字符序列基于所述第一字符集中的选定字符生成,第二字符序列基于不同于第一字符集的第二字符集生成,第二字符集中的各个字符分别对应于各个子显示区域。

本发明实施例另一方面还提出了一种验证装置,包括:显示单元,其包括多个子显示区域,并配置为根据处理单元的指令进行显示;处理单元,其配置为将第一字符序列的第i个字符显示在所述多个子显示区域中的与第二字符序列的第i个字符对应的子显示区域中,并将随机选自第一字符集的多个字符显示在所述多个子显示区域中,使得每个子显示区域显示至少两个字符并且所述多个子显示区域显示的所有字符各不相同,i=1,2,…,n,n为自然数;接收单元,其配置为接收对子显示区域进行选择的操作;验证单元,其配置为根据第三字符序列对与被选择的子显示区域对应的字符进行验证,其中,第三字符序列是基于第一字符序列与第二字符序列之间的字符对应关系并根据初始字符序列对第二字符序列进行扩展生成,初始字符序列基于所述第一字符集中的选定字符生成,第一字符序列通过对初始字符序列进行滤重处理得到,第二字符序列基于不同于第一字符集的第二字符集生成,第二字符集中的各个字符分别对应于各个子显示区域。

本发明实施例通过在作为用户密码的第一字符序列与基于用于标识子显示区域的第二字符集生成的第二字符序列之间建立隐藏的映射关系,并将待由用户选择的密码字符隐藏在多个随机字符之内,实施干扰显示,从而在用户输入密码进行验证时能够很好地干扰窥视者破解用户密码的非法操作,大幅度提高验证过程的安全性。

附图说明

为了更容易理解本发明,将通过参照附图中示出的具体实施方式更详细地描述本发明。这些附图只描绘了本发明的典型实施方式,不应认为对本发明保护范围的限制。

图1为本发明的验证方法的一个实施例的示意性流程图;

图2为本发明的验证方法的另一个实施例的示意性流程图

图3为本发明的验证装置的一个实施例的示意性框图。

具体实施方式

下面参照附图描述本发明的实施方式,其中相同的部件用相同的附图标记表示。在不冲突的情况下,下述的实施例及实施例中的技术特征可以相互组合。

图1为本发明的验证方法的一个实施例的示意性流程图。本发明实施例的验证方法适用于各类验证系统,例如智能门锁、保险柜锁、计算机应用程序的验证模块等。

如图1所示,本发明实施例的验证方法包括:

s101、将第一字符序列的第i个字符显示在多个子显示区域中的与第二字符序列的第i个字符对应的子显示区域中,并将随机选自第一字符集的多个字符显示在所述多个子显示区域中,使得每个子显示区域显示至少两个字符并且所述多个子显示区域显示的所有字符各不相同,i=1,2,…,n,n为自然数;

s102、接收对子显示区域进行选择的操作,并根据第二字符序列对与被选择的子显示区域对应的字符进行验证。

在本发明实施例中,第一字符序列是基于第一字符集中的选定字符生成的。第一字符集可以包括数字、字母和/或诸如“#”的符号等,用户可以从第一字符集中选择字符组合为便于记忆的密码作为第一字符序列。第一字符序列中的字符可以互不相同也可以包含重复的字符。

第二字符序列是基于第二字符集生成的,第二字符集与第一字符集不同而且相互独立。第二字符集中的各个字符分别对应于各个子显示区域,也就是说,第二字符集中包含的字符的数目与子显示区域的数目相同,而且第二字符集中的每个字符与多个子显示区域中的一个子显示区域唯一对应。第二字符集也可以使用数字、字母和/或符号等作为字符元素,只要第二字符集中的每个字符能够执行唯一标识多个子显示区域之一的作用即可。

在此需要说明的是,第二字符集与第一字符集不同且相互独立指的是第二字符集中各字符不是根据第一字符集中所包含的字符而确定的,但这不意味着第二字符集与第一字符集不能包含相同字符。在一个示例中,第一字符集可以由数字0-9和字母a-z构成,第二字符集可以由数字1-6构成,该数字1-6分别用来标记六个子显示区域之一;在另一个示例中,第一字符集可以由数字0-9构成,第二字符集可以由字母a-f构成,该字母a-f分别用来标记六个子显示区域之一。

第二字符序列与第一字符序列包含的字符数目相同,均包含n个字符,n的取值可以根据用户基于第一字符集设定第一字符序列时确定的位数而定,一般来说为了兼顾安全与记忆,n的取值可以在6-16的范围内,当然n也可以取该范围之外的其他值。本发明实施例中,可在完成第一字符序列的设定后,根据第一字符序列的字符数目n,基于第二字符集生成同样包含n个字符的第二字符序列。

本发明实施例中,为了验证用户输入的验证码是否合法,将在适当的显示装置上向用户显示出多个子显示区域,在每个子显示区域中均显示多个字符,供用户选定目标字符所在的子显示区域。具体而言,从第一字符序列的第1个字符到第n个字符,将第一字符序列中的第i个字符显示在多个子显示区域中的与第二字符序列的第i个字符对应的那个子显示区域中(i=1,2,…,n),同时将随机选自第一字符集的一个以上字符也显示在该子显示区域中,并且在其他每个子显示区域中均显示多个随机选自第一字符集的字符,最终显示在多个子显示区域中的是各自不同的字符,且每个子显示区域中至少显示两个字符。每个子显示区域中可显示相同数目的字符,也可以显示不同数目的字符。

在多个子显示区域中显示多个字符后,当用户确定目标字符显示在多个子显示区域中的某个子显示区域中时,可以对该子显示区域进行选择操作,从而从用户接收对该子显示区域进行选择的操作。例如当显示装置为触控屏时用户的选择操作可以是点触操作,当显示装置为非触控屏时用户的选择操作可以是对按键的按压操作,等等。

确认用户选择的子显示区域后,可确定与该子显示区域对应的字符,然后根据第二字符序列对该字符进行验证。例如,当完成对第一字符序列的第1个字符以及其他多个随机选择第一字符集的字符的显示后,可根据第二字符序列中的第1个字符对与被用户选择的子显示区域对应的字符进行比较以确认是否一致来进行验证。

本发明实施例通过在作为用户密码的第一字符序列与基于用于标识子显示区域的第二字符集生成的第二字符序列之间建立隐藏的映射关系,并将待由用户选择的密码字符隐藏在多个随机字符之内,实施干扰显示,从而在用户输入密码进行验证时能够很好地干扰窥视者破解用户密码的非法操作,大幅度提高验证过程的安全性。同时,即使在第一字符集较大的情况下,通过第二字符序列的设定也能够实现使用少量的子显示区域就达到干扰显示的目的,而且不需要将第一字符集中所有的字符均在子显示区域中进行显示,在确保安全性的同时简化了用户的输入操作。

在本发明一个实施例中,s102中根据第二字符序列对被选择的子显示区域对应的字符进行验证可以实施为多种方式。作为一个示例,可在将第一字符序列的每个字符均进行前述的干扰显示后,将第1次到第n次被用户选择的子显示区域对应的字符依次排列生成第三字符序列,将第二字符序列与第三字符序列进行比较,如果比较结果为一致则验证通过,否则验证不通过,提示用户重新输入或锁定验证装置。作为另一个示例;可以在将第一字符序列的每个字符进行前述的干扰显示后,将用户根据该次干扰显示选择的子显示区域对应的字符与第二字符序列的相应字符进行比较,在每次比较结果为一致时验证通过,一旦有一次比较结果为不一致则验证不通过。作为又一个示例,还可以在将第一字符序列的每几个字符进行前述的干扰显示后,将用户根据该几次干扰显示选择的子显示区域对应的几个字符与第二字符序列的相应位置的几个字符进行比较,等等。

在本发明一些实施例中,验证系统可以在每当符合预定条件时,重新生成第二字符序列。预定条件例如可以为预定的验证次数或预定的时长,也可以是接收到了特定的输入指令,等等。作为一个示例,可以在每完成一次或几次对用户密码的验证后,就基于第二字符集重新生成一个新的第二字符序列。作为另一个示例,也可以每24小时或36小时基于第二字符集重新生成一个新的第二字符序列。作为又一个示例,还可以通过由用户向验证系统输入变更指令的方式来重新生成第二字符序列。本发明实施例中,重新生成第二字符序列能够使得在第一字符序列保持不变(也即用户密码保持不变)的情况下,显示正确字符的子显示区域的位置组合在每次重新生成第二字符序列后都会发生变化,使得能够进一步提高用户密码的破解难度,从而进一步提高验证过程的安全性。

在本发明一些实施例中,验证系统可以在每当符合预定条件时,重新生成第二字符集,基于重新生成的第二字符集生成第二字符序列,并生成与重新生成的第二字符集中的各个字符分别对应的多个子显示区域。与前述实施例类似,预定条件例如也可以为预定的验证次数或预定的时长,也可以是接收到了特定的输入指令,等等。本发明实施例中,重新生成第二字符集将重新设定用于标记各个子显示区域的字符,如果重新生成的第二字符集具有与前一第二字符集不同的字符数,则在显示装置上生成的子显示区域的个数和位置也相应发生变化,从而能够进一步增加对显示过程的干扰,提高验证过程的安全性。

图2为本发明的验证方法的另一个实施例的示意性流程图。本发明实施例的验证方法适用于各类验证系统,例如智能门锁、保险柜锁、计算机应用程序的验证模块等。

如图2所示,本发明实施例的验证方法包括:

s201、将第一字符序列的第i个字符显示在多个子显示区域中的与第二字符序列的第i个字符对应的子显示区域中,并将随机选自第一字符集的多个字符显示在所述多个子显示区域中,使得每个子显示区域显示至少两个字符并且所述多个子显示区域显示的所有字符各不相同,i=1,2,…,n,n为自然数;

s202、接收对子显示区域进行选择的操作,并根据第三字符序列对与被选择的子显示区域对应的字符进行验证。

本发明实施例中,第三字符序列是基于第一字符序列与第二字符序列之间的字符对应关系并根据初始字符序列对第二字符序列进行扩展生成的。

具体的,初始字符序列基于所述第一字符集中的选定字符生成,这里第一字符集可以包括数字、字母和/或诸如“#”的符号等,用户可以从第一字符集中选择字符组合为便于记忆的密码作为初始字符序列。该初始字符序列中包含重复的字符,对初始字符序列进行滤重处理可得到所包含字符各不相同的第一字符序列。

第二字符序列是基于第二字符集生成的,第二字符集与第一字符集不同而且相互独立(关于该独立关系可参见前述实施例中的说明)。第二字符集中的各个字符分别对应于各个子显示区域,也就是说,第二字符集中包含的字符的数目与子显示区域的数目相同,而且第二字符集中的每个字符与多个子显示区域中的一个子显示区域唯一对应。第二字符集也可以使用数字、字母和/或符号等作为字符元素,只要第二字符集中的每个字符能够执行唯一标识多个子显示区域之一的作用即可。

第二字符序列与第一字符序列包含的字符数目相同,均包含n个字符。而第三字符序列与初始字符序列中包含的字符数目相同,例如可均包含m个字符,且m>n。也就是说,初始字符序列中包含了m-n个与其他字符重复的字符,在通过对初始字符序列进行滤重处理后得到的第一字符序列中则不包含这m-n个重复的字符。在生成与第一字符序列对应的第二字符序列后,根据第一字符序列中的与这m-n个被滤除字符相同的字符(即原重复字符)所对应的第二字符序列中的字符,并对照初始字符序列中这m-n个重复字符的位置对第二字符序列进行填充,将第二字符序列扩展为长度为n的第三字符序列。具体可参见后文给出的详细实例。

本发明实施例中,为了验证用户输入的验证码是否合法,将在适当的显示装置上向用户显示出多个子显示区域,在每个子显示区域中均显示多个字符,供用户选定目标字符所在的子显示区域。具体而言,从第一字符序列的第1个字符到第n个字符,将第一字符序列中的第i个字符显示在多个子显示区域中的与第二字符序列的第i个字符对应的那个子显示区域中(i=1,2,…,n),同时将随机选自第一字符集的一个以上字符也显示在该子显示区域中,并在其他每个子显示区域中均进行这样的操作,使得第一字符序列的n个字符散布在多个子显示区域中。最终显示在多个子显示区域中的是各自不同的字符,且每个子显示区域中至少显示两个字符。每个子显示区域中可显示相同数目的字符,也可以显示不同数目的字符。

在多个子显示区域中显示多个字符后,用户根据初始字符序列的字符顺序,当确定目标字符显示在多个子显示区域中的某个子显示区域中时,可以对该子显示区域进行选择操作,从而从用户接收对该子显示区域进行选择的操作。例如当显示装置为触控屏时用户的选择操作可以是点触操作,当显示装置为非触控屏时用户的选择操作可以是对按键的按压操作,等等。

确认用户选择的子显示区域后,可确定与该子显示区域对应的字符,然后根据基于上述的根据初始字符序列对第二字符序列进行扩展得到的第三字符序列对该字符进行验证。

本发明实施例通过在对用户密码进行滤重生成的第一字符序列与基于用于标识子显示区域的第二字符集生成的第二字符序列之间建立隐藏的映射关系,并将待由用户选择的密码字符隐藏在多个随机字符之内,实施干扰显示,从而在用户输入密码进行验证时能够很好地干扰窥视者破解用户密码的非法操作,大幅度提高验证过程的安全性。同时,通过滤重处理,能够实现使用更少量的子显示区域就达到干扰显示的目的,在确保安全性的同时简化了用户的输入操作。

在本发明一个实施例中,s202中根据第三字符序列对被选择的子显示区域对应的字符进行验证可以实施为多种方式。作为一个示例,可将第1次到第n次被用户选择的子显示区域对应的字符依次排列生成第四字符序列,将第四字符序列与第三字符序列进行比较,如果比较结果为一致则验证通过,否则验证不通过,提示用户重新输入或锁定验证装置。作为另一个示例;可以在用户每次选择子显示区域后,都将该子显示区域对应的字符与第三字符序列的相应字符进行比较,在每次比较结果为一致时验证通过,一旦有一次比较结果为不一致则验证不通过,等等。

在本发明一些实施例中,验证系统可以在每当符合预定条件时,重新生成第二字符序列,并重新生成第三字符序列。预定条件例如可以为预定的验证次数或预定的时长,也可以是接收到了特定的输入指令,等等。作为一个示例,可以在每完成一次或几次对用户密码的验证后,就基于第二字符集重新生成一个新的第二字符序列,并相应地重新生成第三字符序列。作为另一个示例,也可以每24小时或48小时基于第二字符集重新生成一个新的第二字符序列,并相应地重新生成第三字符序列。作为又一个示例,还可以通过由用户向验证系统输入变更指令的方式来重新生成第二字符序列并相应地重新生成第三字符序列。本发明实施例中,重新生成第三字符序列能够使得在初始字符序列保持不变(也即用户密码保持不变)的情况下,显示正确字符的子显示区域的位置组合在每次重新生成第三字符序列后都会发生变化,使得能够进一步提高用户密码的破解难度,从而进一步提高验证过程的安全性。

在本发明一些实施例中,验证系统可以在每当符合预定条件时,重新生成第二字符集,基于重新生成的第二字符集生成第二字符序列,并重新生成第三字符序列,且生成与重新生成的第二字符集中的各个字符分别对应的多个子显示区域。与前述实施例类似,预定条件例如也可以为预定的验证次数或预定的时长,也可以是接收到了特定的输入指令,等等。本发明实施例中,重新生成第二字符集将重新设定用于标记各个子显示区域的字符,如果重新生成的第二字符集具有与前一第二字符集不同的字符数,则在显示装置上生成的子显示区域的个数和位置也相应发生变化,从而能够进一步增加对显示过程的干扰,提高验证过程的安全性。

在本发明另一些实施例中,验证系统还可以在每当符合预定条件时,重新设定第二字符集中的各个字符与各个子显示区域之间的对应关系。与前述实施例类似,预定条件例如也可以为预定的验证次数或预定的时长,也可以是接收到了特定的输入指令,等等。为便于说明,在此给出一个非限制性的简单示例:假设第二字符集由数字1-4构成,四个子显示区域排列在同一行中,在重新设定对应关系之前,数字1-4与四个子显示区域的对应关系为1、2、3、4,在重新设定对应关系之后,数字1-4与四个子显示区域的对应关系变更为如2、3、1、4。本发明实施例中,通过在每当符合预定条件时重新设定第二字符集中各字符与各子显示区域之间的对应关系,也能够使得在第一字符序列保持不变(也即用户密码保持不变)的情况下,显示正确字符的子显示区域的位置组合在每次重新设定该对应关系后都会发生变化,使得能够进一步提高用户密码的破解难度,从而进一步提高验证过程的安全性。

在本发明一些实施例中,第二字符序列基于第二字符集中的至少部分字符而生成,也即,第二字符序列中可以包括第二字符集中的全部字符,也可以仅包括第二字符集中的部分字符。作为一个示例,第二字符集由数字1-8构成,因而对应地有八个子显示区域,第二字符序列中可以包括数字1-8,也可以仅包括数字2-7。第二字符集的字符个数可以与第一字符序列的长度相同,也可以不同。当第二字符序列中包括第二字符集中的全部字符时,每个子显示区域均用于显示第一字符序列中的相应字符;当第二字符序列中仅包括第二字符集中的部分字符时,仅与该部分字符对应的那些子显示区域用于显示第一字符序列中的相应字符。需要说明的是,当第二字符序列中包含的不同字符的个数小于第一字符序列的长度时,第二字符序列中的部分字符会重复出现,可能出现第二字符序列中两个相同字符分别对应第一字符序列中两个不同字符的情况,可参见后文示例的具体实施过程。本发明实施例通过选用多个子显示区域中的部分子显示区域来显示目标字符,能够增加干扰字符的显示密度,提高验证过程的安全性。此外,本发明实施例非常适于与前述的每当符合预定条件时对相关对象进行变化(如重新生成第二字符序列)的各实施例结合,形成能够进一步提高验证过程安全性的方案。

在本发明一些实施例中,第二字符序列可以基于第二字符集而随机生成,从而为用户所选择的各子显示区域的位置赋予随机性,提高显示过程的干扰度,进而提高验证过程的安全性。在本发明另一些实施例中,第二字符序列也可以通过由用户输入的方式等来生成。

在本发明一些实施例中,第二字符序列中可以包含重复的字符,例如第一字符序列为六位字符序列时,第二字符集可包含四个字符,对应四个子显示区域,且第二字符序列也为六位字符序列,并由第二字符集中的四个字符排列而成,也即其中存在重复的字符。通过使得第二字符序列中包含重复的字符,可以使得第二字符序列的长度不受第二字符集中字符数目的限制,即使第二字符集中的字符数很少,也能生成较长的第二字符序列,以在第一字符序列较长的情况下仍可使用少量的子显示区域来完成验证。在本发明另一些实施例中,第二字符序列中也可以不包含重复的字符,例如第一字符序列为六位字符序列时,第二字符集可包含六个字符,对应六个子显示区域,且第二字符序列也为六位字符序列并且为第二字符集中的全部六个字符。

下面给出本发明实施例的两个具体实施过程,以便于理解本发明的实施方式。

在第一个具体实施过程中,首先,在进行验证之前,定义由大写字母a-z和数字0-9构成集合p作为第一字符集,集合p的字符个数card(p)=36;并定义由数字1-4构成集合r作为第二字符集,集合r的字符个数card(r)=4。然后,用户选择集合p中的8个元素组成第一字符序列x,例如x=[qingke20],并随机生成由集合r中的四个数字组成的第二字符序列y,使得序列y与序列x具有相同的长度,例如生成y=[43122133]。根据集合r包含的字符个数4,生成4个子显示区域,集合r中的4个数字与4个子显示区域的对应关系例如为前述的1、2、3、4。当然,这里将4个子显示区域排列成一行仅为了示例,实际应用时四个子显示区域也可以排列为田字形;

开始验证时,将x[1]的字符q放入子显示区域4,从p中随机选择字母d和数字9也放入子显示区域4;在子显示区域1-3中,每个子显示区域放入3个随机选择的字母或者数字;最后显示给用户的在4个子显示区域上所显示字符的分布例如可以为:umv、3lc、ex2、d9q;用户选择包含字母q的子显示区域,该子显示区域所对应的字符为4,将4与y[1]元素进行比较,发现相等,本字符验证成功;如果用户本次选择了其它三个子显示区域之一,则所选择的子显示区域所对应的字符必不为4,与y[1]不同,所以本字符验证失败;从x[1]到x[8]循环执行上述验证过程,得到最后验证结果。

在第二个具体实施过程中,首先,在进行验证之前,定义由大写字母a-z和数字0-9构成集合p作为第一字符集,集合p的字符个数card(p)=36;并定义由数字1-4构成集合r作为第二字符集,集合r的字符个数card(r)=4。用户选择集合p中的8个元素,使其中两个元素各重复一次,组成包含重复字符且长度为10的初始字符序列x’=[qingke2020]。对初始字符序列进行滤重处理得到所包含字符各不相同且长度缩短为8的第一字符序列x=[qingke20]。随机生成由集合r中的四个数字组成的第二字符序列y,使得序列y与序列x具有相同的长度8,例如生成y=[43122133]。第一字符序列x中的与被滤除字符相同的字符为2和0,这两个字符各对应于第二字符序列y中的字符3,因此,将字符3对照初始字符序列中各重复字符的位置,在第二字符序列y的末位字符之后填充两个3来对应被滤除的两个字符2和0的位置,从而将第二字符序列y扩展为长度为10的第三字符序列y’=[4312213333]。根据集合r包含的字符个数4,生成4个子显示区域,集合r中的4个数字与4个子显示区域的对应关系例如为前述的1、2、3、4。当然,这里将4个子显示区域排列成一行仅为了示例,实际应用时四个子显示区域也可以排列为田字形;

开始验证时,将第一字符序列x的第1到第n个字符散布放入各个子显示区域中,例如可以分布为en、gk、i02、q;并且从p中随机选择字符放入各子显示区域,例如选择d和9放入子显示区域4,选择8放入子显示区域2,选择m放入子显示区域1,从而最后显示给用户的在4个子显示区域上所显示字符的分布例如可以为:emn、gk8、i02、dq9。用户先选择包含字母q的子显示区域,该子显示区域所对应的字符为4,将4与y’[1]元素进行比较,发现相等,本字符验证成功;如果用户本次选择了其它三个子显示区域之一,则所选择的子显示区域所对应的字符必不为4,与y’[1]不同,所以本字符验证失败;循环执行上述验证过程,得到最后验证结果。

本发明实施例的验证方法可通过具有存储器和处理器的验证装置来实现,该存储器配置为存储计算机可执行指令,该处理器配置为执行该计算机可执行指令以执行如前述任一实施例的验证方法。在本发明一些实施例中,验证装置的处理器可以使用安全芯片来实现。

图3为本发明的验证装置的一个实施例的示意性框图。

如图3所示,本发明实施例的验证装置1包括显示单元11、处理单元12、接收单元13和验证单元14。

显示单元11包括多个子显示区域,并配置为分别根据处理单元12的指令进行显示。接收单元13配置为接收用户对子显示区域进行选择的操作。在本发明一些实施例中,当显示单元11实施为触控屏时,接收单元13与显示单元11可使用同一触控屏实现。

处理单元12配置为将第一字符序列的第i个字符显示在显示单元11的多个子显示区域中的与第二字符序列的第i个字符对应的子显示区域中,并将随机选自第一字符集的多个字符显示在显示单元11的多个子显示区域中,使得每个子显示区域显示至少两个字符并且所述多个子显示区域显示的所有字符各不相同,i=1,2,…,n,n为自然数。其中,第一字符序列基于所述第一字符集中的选定字符生成,第二字符序列基于不同于第一字符集的第二字符集生成,第二字符集中的各个字符分别对应于各个子显示区域。

验证单元14配置为根据第二字符序列对与根据接收单元13接收的操作确定的被选择的子显示区域对应的字符进行验证。本发明实施例中将验证单元14和处理单元12实施为两个不同的模块,但本发明其他实施例中也可将验证单元14和处理单元12使用同一处理器来实现。

本发明实施例的验证装置的各个单元的具体工作方式可参见前述的验证方法实施例,在此省略具体说明。

在本发明的验证装置的另一实施例中,再次参照图3,验证装置1也包括显示单元11、处理单元12、接收单元13和验证单元14。

具体的,显示单元11包括多个子显示区域,并配置为分别根据处理单元12的指令进行显示。接收单元13配置为接收用户对子显示区域进行选择的操作。在本发明一些实施例中,当显示单元11实施为触控屏时,接收单元13与显示单元11可使用同一触控屏实现。

处理单元12配置为将第一字符序列的第i个字符显示在所述多个子显示区域中的与第二字符序列的第i个字符对应的子显示区域中,并将随机选自第一字符集的多个字符显示在所述多个子显示区域中,使得每个子显示区域显示至少两个字符并且所述多个子显示区域显示的所有字符各不相同,i=1,2,…,n,n为自然数。其中,第三字符序列是基于第一字符序列与第二字符序列之间的字符对应关系并根据初始字符序列对第二字符序列进行扩展生成,初始字符序列基于所述第一字符集中的选定字符生成,第一字符序列通过对初始字符序列进行滤重处理得到,第二字符序列基于不同于第一字符集的第二字符集生成,第二字符集中的各个字符分别对应于各个子显示区域。

接收单元,其配置为接收对子显示区域进行选择的操作;

验证单元14配置为根据第三字符序列对与根据接收单元13接收的操作确定的被选择的子显示区域对应的字符进行验证。本发明实施例中将验证单元14和处理单元12实施为两个不同的模块,但本发明其他实施例中也可将验证单元14和处理单元12使用同一处理器来实现。

本发明实施例的验证装置的各个单元的具体工作方式可参见前述的验证方法实施例,在此省略具体说明。

以上所述的实施例,只是本发明较优选的具体实施方式,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1