计算机键盘信息干扰实现密码保护的方法

文档序号:6418298阅读:213来源:国知局
专利名称:计算机键盘信息干扰实现密码保护的方法
技术领域
本发明涉及一种保护重要信息保护方法,尤其是一种通过对操作的计算机键盘信息进行干扰实现重要信息(如密码)保护的方法。属于计算机技术领域。
背景技术
随着网络技术的发展,电子商务正在以惊人的速度发展,同时,黑客的攻击、病毒和木马程序的泛滥,网络的安全性正在日益受到挑战。电子邮件炸弹(E-mailBomb)、冰河木马、红色代码、冲击波病毒、蠕虫病毒、震荡波等等,病毒样木不断变换翻新,表现特征也千奇百怪,其目的要么是更改计算机信息使其不能正常运行或宕机,要么猛增网络流量增加网络带宽,使网络拥挤阻塞以至瘫痪,要么盗取别人的隐私,得到其不可告人的目的,特别是前一段流行的网络大盗及其变种,以及KeyLogger等木马程序,以记录键盘信息为手段,盗取银行密码,非法获取他人资金为目的,和其它(如盗窃游戏账号)木马或病毒相比,给染毒用户造成的损失更大,更直接,造成的违害以及给社会带来的后果更加严重。
单就我国网上银行来说,目前我国已有20多家银行的200多个分支机构拥有网址和主页,其中实际开展网络银行业务的分支机构达到了50多家,注册客户超过1000多万户,每年在网上的交易资金达几十万亿,而这几十万亿资金的交易安全正受的前所未有的威胁,所以开发保护密码的安全控件,防止密码以及重要的信息的泄露,有极大的经济价值和社会意义。
1.盗取密码的木马程序的工作原理及其特征具体地以网银大盗|为例,木马病毒运行后,将在用户计算机中创建可执行文件与挂钩和发信模块文件,并修改注册表,病毒在系统启动时即可运行。病毒主程序开启2个计时器,计时器1每隔3秒钟检查是否有常用反病毒和防火墙软件运行,一旦发现则立即终止这些进程,同时还自动回写病毒注册表项和病毒文件。计时器2每隔0.5秒搜索用户的lE窗口,如果发现用户正在“XX银行个人网上银行”的登录界面,则尝试窃取注册卡号和密码。一旦成功,就把窃取到的信息保存到共享内存中,一旦与网络再次连通,木马就会把共享内存中保存的用户账号和密码通过电子邮件发送给病毒作者。以上可以看出它具有如下特征1)木马病毒(或黑客工具如Keylogger)是截获键盘消息以获得键盘键值;2)它并不将计算机用户所有的键盘操作都记录下来,而是只针对某一特定网页或某类特定网页(网银大盗||对国内大部分的网上银行页面)的定向截获,以页面的标题作为记录依据;当然,它可以截获用户所有的操作或进行界面的快照。
3)通过邮件将记录下来的信息发送出去。
除此之外它具有了一些反跟踪、反侦察的工作机制。
2.问题所在。针对病毒的以上特征,对于病毒的定向截获的特征即特征2),将页面标题改名,如“XX银行网上银行”改为“欢迎使用”等,避开它截获,但由于页面标题本是网站页面内容的抽象和浓缩,改掉标题失去了标题的一般含义,再者病毒也可以实时地随页面标题内容的改变而改变,所以,只更改页面标题不能从根本上解决问题。针对病毒通过邮件发送信息的特征即特征3),可以安装特定的防火墙软件或防病毒软件来防止特定信息的外泄,但病毒可以将发送的信息内容做简单的加密或变换,就可以绕开防毒软件的拦截。所以,在以上的特征中,木马病毒截获键盘消息(即特征1))才是问题的关键,以下将针对病毒记录键盘信息的特征进行分析并给出相应的防范措施。
从WlNDOWS消息传递的原理来讲,键盘信息(键值和扫描码)作为明文通过键盘中断程序先由系统截获,再按照消息传递链传入到相应的应用或焦点窗口,在传递过程中其它运行的程序可以通过钩子(hook)等方式截获键盘消息,木马病毒正是通过截获键盘消息来获得计算机用户的重要信息(如帐号或密码)的。在Windows消息传递的前堤下,要防止密码的泄露,有以下几种措施,现将这些措施介绍如下通过软键盘将原来的发送键盘消息转变发送鼠标消息,绕开通过键盘录入密码的通路,即当用户输入密码时,弹出一个键盘窗口,让用户通过鼠标点击键盘窗口中相应的数字或字符按钮,输入密码。通过实践,发现它有如下的缺点一是它改变了用户的输入习惯,使用户感到不方便;二是由于将小键盘搬上的屏幕,用户在输入密码过程中周围的人可窥视到密码点击过程而有泄露密码的可能。
通过防病毒软件或Windows专用软件(如Anti-Keylogger)清除木马病毒的干扰或限制其它程序对键盘消息的截获。但由于不能要求所有的用户都安装防病毒软件或专用软件,使得此方法效果大打折扣,同时防病毒软件或专用软件需要钱来购买,不是所有的人都会这样做的。

