一种扩充密码输入的方法和装置的制作方法

文档序号:7699223阅读:149来源:国知局
专利名称:一种扩充密码输入的方法和装置的制作方法
技术领域
本发明涉及信息安全领域,尤其涉及一种扩充密码输入的方法和装置。
背景技术
目前,用户进行密码输入时,输入的密码直接被连接到互联网络中的终端
设备(如计算机)接收,并将用户输入的密码通过互联网络发送到银行服务 中心,由银行服务中心对用户输入的密码进行认证。用户输入的密码在互联网 络的传输过程中,很容易被非法用户通过互联网络截获,用户输入的密码的安 全性日益被人们关注。
银行为了克服用户密码在输入和传输过程中安全性较低的问题,使用了许 多新的改进方案,如使用数字证书等方法,然而并没有很好的解决这个问题, 用户输入的密码仍然由连接到互联网中的终端设备(如计算机)接收,终端 设备的被非法控制或监视的情况下,在密码输入的过程中非法用户仍然可以通 过监控所述连接到互联网络中的终端设备将用户输入的密码截获,使用户输入 密码的安全性依然没有保障。

发明内容
本发明提供一种扩充密码输入的方法和装置,提高密码输入的安全性,使 得密码在输入过程中不易被截获。
为达到上述目的,本发明采用如下技术方案 一种扩充密码输入的方法,包括 接收服务器发送的包含有操作指令的数据包; 对接收到的所述数据包进行解析得到所述操作指令;判断所述操作指令是否为密码校验指令;
如果所述操作指令不是密码校验指令,则将所述操作指令发送给智能卡; 如果所述操作指令为密码校验指令,则接收用户输入的密码; 将所述输入密码封装到所述密码校验指令中; 将封装有用户输入密码的密码校验指令发送给智能卡。 一种扩充密码输入的装置,包括
第一通信模块,用于接收服务器发送的包含有操作指令的数据包; 数据解析模块,用于对接收到的所述数据包进行解析,得到所述操作指令; 判断模块,用于判断所述操作指令是否为密码检验指令; 第二通信模块,用于在所述操作指令不是密码校验指令时,将所述操作指 令发送给智能卡;
接收模块,用于在所述操作指令为密码校验指令时,接收用户输入的密码; 指令封装模块,用于将所述输入密码封装到所述密码校验指令中; 第二通信模块还用于将封装有用户输入密码的密码校验指令发送给智能卡。
采用上述方案后,用户输入的密码直接由所述扩充密码输入的装置接收, 避免了由连接到互联网络的终端设备接收,使用户输入的密码不会出现在终端 设备中,也不会在互联网络中传输,防止了非法用户通过监控所述终端设备将 用户输入的密码截获的可能性,保证了用户输入密码的安全。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述 中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付
6出创造性劳动性的前提下,还可以根据这些附图荻得其他的附图。
图1为本发明实施例1扩充密码输入的方法流程图; 图2为本发明实施例1扩充密码输入的装置组成框图; 图3为本发明实施例2扩充密码输入的方法流程图; 图4为本发明实施例2扩充密码输入的装置组成框图;
具体实施例方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造 性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本发明实施例4是供一种扩充密码输入的方法,如图1所示,该方法包括
101、 扩充密码输入的装置接收服务器发送的数据包,该数据包中包含有操 作指令;
102、 当所述扩充密码输入的装置接收到所述服务器发送的数据包后,对所 述数据包进行解析得到操作指令,解析后得到的所述操作指令的格式符合7816 规范(该规范为国际智能卡规范),它包括以下几个部分CLA、 INS、 Pl、 P2、 LC、 DATA;
其中,CLA(ClAss,类)字节,表示指令类型,其长度为一个字节;INS (INStructic,命令)字节,其长度为一个字节, 一个INS字段表示一个特 定的指令,即指令名;P1和P2 (Parameters 1 and 2,两个参数)字节,Pl、 P2的长度分别是一个字节,用于检验INS字段,或者用于输入数据;LC(Length of Command parameters )为可选字段指令参数,是命令数椐字段的字节数;DATA,数据字段即指令数据,其长度为LC的值;概括地,CLA、 INS、 Pl、 P2可以称为 指令头,LC为指令参数,MTA部分为指令数据;
所述数据的解析具体如下如果扩充密码输入的装置通过USB接口与服务 器连接,则将USB接口中传入的符合CCID (Chip/Smart Card Interface Devices, 智能卡读写器)协议的数据包进行解析,从中获取符合7816规范的操作指令; 扩充密码输入的装置还可以通过1394接口或其它接口与服务器连接,相应的将 按照与其相对应的协议封装传输的数据包进行解析,并从中获取7816规范的操 作指令;
103、 当所述扩充密码输入装置接收到所述解析后的操作指令后,根据所述 操作指令的指令头携带的指令类型进行判断,判断所述操作指令是否为密码校 验指令;如果所述操作指令不是密码校验指令,则执行步骤104;如果所述操作 密码是密码校验指令,则执行步骤105;
104、 扩充密码输入的装置将所述操作指令发送给智能卡,以便智能卡根据 所述操作指令进行相应的操作。
105、 所述扩充密码输入的装置接收用户输入的密码,所述用户输入的密码 有两种方式,第一种,当用户通过扩充密码输入装置自带的键盘输入密码时, 扩充密码输入装置将^t盘输入的数据作为用户输入的密码;第二种,当经过一 段时间后,用户没有通过所述键盘输入密码,则扩充密码输入装置自动产生一 串随机数,并将所述随^L数作为用户输入的密码;
106、 当所述扩充密码输入装置接收完所述用户输入的密码后,将所述用户 输入的密码封装到所述密码才L险指令中;
107、 当所述用户输入的密码封装在读卡器发送的密码检验指令中后,所述 扩充的密码输入装置将封装有所述密码的密码校验指令发送给智能卡,以便所述智能卡对用户输入的密码进行认证。
本发明实施例还提供一种扩充密码输入的装置,如图2所示,该设备包括 第一通信模块21、数据解析模块22、判断模块23、接收模块24、指令封装模 块25、第二通信模块26。
所述扩充密码输入设备通过第一通信模块21接收服务器发送的包含有操作 指令的数据包;当接收到所述服务器发送的数据包后,所述扩充密码输入装置 通过数据解析模块22从所述数据包中解析出操作指令,该操作指令包括指令头、 指令参数和指令数据,所述指令头携带的信息为指令类型和指令名等,指令参 数为所述指令数据的字节数,所述数据的解析具体如下如果扩充密码输入的 装置通过USB接口与服务器连接,则将USB接口中传入的符合CCID (Chip/Smart Card Interface Devices,智能卡读写器)协议的数据包进行解析,从中获取符 合7816规范的操作指令;扩充密码输入的装置还可以通过1394接口或其它接 口与服务器连接,相应的将按照与其相对应的协议封装传输的数据包进行解析, 并从中获取7816规范的操作指令;
数据解析后,所述扩充密码输入装置利用判断模块23判断所述操作指令的 指令头中的指令类型是否为密码校验指令;若所述操作指令不是密码检验指令, 则所述扩充的密码输入装置通过第二通信模块26将所述操作指令发送给智能 卡,以便智能卡根据所述操作指令进行相应的操作;若所述操作指令为密码校 验指令,则所述扩充的密码输入装置利月接收模块24接收用户输入的密码;并 通过所述指令封装模块25将所述接收模块24接收的密码封装到所述密码校验 指令中;在所述密码封装到密码检验指令中后,所述扩充密码输入装置通过第 二通信模块26将封装有所述密码的密码检验指令发送给智能卡,以便智能卡对 用户输入的密码进行认证。本发明实施例中,用户输入的密码由所述扩充密码输入的装置接收,而不
是由连接到互联网络中的终端设备(如计算机)接收,避免了非法用户通过 互联网络监控所述终端设备将用户输入的密码截获的可能性,提高了用户输入 密码的安全性;并且由所述扩充密码输入的装置将用户输入的密码经封装后发 送给所述智能卡,使用户输入的密码的传输不用经过连接到互联网络中的终端 设备便可以实现,防止了用户输入的密码在传输过程中被非法用户截获的可能 性,保证了用户输入密码的安全性。 实施例2
本发明实施例提供一种扩充密码输入的方法,如图3所示,该方法包括
301、 所述扩充密码输入装置接收所述服务器发送的数据包,该数据包中包 含有操作指令;
302、 当接收到服务器发送的数据包后,所述扩充密码输入装置对所述数据 包进行解析得到操作指令,该操作指令的格式符合7816规范(该规范为国际智 能卡规范),它包括以下几个部分CLA、 INS、 Pl、 P2、 LC、 DATA;
其中,CLA(ClAss,类)字节,表示指令类型,其长度为一个字节;INS (INStructic,命令)字节,其长度为一个字节, 一个INS字段表示一个特 定的指令,即指令名;P1和P2 (Parameters 1 and 2,两个参数)字节,Pl、 P2的长度分别是一个字节,用于检验INS字段,或者用于输入数据(Length of Command parameters,可选字段指令参数),;LC是命令数据字段的字节数;DATA, 数据字段即指令数据,其长度为LC的值;概括地,CLA、 INS、 Pl、 P2可以称为 指令头,LC为指令参数,DATA部分为指令数据;
所述数据的解析具体如下如果扩充密码输入的装置通过USB接口与服务 器连接,则将USB接口中传入的符合CCID (Chip/Smart Card Interface Devices,智能卡读写器)协议的数据包进行解析,从中获取符合7816规范的操作指令; 扩充密码输入的装置还可以通过1394接口或其它接口与服务器连接,相应的将 按照与其相对应的协议封装传输的数据包进行解析,并从中获取7816规范的操 作指令;
303、 当所述扩充密码输入装置接收到所述操作指令后,需要判断所述操作 指令的指令头所携带的指令类型是否为密码校验指令;若所述操作指令不是所 述密码校验指令,则执行步骤304;若所述操作指令是所述密码校验指令,则执 行步骤305;
304、 将所述操作指令发送给智能卡,以便智能卡根据所述操作指令进行相 应的操作,执行步骤309;
305、 扩充密码输入装置播放密码输入的提示信息,提示用户可以输入密码 了 ,该密码输入提示信息可以是语音播放或者屏幕播放或者语音播放和屏幕播 放相结合;
306、 用户接收到所述扩充密码输入装置播放的密码输入提示信息后,若在 一定时间范围内通过所输扩充密码输入装置自带的4定盘输入密码,则所述扩充 密码输入装置接收所述用户通过键盘输入的数据并将所述数据作为用户输入的 密码,若在一定时间范围内没有通过所述键盘输入密码,扩充密码输入装置将 自动产生一串随机数,并将所述随机数作为用户输入的密码;
307、 扩充密码输入装置将接收到的所述用户输入的密码封装到所述密码校 验指令中,同时扩充密码输入装置播放状态信息,如正在处理中,请稍候等;
其中,将用户输入的密码封装在密码校验指令的过程,以所述服务器发送 的操作指令为00200000021234为例说明操作指令的指令头为00200000,其中 CLA为00、 INS为20、 Pl为00、 P2为00,表示该操作指令为密码校验指令;指令参数LC为02,表示该操作指令的指令数据为2个字节,1234为该操作指 令的指令数据DATA,具体封装过程如下
扩充密码输入装置删除所述服务器发送的密码校验指令的指令参数02和指 令数据1234,扩充密码输入装置将所述用户输入的密码补充到所述密码校验指 令的指令数据部分,以用户输入的密码为112233为例,所述指令数据补充完成 后,将当前用户输入密码的对应的参数添加到所述密码校验指令的指令参数部 分中,实现密码校验指令参数的更新,将用户输入的密码封装到所述密码校验 指令中的密码校验指令的内容为0020000003112233;
进一步的,在将用户输入的密码封装到密码校验指令中之前,还可以对用 户输入的密码进行算法变换,然后将算法变换后的用户输入的密码封装到密码 校验指令中;可以使用现有技术中的任一种加密算法或哈希算法对用户输入的 密码进行算法变换,例如,密码输入设备接收到的用户输入的密码为4321,佳_ 用MD5算法(Message-digest Algorithm 5,信息-摘要算法)进行运算,得 到运算结果为abcd5678,则指令参数为04,指令数据为abcd5678,则生成的密 码校验指令的内容为0020000004abcd5678。
308、 完成所述用户输入的密码的封装后,所述扩充密码输入装置将封装有 所述用户输入密码的校验指令发送给智能卡,便于所述智能卡对用户输入的密 码进行认证;
309、 所述扩充密码输入装置接收所述智能卡返回的所述指令的执行结果, 当智能卡接收的是密码校验指令时,返回的是用户输入的密码的认证结杲,该 结果包括用户输入的密码正确和用户输入的密码不正确;当所述智能卡接收的 是非密码校验指令,返回的就是操作指令的执行结果;
310、 将所述符合7816规范的指令执行结果按照相应接口的传输协议进行
12打包,生成可以在USB接口、 1394接口或其他接口中进行传输的数据包,以便 将智能卡返回的指令的执行结果发送给服务器;
311、扩充密码输入装置将打包后的包含有智能卡发送的指令的执行结果的 数据包发送给所述服务器,以便使所述服务器根据指令执行的结杲进行下一步 的操作。
本发明实施例还提供一种扩充密码输入装置,如图4所示,该装置包括 第一通信模块41、数据解析模块42、第二通信模块43、判断模块44、播放模 块45、接收模块46、指令封装模块47、算法变换模块48。
所述扩充密码输入装置通过所述第一通信模块41接收服务器发送的数据 包,当接收到所述服务器发送的数据包后,所述扩充密码输入装置通过数据解 析模块42从服务器发送的数据包中解析出操作指令,所述操作指令包括指令头、 指令参数和指令数据;所述数据解析具体如下如果扩充密码输入的装置通过 USB接口与服务器连接,则将USB接口中传入的符合CCID(Chip/Smart Card Interface Devices,智能卡读写器)协议的数据包进行解析,从中获取符合7816 规范的操作指令;扩充密码输入的装置还可以通过1394接口或其它接口与服务 器连接,相应的将按照与其相对应的协议封装传输的数据包进行解析,并从中 获取7816规范的操作指令;
当进行完数据解析,获得操作指令后,所述扩充密码输入装置利用判断模 块44判断所述服务器发送的操作指令的指令头中所携带的指令类型是否为密码 校验指令;在所述操作指令为密码校验指令时,要进行密码的输入,在进行密 码输入之前, 一般都要进行用户输入密码的提示,所述扩充密码输入装置通过 播放模块45播》欠提示用户输入密码的提示信息,该提示信息可以是语音播放或 者屏幕显示或者语音播放和屏幕显示相结合;当用户接收到所述扩充密码输入装置播放的密码提示信息后,利用所述扩充密码输入装置自带的键盘输入密码,
该键盘可以是按键式键盘或者触摸式键盘,接收模块46接收用户通过所述键盘 输入的密码;当用户接收到所述扩充密码输入装置播放的密码输入提示信息后, 在一定时间范围内没有通过所述键盘输入密码,所述扩充密码输入装置将自动 产生一串随机数,所述接收模块46用于接收所述随机数,并将所述随机数作为 用户输入的密码;
当所述接收模块46接收完所述用户输入的密码后,所述扩充密码输入装 置通过指令封装模块47将所述接收模块46接收到的密码封装到所述密码校验 指令中;所述进行密码封装的过程中,所述播放模块45用于播放扩充密码输入 装置处理的状态如正在处理中,请稍候,提请用户耐心等待;当所述输入密 码封装完成以后,所述扩充密码输入装置将封装有所述输入密码的密码校验指 令通过第二通信模块43发送给智能卡;
智能卡对用户输入的密码进行认证,将所认证的结果返回给所述扩充密码 输入装置,在接收智能卡返回的密码检验指令执行的结果时,所述扩充密码输 入装置利用所述第二通信模块43接收所述智能卡返回的所述密码校验指令的执 行结果;通过所述格式转换模块42对所述符合7816规范的指令执行结果按照 相应接口的传输协议进行打包,生成可以在USB接口、 1394接口或其他接口中 进行传输的数据包;并通过所述第一通信模块41将数据传输格式转换后的所述 密码校验指令的执行结果发送给所述服务器,便于所述服务器根据所述结果与 服务器之间进行通信;
当所述操作指令不是密码校验指令时,所述扩充密码输入装置通过所述第 二通信模块43将所述操作指令发送给智能卡,以便所述智能卡根据所述操作指 令进行相应的操作;智能卡对接收到的梯:作指令进行处理后,向所述扩充密码输入装置发送所 述指令执行的结果,当所述扩充密码输入装置接收智能卡返回的操作指令执行 的结果时,所述扩充密码输入装置通过所述第二通信模块43接收所述操作指令
执行的结果;为了使所述操作指令的执行结果可以返回给服务器,所述扩充密 码输入装置利用所述数据解析模块42对所述符合7816规范的指令执行结果按 照相应接口的传输协议进行打包,生成可以在USB接口 、 1394接口或其他接口 中进行传输的数据包;并通过所述第一通信模块41将封装有所述操作指令执行 的结果数据包发送给所述服务器,以便所述服务器根据所述操作指令执行的结 果,执行下一步的操作;
其中,在所述扩充密码输入装置利用所述指令^t块47将所述输入密码封装 到所述密码校验指令中时包括所述封装指令模块47将所述服务器发送的密码 校验指令的指令参数和指令数据删除;当删除完所述密码校验指令的指令参数 和指令数据后,所述指令封装模块47还用于将用户输入的密码补充到所述指令 数据部分;当所述用户输入的密码补充到所述指令数据部分后,所述指令修改 模块47还用于将所述指令参数更新为所述用户输入的密码对应的参数。
其中,在所述指令封装模块47将所述用户输入密码封装到所述密码校验指 令中之前,还可以对用户输入的密码进行算法变换,如图4虚线部分所示,算 法变换模块48,用于将用户输入的密码进行算法变换,对用户输入的密码进行 算法变换的方法包括,加密算法哈希、加密;当所述算法变换模块48将用户输 入的数据进行算法变换操作后,所述指令封装模块47用于将所述读卡器发送的 密码校验指令的指令参数和指令数据删除;当删除完所述密码校验指令的指令 参数和指令数据后,所述指令封装模块47还用于将算法变换后的用户输入的密 码补充到所述指令数据部分;当所述用户输入的密码补充到所述指令数据部分后,所述指令封装;f莫块47还用于将所述指令参数更新为所述算法变换后的用户 输入的密码对应的参数。
本发明实施例中,用户输入的密码直接由所述扩充密码输入装置接收,而 不是由所述连接到互联网络中的终端设备(如计算机)接收,避免了非法用 户监控所述终端设备获fi所述用户输入的密码,提高了用户输入密码的安全性; 所述扩充密码输入装置将用户输入的密码封装到密码冲L睑指令中发送给所述智 能卡,而不是由所述连接到互联网络中的终端设备发送给所述智能卡,使用户 输入的密码的传输没有在互联网络中进行,防止了非法用户通过互联网络将用 户输入的密码截获,保证了用户输入密码的安全性。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发 明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多 情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或 者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软 件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若 干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备 等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于 此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到 变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应 以权利要求的保护范围为准。
权利要求
1、一种扩充密码输入的方法,其特征在于,包括接收服务器发送的包含有操作指令的数据包;对接收到的所述数据包进行解析得到所述操作指令;判断所述操作指令是否为密码校验指令;如果所述操作指令不是密码校验指令,则将所述操作指令发送给智能卡;如果所述操作指令为密码校验指令,则接收用户输入的密码;将所述用户输入的密码封装到所述密码校验指令中;将封装有用户输入密码的密码校验指令发送给智能卡。
2、 根据权利要求1所述的扩充密码输入的方法,其特征在于,当所述操作 指令为密码校验指令时,该方法还包括播放提示信息。
3、 才艮据权利要求1所述的扩充密码输入的方法,其特征在于,在将封装有 所述输入密码的密码校验令发送给所述智能卡之后,该方法还包括接收所述智能卡返回的所述密码校验指令的执行结果; 将所述密码校验指令的执行结果发送给所述服务器。
4、 根据权利要求1所述的扩充密码输入的方法,其特征在于,在将所述用 户输入的密码封装到所述密码校验指令中之前,该方法还包括对用户输入的 密码进行算法变换。
5、 根据权利要求1所述的扩充密码输入的方法,其特征在于,将所述输入 密码封装到所述密码校验指令中包括删除所述密码校验指令的指令参数和指令数据; 将所述输入密码补充到所述密码校验指令的指令数据部分; 将所述密码校验指令的指令参数更新为当前指令数据对应的参数。
6、 一种扩充密码输入装置,其特征在于,包括第一通信冲莫块,用于接收服务器发送的包含有操作指令的数据包;数据解析模块,用于对接收到的所述数据包进行解析得到所述操作指令;判断模块,用于判断所述操作指令是否为密码检验指令;第二通信模块,用于在操作指令不是密码校验指令时,将所述操作指令发 送给智能卡;接收模块,用于在所述操作指令为密码校验指令时,接收用户输入的密码; 指令封装模块,用于将所述输入密码封装到所述密码校验指令中; 第二通信模块还用于将封装有用户输入密码的密码校验指令发送给智能卡。
7、 根据权利要求6所述的扩充密码输入装置,其特征在于,还包括 播放模块,用于在所述操作指令为密码校验指令时,播放提示信息。
8、 根据权利要求6所述的扩充密码输入装置,其特征在于, 所述第二通信模块还用于接收所述智能卡返回的所述密码校验指令的执行结果;所述第一通信模块还用于将所述密码校验指令的执行结果发送给所述服务器。
9、 根据权利要求6所述的扩充密码输入装置,其特征在于,还包括 算法变换模块,用于在将所述用户输入的密码封装到所述密码校验指令中之前对用户输入的密码进行算法变换。
10、 根据权利要求6所述的扩充密码输入装置,其特征在于, 所述指令封装模块还用于删除所述密码校验指令的指令参数和指令数据; 所述指令封装模块还用于将所述输入密码补充到所述密码校验指令的指令数据部分;所述指令封装模块还用于将所述密码校验指令的指令参数更新为当前指令 数据对应的参数。
全文摘要
本发明公开了一种扩充密码输入的方法和装置,涉及信息安全领域,解决了用户输入的密码容易被截获的问题。接收服务器发送的包含有操作指令的数据包;对接收到的所述数据包进行解析得到所述操作指令;判断所述操作指令是否为密码校验指令;如果所述操作指令不是密码校验指令,将所述操作指令发送给智能卡;如果所述操作指令为密码校验指令,则接收用户输入的密码;将所述输入密码封装到所述密码校验指令中;将封装有所述用户输入密码的密码校验指令发送给智能卡。本发明主要用于各种智能卡的密码输入过程中,提高密码输入的安全性,使得密码在输入过程中不易被截获。
文档编号H04L29/06GK101515930SQ20091007988
公开日2009年8月26日 申请日期2009年3月13日 优先权日2009年3月13日
发明者于华章, 舟 陆 申请人:北京飞天诚信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1