一种提高输入安全性的方法和装置的制造方法

文档序号:9631734阅读:297来源:国知局
一种提高输入安全性的方法和装置的制造方法
【技术领域】
[0001] 本发明涉及信息安全领域,尤其涉及一种提高输入安全性的方法和装置。
【背景技术】
[0002] 随着网络技术的发展,电子商务正在以惊人的速度发展,同时,黑客的攻击、病毒 和木马程序的泛滥,使得网络的安全性日渐受到挑战。特别是目前流行的网络大盗奇迹变 种,以及KeyLogger等木马程序,以记录按键信息为手段,盗取银行密码,非法获取他人资 金,给用户造成了较大损失。现有技术中,Windows系统下,NT驱动用于为键盘设备创建键 盘驱动设备对象,并为所创建的键盘驱动设备对象提供所需要的驱动分发处理函数,并且 可以对安全输入插件的请求作出响应,当用户在键盘设备上输入按键信息时,键盘过滤驱 动对象在NT驱动提供的驱动分发处理函数中将键盘设备上输入的按键信息存储到NT驱 动,安全输入插件通过向NT驱动发送请求获取到按键信息,并在输入框中进行显示,在按 键信息从键盘设备达到输入框的过程中,目前通常采用的安全措施也仅是进行了简单的加 解密。
[0003] 因此,为了防范在键盘上输入的内容如用户账号、密码等被截获,提出一种更高安 全级别的能够有效保护输入的密码等信息的方法,成为目前要解决的安全问题。

【发明内容】