发明内容
本发明的目的在于针对现有技术之不足,而提供一种计算机键盘信息干扰实现密码保护的方法,它不用改变用户的使用习惯,不必增加专用软件,能够在用户输入键盘信息(键值和扫描码)产生的同时,加入干扰信息,从而简便、有效地防止密码或重要信息的泄露。
本发明的方法包括如下步骤步骤1,在用户本地机设置安全控件;步骤2,当用户通过键盘输入信息的过程中,安全控件产生插入随机的干扰信息,产生混合信息;同时,安全控件记录所产生的干扰信息;
步骤3,将混合信息一同发送给焦点控件;步骤4,焦点控件再将混合信息发送给该安全控件;步骤5,安全控件基于所记录的干扰信息对混合信息进行过滤后,将真实的密码信息传递给应用程序;步骤6,应用程序执行相应的动作。
具体地,当密码域获得输入焦点时以及在录入每个密码字符时产生干扰信息,干扰信息(即键盘消息)的内容可为任何可能的键盘键值。每次触发干扰信息发生时,干扰信息的长度(即插入的干扰字符个数)可为随机长度的,为防止对多次获得的包括密码字符在内随机码作概率或统计上分析,干扰信息长度与用户密码本身的字符集个数相关。
这样当该应用程序得到用户输入的密码通过键盘消息机制过来的带有干扰信息的密码时,其过滤模块进行干扰信息过滤,应用程序得到真实的密码信息,执行相应的动作。会模拟键盘击键动作插入随机的干扰信息,如果木马病毒截获,也只能截获到包括干扰信息在内的无用信息,由于干扰信息是安全控件产生的,该安全控件可根据干扰的规则或算法,正确筛选有用信息得到用户的输入(即密码)。
本发明不限于只保护密码,可应用任何敏感信息的保护。
本发明不用改变用户的输入习惯,用户使用方便,也不必增加另外设置专用软件,就能够在键盘信息(键值和扫描码)产生的同时,加入干扰信息,从而简便、有效地防止密码以及重要的信息的泄露。


