CN1605975A - 可信键盘扫描的方法和装置 - Google Patents

可信键盘扫描的方法和装置 Download PDF

Info

Publication number
CN1605975A
CN1605975A CN200410074610.2A CN200410074610A CN1605975A CN 1605975 A CN1605975 A CN 1605975A CN 200410074610 A CN200410074610 A CN 200410074610A CN 1605975 A CN1605975 A CN 1605975A
Authority
CN
China
Prior art keywords
keyboard
key
scan engine
keys
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200410074610.2A
Other languages
English (en)
Other versions
CN1318944C (zh
Inventor
巴恩斯·库珀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN1605975A publication Critical patent/CN1605975A/zh
Application granted granted Critical
Publication of CN1318944C publication Critical patent/CN1318944C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/83Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2105Dual mode as a secondary aspect

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

集成在芯片集上的键盘扫描引擎启动键扫描处理。该键盘扫描引擎探测按键动作。当处于可信模式时,通过可信内部总线接口传送对应于按键动作的键码。当处于非可信模式时,通过一个接口传送键码以使板上键盘控制器对其进行处理。

Description

可信键盘扫描的方法和装置
技术领域
本发明的技术领域一般地涉及可信计算机平台,更具体地说,涉及可信键盘扫描的方法和装置。
背景技术
可信操作系统(OS)和平台是比较新的概念。在第一代平台中,建立可信的环境,在该环境中,应用可以可信地而且不被篡改地运行。通过改变处理器、芯片集以及软件来创建此安全性,从而创建一个不能被其他应用看到(存储区域被保护)也不能被篡改(代码执行流不能被改变)的环境。第二代可信平台可以加入可信图形功能和输入/输出单元。可信图形功能将使得OS可以对终端用户显示不能被篡改的消息,而可信I/O将使得按键动作和鼠标移动能以可信的方式被输入。
在台式电脑平台中,可信的按键动作是在外部键盘输入的。在支持可信I/O的环境中,键盘需要被确认为可信的输入设备,并且硬件和固件的设计需要被一个或更多第三方代理确认。
在移动平台中,通常被称为键盘控制器的嵌入式控制器目前支持集成式键盘。该键盘控制器负责通过周期性地依次驱动一系列通用输出线到键盘矩阵来扫描矩阵键盘。然后通过读回另一系列的通用输入线,键盘控制器可以探测到按键动作。不幸的是,目前这些按键动作是通过遗留键盘接口被传送给系统的。估计该接口在一个可信环境中不会被认为是可信的。
除此而外,还有很多问题可能使得移动嵌入式控制器不被认为是可信的。这些设备在嵌入式控制器中包含大量的OEM的特定代码,该代码用于执行诸如温度控制、电源面控制、坞接(docking)接口、ACPI接口等任务,而这些任务都与键盘控制无关。所有这些无关代码的存在可能会不满足可信I/O设备的要求。
发明内容
一种方法,包括:
集成在芯片集上的键盘扫描引擎启动键扫描处理;
所述键盘扫描引擎探测按键动作;
当处于可信模式时,通过可信内部总线接口传送对应于所述按键动作的键码。
一种系统,包括:
中央处理单元;
存储器单元;以及
集成在芯片集上的键盘扫描引擎,所述键盘扫描引擎启动键扫描处理,探测按键动作,以及在处于可信模式时,通过可信内部总线接口传送对应于所述按键动作的键码。
一种存储了一组指令的机器可读介质,所述指令在被处理器执行时,实现一种包括下述步骤的方法:
集成在芯片集上的键盘扫描引擎启动键扫描处理;
所述键盘扫描引擎探测按键动作;
当处于可信模式时,通过可信内部总线接口传送对应于所述按键动作的键码。
一种系统,包括:
中央处理单元;
存储器单元;
图形控制器;以及
集成在芯片集上的键盘扫描引擎,所述键盘扫描引擎启动键扫描处理,探测按键动作,而且在处于可信模式时,通过可信内部总线接口传送对应于所述按键动作的键码。
附图说明
在附图中,以举例而并非限定的方式图示了一个或更多的实施例,其中
图1图示了根据一个实施例,实现一种芯片集的系统;
图2图示了根据一个实施例,提供可信键盘扫描的处理的流程图;
图3图示了根据一个实施例的一种实现了可信键盘扫描的系统,其中键盘扫描引擎由一个芯片集元件提供;并且
图4图示了根据另一个实施例的一种实现了可信键盘扫描的系统,其中键盘扫描引擎由一个芯片集元件提供。
具体实施方式
这里描述了安全键盘扫描的方法和装置。在一个实施例中,键盘(KB)扫描引擎扫描出到KB的值。KB扫描引擎读取扫描输入线并探测键盘上的按键动作。当处于可信模式时,KB根据按键动作,通过可信内部总线接口发出键码。当系统不处于可信模式时,KB扫描引擎通过遗留接口传送键码,以使板上键盘控制器对其进行处理。在一个实施例中,该KB扫描引擎集成在I/O中心控制器上。
在下面的描述中列出了许多具体的细节。但是应理解到,在没有这些具体的细节的情况下,也可以实现实施例。在其他情况下,公知的电路、结构和技术没有详细示出,以免混淆对本说明书的理解。
在本申请文件全文中,当提到“一个实施例”或者“实施例”时,说明所描述的与该实施例相关联的具体的特征、结构、或特性被至少一个实施例所包括。因此,在本申请文件中各处出现的短语“在一个实施例中,”或“在实施例中”并不一定指的是同一个实施例。具体的特征、结构、或特性还可以以任何合适的方式在一个或多个实施例中进行组合。
一般地,为了能使设备被认定为是可信的,则必须使该实现对于第三方成为可获得,以便第三方进行检查和认证。所以,希望能够简化实现以使该实现能够以简单的方式被认证。
在一个实施例中,如此处所述,可信键盘扫描引擎可以被集成在芯片集中。在图1的一个实施例中,芯片集107包括存储器控制中心(MCH)110。MCH 110可以包括耦合到主系统存储器115的存储器控制器112。MCH 110还可以包括耦合到图形控制器130的图形接口113。MCH还将包括通过总线105与中央处理单元(CPU)102的接口。
在一个实施例中,MCH通过中心接口与输入/输出控制中心(ICH)140互连。ICH 140提供到计算机系统100中的输入/输出(I/O)设备的接口。ICH 140可以被耦合到外围设备互连(PCI)总线142,从而提供与诸如音频设备150和磁盘驱动器155等外围设备间的通信。在这样的情况下,ICH 140包括提供到PCI总线142的接口的PCI桥146。PCI桥146在CPU 102和外围设备间提供数据通道。
在一个实施例中,如此处所述,KB扫描引擎集成在芯片集的ICH上。将KB扫描引擎设置在ICH上的一个后果是,KB扫描引擎的逻辑可以被第三方检查而几乎不需要公开他们的键盘控制器中的OEM特定代码。在可替换的实施例中,KB扫描引擎可以被设置在不包括MCH和ICH元件的芯片集上。例如,KB扫描引擎可以被设置在多个I/O中心控制器的其中一个上。另外,在可替换的实施例中,KB扫描引擎可以在可替换的硬件或者嵌入式固件机制上实现。
图2是根据一个实施例来描述提供可信键盘扫描的处理的流程图。图2的流程图是参照图3所图示的系统进行描述的,图3图示了可信键盘扫描的一个实施例,其中KB扫描引擎被设置在ICH上。
如图3所示,ICH 140集成了包括键扫描算法的键盘扫描引擎302。在处理202,ICH周期性地(例如,每五毫秒)启动键扫描处理。扫描输出线通常被置为高(逻辑1)态。在一个实施例中,键扫描处理包括将每一根扫描线置为选择性的低,而将其他线保持为逻辑高。这个处理被称为“使零从最低有效位走至最高有效位”。也可以使用可替换的键扫描处理。
在处理204,键盘扫描引擎302读入扫描输入线。如果任意输入线为低,那么就探测到一个按键动作。在KB扫描引擎302探测到一个键已经被按下几个扫描间隔后(消除抖动),KB扫描引擎302将该键记录为正被按下。
在处理206,KB扫描引擎302在键扫描随机存取存储器(RAM)(未示出)中,以扫描输出值和扫描输入值为行/列索引进行查找,并从RAM中读出被按下的键的键码。
在处理208,确定系统100是否处于可信模式。在一个实施例中,OS负责启动进入可信模式的入口。在一个实施例中,该进入可信模式的入口被传送并储存在芯片集中。可以使用可替换的过程来进入可信模式并指示其入口。
如果系统100已经进入可信模式,那么在处理210,对应于被按下的按键动作的键码通过内部可信总线接口308(例如,可信通用串行总线(USB))被传送。键码信息在芯片集中的内部通道中流动并且被映射到存储器接口,从而可以通过可信模式的存储器保护机制而被保护。
如果系统处于遗留(非可信的)模式,那么在处理212,对应于被按下的按键动作的键码通过遗留接口310(例如PS/2)被送出,以便板上控制器312对其进行处理。在可替换的实施例中,键码可以被送至系统管理接口(SMI),以便在没有嵌入式控制器的情况下进行遗留自由(非可信的)键盘仿真。
图4示出了根据一个可替换实施例的系统。具体地说,图4图示了系统100,其使用外部硬件元件402来为ICH 140提供端口扩展。在图示的实施例中,使用独立的元件来提供输入/输出扩展,这可以减小ICH140的输入/输出需求。在这种情况下,ICH 140仍旧实现KB扫描引擎并且提供可信接口,但是在封装上可以需要更少的管脚来支持可信键盘扫描。
上面描述的处理可以作为一组要被执行的指令而被存储在计算机系统的存储器中。另外,用于进行上述处理的指令可以可替换地存储在其他形式的机器可读介质上,包括磁盘和光盘。例如,描述的处理可以被存储在机器可读介质上,例如可以通过磁盘驱动器(或者计算机可读介质驱动器)读取的磁盘或者光盘。上述指令还可以以编译且链接版本被下载到数据网络上的计算设备中。
或者,可以在附加的计算机和/或机器可读介质中,例如在大规模集成电路(LSI)、专用集成电路(ASIC)那样的分立硬件元件中,和电可擦除编程只读存储器(EEPROM)那样的固件中,以及电的、光学的、声学的和其他形式的传播的信号(例如,载波,红外信号,数字信号等)中等等,实现进行上述处理的逻辑。
在前述的说明中,本发明已经参照它的具体的示例性实施例被进行了描述。但是,很明显,在不脱离所附的权利要求所提出的本发明的更广泛的精神和范围的情况下,可以对其进行各种修正和更改。说明和附图应该被视为说明性的而并非限制性的。

Claims (27)

1.一种方法,包括:
集成在芯片集上的键盘扫描引擎启动键扫描处理;
所述键盘扫描引擎探测按键动作;
当处于可信模式时,通过可信内部总线接口传送对应于所述按键动作的键码。
2.如权利要求1所述的方法,其中所述可信内部总线接口是可信的通用串行总线接口。
3.如权利要求1所述的方法,还包括:
当处于非可信模式时,通过一个接口传送对应于所述按键动作的键码以使板上键盘控制器对其进行处理。
4.如权利要求3所述的方法,其中,当处于所述非可信模式时,所述键码通过PS/2接口被传送至所述板上键盘控制器。
5.如权利要求1所述的方法,其中所述键盘扫描引擎被集成在所述芯片集的I/O中心控制器上。
6.如权利要求5所述的方法,其中所述I/O中心控制器包括与键盘相接口的端口扩展器。
7.如权利要求5所述的方法,其中所述键盘扫描引擎实现了键扫描算法。
8.一种系统,包括:
中央处理单元;
存储器单元;以及
集成在芯片集上的键盘扫描引擎,所述键盘扫描引擎启动键扫描处理,探测按键动作,以及在处于可信模式时,通过可信内部总线接口传送对应于所述按键动作的键码。
9.如权利要求8所述的系统,其中所述可信内部总线接口是可信的通用串行总线接口。
10.如权利要求8所述的系统,还包括:
当处于非可信模式时,所述键码通过一个接口被传送以被板上键盘控制器处理。
11.如权利要求10所述的系统,其中,当处于非可信模式时,所述键码将通过PS/2接口被传送至所述板上键盘控制器。
12.如权利要求8所述的系统,其中所述键盘扫描引擎集成在所述芯片集的I/O中心控制器上。
13.如权利要求12所述的系统,其中所述I/O中心控制器包括与键盘相接口的端口扩展器。
14.如权利要求12所述的系统,其中所述键盘扫描引擎实现了键扫描算法。
15.一种存储了一组指令的机器可读介质,所述指令在被处理器执行时,实现一种包括下述步骤的方法:
集成在芯片集上的键盘扫描引擎启动键扫描处理;
所述键盘扫描引擎探测按键动作;
当处于可信模式时,通过可信内部总线接口传送对应于所述按键动作的键码。
16.如权利要求15所述的机器可读介质,其中所述可信内部总线接口是可信的通用串行总线接口。
17.如权利要求15所述的机器可读介质,还包括:
当处于非可信模式时,通过一个接口传送对应于所述按键动作的键码以使板上键盘控制器对其进行处理。
18.如权利要求17所述的机器可读介质,其中,当处于非可信模式时,所述键码通过PS/2接口被传送至所述板上键盘控制器。
19.如权利要求15所述的机器可读介质,其中所述键盘扫描引擎集成在所述芯片集的I/O中心控制器上。
20.如权利要求19所述的机器可读介质,其中所述I/O中心控制器包括与键盘相接口的端口扩展器。
21.如权利要求19所述的机器可读介质,其中所述键盘扫描引擎实现了键扫描算法。
22.一种系统,包括:
中央处理单元;
存储器单元;
图形控制器;以及
集成在芯片集上的键盘扫描引擎,所述键盘扫描引擎启动键扫描处理,探测按键动作,而且在处于可信模式时,通过可信内部总线接口传送对应于所述按键动作的键码。
23.如权利要求22所述的系统,其中所述的可信内部总线接口是可信的通用串行总线接口。
24.如权利要求22所述的系统,还包括:
当处于非可信模式时,所述键码通过一个接口被传送以被板上键盘控制器处理。
25.如权利要求24所述的系统,其中,当处于非可信模式时,所述键码将通过PS/2接口被传送至所述板上键盘控制器。
26.如权利要求22所述的系统,其中所述键盘扫描引擎集成在所述芯片集的I/O中心控制器上。
27.如权利要求26所述的系统,其中所述的I/O中心控制器包括与键盘相接口的端口扩展器。
CNB2004100746102A 2003-09-30 2004-09-07 可信键盘扫描的方法和装置 Expired - Fee Related CN1318944C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/676,888 US7145481B2 (en) 2003-09-30 2003-09-30 Method and apparatus for trusted keyboard scanning
US10/676,888 2003-09-30

Publications (2)

Publication Number Publication Date
CN1605975A true CN1605975A (zh) 2005-04-13
CN1318944C CN1318944C (zh) 2007-05-30

Family

ID=34377481

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100746102A Expired - Fee Related CN1318944C (zh) 2003-09-30 2004-09-07 可信键盘扫描的方法和装置

Country Status (6)

Country Link
US (1) US7145481B2 (zh)
CN (1) CN1318944C (zh)
DE (1) DE112004001778T5 (zh)
GB (1) GB2422040B (zh)
HK (1) HK1085827A1 (zh)
WO (1) WO2005033916A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104462942A (zh) * 2014-11-20 2015-03-25 工业和信息化部电信研究院 移动终端可信用户输入输出接口的检测方法及系统

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040268143A1 (en) * 2003-06-30 2004-12-30 Poisner David I. Trusted input for mobile platform transactions
US7145481B2 (en) 2003-09-30 2006-12-05 Intel Corporation Method and apparatus for trusted keyboard scanning
US7698739B2 (en) * 2004-03-30 2010-04-13 Marvell International Ltd. Updating code with validation
US8566934B2 (en) 2011-01-21 2013-10-22 Gigavation, Inc. Apparatus and method for enhancing security of data on a host computing device and a peripheral device
US8954747B2 (en) * 2011-07-01 2015-02-10 Intel Corporation Protecting keystrokes received from a keyboard in a platform containing embedded controllers
KR102195788B1 (ko) 2011-08-10 2020-12-28 기타 스리바스타바 호스트 컴퓨팅 디바이스와 주변기기의 데이터의 보안을 강화하기 위한 장치 및 방법

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5970146A (en) * 1996-05-14 1999-10-19 Dresser Industries, Inc. Data encrypted touchscreen
US5748888A (en) 1996-05-29 1998-05-05 Compaq Computer Corporation Method and apparatus for providing secure and private keyboard communications in computer systems
IES77153B2 (en) 1996-11-18 1997-11-19 Alps Electric Ireland Ltd Computer keyboard with integral encoded device reader
US7269844B2 (en) * 1999-01-15 2007-09-11 Safenet, Inc. Secure IR communication between a keypad and a token
US6725318B1 (en) * 2000-02-29 2004-04-20 Microsoft Corporation Automated selection between a USB and PS/2 interface for connecting a keyboard to a computer
US20020166055A1 (en) * 2001-05-04 2002-11-07 International Business Machines Corporation Secure pin entry into a security chip
EP1286242A1 (en) 2001-08-22 2003-02-26 Sonera SmartTrust, Ltd. System and method for protected data input of security data
US7145481B2 (en) 2003-09-30 2006-12-05 Intel Corporation Method and apparatus for trusted keyboard scanning

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104462942A (zh) * 2014-11-20 2015-03-25 工业和信息化部电信研究院 移动终端可信用户输入输出接口的检测方法及系统
CN104462942B (zh) * 2014-11-20 2018-03-27 工业和信息化部电信研究院 移动终端可信用户输入输出接口的检测方法及系统

Also Published As

Publication number Publication date
GB2422040B (en) 2007-05-23
DE112004001778T5 (de) 2006-08-24
HK1085827A1 (en) 2006-09-01
GB2422040A (en) 2006-07-12
GB0604695D0 (en) 2006-04-19
US20050068203A1 (en) 2005-03-31
CN1318944C (zh) 2007-05-30
WO2005033916A1 (en) 2005-04-14
US7145481B2 (en) 2006-12-05

Similar Documents

Publication Publication Date Title
US5748888A (en) Method and apparatus for providing secure and private keyboard communications in computer systems
US9058492B1 (en) Techniques for reducing executable code vulnerability
AU2011285762B2 (en) Providing fast non-volatile storage in a secure environment
US10838789B2 (en) Memory poisoning with hints
CN1825315A (zh) 查询拼写更正方法和系统
CN102171683A (zh) 从查询日志中挖掘新词用于输入方法编辑器
CN101078985A (zh) 用于识别在计算机系统上运行的操作系统的方法和设备
CN1855111A (zh) 用于对处理器指令的快速解密的方法、装置和系统
US20100241815A1 (en) Hybrid Storage Device
US8973135B2 (en) Selectively scanning objects for infection by malware
US20130198150A1 (en) File-type dependent data deduplication
CN1650276A (zh) Ata/sata组合控制器
US10482087B2 (en) Storage system and method of operating the same
CN1605975A (zh) 可信键盘扫描的方法和装置
CN111209257B (zh) 一种文件系统碎片化的方法及装置
US10146740B1 (en) Sparse data set processing
CN1317846C (zh) 实现内外网络物理隔离的方法及其装置
US20220058263A1 (en) Description-entropy-based intelligent detection method for big data mobile software similarity
CN1181422C (zh) 与外部设备分离设置的计算机系统的输入输出方法
CN1260546A (zh) 在手持装置中存储和检索数据的方法及装置
US20090138633A1 (en) Computer, external storage and method for processing data information in external storage
US9465937B1 (en) Methods and systems for securely managing file-attribute information for files in a file system
CN1752885A (zh) 计算机系统及其配置方法
CN116303820A (zh) 标签生成方法、装置、计算机设备及介质
US20220155987A1 (en) Performance of Dispersed Location-Based Deduplication

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070530

Termination date: 20180907