密码输入方法、安全芯片及系统与流程

文档序号:13767933阅读:287来源:国知局

本发明涉及通信技术,尤其涉及一种密码输入方法、安全芯片及系统。



背景技术:

随着通信技术的发展,手机、平板电脑等终端设备得到了广泛应用。用户在使用终端设备的过程中需要输入密码的场景越来越多,例如,登录手机银行时输入密码,使用手机银行等移动支付业务进行电子商务的支付时输入密码。为了保护用户的资金安全,提高用户在使用终端设备进行密码输入时的安全性问题变得非常重要。

现有技术中,在用户进行密码输入时,终端设备的中央处理器(CentralProcessingUnit;简称:CPU)生成随机数据序列,根据该随机数据序列及键盘位置序列生成随机键盘,并将该随机键盘发送给显示屏进行显示,用户在触摸屏上基于随机键盘输入用户密码,CPU获取用户在触摸屏上的输入位置,并根据键盘位置序列、随机数据序列和输入位置得到用户密码。

但是,上述过程中,在CPU生成随机数据序列、生成随机键盘及CPU获取用户在触摸屏上的输入位置的过程中,可能存在随机键盘和用户的输入位置被其他插件或者程序截取,从而获得用户密码,威胁用户的资金安全,因此,上述过程在用户进行密码输入时的安全性低。



技术实现要素:

本发明提供一种密码输入方法、安全芯片及系统,以提高密码输入的安全性。

本发明提供一种密码输入方法,包括:

安全芯片生成随机数据序列,并将所述随机数据序列发送给中央处理器CPU,以使所述CPU根据键盘位置序列及所述随机数据序列在显示屏上显示随机键盘,其中,所述随机数据序列与所述键盘位置序列一一对应;

所述安全芯片获取用户通过触摸屏在所述随机键盘上的输入位置,并根据所述输入位置、所述键盘位置序列及所述随机数据序列确定用户密码;

所述安全芯片对所述用户密码进行加密,生成加密数据,并将所述加密数据发送给所述CPU。

进一步地,所述安全芯片生成随机数据序列之前,还包括:

所述安全芯片接收所述CPU发送的工作启动指令。

进一步地,所述安全芯片根据所述输入位置、所述键盘位置序列及所述随机数据序列确定用户密码,包括:

所述安全芯片根据所述输入位置及所述键盘位置序列确定与所述输入位置对应的子键盘位置序列;

所述安全芯片根据所述子键盘位置序列及所述随机数据序列确定与所述子键盘位置序列对应的子随机数据序列;

所述安全芯片确定所述子随机数据序列为所述用户密码。

进一步地,所述安全芯片对所述用户密码进行加密,生成加密数据,包括:

所述安全芯片采用数据加密标准DES对所述用户密码进行加密,生成加密数据;或者,

所述安全芯片采用高级加密标准AES对所述用户密码进行加密,生成加密数据。

进一步地,所述安全芯片接收所述CPU发送的工作启动指令之后,还包括:

所述安全芯片根据所述工作启动指令向所述CPU发送工作启动指令的响应指令。

本发明还提供一种安全芯片,包括:

生成模块,用于生成随机数据序列,并将所述随机数据序列发送给中央处理器CPU,以使所述CPU根据键盘位置序列及所述随机数据序列在显示屏上显示随机键盘,其中,所述随机数据序列与所述键盘位置序列一一对应;

获取模块,用于获取用户通过触摸屏在所述随机键盘上的输入位置,并根据所述输入位置、所述键盘位置序列及所述随机数据序列确定用户密码;

加密模块,用于对所述用户密码进行加密,生成加密数据,并将所述加密数据发送给所述CPU。

进一步地,所述安全芯片还包括:

第一接收模块,用于接收所述CPU发送的工作启动指令。

进一步地,所述获取模块具体包括:

获取子模块,用于获取用户通过触摸屏在所述随机键盘上的输入位置

第一确定子模块,用于根据所述输入位置及所述键盘位置序列确定与所述输入位置对应的子键盘位置序列;

第二确定子模块,用于根据所述子键盘位置序列及所述随机数据序列确定与所述子键盘位置序列对应的子随机数据序列;

第三确定子模块,用于确定所述子随机数据序列为所述用户密码。

进一步地,所述安全芯片还包括:

发送模块,用于根据所述工作启动指令向所述CPU发送工作启动指令的响应指令。

本发明还提供一种密码输入系统,包括:

中央处理器CPU、显示屏、触摸屏及如权利要求6-9任一项所述的安全芯片;

所述安全芯片分别与所述CPU及所述触摸屏连接,所述CPU与所述显示屏连接。

