一种密码安全输入方法及系统的制作方法

文档序号:6639471阅读:195来源:国知局
一种密码安全输入方法及系统的制作方法
【专利摘要】本发明公开了一种密码安全输入方法及系统,其中,密码安全输入方法包括:在终端设备上生成打乱字符顺序的虚拟键盘;所述终端设备接收用户根据生成的虚拟键盘输入的字符密码;所述终端设备对用户输入的字符密码采用预定加密算法进行加密;将所述加密后的字符密码显示于所述终端设备的交互界面。本发明提供的方法,采用虚拟键盘输入字符密码,并对字符密码进行加密,最后将加密后的字符密码显示于交互界面,保证了用户在输入密码的过程中和终端设备显示密码时的安全性。
【专利说明】—种密码安全输入方法及系统

【技术领域】
[0001]本发明涉及数据安全【技术领域】,具体涉及一种密码安全输入方法及系统。

【背景技术】
[0002]随着互联网的发展,人们可以通过终端设备(比如,计算机、移动终端设备等)随时连接网络,在网络上进行各种操作。
[0003]与此同时,电脑黑客或手机黑客也越来越普遍,他们侵入计算机、移动终端,进行各种破坏活动,如何使计算机、移动终端更加安全一直是伴随着网络发展的一个关键问题。
[0004]目前业界对使用计算机、移动终端的防范,一般方法有:使用各种密码体制,或者在计算机、移动终端上输入密码时采用虚拟键盘。
[0005]以目前采用的虚拟键盘输入密码为例:当用户在向终端设备输入密码时,采用随机生成的虚拟键盘来对用户的输入进行改造,所以呈现在计算机、移动终端的密码是一个“已被打乱的字符串”。在向认证服务器端发送密码时,再对“已被打乱的字符串”进行解码。
[0006]采用虚拟键盘向终端设备输入密码的方法,由于虚拟键盘技术基于一个随机生成的映射表(即虚拟键盘键值与原始键盘键值之间的映射关系表),如果黑客破解了这个映射表,则可以很容易地窃取密码。所以,目前的虚拟键盘技术不能满足较高的安全需求。


【发明内容】

[0007]本发明所要解决的技术问题是提供一种密码安全输入方法及系统,保证了用户在输入密码的过程中和终端设备显示密码时的安全性。
[0008]本发明解决上述技术问题的技术方案如下:
[0009]一方面,提供了一种密码安全输入方法,所述方法包括:
[0010]在终端设备上生成打乱字符顺序的虚拟键盘;
[0011]所述终端设备接收用户根据生成的虚拟键盘输入的字符密码;
[0012]所述终端设备对用户输入的字符密码采用预定加密算法进行加密;
[0013]将所述加密后的字符密码显示于所述终端设备的交互界面。
[0014]另一方面,提供了一种密码安全输入系统,所述系统包括:
[0015]虚拟键盘生成模块,用于在终端设备上生成打乱字符顺序的虚拟键盘;
[0016]密码接收模块,用于接收用户根据生成的虚拟键盘输入的字符密码;
[0017]加密模块,用于对用户输入的字符密码采用预定加密算法进行加密;
[0018]显示模块,用于将所述加密后的字符密码显示于所述终端设备的交互界面。
[0019]本发明提供的一种密码安全输入方法及系统,首先,在终端设备上生成虚拟键盘,用户采用生成的虚拟键盘向终端设备输入字符密码,随后终端设备对用户输入的字符密码进行加密,最后将加密后的密码显示于终端设备的交互界面,对用户输入密码的过程中和终端设备显示密码的过程中,利用加密算法对虚拟键盘技术进行了加强优化,可以有效避免恶意程序(比如,木马程序、病毒程度)可能对常规键盘及密码输入框的数字、字符或符号的截取或窃取,从而提高了密码输入的安全性,能够适应更高的安全需求,具有更强的普适性。

【专利附图】

【附图说明】
[0020]图1为本发明实施例一的一种密码安全输入方法流程图;
[0021]图2为本发明实施例二的一种密码安全输入系统示意图。

