一种笔记本电脑安全输入方法及系统.pdf

上传人:小** 文档编号:1025302 上传时间:2018-03-26 格式:PDF 页数:22 大小:1.15MB
返回 下载 相关 举报
摘要
申请专利号:

CN200810112809.8

申请日:

2008.05.26

公开号:

CN101593254A

公开日:

2009.12.02

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效|||公开

IPC分类号:

G06F21/04

主分类号:

G06F21/04

申请人:

联想(北京)有限公司

发明人:

李志刚

地址:

100085北京市海淀区上地信息产业基地创业路6号

优先权:

专利代理机构:

北京集佳知识产权代理有限公司

代理人:

逯长明

PDF下载: PDF下载
内容摘要

本发明提供一种笔记本电脑安全输入方法,包括以下步骤:接收键盘输入键值;基于所述键值,发送触发信号至密钥生成模块;接收所述密钥生成模块返回的密钥,将所述密钥作为所述键值加密用的密钥;将所述键值用所述密钥加密,生成第一密文;发送所述第一密文至应用程序;所述第一密文按照所述密钥进行解密,得到所述键值。本发明还提供了一种笔记本电脑安全输入的系统。采用上述方法来进行输入,能够有效地保证计算机键盘输入的安全性。

权利要求书

1、  一种笔记本电脑安全输入方法,其特征在于,所述方法包括以下步骤:
接收键盘输入键值;
基于所述键值,发送触发信号至密钥生成模块;
接收所述密钥生成模块返回的密钥,将所述密钥作为所述键值加密用的密钥;
将所述键值用所述密钥加密,生成第一密文;
发送所述第一密文至应用程序;
所述第一密文按照所述密钥进行解密,得到所述键值。

2、
  根据权利要求1所述的安全输入方法,其特征在于,在接收键盘输入键值的步骤之前包括:
预先设置安全输入键,用于启动所述密钥生成模块。

3、
  根据权利要求1所述的安全输入方法,其特征在于,在接收键盘输入键值的步骤之前包括:
预先设置安全输入键,用于启动所述密钥生成模块,启动键盘控制器。

4、
  根据权利要求3所述的安全输入方法,其特征在于,所述接收键盘输入键值,发送触发信号至密钥生成模块;具体为:
接收所述密钥生成模块按照预定时间间隔发送的密钥;
接收键盘输入键值,发送触发信号至所述密钥生成模块,以通知所述密钥生成模块有键盘输入。

5、
  根据权利要求4所述的安全输入方法,其特征在于,所述接收所述密钥生成模块返回的密钥,将所述密钥作为所述键值加密用的密钥的步骤;具体为:
从接收到的所述密钥生成模块按照预定时间间隔发送的密钥中选择的某个密钥作为所述键值加密用密钥。

6、
  根据权利要求1所述的安全输入方法,其特征在于,将所述键值用所述密钥加密,生成第一密文的步骤,具体为:
将每个所述键值按照所述密钥进行对称或非对称加密算法,生成相应第一密文。

7、
  根据权利要求1所述的安全输入方法,其特征在于,所述第一密文所述按照所述密钥进行解密,得到所述键值之前,包括步骤:
所述密钥生成模块对接收来自应用程序的密文,进行合法性判断,当确认合法后,执行所述第一密文按照所述密钥进行解密得到所述键值的步骤。

8、
  根据权利要求1至6任一所述的安全输入方法,其特征在于,所述密钥为随机数序列。

9、
  根据权利要求1所述的安全输入方法,其特征在于,所述第一密文按照所述密钥进行解密,得到所述键值的步骤,具体为:
应用程序与所述密钥生成模块协商一个随机数,作为会话密钥;
所述应用程序将所述第一密文发送到所述密钥生成模块;
按照所述密钥进行解密后得到所述键值;
将所述键值按照所述会话密钥进行加密生成第二密文;
将所述第二密文发送到应用程序。

10、
  一种笔记本电脑安全输入系统,其特征在于,所述系统包括:
键盘控制器触发单元,用于接收键盘输入键值,发送触发信号至密钥生成模块;
键盘控制器密钥确认单元,用于接收所述密钥生成模块返回的密钥,将所述密钥作为所述键值加密用的密钥;
键盘控制器加密单元,用于将所述键值用的所述密钥加密,将加密后生成的第一密文发送至应用程序;所述第一密文按照所述密钥进行解密,得到所述键值。