图1为本发明流程图。
图2为本发明用户界面示意图。
具体实施例方式
参见图1、2,本发明在用户进入网上交易的登录页面时,服务器端自动下载一个“安全控件”…基于键盘信息干扰技术实现的安全控件,此控件在用户输入密码的过程中,会模拟键盘击键插入随机的干扰信息,如果木马病毒截获,也只能截获到包括干扰信息在内的无用信息,由于干扰信息是安全控件产生的,该安全控件可根据干扰的规则或算法,正确筛选有用信息得到用户的输入(即密码)。
键盘信息作为明文先由操作系统截获,操作系统再将键盘码值发送到当前的焦点窗口或应用,虽然键盘信息本身无法加密,但当前应用可以发送人为的键盘干扰信号得到同样结果,即当前窗口的某一数据录入域获得焦点或键盘事件发生时,程序本身发出若干随机的Windows键盘消息(即干扰信号),其它应用程序(如木马病毒)在截获到真正的私密信息(如密码)的字符消息的同时,也截获了干扰信号,由于同样是键盘消息,并且交叉混合在一起,它无法识别哪些是真正的用户录入字符哪些是无用字符,而当前应用程序却由于是自已产生的干扰信号,根据干扰的规则或约定,可以剔除无用的信息得到真正用户输入。
具体地,安全控件调用操作系统提供的底层APl函数,模拟键盘击键,产生用于干扰的键盘消息,形成干扰信息。
1.干扰信息的插入时机(插入点)当密码输入域获得焦点(getfocus)以及用户输入密码的每一个数字或字符(keydown)时发生干扰信息。
2.干扰信息的插入方式利用Windows提供的底层APl函数,模拟键盘击键,发送随机数字或字符。
3.干扰信息的内容密码本身的可能的字符集合,如密码本身输入限制在字符”0”-“9”之间,则每个干扰信息也就在”0”-“9”之间的除密码字符外的任意数字字符,如果扩大或缩小了此范围都会使降低密码的破解难度。如密码为95568,输入字符”6”时产生的干扰字符为”0”-“5”或”7”-“9”。
4.干扰信息的长度干扰信息的长度即插入的干扰信息的字符个数,它可以任意的随机个数,但考虑到如果黑客的长期收集他截获的包括干扰码在内的加密码,并对同一密码下的大量的加密码进行分析和概率计算抽取真实密码的可能性,虽然此可能性小到可忽略不计,但毕竞有此可能性,所以插入的干扰字符个数最好密码本身的字符集个数相关联,例如,密码本身输入限制在字符”0”-“9”之间,一共有10个字符,则每次用户击键后产生10-20个随机字符。
5.键盘信息干扰安全控件对干扰字符的过滤,即识别真实的密码用户的每次键盘以及键盘信息干扰安全控件产生的字符消息,作为混合信息最后也传递到键盘信息干扰安全控件中,但由于干扰字符是由它产生的,产生的时间、产生的个数、产生的规则与算法,它都知晓,所以可以正确过滤掉干扰字符获得真正的用户击键信息。
具体实施例为假设用户的密码限制在”0”-”9”之间,登录密码是95568。网上银行的登录页面如图21、用户输入银行帐号4155999812349876,此时木马病毒截获得到的键盘记录为4155999812349876。
2、登录密码的数据录入用键盘信息干扰安全控件实现,当用户输入银行帐号后,登录密码获得输入焦点,此时由键盘信息干扰安全控件接管控制,由于获得输入焦点的事件触发了键盘信息干扰安全控件干扰字符的产生。此时产生了16787689034共11个随机字符,此时木马病毒截获得到的键盘记录为415599981234987616787689034(为了说明,将木马病毒本次截获得到的信息用下划线表示)。
3、用户输入登录密码’9’,木马病毒截获,此时木马病毒截获得到的键盘记录为4155999812349876167876890349。由于键盘的Keydown事件触发了键盘信息干扰安全控件干扰字符的产生,此时产生了1056824802457共13个随机字符,此时木马病毒截获得到的键盘记录为41559998123498761678768903491056824802457。
4、用户输入登录密码’5’,木马病毒截获,此时木马病毒截获得到的键盘记录为415599981234987616787689034910568248024575。由于键盘的Keydown事件触发了键盘信息干扰安全控件干扰字符的产生,此时产生了47367190568902共14个随机字符,此时木马病毒截获得到的键盘记录为41559998123498761678768903491056824802457547367190568902。
5、依此类推,直到用户将登录密码输完,木马病毒得到是一串包括干扰码在内的无用信息。
41 559998 1 23498761 678768903491056824802457547367190568902……↑ ↑↑ ↑ ↑ ↑银 11密 13 密 14行 位码 位 码 位账 干字 干 字 干号 扰符 扰 符 扰码 码 码对于上述一串包括干扰码在内的无用信息,传递给应用程序前,安全控件所有上述的干扰信息进行过滤。由于第2步在用户输入银行帐号后,登录密码获得输入焦点而产生的11位干扰字符16787689034、第3步输入的密码9后产生的13位干扰字符1056824802457、第4步输入密码5后产生的14位47367190568902,所产生的,产生的时间、产生的个数、产生的规则与算法,在安全控件记录上述内容,因此,它当然获得混合信息后,可以过滤掉全部的干扰字符获得真正的用户击键信息,再向应用程序提供真实的密码,应用程序可执行相应的动作。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
权利要求
1.一种利用计算机键盘信息干扰实现密码保护的方法,其特征在于,它包括如下步骤步骤1,在用户本地机设置安全控件;步骤2,当用户通过键盘输入信息的过程中,安全控件产生插入随机的干扰信息,产生混合信息;同时,安全控件记录所产生的干扰信息;步骤3,将混合信息一同发送给焦点控件;步骤4,焦点控件再将混合信息发送给该安全控件;步骤5,安全控件基于所记录的干扰信息对混合信息进行过滤后,将真实的密码信息传递给应用程序;步骤6,应用程序执行相应的动作。
2.根据权利要求1的方法,其特征在于,所述的步骤2中当密码域获得输入焦点时以及在录入密码时安全控件产生干扰信息。
3.根据权利要求2的方法,其特征在于,所述的步骤2中当密码域获得输入焦点时以及在录入每个密码字符时安全控件产生干扰信息。
4.根据权利要求1的方法,其特征在于,所述的安全控件调用操作系统提供的底层API函数,模拟键盘击键,产生用于干扰的键盘消息,形成干扰信息。
5.根据权利要求1的方法,其特征在于,所述的步骤中干扰信息的长度随机生成。
6.根据权利要求1的方法,其特征在于,所述的干扰信息长度与用户密码本身的字符集个数相关。
7.根据权利要求1-6所述的任一方法,其特征在于,所述的干扰信息内容可为任何可能的键盘键值。
8.根据权利要求1的方法,其特征在于,所述的步骤1具体可为用户通过网站下载安全控件,进行安装。
全文摘要
一种利用计算机键盘信息干扰实现密码保护的方法,它包括如下步骤在用户本地机设置安全控件,当用户通过键盘输入信息的过程中,安全控件产生插入随机的干扰信息,产生混合信息;安全控件记录所产生的干扰信息,将混合信息一同发送给焦点控件,焦点控件再将混合信息发送给该安全控件,安全控件基于所记录的干扰信息对混合信息进行过滤后,将真实的密码信息传递给应用程序,应用程序执行相应的动作。本发明不用改变用户的输入习惯,使用方便,也不必另外安装运行专用软件,就能够在键盘信息(键值和扫描码)产生的同时,加入干扰信息,从而简便、有效地防止密码或重要信息的泄露。
文档编号G06F1/00GK1719370SQ200410062399
公开日2006年1月11日 申请日期2004年7月9日 优先权日2004年7月9日
发明者郝付国 申请人:中国民生银行股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1