【具体实施方式】
[0022]以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
[0023]实施例一、一种密码安全输入方法。下面结合图1对本实施例提供的方法进行详细说明。
[0024]参见图1,S101、在终端设备上生成打乱字符顺序的虚拟键盘。
[0025]具体的,本实施例中的终端设备包括计算机、移动终端等,尤其包括触摸型移动终端(比如,智能手机),在用户向终端设备输入密码前,终端设备生成随机的虚拟键盘,该生成的虚拟键盘为打乱字符顺序的虚拟键盘,虚拟键盘上的键值与原始键盘的键值具有一一对应的映射关系,虚拟键盘键值与原始键盘键值的映射关系形成一个映射表,并将该映射表存储于终端设备中。比如,原始键盘键值依次排列为:QWER...,对原始键盘键值的排列顺序进行随机打乱,之后生成虚拟键盘,比如,随机生成的虚拟键盘键值的排列顺序为:ERPY...,若用户输入的字符为Q,则映射为E。
[0026]S102、终端设备接收用户根据生成的虚拟键盘输入的字符密码。
[0027]具体的,在终端设备上生成了虚拟键盘后,用户根据生成的虚拟键盘向终端设备输入字符密码,终端设备接收用户输入的字符密码。
[0028]S103、终端设备对用户输入的字符密码采用预定加密算法进行加密。
[0029]具体的,当用户通过终端设备生成的虚拟键盘向终端设备输入了字符密码后,终端设备采用预定的加密算法对输入的字符密码进行再次加密。在具体加密的过程中,终端设备可以采用一种加密算法对输入的字符密码进行加密,也可以采用多种相结合的加密算法对输入的字符密码进行加密。以一种加密算法对输入的字符密码进行加密为例,终端设备预先生成随机数,利用随机数生成古典密码,采用生成的古典密码对输入的字符密码进行加密。
[0030]终端设备生成古典密码的一个具体例子,终端设备中的比特生成器可以将一个较短的随机比特串(种子)生成一个较长的比特串,随机数=“较长的比特串的二进制码之和” mod 26。
[0031]终端设备生成随机数之后,利用随机数生成古典密码,所谓古典密码是指移位密码、置换密码、仿射密码、维吉尼亚米阿玛、希尔密码、置换密码、流密码等。本实施例考虑到对用户输入字符进行加密的效率,采用运行效率较高的古典密码算法对用户输入的字符密码进行加密。
[0032]以凯撒密码算法为例,凯撒密码加密原理:
[0033]新的字符=(原始字符_k) /m ;
[0034]其中,k为移位的个数,在本实施例中为上述终端设备生成的随机数,m为用户输入的字符密码的总的字符数,比如,k为1,则字符E映射为D。
[0035]S104、将加密后的字符密码显示于终端设备的交互界面。
[0036]具体的,当终端设备将用户输入的字符密码加密后,将加密后的字符密码显示于终端设备的交互界面上,由于此时显示于终端设备交互界面的字符密码是由用户采用打乱了字符顺序的虚拟键盘输入,且经过终端设备加密后的字符密码,因此密码的安全性很高,即时黑客窃取到显示于交互界面的字符密码,也很难破解。
[0037]另外,当终端设备将加密后的字符密码发送给认证服务器进行认证时,终端设备根据预先存储的解密算法以及虚拟键盘键值与原始键盘键值的映射关系,对加密后的字符密码进行解密,得到原始字符密码,然后将解密后获得的原始密码发送给认证服务器进行认证。其中,终端设备按照认证服务器的相关协议将解密后的原始密码发送给服务器,比如,按照 TCP/IP (Transmiss1n Control Protocol/Internet Protocol,传输控制协议 /因特网互联协议)、NetBEUI (NetB1S Extend User Interface, NetB1S 用户扩展接口)协议、CCID(USB Chip/Smart Card Interface Devices,USB 芯片智能卡接口设备)协议或HTTP (Hypertext Transmiss1n Protocol,超文本传输协议)等协议将解密后的原始密码发送给认证服务器,供认证服务器进行认证。
[0038]需要说明的是,为了保证终端设备中的敏感数据的安全性,终端设备还对这些敏感数据进行加密存储。
[0039]实施例二、一种密码安全输入系统。下面结合图2对本实施例提供的系统进行详细描述。
[0040]参见图2,本实施例提供的系统包括虚拟键盘生成模块201、密码接收模块202、加密模块203、显示模块204、解密模块205和发送模块206。
[0041]其中,虚拟键盘生成模块201主要用于在终端设备上生成打乱字符顺序的虚拟键盘。
[0042]具体的,本实施例中的终端设备包括计算机、移动终端等,在用户向终端设备输入密码前,终端设备中的虚拟键盘生成模块201生成随机的虚拟键盘,该生成的虚拟键盘为打乱字符顺序的虚拟键盘,虚拟键盘上的键值与原始键盘的键值具有一一对应的映射关系,虚拟键盘键值与原始键盘键值的映射关系形成一个映射表,并将该映射表存储于终端设备中。比如,原始键盘键值依次排列为:QWER...,对原始键盘键值的排列顺序进行随机打舌L之后生成虚拟键盘,比如,随机生成的虚拟键盘键值的排列顺序为:ERPY...,若用户输入的字符为Q,则映射为E。
[0043]密码接收模块202主要用于接收用户根据虚拟键盘生成模块201生成的虚拟键盘输入的字符密码。
[0044]加密模块203主要用于对终端设备接收的的字符密码采用预定加密算法进行加
LU O
[0045]具体的,虚拟键盘生成模块201在终端设备上生成了虚拟键盘后,用户根据生成的虚拟键盘向终端设备输入字符密码,终端设备的密码接收模块202接收用户输入的字符密码。
[0046]当密码接收模块202接收到用户向终端设备输入的字符密码后,终端设备中的加密模块203采用预定的加密算法对接收的字符密码进行再次加密。在具体加密的过程中,加密模块203可以采用一种加密算法对输入的字符密码进行加密,也可以采用多种相结合的加密算法对输入的字符密码进行加密。以一种加密算法对输入的字符密码进行加密为例,终端设备预先生成随机数,利用随机数生成古典密码,加密模块203采用生成的古典密码对输入的字符密码进行加密。
[0047]生成古典密码的一个具体例子,终端设备中的比特生成器可以将一个较短的随机比特串(种子)生成一个较长的比特串,随机数=“较长的比特串的二进制码之和”mod 26。
[0048]终端设备生成随机数之后,利用随机数生成古典密码,所谓古典密码是指移位密码、置换密码、仿射密码、维吉尼亚米阿玛、希尔密码、置换密码、流密码等。本实施例考虑到对用户输入字符进行加密的效率,加密模块203采用运行效率较高的古典密码算法对用户输入的字符密码进行加密。
[0049]以凯撒密码算法为例,凯撒密码加密原理:
[0050]新的字符=(原始字符_k) /m ;
[0051]其中,k为移位的个数,在本实施例中为上述终端设备生成的随机数,m为用户输入的字符密码的总的字符数,比如,k为1,则字符E映射为D。
[0052]显示模块204主要用于将加密模块203加密后的字符密码显示于终端设备的交互界面。
[0053]解密模块205主要用于根据预先存储的解密算法以及虚拟键盘键值与原始键盘键值的映射关系,对加密模块203加密后的字符密码进行解密,得到原始字符密码。
[0054]发送模块206主要用于将解密模块205得到的原始字符密码发送给认证服务器。
[0055]具体的,当加密模块203将用户输入的字符密码加密后,显示模块204将加密后的字符密码显示于终端设备的交互界面上,由于此时显示于终端设备交互界面的字符密码是由用户采用虚拟键盘生成模块201生成的打乱了字符顺序的虚拟键盘输入,且经过加密模块203加密后的字符密码,因此密码的安全性很高,即时黑客窃取到显示于交互界面的字符密码,也很难破解。
[0056]另外,当终端设备将加密模块203加密后的字符密码发送给认证服务器进行认证时,解密模块205根据终端设备预先存储的解密算法以及虚拟键盘键值与原始键盘键值的映射关系,对加密后的字符密码进行解密,得到原始字符密码,然后发送模块206将解密后获得的原始密码发送给认证服务器进行认证。其中,发送模块206按照认证服务器的相关协议将解密后的原始密码发送给服务器,比如,按照TCP/IP、NetBEUI协议、CCID协议或HTTP等协议将解密后的原始密码发送给认证服务器,供认证服务器进行认证。
[0057]本发明提供的一种密码安全输入方法及系统,用户采用终端设备生成的虚拟键盘向终端设备输入密码,然后,终端设备对用户输入的密码进行再次加密,最终显示于终端设备的交互界面,本发明利用加密算法对虚拟键盘技术在终端设备上的应用进行了优化,有效杜绝恶意程序(如木马程序、病毒程序等)可能的对常规键盘及密码输入框的数字、字符及符号的截取和窃取,提供了数据的安全性,更能适应日益发展的终端设备的安全需求。
[0058]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种密码安全输入方法,其特征在于,所述方法包括: 步骤SlOl、在终端设备上生成打乱字符顺序的虚拟键盘; 步骤S102、所述终端设备接收用户根据生成的虚拟键盘输入的字符密码; 步骤S103、所述终端设备对用户输入的字符密码采用预定加密算法进行加密; 步骤S104、将所述加密后的字符密码显示于所述终端设备的交互界面。
2.如权利要求1所述的一种密码安全输入方法,其特征在于,所述步骤SlOl中在终端设备上生成的虚拟键盘键值与原始键盘键值具有一一对应的映射关系。
3.如权利要求1所述的一种密码安全输入方法,其特征在于,所述步骤S103包括: 所述终端设备对用户输入的字符密码采用一种加密算法或多种相结合的加密算法进行加密。
4.如权利要求3所述的一种密码安全输入方法,其特征在于,所述步骤S103还包括: 所述终端设备生成随机数,并利用所述生成的随机数生成古典密码,利用该古典密码对用户输入的字符密码进行加密。
5.如权利要求2所述的一种密码安全输入方法,其特征在于,所述执行步骤S104之后还包括: 所述终端设备根据预先存储的解密算法以及虚拟键盘键值与原始键盘键值的映射关系,对所述加密后的字符密码进行解密,得到原始字符密码,并将所述得到的原始字符密码发送给认证服务器,以使认证服务器对所述原始密码进行认证。
6.如权利要求5所述的一种密码安全输入方法,其特征在于,将所述得到的原始字符密码发送给认证服务器具体包括: 按照认证服务器的相关协议将所述原始字符密码发送给所述认证服务器,其中,所述相关协议包括TCP/IP、NetBEUI协议、CCID协议和HTTP。
7.—种密码安全输入系统,其特征在于,所述系统包括: 虚拟键盘生成模块,用于在终端设备上生成打乱字符顺序的虚拟键盘; 密码接收模块,用于接收用户根据生成的虚拟键盘输入的字符密码; 加密模块,用于对用户输入的字符密码采用预定加密算法进行加密; 显示模块,用于将所述加密后的字符密码显示于所述终端设备的交互界面。
8.如权利要求7所述的一种密码安全输入系统,其特征在于,所述在终端设备上生成的虚拟键盘键值与原始键盘键值具有一一对应的映射关系。
9.如权利要求8所述的一种密码安全输入系统,其特征在于,在显示模块,用于将所述加密后的字符密码显示于所述终端设备的交互界面之后还包括: 解密模块,用于根据预先存储的解密算法以及虚拟键盘键值与原始键盘键值的映射关系,对所述加密后的字符密码进行解密,得到原始字符密码; 发送模块,用于将所述得到的原始字符密码发送给认证服务器,以使认证服务器对所述原始密码进行认证。
10.如权利要求9所述的一种密码安全输入系统,其特征在于,所述发送模块,用于将所述得到的原始字符密码发送给认证服务器具体包括: 按照认证服务器的相关协议将所述原始字符密码发送给所述认证服务器,其中,所述相关协议包括TCP/IP、NetBEUI协议、CCID协议和HTTP。
【文档编号】G06F21/83GK104463040SQ201410797271
【公开日】2015年3月25日 申请日期:2014年12月18日 优先权日:2014年12月18日
【发明者】杨凤萍, 王玉岗 申请人:恒宝股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1