11、
  根据权利要求10所述的安全输入系统,其特征在于,所述系统还包括安全输入键设置单元,预先设置用于启动所述密钥生成模块的安全输入键,或,预先设置用于启动所述密钥生成模块和键盘控制器的安全输入键。

说明书

一种笔记本电脑安全输入方法及系统
技术领域
本发明涉及一种输入方法,特别涉及一种笔记本电脑安全输入方法及系统。
背景技术
众所周知,现有的计算机结构对键盘输入数据的私密性没有有效的保护措施,导致计算机中的病毒、木马等可以非法获取用户键入的数据,如网银、网游和即时聊天工具的账号和口令,严重影响用户对计算机的信赖。
在键盘安全输入方面,现有技术可分成硬件方法、软件方法和非键盘输入方法三类。
硬件方法:一个典型的方法是使用具有加密功能的键盘,这要求在键盘中嵌入具有密码运算功能的硬件,要么对现有技术做较大改动,要么另外附件一个专门键盘。另一典型的方法,是键盘直接连接到显示装置,这种方法对现有技术的硬件改动更大,相当于另做了一个安全通道。
软件方法,从用户键盘输入口令到应用程序得到口令,中间要经过以下步骤和途径:即键盘输入到键盘驱动到键盘过滤驱动到内核缓存到键盘钩子到应用程序接收缓冲区。
非键盘输入方法,典型的是使用软件模拟出键盘并使用鼠标点击输入口令(软键盘)。
在发明本发明的过程中,现有技术至少存在如下问题:
采用硬件密码键盘的方法来进行安全输入,需要在键盘中嵌入具有密码运算功能的硬件,对现有技术改动较大。
采用软件方法来进行安全输入,由于键盘驱动的输出和内核缓存中的内容缺乏保护措施,键盘输入数据很可能被其它计算机侵入程序的键盘过滤驱动和键盘钩子获取,并且从理论上讲,即使在软件上从最底层中断实施保护措施,例如从键盘中断实施保护措施,但总可以找到比实施保护更早的入口,那么就可以从该入口上截获键值。如,现有技术的QQ键盘加密。虽然这种键盘加密方式能够自动实现对键盘信息的实时加密,但由于采用了软件实现方式,目前已经出现了通过键盘中断分析破解的方法。而且,对于软件保护方法,黑客还可以通过远程控制在用户的电脑中安装记录键盘的程序,这些被称作键盘记录器的工具可以记录用户从应用目标而言从键盘输入的所有信息。目前,保护键盘输入的另一个例子是网银软键盘。但这种网银软键盘能够由植入该客户计算机的木马程序通过记录使用软键盘的屏幕黑白图,发送到木马的客户端进行破解,无法有效地保证输入安全。
采用非键盘输入方法,对于木马截屏和分析就失效了,无法有效地保证输入安全。
因此,如何提供一种笔记本电脑安全输入方法及系统,能够有效地保证计算机键盘输入的安全性,是本领域技术人员亟需解决的技术问题。
发明内容
本发明实施例的目的是提供一种笔记本电脑安全输入方法及系统,能够有效地保证计算机键盘输入的安全性。
为了实现本发明实施例的发明目的,具体地,本发明实施例一方面提供了一种笔记本电脑安全输入方法,所述方法包括以下步骤:
接收键盘输入键值;
基于所述键值,发送触发信号至密钥生成模块;
接收所述密钥生成模块返回的密钥,将所述密钥作为所述键值加密用的密钥;
将所述键值用所述密钥加密,生成第一密文;
发送所述第一密文至应用程序;
所述第一密文按照所述密钥进行解密,得到所述键值。
优选地,在接收键盘输入键值的步骤之前包括:预先设置安全输入键,用于启动所述密钥生成模块。
优选地,在接收键盘输入键值的步骤之前包括:预先设置安全输入键,用于启动所述密钥生成模块,启动键盘控制器。
优选地,所述接收键盘输入键值,发送触发信号至密钥生成模块;具体为:
接收所述密钥生成模块按照预定时间间隔发送的密钥;
接收键盘输入键值,发送触发信号至所述密钥生成模块,以通知所述密钥生成模块有键盘输入。
优选地,所述接收所述密钥生成模块返回的密钥,将所述密钥作为所述键值加密用的密钥的步骤;具体为:
从接收到的所述密钥生成模块按照预定时间间隔发送的密钥中选择的某个密钥作为所述键值加密用密钥。
优选地,将所述键值用所述密钥加密,生成第一密文的步骤,具体为:
将每个所述键值按照所述密钥进行对称或非对称加密算法,生成相应第一密文。
优选地,所述第一密文所述按照所述密钥进行解密,得到所述键值之前,包括步骤:
所述密钥生成模块对接收来自应用程序的密文,进行合法性判断,当确认合法后,执行所述第一密文按照所述密钥进行解密得到所述键值的步骤。
优选地,所述密钥为随机数序列。
优选地,所述第一密文按照所述密钥进行解密,得到所述键值的步骤,具体为:
应用程序与所述密钥生成模块协商一个随机数,作为会话密钥;
所述应用程序将所述第一密文发送到所述密钥生成模块;
按照所述密钥进行解密后得到所述键值;
将所述键值按照所述会话密钥进行加密生成第二密文;
将所述第二密文发送到应用程序。
本发明实施例另一方面提供了一种笔记本电脑安全输入系统,包括:
键盘控制器触发单元,用于接收键盘输入键值,发送触发信号至密钥生成模块;
键盘控制器密钥确认单元,用于接收所述密钥生成模块返回的密钥,将所述密钥作为所述键值加密用的密钥;
键盘控制器加密单元,用于将所述键值用的所述密钥加密,将加密后生成的第一密文发送至应用程序;所述第一密文按照所述密钥进行解密,得到所述键值。
优选地,所述系统还包括安全输入键设置单元,预先设置用于启动所述密钥生成模块的安全输入键,或,预先设置用于启动所述密钥生成模块和键盘控制器的安全输入键。
本发明实施例具有以下有益效果:
本发明实施例的方法、装置通过接收到键盘输入的键值后,立刻发送触发信号至密钥生成模块,以通知所述密钥生成模块有键盘输入。所述密钥生成模块可以返回用于所述键值的加密用的密钥,将加密后得到的第一密文发送至应用程序,所述加密过程简单又易于实现。由于键值从最低层到应用的通道上全部为密文传输,这样,攻击者不论采用键盘过滤驱动还是键盘钩子技术,甚至直接跟踪键盘中断,均不能得到键盘口令的明文数据。而且解密是在所述密钥生成模块中实现,进一步保证了安全性。
附图说明
图1是本发明实施例笔记本电脑安全输入方法第一种实施方式流程图;
图2是本发明实施例笔记本电脑硬件原理图;
图3是本发明实施例笔记本电脑安全输入方法第二种实施方式流程图;
图4是本发明实施例笔记本电脑安全输入方法第三种实施方式流程图;
图5是本发明实施例笔记本电脑安全输入系统第一种实施方式结构图。
具体实施方式
本发明实施例提供一种笔记本电脑安全输入方法,能够有效地保证计算机键盘输入的安全性。
为了更加清楚地说明笔记本电脑安全输入方法及系统的工作原理和工作过程,下面结合附图具体说明。
为了便于理解本发明实施例所述笔记本电脑安全输入方法及系统,首先介绍一下现有笔记本电脑硬件情况。
芯片组(Chipset,简称CS)是现有技术中X86架构PC的主板的核心组成部分。按照在主板上的排列位置的不同,通常分为北桥芯片(NB CS)和南桥芯片(SB CS)。
北桥芯片提供对CPU的类型和主频、内存的类型和最大容量、ISA/PCI/AGP插槽、ECC纠错等支持。北桥芯片起着主导性的作用,也称为主桥(Host Bridge)。
南桥芯片则提供对KBC(键盘控制器)、RTC(实时时钟控制器)、USB(通用串行总线)、Ultra DMA/33(66)EIDE数据传输方式和ACPI(高级能源管理)等的支持。
参见图1,该图是本发明实施例笔记本电脑安全输入方法第一种实施方式流程图。
本发明实施例笔记本电脑安全输入方法第一种实施方式,所述方法包括以下步骤:
S101、接收键盘输入键值。
S102、基于所述键值,发送触发信号至密钥生成模块。
基于所述接收到的键盘输入的键值,发送触发信号至密钥生成模块。所述密钥生成模块具体可以是可信平台模块或者可信计算模块,以通知所述可信平台模块或可信计算模块有键盘输入。
键盘控制器接收键盘输入键值后,经扫描并送到键盘控制器的缓冲区,发送触发信号至所述密钥生成模块,具体可以是可信平台模块或可信计算模块,用于通知所述可信平台模块或可信计算模块有键盘输入。
S103、接收所述密钥生成模块返回的密钥,将所述密钥作为所述键值加密用的密钥。
接收所述密钥生成模块,具体可以是所述可信平台模块或可信计算模块返回的密钥,将所述密钥作为所述键值加密用密钥。
键盘控制器接收所述可信平台模块或可信计算模块返回的密钥,将所述密钥作为所述密钥为所述键值加密用密钥。
键盘控制器接收所述密钥生成模块,具体可以是所述可信平台模块或可信计算模块随机产生的随机数序列。在键盘控制器选择了加密用的随机数作为密钥后,通知所述密钥生成模块,具体可以是可信平台模块或可信计算模块哪些随机数是加密用密钥。并且所述密钥生成模块,具体可以是可信平台模块或可信计算模块负责记录每个密钥与用每个密钥加密键值得到的密文之间的对应关系。
S104、将所述键值用所述密钥加密,生成第一密文。
S105、发送所述第一密文至应用程序。
所述第一密文发送至需要接收输入信息的应用程序。
S106、所述第一密文按照所述密钥进行解密,得到所述键值。
所述第一密文通过所述密钥生成模块,具体可以是可信平台模块或可信计算模块按照所述密钥进行解密,得到所述键值。
键盘控制器用所述密钥加密所述键值,将加密后得到的第一密文通过键盘驱动程序,传递给需要接收输入信息的应用程序。
所述应用程序将所述第一密文发送至所述密钥生成模块,具体可以是可信平台模块或可信计算模块,所述可信平台模块或可信计算模块按照所述密文对应的密钥进行解密,得到所述键值。
每个所述键值可以按照所述密钥进行流加密得到相应第一密文。
每个所述键值可以按照所述密钥进行对称或非对称加密算法得到相应第一密文。
本发明实施例所述笔记本电脑安全输入方法,当接收到键盘输入的键值后,立刻发送触发信号至所述密钥生成模块,具体可以是可信平台模块或可信计算模块,以便通知密钥生成模块,有键盘输入。所述密钥生成模块可以返回密钥,所述密钥用于所述键值的加密,生成的第一密文发送至需要接收输入信息的应用程序。所述应用程序将上述第一密文发送所述密钥生成模块,所述密钥生成模块再通过先前加密用的密钥进行解密,得到原始的键值,这样可以有效地保证了计算机键盘输入的安全性。
本发明实施例所述笔记本电脑安全输入方法,通过键盘键入的键值,经扫描并送到键盘控制器的缓冲区,所述键值经过加密得到第一密文,所述加密过程简单又易于实现。而且解密是在所述密钥生成模块,具体可以是可信平台模块或可信计算模块中实现,进一步保证了安全性。
本发明实施例所述笔记本电脑安全输入方法,是可以应用于带有TPM(Truested Platform Module,可信平台模块)或TCM(Truested ComputingModule,可信计算模块)的笔记本电脑。
本发明实施例所述笔记本电脑安全输入方法,现以带有TPM的笔记本电脑为例进行说明,同样适用于带有TCM的笔记本电脑。
利用TPM空闲和未定义的GPIO作输出线,连接到EC(嵌入式控制器)中的KBC(键盘控制器)的键盘扫描线上,对用户输入的口令或者信息进行混乱和加密处理,可信平台模块记录下加密密钥。在接收口令或者敏感信息的应用程序中,将得到的加密后生成的第一密文发送给可信平台模块,由可信平台模块还原口令或者所述敏感信息。所述口令或者所述敏感信息还可以经转换加密后再返回给应用程序,应用程序重新解密后使用所述键值。
由于笔记本电脑一般均带有嵌入式控制器,本发明实施例所述笔记本电脑安全输入方法,可以在带有可信平台模块的笔记本电脑上,借助EC和可信平台模块的功能实现安全输入。
参见图2和图3,图2是本发明实施例笔记本电脑硬件原理图;图3是本发明实施例笔记本电脑安全输入方法第二种实施方式流程图。
本发明实施例所述笔记本电脑,以现有X86架构的笔记本电脑为例,图2中省略了与本发明实施例无关的硬件连接。
EC控制器和密钥生成模块均挂接在南桥芯片(SB CS)提供的LPC总线上。密钥生成模块具体可以是可信平台模块或可信计算模块。EC控制器用于实现电脑的电源管理、键盘控制器(KBC)以及BIOS设置等功能。可信平台模块或可信计算模块用于电脑的启动认证、访问的身份认证和加解密等功能。其中,在可信平台模块规范中,除了一个GPIO_Express00有明确定义外,其它多个GPIO预留给用户进行定义和使用,EC控制器也预留多条扫描线用于扩充。
在键盘上定义一个新的按键——安全输入键,安全输入键连接到可信平台模块第1条GPIO上,称为TPM_GPIO_Input0,同时连接到EC的键盘扫描阵列上。该安全输入键在被相继按下的两次期间,用户从键盘输入的键值将按照本发明实施例所述的安全输入方法进行加密。
将可信平台模块第2条GPIO连接到KBC键盘中断引脚,定义成输入线TPM_GPIO_Input1,当有键盘输入时,该引脚有效,用于通知可信平台模块用户按下了键盘。
将可信平台模块的第3条GPIO连接于EC的键盘扫描线上,定义为输出线TPM_GPIO_Output0,用于可信平台模块向KBC输入随机数序列。
本发明实施例笔记本电脑安全输入方法第二种实施方式,所述方法包括以下步骤:
S201、预先设置安全输入键,用于启动密钥生成模块。
预先设置安全输入键,用于启动可信平台模块或可信计算模块。
为了方便用户对键盘键入的内容进行安全模式和正常模式的切换,预先设置键盘上某个键或某几个组合键为安全输入键,安全输入键与密钥生成模块相连。具体方案安全输入键可以与可信平台模块和键盘控制器相连。安全输入键可以与可信计算模块和键盘控制器相连。
当用户需要键入的内容是对安全性要求很高的口令或者密码时,用户可以通过安全输入键切换到安全模式,即进入本发明实施例所述的安全输入方法。
当用户需要键入的内容是安全性要求不高的普通操作时,用户就没有必要进入安全模式,只需进入正常模式即可。这时,用户可以通过安全输入键切换到正常模式,即现有的键盘输入模式。
安全模式和正常模式的切换可以通过设定安全输入键的点击情况设定。当第一次点击安全输入键时,进入安全模式,此时安全输入键向密钥生成模块,具体可以向可信平台模块或可信计算模块发送启动信息,所述可信平台模块或可信计算模块进入安全模式。
当两次点击安全输入键后,进入正常模式,即现有的键盘输入模式。
在两次点击安全输入键之间的时间段,安全输入键均处于安全模式。
当用户正常使用键盘输入,即用户没有按下安全输入键或连续偶数次按下安全输入键时,EC中的FIRWARE(固件)按现有键盘输入流程采集键值,并产生键盘中断。
正常模式与安全模式的差别在于,安全模式下:1)密钥生成模块,具体可以是可信平台模块或可信计算模块要向键盘控制器发送随机数序列。2)键盘控制器流程中要增加启动加密操作用的模块进行加密。
S202、接收键盘输入键值。
由于通过安全输入键启动了安全模式,这样键盘控制器接收键盘输入键值后,经扫描并送到键盘控制器的缓冲区,还需要向所述密钥生成模块,具体可以是可信平台模块或可信计算模块发送触发信号,用于通知密钥生成模块,具体可以是可信平台模块或可信计算模块有键盘输入。
S203、基于所述键值,发送触发信号至密钥生成模块。
基于所述接收到的键盘输入的键值,发送触发信号至密钥生成模块。所述密钥生成模块具体可以是可信平台模块或者可信计算模块,以通知所述可信平台模块或可信计算模块有键盘输入。
键盘控制器接收键盘输入键值后,经扫描并送到键盘控制器的缓冲区,发送触发信号至所述密钥生成模块,具体可以是可信平台模块或可信计算模块,用于通知所述可信平台模块或可信计算模块有键盘输入。
S204、接收所述密钥生成模块返回的密钥,将所述密钥作为所述键值加密用的密钥。
接收所述密钥生成模块,具体可以是所述可信平台模块或可信计算模块返回的密钥,将所述密钥作为所述键值加密用密钥。
键盘控制器接收所述可信平台模块或可信计算模块返回的密钥,将所述密钥作为所述密钥为所述键值加密用密钥。
键盘控制器接收所述密钥生成模块,具体可以是所述可信平台模块或可信计算模块随机产生的随机数序列。键盘控制器接收所述随机数序列。在键盘控制器选择了加密用的随机数作为密钥后,通知所述密钥生成模块,具体可以是可信平台模块或可信计算模块哪些随机数是加密用密钥。并且所述密钥生成模块,具体可以是可信平台模块或可信计算模块负责记录每个密钥与用每个密钥加密键值得到的密文之间的对应关系。
当用户需要启动安全模式时,用户按下键盘上的安全输入键,安全输入键的信号可以同时通知密钥生成模块和KBC。密钥生成模块具体可以是可信平台模块或可信计算模块。例如可信平台模块接收到该信号后,可信平台模块可以以预定时间间隔,例如键盘消抖的20ms,从TPM_GPIO_Output0引脚上向键盘控制器输出随机数序列。
而KBC接到按下安全输入键的信号直到再次接到按下安全输入键的信号,在这两个信号期间,KBC将对用户的键值进行混乱和加密处理。具体加密处理方式可以是:KBC将采集到的用户键入的键值,与当时可信平台模块或可信计算模块输入给KBC的随机数进行异或加密操作,将该随机数作为密钥,并将加密结果写到键盘缓冲器。
S205、将所述键值用所述密钥加密,生成第一密文。
S206、发送所述第一密文至应用程序。
所述第一密文发送至需要接收输入信息的应用程序。
S207、所述第一密文按照所述密钥进行解密,得到所述键值。
键盘控制器用所述密钥加密所述键值,将加密后生成的第一密文发送到应用程序。
所述应用程序将所述第一密文发送至所述密钥生成模块,具体可以是可信平台模块或可信计算模块,通过所述可信平台模块或可信计算模块按照所述第一密文对应的密钥进行解密,得到所述键值。
在上述过程中,可信平台模块还需要对TPM_GPIO_Input1信号进行捕获,并记录下实际参与加密的随机数。
每个所述键值可以按照所述密钥进行流加密得到相应第一密文。例如,用户输入的键值为0x31、0x32、0x33、0x41、0x42和0x43,而在用户输入这些键值时,可信平台模块的TPM_GPIO_Output0当时发送的随机数为0xa1、0x58、x07f、0xde、0x6b和0xc9,进行异或处理后,则在键盘缓冲区中加密后的键值为:
0x31⊕0xa1=0x90]]>
0x32⊕0x58=0x6a]]>
0x33⊕0x7f=0x4c]]>
0x41⊕0xde=0x9f]]>
0x42⊕0x6b=0x29]]>
0x43⊕0xc9=0x8a]]>
应用程序得到加密的第一密文后,发送到所述可信平台模块或可信计算模块,通过所述可信平台模块或可信计算模块根据记录的对应的密钥进行解密,得到原始输入的键值,即得到原始的口令或敏感信息。
本发明实施例所述笔记本电脑安全输入方法,当接收到键盘输入的安全输入键值后,立刻发送触发信号至所述密钥生成模块,具体可以是可信平台模块或可信计算模块,用于通知所述可信平台模块或可信计算模块有键盘输入。所述可信平台模块或可信计算模块开始向键盘控制器按照预定周期发送随机数,键盘控制器接收键盘输入键值后,启动加密模块。键盘控制器接收所述可信平台模块或可信计算模块传递来的随机数,并从中随机挑选随机数,作为加密用密钥。在键盘控制器选择了加密密钥后,再通知可信平台模块或可信计算模块,由可信平台模块或可信计算模块产生的哪些随机数被选为加密用密钥。加密模块用所述密钥对所述键值的加密,将加密后得到的密文发送至需要接收输入信息的应用程序。所述应用程序将上述密文发送所述可信平台模块或可信计算模块,所述可信平台模块或可信计算模块再通过先前加密用的密钥进行解密,得到原始的键值,这样可以有效地保证了计算机键盘输入的安全性。
参见图4,该图是本发明实施例所述笔记本电脑安全输入方法第三种实施方式流程图。
本发明实施例所述笔记本电脑安全输入方法第三种实施方式,所述方法包括以下步骤:
S301、预先设置安全输入键,用于启动密钥生成模块和键盘控制器。
密钥生成模块具体可以是可信平台模块或可信计算模块。
S302、接收所述密钥生成模块按照预定时间间隔发送的密钥。
接收所述可信平台模块或可信计算模块按照预定时间间隔发送的密钥。
S303、接收键盘输入键值,发送触发信号至所述密钥生成模块,用以通知密钥生成模块有键盘输入。
接收键盘输入键值,发送触发信号至所述可信平台模块或可信计算模块,用以通知可信平台模块或可信计算模块有键盘输入。
S304、从接收到的所述密钥生成模块按照预定时间间隔发送的密钥中选择的某个密钥作为所述键值加密用密钥。
从接收到的所述密钥生成模块按照预定时间间隔发送的密钥中选择的某个密钥作为所述键值加密用密钥。
选择的某个密钥作为所述键值加密用密钥,可以将所述可信平台模块或可信计算模块当前发送的随机数作为密钥,也可以是按照某种规则选定的随机数作为密钥。
键盘控制器选用哪个随机数作为密钥,需要通知所述可信平台模块或可信计算模块,可信平台模块或可信计算模块记录该密钥。
S305、将所述键值用所述密钥加密,将生成的第一密文发送至应用程序。
键盘控制器用所述密钥加密所述键值,将加密后生成的第一密文发送至需要接收输入信息的应用程序。
S306、对接收来自应用程序的第一密文,所述密钥生成模块确认该应用程序的合法性。
S307、按照所述密钥生成模块记录的对应密钥进行解密得到所述键值。
所述应用程序将所述第一密文发送至所述可信平台模块或可信计算模块,按照所述可信平台模块或可信计算模块记录的对应密钥进行解密,得到所述键值。
应用程序向可信平台模块或可信计算模块请求对加密键值的解密和转换加密处理,可信平台模块或可信计算模块对从应用程序接收来的数据做合法性判断,当确认为正确后,可信平台模块或可信计算模块首先对传递来的键值密文解密得到各个明文键值。解密在可信平台模块或可信计算模块的RAM中进行。
例如:可信平台模块还原第一个明文键值的操作为0x90⊕0xa1=0x31,]]>同理可以得到0x32、0x33、0x41、0x42和0x43。
应用程序在向可信平台模块或可信计算模块发送所述第一密文之前可以通过与可信平台模块或可信计算模块协商,协商出一个密钥,作为会话密钥。此密钥可以是一个随机数。可信平台模块或可信计算模块可以使用所述会话密码对解密后的键值进行加密,例如DES加密,生成新的密文即第二密文,并输出至所述应用程序。所述应用程序应用所述会话密码解密所述第二密文,得到所述键值,比如原始的口令等信息。
从可信平台模块或可信计算模块到应用程序之间的会话密钥,可以采用分组加密方式,可以选择可信平台模块或可信计算模块支持的DES,DES3或AES等方式。
本发明实施例所述笔记本电脑安全输入方法,当接收到键盘输入的安全输入键值后,立刻发送触发信号至所述密钥生成模块,具体可以是可信平台模块或可信计算模块,用于通知可信平台模块或可信计算模块有键盘输入。所述可信平台模块或可信计算模块开始向键盘控制器以预定周期发送随机数,键盘控制器接收键盘输入键值后,启动加密模块。键盘控制器接收所述可信平台模块或可信计算模块传递来的随机数,并从中随机挑选随机数作为加密用密钥。在键盘控制器选择了加密密钥后,反过来通知可信平台模块或可信计算模块,由可信平台模块或可信计算模块产生的哪些随机数被选为加密用密钥。加密模块用所述密钥对所述键值的加密,将加密后得到的第一密文发送至需要接收输入信息的应用程序。应用程序在向可信平台模块或可信计算模块发送所述第一密文之前可以通过与可信平台模块或可信计算模块协商出一个会话密钥。所述应用程序将上述第一密文发送所述可信平台模块或可信计算模块,所述可信平台模块或可信计算模块再通过先前加密用的密钥进行解密,得到原始的键值,再通过所述会话密钥进行二次加密,生成第二密文发送至所述应用程序。所述应用程序应用所述会话密码解密所述第二密文,得到所述键值,比如原始的口令等信息,这样更加有效地保证了计算机键盘输入的安全性。
本发明实施例提供一种笔记本电脑安全输入系统,能够有效地保证计算机键盘输入的安全性。
参见图5,该图是本发明实施例所述笔记本电脑安全输入系统第一种实施方式结构图。
本发明实施例所述笔记本电脑安全输入系统第一种实施方式,所述系统包括键盘控制器触发单元11、键盘控制器密钥确认单元12和键盘控制器加密单元13。
键盘控制器触发单元11,用于接收键盘输入键值,发送触发信号至密钥生成模块。
键盘控制器触发单元11接收键盘输入键值,发送触发信号至密钥生成模块,具体可以是可信平台模块或可信计算模块,用于通知所述可信平台模块或可信计算模块有键盘输入。
键盘控制器密钥确认单元12,用于接收所述密钥生成模块返回的密钥,将所述密钥作为所述键值加密用的密钥。
键盘控制器密钥确认单元12接收键盘控制器触发单元11触发的所述密钥生成模块,具体可以是可信平台模块或可信计算模块返回的密钥,将所述密钥作为所述键值加密用密钥。
键盘控制器加密单元13,用于将所述键值用的所述密钥加密,将加密后得到的第一密文发送至应用程序;所述第一密文按照所述密钥进行解密,得到所述键值。
键盘控制器加密单元13将所述键值用所述键盘控制器密钥确认单元12确定的密钥加密,将加密后得到的第一密文发送至需要接收输入信息的应用程序。所述应用程序将所述第一密文发送至所述可信平台模块或可信计算模块,所述可信平台模块或可信计算模块按照所述密钥进行解密,得到所述键值。
本发明实施例所述笔记本电脑安全输入系统,当键盘控制器触发单元11接收到键盘输入的键值后,立刻发送触发信号至所述密钥生成模块,具体可以是可信平台模块或可信计算模块,通知密钥生成模块,具体可以是可信平台模块或可信计算模块有键盘输入。键盘控制器密钥确认单元12接收所述可信平台模块或可信计算模块返回的密钥,将所述密钥作为所述键值加密用密钥。键盘控制器加密单元13通过所述密钥用于所述键值的加密,将加密后得到的第一密文发送至需要接收输入信息的应用程序。所述应用程序将上述第一密文发送所述可信平台模块或可信计算模块,所述可信平台模块或可信计算模块再通过先前加密用的密钥进行解密,得到原始的键值,发送到所述应用程序,这样就可以有效地保证了计算机键盘输入的安全性。
本发明实施例所述笔记本电脑安全输入系统,通过键盘键入的键值,所述键值经过加密得到第一密文,所述加密过程简单又易于实现。而且解密是在所述可信平台模块或可信计算模块中实现,进一步保证了安全性。
所述笔记本电脑安全输入系统还可以包括安全输入键设置单元(图中未表示)。安全输入键设置单元是预先设置的,用于启动所述密钥生成模块的安全输入键,或,用于启动所述密钥生成模块和键盘控制器的安全输入键。
安全输入键设置单元可以启动可信平台模块或可信计算模块的安全输入键,或者,启动可信平台模块和键盘控制器或可信计算模块和键盘控制器的安全输入键。
本发明实施例所述笔记本电脑安全输入系统相对于采用软件方法的口令保护技术,由于键值从最低层到应用的通道上全部为密文传输,这样,攻击者不论采用键盘过滤驱动还是键盘钩子技术,甚至直接跟踪键盘中断,均不能得到键盘口令的明文数据。
本发明实施例所述笔记本电脑安全输入系统相对于硬件方法,不要求增加带有密码运算功能的特定硬件芯片,不必更换键盘硬件,从而具有更好的兼容性和实施性。
本发明实施例所述笔记本电脑安全输入系统相对于软键盘,避免了病毒或木马通过截取屏幕的方法获取用户输入的漏洞。
以上所述仅为本发明的优选实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之内。

一种笔记本电脑安全输入方法及系统.pdf_第1页
第1页 / 共22页
一种笔记本电脑安全输入方法及系统.pdf_第2页
第2页 / 共22页
一种笔记本电脑安全输入方法及系统.pdf_第3页
第3页 / 共22页
点击查看更多>>
资源描述

《一种笔记本电脑安全输入方法及系统.pdf》由会员分享,可在线阅读,更多相关《一种笔记本电脑安全输入方法及系统.pdf(22页珍藏版)》请在专利查询网上搜索。

本发明提供一种笔记本电脑安全输入方法,包括以下步骤:接收键盘输入键值;基于所述键值,发送触发信号至密钥生成模块;接收所述密钥生成模块返回的密钥,将所述密钥作为所述键值加密用的密钥;将所述键值用所述密钥加密,生成第一密文;发送所述第一密文至应用程序;所述第一密文按照所述密钥进行解密,得到所述键值。本发明还提供了一种笔记本电脑安全输入的系统。采用上述方法来进行输入,能够有效地保证计算机键盘输入的安全性。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1