本发明提供的密码输入方法、安全芯片及系统,通过安全芯片生成随机数据序列,并将随机数据序列发送给CPU,以使CPU根据键盘位置序列及随机数据序列在显示屏上显示随机键盘,其中,随机数据序列与键盘位置序列一一对应,安全芯片获取用户在随机键盘上的输入位置,并根据输入位置、键盘位置序列及随机数据序列确定用户密码,安全芯片对用户密码进行加密,生成加密数据,并将加密数据发送给CPU,通过安全芯片生成随机数据序列,并通过安全芯片获取用户的输入位置,最终确定用户密码,并对用户密码进行加密,生成加密数据,发送给CPU,由于安全芯片的安全性更高,相较于CPU生成随机键盘序列及获取用户的输入位置的方式,安全芯片生成的随机数据序列及其获取的用户的输入位置不会被读取,从而,提高了用户进行密码输入时的安全性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的密码输入系统的结构示意图;

图2为本发明提供的密码输入方法实施例一的流程示意图;

图3为图2中提供的随机键盘的结构示意图;

图4为本发明提供的密码输入方法实施例二的流程示意图;

图5为本发明提供的安全芯片实施例一的结构示意图;

图6为本发明提供的安全芯片实施例二的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。

图1为本发明提供的密码输入系统的结构示意图。如图1所示,本发明提供的密码输入系统包括:

CPU101、显示屏102、触摸屏103及安全芯片104。安全芯片104分别与CPU101和触摸屏103连接,CPU101与显示屏102连接。

安全芯片104连接于CPU101和触摸屏103之间,将CPU101和触摸屏103进行了物理隔离。该安全芯片104可以执行下面将要描述的密码输入方法。

该密码输入系统可以是手机、平板电脑、个人数字助理(PersonalDigitalAssistant;简称:PDA)及车载电脑等用户终端设备。用户可以使用该密码输入系统进行密码输入以登录手机银行及进行移动支付等业务。

图2为本发明提供的密码输入方法实施例一的流程示意图。如图2所示,本实施例提供的密码输入方法包括:

S101:安全芯片生成随机数据序列,并将随机数据序列发送给CPU,以使CPU根据键盘位置序列及随机数据序列在显示屏上显示随机键盘。

其中,随机数据序列与键盘位置序列一一对应。

具体地,本实施例中的安全芯片可以是现有技术中的安全芯片,安全芯片只能被写入数据而不会被读取。安全芯片基于自身内部的逻辑生成随机数据序列,生成之后将该随机数据序列发送给CPU。CPU中存储有键盘位置序列,CPU接收安全芯片发送的随机数据序列,并根据键盘位置序列和随机数据序列生成随机键盘。

本实施例中的随机键盘可以是只有0-9这10个数字的键盘,也可以是包含26个英文字母及10个数字的键盘,还可以是包含26个英文字母、10个数字及常用标点符号的键盘。本实施例中以随机键盘是10个数字进行说明,可以理解的是,当随机键盘为其他两种形式的时候,其实现原理类似。

键盘位置序列表示的是随机键盘的显示位置及显示形式,当随机键盘的显示位置及显示形式为固定形式的时候,例如,图3为图2中提供的随机键盘的结构示意图,当随机键盘的显示位置及显示形式为图3所示的形式时,键盘位置序列可以是00-09这10个两位数字,依照从左至右、从上至下的顺序进行标号,用00表示左上角的位置,用09表示右下角的位置。随机数据序列与键盘位置序列一一对应,意为,随机数据序列的个数与键盘位置序列的个数相同且按照序列的排列顺序对应。举例来说,假设随机数据序列为3517924068,则00对应3,01对应5,……,09对应8,最终显示出的随机键盘如图3所示。可以理解的是,当随机键盘为只有0-9这10个数字的键盘时,为了实现随机键盘,随机数据序列为0-9之间的数字组成的包含该全部的10个数字且每个数字仅出现一次的序列。当随机键盘为包含26个英文字母及10个数字的键盘时,为了实现随机键盘,随机数据序列为包含全部26个英文字母及0-9之间的10个数据且每个字母与数字仅出现一次的序列。

需要说明的是,当随机键盘的显示位置及显示形式不是固定形式的时候,键盘位置序列可以是矩阵形式,矩阵中的每一行表示一个键盘位置,每一行中的第一列表示横坐标,第二列表示纵坐标。该矩阵为10×2的矩阵,随机数据序列与矩阵中的每一行一一对应。

S102:安全芯片获取用户通过触摸屏在随机键盘上的输入位置,并根据输入位置、键盘位置序列及随机数据序列确定用户密码。