[0004] 为了防范键盘输入信息被截获,本发明提供了一种提高输入安全性的方法和装 置,其具有安全方便的特点。
[0005] 本发明采用的技术方案如下:
[0006] 本发明提供的一种提高输入安全性的方法,包括:
[0007] 当键盘过滤驱动接收到键盘输入信息时,执行步骤al至步骤a3 :
[0008] 步骤al,所述键盘过滤驱动判断所述键盘输入信息是否为模拟键盘输入信息,是 则执行步骤a2,否则执行步骤a3 ;
[0009] 步骤a2,键盘过滤驱动清除当前存储的模拟键盘输入信息,等待接收下一个键盘 输入信息;
[0010] 步骤a3,键盘过滤驱动产生键盘输入信息,将接收到的键盘输入信息与产生的键 盘输入信息一同存入NT驱动密码存储队列的末尾地址,并将产生的键盘输入信息返回给 系统键盘线程;系统根据所述产生的键盘输入信息转换得到键盘输入发送到安全输入插 件。
[0011] 当安全输入插件接收到键盘输入时,执行步骤bl和步骤b2 :
[0012] 步骤bl,所述安全输入插件对接收到的键盘输入加密处理形成验证码,将所述验 证码发送给NT驱动;
[0013] 所述NT驱动接收所述安全输入插件发送的验证码,对所述验证码进行解密得到 解密结果,判断所述解密结果是否正确,是则所述NT驱动从NT驱动密码存储队列中首地址 存储的内容中获取键盘输入信息,然后删除NT驱动密码存储队列中首地址存储的内容,并 对所述键盘输入信息进行加密处理得到返回结果返回给所述安全输入插件;否则所述NT 驱动删除NT驱动密码存储队列中首地址存储的内容。
[0014] 步骤b2,所述安全输入插件接收所述NT驱动的返回结果,从所述返回结果中获取 明文密码,对所述明文密码进行加密得到密文密码并保存,在安全输入插件创建的输入框 中显示一个指定字符,并将所述输入框中的光标的位置移动到所述指定字符之后。
[0015] 当所述安全输入插件接收到外部应用发来的获取输入数据请求时,对保存的密文 密码解密得到明文密码,使用用户指定密钥对所述明文密码加密后传递给外部应用。
[0016] 本发明提供的一种提高输入安全性的装置,包括安全输入插件、NT驱动和键盘过 滤驱动;
[0017] 所述键盘过滤驱动包括第一接收模块、判断模块,清除模块、存储模块和运行模 块;
[0018] 所述第一接收模块,用于接收键盘输入信息;
[0019] 所述判断模块,用于判断所述键盘输入信息是否为模拟键盘输入信息,是则触发 清除模块工作,否则触发运行模块工作;
[0020] 所述清除模块,用于清除当前存储的模拟键盘输入信息;
[0021] 所述运行模块,用于产生键盘输入信息,将所述第一接收模块接收到的键盘输入 信息与产生的键盘输入信息一同存入NT驱动密码存储队列的末尾地址,并将产生的键盘 输入信息返回给系统键盘线程;
[0022] 所述存储模块,用于存储模拟键盘输入信息;
[0023] 所述安全输入插件包括第二接收模块、加解密模块和输入框显示模块;
[0024] 所述第二接收模块,用于接收键盘输入,并触发加解密模块工作;具体用于接收系 统发来的根据所述产生的键盘输入信息转换得到的键盘输入,并触发加解密模块工作。
[0025] 所述加解密模块,用于对所述第二接收模块接收到的所述键盘输入加密处理形成 验证码,并发送给NT驱动;用于接收所述NT驱动的返回结果,并从所述返回结果中获取明 文密码,对所述明文密码进行加密得到密文密码;
[0026] 所述输入框显示模块;用于显示指定字符和光标。
[0027] 所述安全输入插件还包括链接模块和传送模块;
[0028] 所述第二接收模块,还用于接收光标出现提醒消息和光标消失提醒消息,并触发 链接模块工作;
[0029] 所述链接模块,用于当所述接收模块接收到光标出现提醒消息时,链接NT驱动, 并向NT驱动发送键盘过滤请求,以及接收所述NT驱动返回的过滤请求响应;用于当所述接 收模块接收到光标消失提醒消息时,向NT驱动发送关闭键盘过滤请求,以及接收所述NT驱 动返回的已关闭消息响应;
[0030] 所述第二接收模块,还用于接收获取输入数据请求,并触发传送模块工作;所述加 解密模块,还用于当所述第二接收模块接收到所述获取输入数据请求时,对所述密文密码 解密得到明文密码,并使用用户指定密钥对所述明文密码加密;
[0031] 所述传送模块,用于当所述接收模块接收到所述获取输入数据请求时,将经所述 加解密模块加密后的明文密码传递给外部应用。
[0032] 所述NT驱动包括第三接收模块、处理模块和发送模块;
[0033] 所述第三接收模块,用于接收所述安全输入插件发来的键盘过滤请求和关闭键盘 过滤请求,并触发处理模块工作;
[0034] 所述处理模块,用于当所述第三接收模块接收到所述键盘过滤请求时,开启键盘 过滤开关并触发发送模块工作,用于当所述第三接收模块接收到所述关闭键盘过滤请求 时,关闭键盘过滤开关,并触发发送模块工作;
[0035] 所述发送模块,用于向所述安全输入插件发送过滤请求响应和已关闭消息响应。
[0036] 所述NT驱动包括加解密子模块、判断子模块和删除子模块;
[0037] 所述加解密子模块,用于接收所述安全输入插件发送的验证码,对所述验证码进 行解密得到解密结果,并触发判断子模块工作;用于对所述判断子模块获取的键盘输入信 息进行加密处理得到返回结果返回给所述安全输入插件;
[0038] 所述判断子模块,用于判断所述解密结果是否正确,是则从NT驱动密码存储队列 中首地址存储的内容中获取键盘输入信息然后触发删除子模块和加解密子模块工作,否则 直接触发删除子模块工作;
[0039] 所述删除子模块,用于删除NT驱动密码存储队列中首地址存储的内容。
[0040] 本发明提供的提高输入安全性的方法和装置,通过过滤机制和加解密机制来保障 用户的按键输入和传递给应用程序的信息的一致性,尤其对提高用户按键输入的密码等敏 感信息的安全性有重大意义。
【附图说明】
[0041] 图1是实施例1提供的一种提高输入安全性的方法流程图;
[0042] 图2是实施例1提供的方法中当键盘过滤驱动接收到键盘输入信息时的处理流程 图;
[0043] 图3是图2所示内容适用于PS2键盘时的细化流程图;
[0044] 图4是图2所不内容适用于USB键盘时的细化流程图;
[0045] 图5是实施例2提供的一种提高输入安全性的装置组成框图。
【具体实施方式】
[0046] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0047] 实施例1
[0048] 本实施例提供了一种提高输入安全性的方法,以用户通过物理键盘(如USB键盘 或PS2键盘)进行的输入为例进行详细说明,如图1所示,包括:
[0049] 步骤101 :安全输入插件接收到光标出现提醒消息,链接NT驱动,并向NT驱动发 送键盘过滤请求;
[0050] 具体的,安全输入插件链接NT驱动时,NT驱动根据当前键盘设备,为每一个键盘 设备创建一个键盘驱动设备对象,当用户通过键盘设备发生键盘输入时,则对应的键盘驱 动设备对象会自动接收各种信息,并做出响应。
[0051] 在Windows系统中,NT驱动加载时运行的是NT驱动设备,对于键盘设备,则需在 NT驱动下增加相应的功能驱动来运行。本实施例中优选的,当键盘设备如USB键盘插入到 主机时,NT驱动会为该键盘设备加载键盘过滤驱动,当键盘设备发生键盘输入时,NT驱动 会为该键盘设备创建对应的键盘驱动设备对象。当键盘设备拔出时,NT驱动将自动删除该 键盘设备对应的键盘驱动设备对象。
[0052] 步骤102 :N
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1