防止键盘按键被侧录的方法、装置及系统的制作方法

文档序号:2285328阅读:490来源:国知局

专利名称::防止键盘按键被侧录的方法、装置及系统的制作方法
技术领域
:本发明涉及一种防止键盘按键被侧录的方法、装置及系统,特别是涉及一种计算机外设装置的数据保全方法,用来防止计算机键盘按键数据被侧录,确保计算机键盘按键的文字数据不会被非法侧录软件取得的防止键盘按键被侧录的方法、装置及系统。
背景技术
:请参阅图1所示,个人计算机(PersonalComputer,PC)键盘10的按键数据经键盘连接线11、键盘连接器12、KBC(KeyboardController)或USB主控器134,然后由操作系统132取得,再传送到终端应用软件130。由于个人计算机的软硬件架构的关系,任意软件都可以透过操作系统132或硬件程序接口133地取得键盘按键的数据,而且使用者都不会查觉到任何异状。而按键侧录或间谍软件(keyloggerorspysoftware)就是利用这个特性来侧录使用者输入的数据,进而非法盗取个人账号与密码。由于目前市面上并无加密键盘的产品,即使有防毒与防间谍的软件,也常听到在线计算机游戏的使用者在在线游戏中的宝物或点数被盗,或因网络银行的账号密码被侧录而造成存款被盗的损失。目前的计算机网络虽然有各种成熟稳定的加密技术,但即使是计算机网络加密的网络协议,亦无法解决键盘侧录软件的问题,因为问题的根源在于个人计算机的键盘数据是没有保护的,除非解决键盘可能会被侧录的问题,否则键盘侧录软件就不会有消失的一天。目前解决这种问题的方法是利用软件的屏幕小键盘,使用者以鼠标点取屏幕上用软件画的键盘,而且若每个按键的位置每次都随机变换,使用起来非常不便,也没有辨法防止屏幕侧录软件。更有很多使用者不知道要使用屏幕小键盘,或者有些使用者因为觉得不方便而不喜欢用屏幕小键盘。另一种方式是在操作系统132内加密按键数据,但侧录软件1320也是操作系统132的一部分,所以这种用软件加密的方式并无法根本解决侧录软件的问题。所以说,防侧录加密键盘是现今计算机网络系统必备并且是非常重要的装置,虽然并没有解决键盘被侧录的根本问题,但加密的方法可以让侧录软件侧录到的按键数据变成看似无意义的乱码,除非侧录软件知道如何解密,否则防侧录键盘是可以有效防制按键侧录软件的问题。由此可见,上述现有的键盘按键在结构与使用上,显然仍存在有不便与缺陷,而亟待加以进一步改进。为了解决上述存在的问题,相关厂商莫不费尽心思来谋求解决之道,但长久以来一直未见适用的设计被发展完成,而一般产品又没有适切结构能够解决上述问题,此显然是相关业者急欲解决的问题。因此如何能创设一种新型的防止键盘按键被侧录的方法、装置及系统,实属当前重要研发课题之一,亦成为当前业界极需改进的目标。有鉴于上述现有的键盘按键存在的缺陷,本发明人基于从事此类产品设计制造多年丰富的实务经验及专业知识,并配合学理的运用,积极加以研究创新,以期创设一种新型的防止键盘按键被侧录的方法、装置及系统,能够改进一般现有的键盘按键,使其更具有实用性。经过不断的研究、设计,并经过反复试作样品及改进后,终于创设出确具实用价值的本发明。
发明内容本发明的主要目的在于,克服现有的键盘按键存在的缺陷,而提供一种新型的防止键盘按键被侧录的方法、装置及系统,所要解决的技术问题是使其藉由把使用者输入的数据在输入装置上就加密,然后在终端软件再解密,来达到使用者输入数据的安全性,非常适于实用。本发明的目的及解决其技术问题是采用以下技术方案来实现的。依据本发明提出的一种防止键盘按键被侧录的方法,应用在计算机装置上防止使用者输入的数据被侧录,其包括一个能把文字数据加密,但控制数据不加密的使用者输入装置;一个终端应用软件;其中终端应用软件能把使用者输入被加密的文字数据解密,以此达到防侧录的效果,同时又具兼容。本发明的目的及解决其技术问题还可采用以下技术措施进一步实现。前述的防止键盘按键被侧录的方法、装置及系统,其中所述的使用者输入装置包括键盘、九弓数字键盘、条形码扫瞄器、触控屏幕,其是输出二类的数据到计算机装置,该二类数据为文字与控制数据。前述的防止键盘按键被侧录的方法、装置及系统,其中所述的文字数据是一事先定义的文字、数字、符号的集合。前述的防止键盘按键被侧录的方法、装置及系统,其中所述的控制数据是一事先定义输入数据的集合,使用者用该控制数据来控制计算机装置软硬件。前述的防止键盘按键被侧录的方法、装置及系统,其中所述的终端应用软件,是一个在计算机装置上等待使用输入数据的软件,或是相对应于等待使用者输入数据的软件的远程服务器。本发明的目的及解决其技术问题还采用以下技术方案来实现。依据本发明提出的一种防止键盘按键被侧录的装置,是一种计算机输入装置,其包括一个使用者输入接口;一个把使用者输入的文字加密但控制数据不加密的数据产生器;一个数据输出接口;其中使用者输入接口接收把文字和控制数据,数据产生器区分加密和不加密的数据,再由数据输出接口输出,以此达到防侧录的效果,同时又具兼容性。本发明的目的及解决其技术问题还可采用以下技术措施进一步实现。前述的防止键盘按键被侧录的方法、装置及系统,其中所述的使用者输入接口包括键盘、九弓数字键盘、条形码扫瞄器、触控屏幕,其是输出二类的数据到计算机装置,该二类数据为文字与控制数据。前述的防止键盘按键被侧录的方法、装置及系统,其中所述的使用者输入接口是一个由输出入讯号所组成的键盘或触控屏幕矩阵,或是条形码扫瞄器光感器组件。前述的防止键盘按键被侧录的方法、装置及系统,其中所述的数据输出接口包括PS2或USB总线,用以连结计算机主机,或LPC总线连接到计算机主机板上的南桥芯片组。本发明的目的及解决其技术问题另外再采用以下技术方案来实现。依据本发明提5出的一种防止键盘按键被侧录的装置,是一种计算机防按键侧录的桥接装置,其包括一个连接使用者输入装置的接口;一个把来自使用者输入的文字加密的数据分析与产生器;一个数据输出接口;其中连接使用者输入装置的接口送出非加密文字与控制数据,而数据分析与产生器把其中的文字数据加密,控制数据则不加密,再送往数据输出接口,以此达到防侧录的效果,同时又具兼容性。本发明的目的及解决其技术问题还可采用以下技术措施进一步实现。前述的防止键盘按键被侧录的方法、装置及系统,其中所述的连接使用者输入装置的接口包括PS2或USB总线,用以连接PS2或USB的使用者输入装置,例如键盘、九弓数字键盘、条形码扫瞄器、触控屏幕等,或LPC总线连接到计算机主机板上的南桥芯片组。前述的防止键盘按键被侧录的方法、装置及系统,其中所述的数据分析与产生器分析并产生输入与输出接口间的命令与数据协议,并且将送往输出接口的文字数据加密。前述的防止键盘按键被侧录的方法、装置及系统,其中所述的数据输出接口包括PS2或USB连接到计算机,或LPC总线连接到计算机主机板上的南桥芯片组。本发明的目的及解决其技术问题另外还采用以下技术方案来实现。依据本发明提出的一种防止键盘按键被侧录的计算机系统,其包括一个防按键侧录的输入装置;一个终端应用软件;其中防按键侧录的输入装置能把使用者输入的文字加密,控制数据则不加密;然后终端应用软件再把加密的文字解密;以此达到防侧录的效果,同时又具兼容性。本发明的目的及解决其技术问题另外还采用以下技术方案来实现。依据本发明提出的一种防止键盘按键被侧录的计算机网络系统,其包括一个防按键侧录的输入装置;一个终端应用软件;一个解密服务器;一个连接终端应用软件与解密服务器的网络;其中防按键侧录的输入装置能把使用者输入的文字加密,控制数据则不加密;然后终端应用软件再透过网络把加密的文字送往解密服务器;解密服务器将加密的文字解密;以此达到防侧录的效果,同时又具兼容性。本发明与现有技术相比具有明显的优点和有益效果。由以上可知,为达到上述目的,本发明提供了一种防止键盘侧录软件的解决方案;藉由把使用者输入的数据在输入装置(例如键盘)上就加密,然后在终端软件再解密;来达到使用者输入数据的安全性。其中特别的技巧是如果使用者输入的是文字则加密,若输入的是控制按键(例如键盘上Ctrl,Alt,Shift,ESC,F1-F12等)则不加密;如此能确保文字数据的安全性,又不影响操作系统与应用软件的使用者控制接口。本发明其中一项是一个键盘装置,包含一个PS2或USB接口,用来连接到主机计算机,一个使用者按键扫瞄矩阵,以及一个PS2或USB协议产生器以产生使用者输入的按键数据至计算机主机。其中PS2或USB协议产生器可以把文字数据加密,例如A,B,C,...Z,O,1...9等等这些按键数据。本发明的另一项是一个键盘桥接装置,包含一个PS2或USB接口连接到主机计算机,另一个PS2或USB接口连接到键盘,以及一个键盘协议分析与产生模块分析二端之间的PS2或USB键盘的命令和数据流。其中PS2或USB键盘协议分析与产生模块可以把文字数据加密,例如A,B,C,...Z,0,1...9等等这些按键数据。本发明还有一项是一个键盘主机控制器(KBC),包含一个PS2连接埠用来连接到PS2键盘,一个LPC(LowPinCount)接口连接到主机板上的南桥芯片组(South-bridgechipset),以及一个PS2协议分析器来解析并编码在KBC和键盘之间的数据流。其中PS2键盘协议分析可以把使用者输入的文字数据加密,例如A,B,C,...z,o,i...g等等这些按键数据。本发明还包含一个计算机系统,其中有一个加密功能的使用者输入装置,一个要求使用者输入数据的终端应用软件。有加密功能的使用者输入装置把使用者输入的文字加密,但输入的非文字控制数据则不加密;例如A,B,C,...Z,O,1...9等等这些按键数据;而Ctrl,Alt,Shift,ESC,Fl-F12等则是非文字的控制按键。终端应用软件可以把加密的使用者输入文字解密。本发明还揭露一种计算机网络系统,包含一个有加密功能的使用者输入装置,一个在本机计算机要求使用者输入数据的终端应用软件,以及一个可以把使用者输入的加密数据解密的远程服务器。有加密功能的使用者输入装置把使用者输入的文字加密,但输入的非文字控制数据则不加密;例如A,B,C,...Z,O,l...g等等这些按键是文字数据,而Ctrl,Alt,Shift,ESC,Fl-F12等则是非文字的控制按键。终端应用软件并不把加密的使用者输入文字解密,而是把加密的文字数据传送到远程的服务器,由服务器来解加密的文字数据。本发明还揭露另一种计算机网络系统,包含一个有加密功能的使用者输入装置,一个在本机计算机要求使用者输入数据的终端应用软件,一个可以把使用者输入的加密数据解密的远程服务器,以及一个要求使用者输入数据的远程应用服务器。有加密功能的使用者输入装置把使用者输入的文字加密,但输入的非文字控制数据则不加密;例如A,B,C,...Z,O,l...g等等这些按键是文字数据,而Ctrl,Alt,Shift,ESC,F1-F12等则是非文字的控制按键。终端应用软件并不把加密的使用者输入文字解密,而是把加密的文字数据传送到解密远程的服务器,由解密服务器来解加密的文字数据;解密服务器再把解密的文字数据传送到应用服务器。本发明各种实作的好处是终端应用软件所要求的使用者输入文字是被保护的,而且和现有的操作系统和应用软件兼容,因为控制按键保持不变;安全性提高,而兼容性维持不变。如果键盘上所有的按键都加密,那么控制按键和文字按键都必须在操作系统的驱动软件就解密,那么在键盘装置上加密的义意和效果就会消失,因为这样侧录软件就可以侧录到操作系统驱动程序解密的文字数据或是解密方式。本发明揭露了一个可以具体实施的方式,在现有的计算机系统上,保护使用者输入的按键数据;而且不必大幅更改计算机系统的软硬件架构。借由上述技术方案,本发明防止键盘按键被侧录的方法、装置及系统至少具有下列优点及有益效果1、本发明终端应用软件所要求的使用者输入文字是被保护的,而且和现有的操作系统与应用软件兼容,因为控制按键保持不变;2、本发明的安全性提高,而兼容性维持不变;其揭露了一个可以具体实施的方式,在现有的计算机系统上,保护使用者输入的按键数据;而且不必大幅更改计算机系统的软硬件架构。综上所述,本发明是有关于一种防止键盘按键被侧录的方法、装置及系统,是一种防止计算机使用者在计算机上输入数据时,文字数据被软件侧录的方法。该方法是把文字数据在使用者输入装置上加密,侧录软件便无法知道计算机使用者输入文字数据的真实内容。本发明在技术上有显著的进步,并具有明显的积极效果,诚为一新颖、进步、实用的新设计。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。图1是本发明的PC系统软硬件架构与键盘的示意图。图2是本发明的键盘装置控制器功能方框图。图3是本发明的装设防按键侧录配接器的PC系统的方框图。图4是本发明的防按键侧录配接器的功能方框图。图5是本发明的防按键侧录键盘控制器(KBC)功能方框图。图6是本发明的防按键侧录网络系统的方框图。图7是本发明的防按键侧录网络系统登入程序的方框图。图8是本发明的应用软件外观图。10:键盘11:键盘连接线12:键盘连接器13:计算机主机130:终端应用软件131:软件程序接口132:操作系统1320:侧录软件133:硬件程序接口134:KBC或USB主控器20:键盘控制器200:键盘装置接口201:加密模块202:键盘扫瞄矩阵控制器203:按键数据产生器204:键盘命令处理器205:界面206:界面207:界面208:程序接口209:程序接口21:扫瞄矩阵讯号线22:键盘扫瞄矩阵30:计算机主机31:键盘32:连接线33:防按键侧录配接器34:连接线35:键盘300:KBC或USB主控器40:防按键侧录配接器400:键盘装置接口401:加密模块402:键盘协议分析与产生器403:主机接口404:界面405:界面406:界面50:KBC500:LPC界面501:键盘协议分析与产生器502:PS2键盘装置接口503:命令处理器504:加密模块505:界面506:界面507:界面509:界面508:界面60:键盘610:应用端软件6110:按键侧录软件63:使用者输入数据译码服务器65:网络联机801:账号文字框803:登入框61:应用端计算机611:操作系统62:应用软件服务器64:键盘连接线800:应用端软件802:密码文字框具体实施例方式为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的防止键盘按键被侧录的方法、装置及系统其具体实施方式、结构、特征及其功效,详细说明如后。有关本发明的前述及其他技术内容、特点及功效,在以下配合参考图式的较佳实施例的详细说明中将可清楚的呈现。为了方便说明,在以下的实施例中,相同的元件以相同的编号表示。下面的部分将说明PC系统使用者输入的现有习知技术,以及本发明的一个实施例与其优点。请参阅图1所示,图1是键盘在PC系统上的软硬件架构示意图。使用者在键盘10按下一个键,该按键数据经过连接线11(可以是PS2或USB的型式),连接到PS2或USB连接器12,进入计算机主机13。该按键数据由KBC或USB主控器134接收,依键盘10是PS2或USB型式来决定是KBC或USB主控器134。操作系统132与侧录软件1320可经由KBC或USB主控器134取得按键数据。而且一般情况下,侧录软件1320是隐藏在操作系统132中的某一软件层,例如中断服务程序(ISR,InterruptServiceRoutine)、驱动程序(driver)、或讯息分派程序(messagedispatcher);所以侧录软件是操作系统132的一部分。终端应用软件130并无法知道操作系统132内是否有侧录软件1320。图8800是一个终端应用软件130的外观图,用来登入远程计算机伺服系统。本发明的主要目的之一就是要保护使用者在账号801与密码802的文字框中输入的文字数据。本发明的实施例可以保护使用输入的按键数据,避免按键数据被侧录软件1320盗取。其方法是在程序硬件接口133之前把按键数据加密,然后在软件程序接口131之后再解密。在本发明的实施例中,按键数据是在图8中的终端应用软件800的文字框801与802中解密,或者在图6中的解密服务器63中解密;在稍后的段落会做更详细的说明。请参阅图2所示,图2键盘控制器20是本发明的一个实施例,相对于图1是键盘IO内的控制器。图2揭露键盘控制器20的功能方框图。键盘装置接口200可以是PS2或USB,用来连接到图1的键盘连接线11,此接口处理PS2或USB规格的键盘协议,其中包括键盘命令与按键数据。例如计算机主机13的键盘命令是由KBC134的I0埠60h的写入启动,按照表一的命令格式来写入与读取10埠60h。例如Reset命令(FFh),由写入KBC13410埠60h数值FFh,然后键盘会回传Fah给KBC134表示已收到命令,然后再回传一个Aah表示Reset命令执行完毕。表一PS2键盘命令命令命令防止键命令说明与格式值盘按键被侧录的方法、装置及系统FFhReset重置键盘,键盘会回传Fah,并在重置结束时回传AAh。格式FFFAAAFEhResend回传最近一笔数据给主机计算机,一般用在软件发现数据错误状况(同位错误)。格式FEFARR(RR是送到主机的最近一笔数据)F6hSetDefault设定键盘按键速度与延迟时间为默认值(IO.9cps/500ms),并且使用第二按4建表(Set2ScanCode)。格式F6FAF5hDisable暂停键盘,设定如"SetDefault"命令。格式F5FAF4hEnable在暂停键命令之后启动键盘。格式F4FAF3hSet设定键盘按键速度与延迟时间。Typematic格式F3FA丽FA(丽设定的数值,即写入10埠Rate/Delay60h的数值)F2hGetDevice回传^建盘的识别码AB41。ID格式F2FAAB41FOhSetScan设定键盘按键表(ScanCodeSet),参数可以是1,CodeSet2,3等等。若参数是0,表示读取目前键盘按键表的设定。才各式1:FOFAWWFA(WW非0值)格式2:FOFA00FARR(RR是回传的键盘按键表号码)EEhEcho4囊盘回传EEh。<table>tableseeoriginaldocumentpage11</column></row><table>表一的命令协议由键盘命令处理器204处理,键盘装置接口200处理PS2或USB的总线规格,由键盘连接线11连接到KBC或USB主控器。键盘装置接口200与键盘命令处理器204以讯号或程序接口209来互动。当键盘扫瞄矩阵控制器202透过扫瞄矩阵讯号线21扫瞄键盘扫瞄矩阵22,发现一个或多个按键被按下或放开时,按键数据产生器203便产生一组按键数据,如果按键是文字(例如八,8,"0...),就由加密模块201加密,再由接口207送往键盘装置接口200。本发明特别的地方在于按键数据产生器203对按键的加密功能,这个功能把按键区分成文字、数字、符号(例A,B,C,...Z,0,1,2,...9)要加密,而其它非文字、数字、符号的控制按键(例如Ctrl,Shift,Alt,Fl,F2.)就不加密。在KBC134与键盘10之间的按键数据协议就是由按键数据产生器203来达成。按键数据产生器203管理的按键数据和键盘装置接口200的种类(PS2或USB)并不相关,与PS2或USB接口相关的协议是在键盘装置接口200处理。例如PS2键盘的按键数据分为"按下键(makekey)"与"放开键(breakkey)"。"按下键(makekey)"表示使用者按下了一个按键;而"放开键(breakkey)"是使用者放开一个按键,PS2的"按下键(makekey)"与"放开键(breakkey)"列在表二表二PS2按键格式(第二按键数据表Set2ScanCode)按下放开按键1FO01F93FO03F54FO04F35FO05Fl6FO06F27FO07F128FO08F139FO09F10OaFOOaObF6OcFOOcF4OdFOOdTabOeFOOe、~OfFOOfKeypad=10FO10F1411FO11LeftAlt12FO12LeftShift13FO13KeyboardIntl'2(Katakana/Hiragana)14FO14LeftControl15FO15qQ16FO161!18FO18F15laFOlazZlbFOlbsSlcFOlcaAIdFOIdwWleFOle26)20FO20F1621FO21cC22FO22xX23FO23dD24FO24eE25FO254$26FO263#27FO27KeyboardInt'16(PC9800Keypad,)28FO28F1729FO29Space2aFO2avV2bFO2bfF2cFO2ctT2dFO2drR2eFO2e5%30FO30F1831FO31nN32FO32bB33FO33hH34FO34gG35FO35yY1236F0366A38F038F193aF03amM3bF03bj工3cF03cuU3dF03d7&3eF03e8*40F040F2041F041,<42F042kK43F043iI44F044o045F0450)46F0469(48F048F2149F049.>4aF04a/74bF04b1L4cF04c5二4dF04dPP4eF04e—_50F050F2251F051KeyboardInt'11(Ro)52F05254F05455F055=+57F057F2358F058CapsLock59F059RightShift5aF05aReturn5bF05b5dF05d\15fF05fF24,KeyboardUng5(Zenkaku/Hankaku)61F061Europe262F062KeyboardLang4(Hiragana)63F063KeyboardLang3(Katakana)64F064KeyboardInt'14(Henkan)66F066Backspace67F067KeyboardInt'15(Muhenkan)69F069Keypad1End6aF06aKeyboardInt'12(Yen)6bF06bKeypad4Left6cF06cKeypad7Home6dF06dBrazilianKeypad.70F070Keypad0Insert71F071Keypad.Delete72F072Keypad2Down73F073Keypad574F074Keypad6Right75F075Keypad8Up76F076Escape77F077NumLock78F078Fll79F079Keypad+7aF07aKeypad3PageDn7bF07bKeypad-7cF07cKeypad*7dF07dKeypad9PageUp7eF07eScrollLockE010E0F010WWSearchE011E0F011RightAltE012E0F012PrintScreen1E014E0F014RightControlE015E0F015ScanPreviousTrackE018E0F018WWWFavoritesE01FE0F01FLeftGUIE020E0F020WWWRefreshE021E0F021VolumeDownE023E0F023MuteE027E0F027RightGUIE028E0F028WWStopE02BE0F02BCalculatorE02FE0F02FAppE030E0F030酉WForwardE032E0F032VolumeUpE034E0F034Play/PauseE037E0F037SystemPower,KeyboardPowerE038E0F038W曹Back14E03AEOFO3A窗HomeEO3BEOFO3BStopEO3FEOFO3FSystemSleepEO40EOFO40MyComputerEO48EOFO48MailEO4AEOFO4AKeypad/EO4DEOFO4DScanNext'TrackEO50EOFO50MediaSelectEO5AEOFO5AKeypadEnterEO5EEOFO5ESystemWakeEO69EOFO63EndEO6BEOFO6BLeftArrowEO6CEOFO6CEO70EOFO70InsertEO71EOFO71DeleteEO72EOFO72DownArrowEO74EOFO74RightArrowEO75EOFO75UpArrowEO7AEOFO7APageDownEO7CEOFO7CPrintScreen2EO7DEOFO7DPageUpEO7EEOFO7ECtr卜Break(上表所有数值皆为16进位)由表二可看出,按下键与放开键不同之处在于前置的FO,如此按键数据产生器203可以区分按键按下与放开的状态,而利用同一个加密表(TranslateTable)来加密,对前置FO则不必管它。再则按键数据产生器203可以选择性地对文字按键加密,加密的方法是按照加密表来改变按键按下与放开的数值;而且重新对应后的数值必须还文字按键的数值。对于控制按键则维持不变,原因是选择部分文字按键加密可以减少在图1的应用端软件130和操作系统132的不兼容性。系统对控制按键的部分保持不变,但文字按键被加密了,如此达到防制侧录软件并兼容于现有系统的效果。如果控制按键也加密了,则按键数据就必须在操作系统132之前或是134硬件程序接口后的底层的驱动软件解密,否则系统对控制按键的部分就会大乱;但在操作系统之前解密,则整个资料保密的效果就不见了,因为侧录软件1320便可以侧录到解密后的按键数据。在本发明实施例中,加密了文字,但保持控制键不变,所以终端应用软件130与操作系统132的控制按键功能不会被影响。控制讯号或程序接口208是用来启动、关闭、改变加密参数。例如本发明实施例增加了几个PS2键盘命令,用来设定加密模块201的参数,如下表三表三PS2键盘加密扩充命令15<table>tableseeoriginaldocumentpage16</column></row><table>还有其它设定加密组模201的参数方式,不必设计新PS2命令。例如利用ScrollLockLED的功能来当作加密模块201的启动方式当ScrollLockLED用Edh命令来开启时,加密模块201就启动;如果ScrollLockLED关闭,加密模块就不启动。如此,用标准的PS2命令就可以启动加密模块,而ScrollLock这个功能很少软件在使用,可以说是键盘不用的功能,所以可以把它当做新功能的开关。本实施例的设计是当键盘启动ScrollLock时,意即启动加密功能,随即送出一组文字数据,这一组文字的内容就是表三命令中设定的34h取得加密表加密参数加密号码、装置号码以及加密表。这个方式不必新增PS2命令所产生可能造成的兼容性问题,也不必驱动程序,就可以让终端应用软件130在使用者输入数据时有加密的功能。请参阅图3所示,图3是本发明的另一种实施例。图1中的键盘连接线11由图3连接线32、34与防按键侧录配接器33所取代。键盘31是一般的键盘,没有防侧录功能。但键盘配接器32可以加强一般的键盘成为具有防侧录功能的键盘35;结合连接线32、34与防按键侧录配接器,其功能同等于图1中的键盘10。请参阅图4所示,图4是图3中防按键侧录配接器33的功能方框图。防按键侧录配接器40中键盘装置接口400与键盘主机接口403主管PS2或USB的协议。加密模块401与图2中的加密模块201是一样的功能。键盘协议分析与产生器402是一个管理键盘装置接口400与键盘主机接口403之间数据流的桥接器,它可以分析出文字按键数据和命令,如果是新增的加密命令,就不必转送到键盘装置接口400;如果分析出是按键文字数据,就可将之加密,非文字数据则直接转送到主机接口403。请参阅图5所示,图5是本发明另一种实施例,为图1中的KBC134的功能方框图,只不过此实施例的加密模块504放在KBC50之内。这种方式在图1中的键盘10与连接线ll都保持不变,KBC134负责按键数据加密与否。KBC是位于计算机主机板上的一个芯片,通常透过LPC(LowPinCount)总线在电路板上直连接到南桥芯片组,所以KBC50和南桥芯片组的所有沟通都必须透过LPC接口500,相对应在硬件程序接口133即是10端口60h与64h。操作系统透过60h与64h10端口和KBC的LPC主机接口500沟通。10端口64h是命令与状态缓存器(CommandandStatus),而10端口60h是数据输出与输入缓存器。KBC50的命令如表四表四KBC主机命接口(1060hAnd64h)说明<table>tableseeoriginaldocumentpage17</column></row><table>来自键盘或鼠标,依KBCStatusbit0和5OBF来决定。如果数据来自键盘,其格式有可能是第一或第二按键表(Set1orSet2ScanCode),以KBC命令60h的Bit64妾4建表转换(ScanCodeConversion)设定来决定(参考表五)写入KBC数据输入写入KBC数据输入暂存区(InputDataBuffer):60h如果没有KBC命令正在执行中,写入60h的数据即是键盘命令,即表一与表三所列的PS2键盘命令。如要下命令到PS2鼠标,必须要在写入10埠60h之前,先下D4h前置命令。写入KBC命令发动KBC命令到KBC50。64hKBC命令在表五。读取KBC状态读取KBC状态。64hBitO:OBF,输出暂存区已满(OutputBufferFull)Bitl:IBF,输入暂存区已满(InputBufferFull)Bit2:系统旗标(SystemFlag),表示POST完成Bit3:A2,表示上一个写入是IO60h(0)或64h(l)Bit4:暂停,表示键盘被暂时停止Bit5:AUXOBF,PS2鼠标凄史据输出旗标Bit6:超时错误(GeneralTime-out)BU7:同位错误(ParityError)表五KBC命令<table>tableseeoriginaldocumentpage19</column></row><table>A7hA8hA9hAahAbhAdhAehC0hD0hDlhD2hD3h写入KBC命令字节(WriteCommandByte)暂停鼠标装置(DisableMouseDevice)启动鼠标装置(EnableMouseDevice)测试鼠标连接端口(TestMousePort)自我测试(SelfTest)测试键盘连接端口(TestKeyboardPort暂停键盘装置(DisableKeyboardDevice)启动键盘装置(EnableKeyboardDevice)读取埠1(ReadPortl)读耳又埠2(ReadPort2)写入埠2(WritePort2)写入KBC键盘输出暂存区(WriteKBCKeyboardOutputBuffer)写入KBC鼠标输出Conversion)1:KBC会将第二(Set2)转成第一(Setl)按键表(ScanCode)0:KBC不转换按键码。Bit7:N.A.变更KBC设定,如命令20h所述的命令字节。测试KBC上的鼠标连接端口,以确定是否有鼠标连接着。KBC自我测试,并暂停键盘鼠标装置。测试KBC上的键盘连接端口,以确定是否有键盘连接着。读取8042的埠1状态,皆为零值。读取8042的埠2状态(只有bitl是有义意的:写入8042的埠2状态<只有bitl是有意义的:GA20状态,设定GA20状态,仿真来自键盘装置的数据。仿真来自鼠标装置的数据。20<table>tableseeoriginaldocumentpage21</column></row><table>为让KBC50支持防侧录功能,扩充KBC命令如表六,其功能与前述表三的PS2扩充加密键盘命令一样,只是现在把加密功能放到KBC中,所以表六和表三实际上是一样的内容,不过PS2命令后的第一个Fah的装置回复通知在KBC就不必要了,因为KBC可以KBC状态中的用IBF和OBF让上层软件来确定KBC是否有收到KBC命令。表六KBC加密扩充命令<table>tableseeoriginaldocumentpage21</column></row><table>码个参数,让每个不同计算机中的加密会有不同的结果。装置号码在键盘制造时便设定好。格式33AABBCCDDEEFFGGHHAA,BB…HH是照顺序的8个字节的装置号码AA是低字节(LSB),HH高字节(MSB)。34h取得加密表加密表(TranslateTable)用给主机计算机解密的按《建对应表,故此表必须经过加密后送出,再由终端应用软件130或服务器63解密取得正真的按键加密表。才各式34AABBCCDD....(64字节)AA,BB...是照顺序的64个字节的加密表,此加密表是经过加密的数据,必须解密后方可使_用加密表。_请参阅图5所示,图5中的KBC命令处理器503处理来自KBC主机接口500的命令(写入IO64h)与数据(写入或读取IO60h)。KBC加密扩充命令启动并设定键盘协议分析与产生器501与加密模块504,如果启动加密功能,PS2键盘装置接口502来的文字按键数据更被加密,非文字控制按键数据则不被更动而直接送往KBC主机接口500。请参阅图6所示,图6是一个防侧录的网络系统,当键盘60输出一个按键数据到应用端计算机61,应用端软件610取得被加密的文字,透过往路联机65,并把被加密的文字送往"使用者输入数据译码服务器"63。"使用者输入数据译码服务器"63把文字译码后,再透过网络联机65,把使用者真正的输入的数据送往"应用软件服务器"62。或者把使用者真正的输入的数据送回应用端软件610,根据不同的应用来决定是否把译码后的真正数据送回应用端软件610。例如若是使用者账号密码的总数据,并不须要把正真数据由译码服务器63送回应用端软件610,而是直接送到应用端软件服务器即可,如此可以防止应用端软件被其它种类的侧录软件取得真正的数据,例如屏幕侧录软件,或数据暂存区侧录软件等等。但若是聊天软件这类的应用,若不送回真正的按键数据,使用者便不知道自己输入的文字是否正确,会造成沟通上的问题。图6中的"使用者输入数据译码服务器"63和"应用软件服务器"62在实作时可以是同一部计算机主机,并不一定真的透过网络联机才能达到防按键侧录的效果,因为重点是让键盘60直接把按键数据送到"使用者输入数据译码服务器"63,而应用端计算机61并不知道译码的方式,最好也没有真正的按键数据,如此可以确保防侧录系统的安全无疑。因为整个应用端计算机61都没有正真的按键数据,所以按键侧录软件6110也就失效了。请参阅图7所示,图7是图6防侧录网络系统的操作流程图。图8是图6中的应用端软件610的一个外观图。当应用端软件610或800启动,等待使用者在账号文字框801与密码文字框802输入账号密码时,应用端软件800开始图7的流程"应用端软件610要求登入服务器"700。然后"应用端服务器62要求应用端软件610启动键盘60防侧录功能来登入系统"701,如果"键盘60没有防侧录功能"703,则"应用端软件610使用一般登22入程序"704。若"键盘60有防侧录功能"705,则"应用端软件610启动键盘60防侧录功能"706。译码服务器63可要求变更"设定键盘60防侧录参数"707。若要变更参数708,则"应用端软件610要求译码服务器63送出新的防侧录参数"709,接着"应用端软件610设定新的防侧录参数到键盘"712;若不变更防侧录参数710,则直接进入"应用端软件610等待键盘60进入防侧录模式"711。使用者输入按键后,"应用端软件610要求译码服务器63把使用者自防侧录键盘输入的数据解密"713,"译码服务器63传送译码后的使用者输入的数据至应用端软件服务器62"714,若结束输入717,"应用端软件610设定键盘回一般模式"。若使用者要继续输入715,则回到设定防侧录参数707,重新照流程步骤执行。请参阅图8所示,图8中的账号文字输入框801显示"xyzmn"是加密过的文字(假设使用者实际上是输入"abcde"。如果被解密的"abcde"在"译码服务器63传送译码后的使用者输入的数据至应用软件服务器62"714步骤,是送回应用端软件610,则文字输入框801就可以显示"abcde",不过显示"abcde"可能会被屏幕侧录软件侧录到"abcde"画面的数据,或是被数据暂存区侧录软件侧录到内存中的"abcde",若没有必要,最好不要把解密过的文字回传到应用端计算机。因为对机密的数据,显示出来就是有其风险,例如信用卡号码,只要被看到完整的信用卡号码,则可能被用来盗刷。若使用者真的要看实际输入的信息,可以在键盘60上内建一个小的LCD显示装置,这个小显示LCD可以把键盘的输入显示出来,但不会被应用端计算机取得,因为LCD内建在键盘上,其数据并不须上传到操作系统611。不过有些情况,应用软件800必须显示出真正的文字数据,例如MSN或Yahoo的聊天软件Messanger,如果不显示出真正的文字,就无法正确地沟通聊天了。本发明说明了数种的实施例,但这些实施例并不用来限制本发明的范围。各种组合的变形可以由熟悉这些相关领域的人来达成一样的效果;此外,程序和步骤也可以由熟悉这些相关领域的人重新安排达到一样的功能;这些应该都在本发明的范围之内。因此下例的专利范围包括了可能的变型和组合,而专利范围也不会随专利说明书中制程、设备、制造产品、或产品的组成、方法、方式以及步骤而被限制。因此,以下的申请专利范围包括了申请保护的制程、设备、制造产品或产品的组成、方法、方式以及步骤。以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。权利要求一种防止键盘按键被侧录的方法,应用在计算机装置上防止使用者输入的数据被侧录,其特征在于其包括一个能把文字数据加密,但控制数据不加密的使用者输入装置;一个终端应用软件;其中终端应用软件能把使用者输入被加密的文字数据解密,以此达到防侧录的效果,同时又具兼容。2.根据权利要求1所述的防止键盘按键被侧录的方法,其特征在于其中所述的使用者输入装置包括键盘、九弓数字键盘、条形码扫瞄器、触控屏幕,其是输出二类的数据到计算机装置,该二类数据为文字与控制数据。3.根据权利要求1所述的防止键盘按键被侧录的方法,其特征在于其中所述的文字数据是一事先定义的文字、数字、符号的集合。4.根据权利要求1所述的防止键盘按键被侧录的方法,其特征在于其中所述的控制数据是一事先定义输入数据的集合,使用者用该控制数据来控制计算机装置软硬件。5.根据权利要求1所述的防止键盘按键被侧录的方法,其特征在于其中所述的终端应用软件,是一个在计算机装置上等待使用输入数据的软件,或是相对应于等待使用者输入数据的软件的远程服务器。6.—种防止键盘按键被侧录的装置,是一种计算机输入装置,其特征在于其包括一个使用者输入接口;一个把使用者输入的文字加密但控制数据不加密的数据产生器;一个数据输出接口;其中使用者输入接口接收把文字和控制数据,数据产生器区分加密和不加密的数据,再由数据输出接口输出,以此达到防侧录的效果,同时又具兼容性。7.根据权利要求6所述的防止键盘按键被侧录的装置,其特征在于其中所述的使用者输入接口包括键盘、九弓数字键盘、条形码扫瞄器、触控屏幕,其是输出二类的数据到计算机装置,该二类数据为文字与控制数据。8.根据权利要求6所述的防止键盘按键被侧录的装置,其特征在于其中所述的使用者输入接口是一个由输出入讯号所组成的键盘或触控屏幕矩阵,或是条形码扫瞄器光感器组件。9.根据权利要求6所述的防止键盘按键被侧录的装置,其特征在于其中所述的数据输出接口包括PS2或USB总线,用以连结计算机主机,或LPC总线连接到计算机主机板上的南桥芯片组。10.—种防止键盘按键被侧录的装置,是一种计算机防按键侧录的桥接装置,其特征在于其包括一个连接使用者输入装置的接口;一个把来自使用者输入的文字加密的数据分析与产生器;一个数据输出接口;其中连接使用者输入装置的接口送出非加密文字与控制数据,而数据分析与产生器把其中的文字数据加密,控制数据则不加密,再送往数据输出接口,以此达到防侧录的效果,同时又具兼容性。11.根据权利要求io所述的防止键盘按键被侧录的桥接装置,其特征在于其中所述的连接使用者输入装置的接口包括PS2或USB总线,用以连接PS2或USB的使用者输入装置,例如键盘、九弓数字键盘、条形码扫瞄器、触控屏幕等,或LPC总线连接到计算机主机板上的南桥芯片组。12.根据权利要求IO所述的防止键盘按键被侧录的桥接装置,其特征在于其中所述的数据分析与产生器分析并产生输入与输出接口间的命令与数据协议,并且将送往输出接口的文字数据加密。13.根据权利要求10所述的防止键盘按键被侧录的桥接装置,其特征在于其中所述的数据输出接口包括PS2或USB连接到计算机,或LPC总线连接到计算机主机板上的南桥芯片组。14.一种防止键盘按键被侧录的计算机系统,其特征在于其包括一个防按键侧录的输入装置;一个终端应用软件;其中防按键侧录的输入装置能把使用者输入的文字加密,控制数据则不加密;然后终端应用软件再把加密的文字解密;以此达到防侧录的效果,同时又具兼容性。15.—种防止键盘按键被侧录的计算机网络系统,其特征在于其包括一个防按键侧录的输入装置;一个终端应用软件;一个解密服务器;一个连接终端应用软件与解密服务器的网络;其中防按键侧录的输入装置能把使用者输入的文字加密,控制数据则不加密;然后终端应用软件再透过网络把加密的文字送往解密服务器;解密服务器将加密的文字解密;以此达到防侧录的效果,同时又具兼容性。全文摘要本发明是有关于一种防止键盘按键被侧录的方法、装置及系统,是一种防止计算机使用者在计算机上输入数据时,文字数据被软件侧录的方法。该方法是把文字数据在使用者输入装置上加密,侧录软件便无法知道计算机使用者输入文字数据的真实内容。本发明终端应用软件所要求的使用者输入文字是被保护的,而且和现有的操作系统和应用软件兼容;本发明的安全性提高,而兼容性维持不变;其揭露了一个可以具体实施的方式,在现有的计算机系统上,保护使用者输入的按键数据;而且不必大幅更改计算机系统的软硬件架构。文档编号G06F21/04GK101751522SQ20081018574公开日2010年6月23日申请日期2008年12月8日优先权日2008年12月8日发明者王基斾申请人:王基斾
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1