具体地,触摸屏和显示屏相互重叠设置,显示屏上显示有随机键盘,用户可以通过触摸屏在随机键盘上输入用户密码。

安全芯片首先获取用户通过触摸屏在随机键盘上的输入位置,具体为,触摸屏通过IIC协议实现让用户进行输入,安全芯片中设置有IIC协议的驱动,从而,能够获取用户通过触摸屏在随机键盘上的输入位置。输入位置的数量与用户密码的长度一样,可选的,安全芯片获取用户的输入位置之后,可以按照用户的输入顺序将输入位置进行存储。

获得用户的输入位置后,根据输入位置、键盘位置序列及随机数据序列之间的对应关系确定用户密码。

S103:安全芯片对用户密码进行加密,生成加密数据,并将加密数据发送给CPU。

具体地,安全芯片确定出用户密码之后,对用户密码进行加密,安全芯片可以采用数据加密标准(DataEncryptionStandard;简称:DES)对用户密码进行加密,生成加密数据。或者,安全芯片还可以采用高级加密标准(AdvancedEncryptionStandard;简称:AES)对用户密码进行加密,生成加密数据。例如,采用中国金融集成电路(IC)卡规范(PBOC3.0)等个人身份认证码(PersonalIdentificationNumber;简称:PIN码)加密。安全芯片生成加密数据后,将加密数据发送给CPU,以进行下一步的操作。

在S101-S103的过程中,安全芯片生成随机数据序列,并且安全芯片获取用户通过触摸屏在随机键盘上的输入位置,获得用户密码后,加密后发送给CPU,由于安全芯片的特性,其只能被写入数据而不能读取,因此,其生成的随机数据序列不会被其他程序或插件读取,且其获取的用户的输入位置也不会被读取,因此,用户输入的用户密码不会被其他插件或者程序获知,提高了密码输入的安全性。

本发明提供的密码输入方法,通过安全芯片生成随机数据序列,并将随机数据序列发送给CPU,以使CPU根据键盘位置序列及随机数据序列在显示屏上显示随机键盘,其中,随机数据序列与键盘位置序列一一对应,安全芯片获取用户在随机键盘上的输入位置,并根据输入位置、键盘位置序列及随机数据序列确定用户密码,安全芯片对用户密码进行加密,生成加密数据,并将加密数据发送给CPU,通过安全芯片生成随机数据序列,并通过安全芯片获取用户的输入位置,最终确定用户密码,并对用户密码进行加密,生成加密数据,发送给CPU,由于安全芯片的安全性更高,相较于CPU生成随机数据序列及获取用户的输入位置的方式,安全芯片生成的随机数据序列及其获取的用户的输入位置不会被读取,从而,提高了用户进行密码输入时的安全性。

图4为本发明提供的密码输入方法实施例二的流程示意图。本实施例提供的密码输入方法在图2所示实施例的基础上,对S101之前的步骤及S102的步骤作一具体的说明。如图4所示,本实施例提供的密码输入方法包括:

S401:安全芯片接收CPU发送的工作启动指令。

具体地,在用户需要进行密码输入操作的时候,CPU会发送一个工作启动指令给安全芯片以指示安全芯片进行工作。安全芯片接收该工作启动指令。可选的,安全芯片会根据该工作启动指令向CPU发送工作启动指令的响应指令。在安全芯片向CPU发送工作启动指令的响应指令之后,安全芯片获得触摸屏的权限,通过硬件截断CPU和触摸屏的通信。

S402:安全芯片生成随机数据序列,并将随机数据序列发送给CPU,以使CPU根据键盘位置序列及随机数据序列在显示屏上显示随机键盘。

其中,随机数据序列与键盘位置序列一一对应。

S402与S101实现过程相同,此处不再赘述。

S403:安全芯片根据输入位置及键盘位置序列确定与输入位置对应的子键盘位置序列。

S404:安全芯片根据子键盘位置序列及随机数据序列确定与子键盘位置序列对应的子随机数据序列。

S405:安全芯片确定子随机数据序列为用户密码。

具体地,子键盘位置序列包含于键盘位置序列,子随机数据序列包含于随机数据序列。子键盘位置序列的长度及子随机数据序列的长度都与用户密码的长度相同。举例来说,以图3所示随机键盘为例,键盘位置序列为00-09这10个两位数字,随机数据序列为3517924068,假设用户密码为1234,此时安全芯片能获取到用户的输入位置,根据输入位置及键盘位置序列可以确定与输入位置对应的子键盘位置序列为02-05-00-06。获得子键盘位置序列之后,根据子键盘位置序列及随机数据序列确定与子键盘位置序列对应的子随机数据序列,本例中,02对应的随机数据序列中的数为1,05对应的为2,00对应的为3,06对应的为4,则确定与子键盘位置序列对应的子随机数据序列为1234。安全芯片确定子随机数据序列为用户密码,即1234为用户密码。

S406:安全芯片对用户密码进行加密,生成加密数据,并将加密数据发送给CPU。

S406与S103实现过程相同,此处不再赘述。

本实施例提供的密码输入方法,通过安全芯片接收CPU发送的工作启动指令,安全芯片生成随机数据序列,并将随机数据序列发送给CPU,以使CPU根据键盘位置序列及随机数据序列在显示屏上显示随机键盘,安全芯片根据输入位置及键盘位置序列确定与输入位置对应的子键盘位置序列,安全芯片根据子键盘位置序列及随机数据序列确定与子键盘位置序列对应的子随机数据序列,安全芯片确定子随机数据序列为用户密码,安全芯片对用户密码进行加密,生成加密数据,并将加密数据发送给CPU,除了用户进行密码输入时的安全性更高之外,安全芯片还能在CPU发出工作启动指令后进入工作状态,获得触摸屏权限授权,灵活性更高,提高了用户体验。

图5为本发明提供的安全芯片实施例一的结构示意图。如图5所示,本实施例提供的安全芯片包括:

生成模块51,用于生成随机数据序列,并将随机数据序列发送给CPU,以使CPU根据键盘位置序列及随机数据序列在显示屏上显示随机键盘。

其中,随机数据序列与键盘位置序列一一对应。

获取模块52,用于获取用户通过触摸屏在随机键盘上的输入位置,并根据输入位置、键盘位置序列及随机数据序列确定用户密码。

加密模块53,用于对用户密码进行加密,生成加密数据,并将加密数据发送给CPU。

加密模块53具体用于采用DES对用户密码进行加密。或者,采用AES对用户密码进行加密。

本实施例提供的安全芯片用于执行图2所示实施例的密码输入方法,其实现原理类似,此处不再赘述。

本发明提供的安全芯片,通过设置生成模块,用于生成随机数据序列,并将随机数据序列发送给CPU,以使CPU根据键盘位置序列及随机数据序列在显示屏上显示随机键盘,其中,随机数据序列与键盘位置序列一一对应,获取模块,用于获取用户在随机键盘上的输入位置,并根据输入位置、键盘位置序列及随机数据序列确定用户密码,加密模块,用于对用户密码进行加密,生成加密数据,并将加密数据发送给CPU,通过该安全芯片生成随机数据序列,并通过该安全芯片获取用户的输入位置,最终确定用户密码,并对用户密码进行加密,生成加密数据,发送给CPU,由于安全芯片的安全性更高,相较于CPU生成随机数据序列及获取用户的输入位置的方式,安全芯片生成的随机数据序列及其获取的用户的输入位置不会被读取,从而,提高了用户进行密码输入时的安全性。

图6为本发明提供的安全芯片实施例二的结构示意图。如图6所示,本实施例提供的安全芯片在上述实施例的基础上,还包括:

第一接收模块61,用于接收CPU发送的工作启动指令。

发送模块62,用于根据工作启动指令向CPU发送工作启动指令的响应指令。

获取模块52具体包括:

获取子模块524,用于获取用户通过触摸屏在随机键盘上的输入位置。

第一确定子模块521,用于根据输入位置及键盘位置序列确定与输入位置对应的子键盘位置序列。

第二确定子模块522,用于根据子键盘位置序列及随机数据序列确定与子键盘位置序列对应的子随机数据序列。

第三确定子模块523,用于确定子随机数据序列为用户密码。

本实施例提供的安全芯片具体可用于执行图4所示实施例的密码输入方法,其实现原理类似,此处不再赘述。

本实施例提供的安全芯片,通过设置第一接收模块,用于接收CPU发送的工作启动指令,发送模块,用于根据工作启动指令向CPU发送工作启动指令的响应指令,第一确定子模块,用于根据输入位置及键盘位置序列确定与输入位置对应的子键盘位置序列,第二确定子模块,用于根据子键盘位置序列及随机数据序列确定与子键盘位置序列对应的子随机数据序列,第三确定子模块,用于确定子随机数据序列为用户密码,除了用户进行密码输入时的安全性更高之外,还能在CPU发出工作启动指令后进入工作状态,获得触摸屏权限授权,灵活性更高,提高了用户体验。

本发明还提供一种密码输入系统。如图1所示,其中的安全芯片104可以是图5或者图6所示的安全芯片。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

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