一种实现开机保护的方法和系统的制作方法

文档序号:6470823阅读:140来源:国知局
专利名称:一种实现开机保护的方法和系统的制作方法
技术领域
本发明涉及信息安全领域,特别涉及一种实现开机保护的方法和系统。
背景技术
在计算机应用领域,计算机的开机保护过程或客户端访问远程服务器的过程中,例如, 在普通的开机模式下,当用户启动计算机时,常用的开机保护方法是通过要求用户输入密码 来确认使用者的身份是否合法。只要用户能够正确输入密码,计算机(或远程服务器)就认 为他是合法用户,允许其进行登录访问。通常,每个用户的密码是由该用户自己设定的,理 论上只有自己本人才知道,因此只要能够正确输入该密码,计算机就认为他就是本机的合法 用户。
并且,计算机只能识别用户的数字身份,所有对用户的授权也是针对用户数字身份的授 权,而现实世界是一个真实的物理世界,每个人都拥有独一无二的物理身份。如何保证以数 字身份进行操作的操作者就是这个数字身份合法拥有者,也就是说保证操作者的物理身份与 数字身份相对应,就成为一个很重要的问题。
发明人在实现本发明的过程中,经过分析后发现现有技术至少存在以下缺点和不足 一方面,上述提到的用户名/密码方式下,由于许多用户为了防止忘记密码,经常采用诸 如自己或家人的生日、电话号码等作为密码,这些有意义的字符串容易被他人猜测到;或者 采用把密码抄在一个自己认为安全的地方,这也存在着安全隐患,极易造成密码泄露;并且, 当非法用户利用获取的密码实现登录后,将硬盘移植到没有密码的计算机中,便可以更换其 中的内容,实现系统的正常启动。因此,上述用户名/密码方式是一种具有安全隐患的身份认 证方式;
另一方面,上述用户名/密码方式属于静态密码的认证方式,但在具体应用过程中,静态 密码认证方式存在着许多不安全因素,极易造成密码泄露而导致一系列非法登录。因此静态 密码认证方式是一种极具安全隐患的身份认证方式;
综上所述,现有技术中计算机开机保护存在安全隐患,容易造成密码泄露;操作者的物 理身份与数字身份的绑定没有保证。

发明内容
鉴于现有技术存在的缺点和不足,本发明提供了一种实现开机保护的方法和系统,能够 提高开机过程中安全性和可靠性,并且具有使用方便、应用范围广等特点,所述技术方案如 下
一方面,提供了一种实现开机保护的方法,所述方法包括 计算机上电,加载并执行动态口令保护程序;
所述动态口令保护程序接收用户输入的认证口令,其中,所述认证口令为所述用户通过 向动态口令生成装置发送动态口令生成命令获取,当所述动态口令生成装置收到所述用户的 动态口令生成命令,根据所述动态口令生成装置的当前时间、动态口令生成算法生成所述认 证口令;
所述动态口令保护程序判断所述认证口令是否有效,如果是,则加载所述计算机的开机 程序,否则,所述动态口令保护程序不加载所述计算机的开机程序。 其中,所述动态口令保护程序位于BIOS中或主引导记录中,
相应地,所述方法还包括若所述动态口令保护程序位于所述BIOS中,则通过所述计算
机的主板开发工具将所述动态口令保护程序写入所述BIOS的预设位置;
相应地,所述方法还包括若所述动态口令保护程序位于所述主引导记录中,则通过所
述计算机的开发工具将所述动态口令保护程序写入所述计算机开机硬盘的主引导记录的位
置,并保留分区表信息。
其中,所述计算机加载并执行所述动态口令保护程序的步骤,具体包括; 若所述动态口令保护程序位于所述BIOS中,则在所述BI0S自检成功后加载并执行所述
动态口令保护程序,将控制权转交给所述动态口令保护程序;
若所述动态口令保护程序位于所述主引导记录中,则在所述BI0S自检成功后加载并执行
所述主引导记录中的动态口令保护程序,将控制权转交给所述动态口令保护程序。 其中,所述计算机开机硬盘的主引导记录的位置具体为 计算机开机硬盘的0柱面0磁头1扇区及所述1扇区的后续扇区。 其中,所述动态口令保护程序接收用户输入的认证口令的步骤,之前还包括-所述动态口令保护程序提示输入动态口令,具体的提示方式包括显示对话框的方式,或,
字符的方式。
其中,所述动态口令保护程序判断所述认证口令是否有效的步骤,包括 所述动态口令保护程序接收所述用户输入的认证口令后,获取在所述BIOS的预设位置或
所述开机硬盘的预设位置中预存的与所述动态口令生成装置对应的动态口令生成算法;
所述动态口令保护程序根据所述获取的动态口生成证算法,生成验证窗口,根据所述验
证窗口,判断所述认证口令是否在所述验证窗口范围内,如果是,则所述认证口令有效;否
则,所述认证口令无效。
其中,所述动态口令保护程序判断所述认证口令是否有效的步骤,还包括 所述动态口令保护程序接收所述用户信息,所述用户信息包括账号信息、用户的密码信
息;
所述动态口令保护程序判断所述认证口令是否有效的步骤,具体包括
所述动态口令保护程序收到所述用户信息后,根据所述在BIOS的预设位置或所述开机硬 盘的预设位置中预存的用户信息和动态口令生成装置的标识的对应关系,获取与所述用户信 息对应的动态口令生成算法;
根据所述获取的动态口令生成算法,生成验证窗口,根据所述验证窗口,判断所述认证 口令是否在所述验证窗口范围内,如果是,则所述认证口令有效;否则,所述认证口令无效。
进一步地,所述方法还包括设置无效次数的阈值,相应地,
当所述认证口令无效时,判断所述用户的无效次数是否超过预设的无效次数的阈值,如 果是,则自动关闭计算机;否则,提示用户再次输入认证口令。
其中,所述根据所述动态口令生成算法,生成验证窗口的步骤,具体包括
所述动态口令开机保护程序以所述计算机系统的当前时间值、对所述计算机系统的当前 时间值加/减预设时间段值后得到的数值,作为计算因子,利用所述动态口令生成算法,生成 验证口令序列,所述验证口令序列为所述验证窗口;
相应地,所述验证窗口具体为在有效时间范围内的多个随机口令。
其中,所述时间段值具体为所述动态口令开机保护程序和所述验证口令窗口的更新率的 时间值。
进一步地,所述方法还包括所述动态口令保护程序判断所述认证口令是否有效后,还
执行如下步骤;
获取所述动态口令保护程序在生成验证窗口时所述计算机系统的当前时间值,并记为第
一时间值;
获取所述认证口令匹配到所述验证窗口中数值时所对应的时间因子的值,并记为第二时 间值;
根据所述获取的第一时间值和所述第二时间值,计算所述第一时间值和所述第二时间值
的时间差值,所述时间差值用于实现述动态口令保护程序与所述动态口令生成装置的时间同步。
另一方面,还提供了一种实现开机保护的系统,所述系统包括计算机和动态口令生成 装置;所述计算机包括
预处理模块,用于计算机上电,加载并执行动态口令保护程序;
接收模块,用于在所述预处理模块处理后,利用所述动态口令保护程序接收用户输入的 认证口令;
判断模块,用于当所述接收模块接收到所述认证口令后,所述动态口令保护程序根据所 述认证口令,判断所述认证口令是否有效;
加载模块,用于当所述判断模块判断的结果为所述认证口令有效后,所述动态口令保护 程序加载所述计算机的开机程序;
处理模块,用于当所述判断模块判断的结果为所述认证口令无效时,所述动态口令保护 程序通过所述处理模块不加载所述计算机的开机程序;
所述动态口令生成装置包括
接收模块,用于接收所述用户的动态口令生成命令;
生成模块,用于根据所述接收模块接收的动态口令生成命令,根据当前时间、动态口令 生成算法生成认证口令。
输出模块,用于将所述生成模块生成的认证口令输出。 其中,所述计算机的预处理模块具体包括 上电单元,用于给计算机上电;
第一装入单元,用于当所述上电单元给所述计算机上电后,若所述动态口令保护程序位 于BIOS中,则通过所述计算机的主板开发工具将所述动态口令保护程序写入所述BIOS的预 设位置;
第二装入单元,用于当所述上电单元给所述计算机上电后,若所述动态口令保护程序位 于主引导记录中,则通过所述计算机的开发工具将所述动态口令保护程序写入所述计算机开 机硬盘的主引导记录的位置,并保留分区表信息;
第一加载执行单元,用于当所述第一装入单元将所述动态口令保护程序写入所述BIOS的 预设位置后,在所述BIOS自检成功后加载并执行所述动态口令保护程序,将控制权转交给所 述动态口令保护程序;
第二加载执行单元,用于当所述第二装入单元将所述动态口令保护程序写入所述计算机 开机硬盘的主引导记录的位置,并保留分区表信息后,在所述BIOS自检成功后加载并执行所 述主引导记录中的动态口令保护程序,将控制权转交给所述动态口令保护程序。 进一步地,所述计算机还包括提示模块,用于提示用户输入用户信息; 相应地,所述计算机的接收模块还用于接收所述用户信息,所述用户信息包括账号信息、 用户的密码信息; 相应地,
所述计算机的判断模块具体包括-
获取单元,用于当所述动态口令保护程序验证所述用户信息通过后,根据所述在BIOS的 预设位置或所述开机硬盘的预设位置中预存的用户信息和动态口令生成装置的标识的对应关 系,获取与所述用户信息对应的动态口令生成算法;
生成单元,用于根据所述获取单元获取的动态口令生成算法,生成验证窗口;
验证单元,用于根据所述生成单元生成的验证窗口,判断所述认证口令是否在所述验证 窗口范围内,如果是,则所述认证口令有效;否则,所述认证口令无效。
进一步地,所述计算机的判断模块还包括设置单元,
所述设置单元,用于设置无效次数的阈值,相应地,所述计算机的判断模块还包括 处理单元,用于当所述验证单元验证所述认证口令无效时,判断所述用户的无效次数是
否超过预设的无效次数的阈值,如果是,则自动关闭计算机;否则,提示所述用户再次输入
认证口令。
其中,所述计算机的判断模块中的生成单元具体用于根据所述动态口令开机保护程序以 所述计算机系统的当前时间值、对所述计算机系统的当前时间值加/减预设时间段值后得到的 数值,作为计算因子,利用所述动态口令生成算法,生成验证口令序列,所述验证口令序列 为所述验证窗口;所述验证窗口具体为在有效时间范围内的多个随机口令。
进一步地,所述计算机还包括
同步模块,用于实现所述动态口令保护程序与所述动态口令生成装置的时间同步。 其中,所述同步模块具体包括
当前时间值获取单元,用于获取所述动态口令保护程序在生成验证窗口时,所述计算机 的当前时间,并记为第一时间值;
匹配时间值获取单元,用于获取所述认证口令匹配到所述验证窗口中数值时所对应的时 间因子的值,并记为第二时间值;
同步单元,用于根据所述当前时间值获取单元获取的第一时间值和所述匹配时间值获取
单元获取的第二时间值,获取所述第一时间值和所述第二时间值的时间差值,所述时间差值
用于实现述动态口令保护程序与所述动态口令生成装置的时间同步。 其中,所述输出模块具体包括以下任一单元或其中组合-第一输出单元,用于以显示的方式将生成模块生成的认证口令输出;
第二输出单元,用于以发声的方式将生成模块生成的认证口令输出; 第三输出单元,用于以震动的方式将生成模块生成的认证口令输出; 第四输出单元,用于以适用于用户触摸的方式将生成模块生成的认证口令输出。
其中,所述计算机还包括获取模块,
所述获取模块,用于当所述动态口令保护程序接收所述用户输入的认证口令后,获取在 所述BIOS的预设位置或所述开机硬盘的预设位置中预存的与所述动态口令生成装置对应的 动态口令生成算法。
本发明提供的技术方案的有益效果是
通过采用了动态密码技术,提高了系统的安全等级;并且安全令牌无需和主机相连接, 节省了研发投资和系统的稳定性;降低了对用户计算机机器配置的需求;由于动态口令不需 要用户去记忆口令,从而解决了用户需要强制记忆密码的烦琐性,增加了系统的易用性。


图1是本发明实施例1提供的实现开机保护的方法的流程示意图2是本发明实施例1提供的实现同步的示意图3是本发明实施例2提供的实现开机保护的系统示意图4是本发明实施例2提供的实现开机保护的系统的详细示意图。
具体实施例方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进 一步地详细描述。
为了提高开机过程中的安全性和可靠性,本发明提供了一种实现开机保护的方法,该方 法基于安全令牌,利用安全令牌的动态密码认证实现,具体内容如下计算机上电,计算机 加载并执行动态口令保护程序;计算机将控制权转交给动态口令保护程序;动态口令保护程 序接收用户输入的认证口令,其中,认证口令为用户通过向动态口令生成装置发送动态口令 生成命令获取,当动态口令生成装置收到用户的动态口令生成命令,根据动态口令生成装置 的当前时间、动态口令生成算法生成认证口令;动态口令保护程序判断认证口令是否有效, 如果是,则加载计算机的开机程序,否则,动态口令保护程序不加载计算机的开机程序。该 方法具有使用方便、应用范围广等特点,参见如下实施例对本发明实施例提供的方法进行说明。
实施例1
参见图1,本发明实施例提供了一种实现开机保护的方法,具体内容如下-步骤101:计算机上电,BIOS自检;
在本实施例中,动态口令开机保护程序可以置于BIOS程序中,作为BIOS程序的一部分, 也可以位于计算机开机硬盘的主引导记录中。其中,
若动态口令保护程序位于BIOS中,则通过计算机的主板开发工具将动态口令保护程序写 入BI0S的预设位置;
若动态口令保护程序位于主引导记录中,则通过计算机的开发工具将动态口令保护程序 写入计算机开机硬盘的主引导记录的位置,并保留分区表信息,例如,开机硬盘的0柱面0 磁头1扇区及其后续若干扇区等。
步骤102、 BIOS自检成功后加载并执行动态口令开机保护程序,将计算机系统的控制权 转移给动态口令开机保护程序;
在本实施例中,BIOS程序包括自检查程序和动态口令开机保护程序,自检查程序首先检 査CPU, 一切正常都是建立在CPU正常的基础上之后将检查Key Board控制芯片、第一个 16KB的RAM。时/计数器8253和DMA控制器、中断控制器8259A和显示器、软盘和硬盘 是否有提示以及打印适配设备和异步通信设备,若一切检査无误,则加载动态口令开机保护 程序。
其中,若动态口令保护程序位于BI0S中,则在BI0S自检成功后加载并执行动态口令保
护程序,将控制权转交给动态口令保护程序;
若动态口令保护程序位于主引导记录程序中,则在BI0S自检成功后加载并执行主引导记
录中的动态口令保护程序,将控制权转交给动态口令保护程序。
本发明实施例为了便于说明,以动态口令开机保护程序置于BIOS程序中为例进行说明。 步骤103、动态口令开机保护程序初始化,加载动态口令的程序配置; 步骤104、动态口令开机保护程序初始化后,显示输入对话框,提示用户输入认证信息; 其中,当动态口令开机保护程序初始化后,可以采用以显示对话框的形式提示用户输入
认证信息,或以发声的形式、或字符的形式提示用户输入认证信息,本发明实施例不限制具 体所采用的提示方式和方法。
步骤105、用户向动态口令生成装置发送动态口令生成命令;
其中,该步骤中用户在向动态口令生成装置发送动态口令生成命令时,具体通过按钮触 发的形式,或,指纹扫描的形式,或声控开关的形式,或人体体温感应的方式,或压力感应 的方式,或光电感应的方式等,实现向动态口令生成装置发送动态口令生成命令的目的,本 发明实施例不限制具体所采用的实现方式和方法。
步骤106、动态口令生成装置内部以当前时间为计算因子,利用HMAC-SHA1算法生成认 证口令,并输出给用户;
其中,动态口令生成装置收到用户发送的动态口令生成命令后,以当前时间为计算因子, 利用优选的HMAC-SHA1算法生成认证口令,并输出给用户;其中该HMAC-SHA1算法为优选算 法,还可以采用其他任意一种可以生成认证口令的算法程序,如hmac—sha256算法, hma—sha512算法,hmac—md5算法。
其中,本步骤中在利用HMAC-SHA1算法生成认证口令时,基于时间的 0TP(0ne-Time password, —次有效的动态密码)产生方法步骤如下
1. 获取当前时间(Tl)相对于基本时间(T0,比如1970-01-01 00:00:00)的秒数的 差值(AT );
2. 计算T = AT/X ( X为预设的一个时间间隔,比如30秒则,X=30);
3. 获取令牌的种子K;
4. 计算出一个摘要值D = HMAC-SHA1 (K,T);
5. 取摘要D的最后一字节的高四位为索引idx;
6. R = (D[idx] & 0x7F) <〈 24) + (D[idx+l] <〈 16) + (D[idx+2]《8) + (D[idx+3]);
7. 获取OTP = R mod (10 '6);
其中,本发明实施例所涉及的OTP技术是指用户的密码按照时间不断动态变化,每个密 码只使用一次。相应地,动态密码认证方式一般采用一种称之为安全令牌的专用硬件(安全 令牌也可以是软件形式的,如手机的java程序),它内置于运行专门密码算法的密码生成芯 片,根据当前时间生成当前密码并输出。
其中,当该动态口令生成装置将生成的动态口令输出时,可以采用如下方式实现 以显示的方式将认证口令输出;或,以发声的方式将认证口令输出;或;以震动的方式 将认证口令输出;或,以适用于用户触摸的方式将认证口令输出等,本发明实施例不限制该
动态口令输出的具体方式。
步骤107、用户将认证口令、用户账号输入到计算机的提示对话框中,计算机中的动态 口令开机保护程序获取上述认证口令;
其中,本步骤在具体实现时,可以根据具体的需要设置该计算机的提示对话框,用于提 供给用户输入认证口令,进一步,参见表1,该提示对话框还可以包括常规的用户账号、用 户密码、动态口令生成装置序列号等提示信息。
表l
用户账号feitian
用户密码2008feitian
动态口令生成装置序列号123456789
认证口令abcdl23
如表1所示,当该提示对话框还可以包括常规的用户账号、用户密码、动态口令生成装 置序列号等提示信息时,计算机需要验证用户账号、用户密码、动态口令生成装置序列号全 部通过后,获取认证口令。本实施例为了便于说明,以提示用户输入用户账号、认证口令为 例进行说明。
步骤108:动态口令开机保护程序以获取的用户账号为索引条件,查找到计算机系统内
部存储的与该用户账号绑定的动态口令生成装置的算法程序,即HMAC-SHA1算法程序,以系 统的当前时间为计算因子,利用该算法程序生成生验证口令窗口;
其中,在本实施例步骤108中,动态口令生成装置与用户账号的对应关系预先存储在BI0S
的指定位置。
步骤109、动态口令开机保护程序通过验证口令窗口对认证口令进行验证,判断认证口 令是否有效,如果有效,则执行步骤110;否则,执行步骤lll;
其中,本步骤中动态口令开机保护程序通过验证口令窗口对认证口令进行验证时,具体
内容如下
由于动态口令生成装置的时钟频率与计算机系统的时钟频率同歩,优选地,在动态口令 生成装置内部每30秒产生一个6位的认证口令,动态口令开机保护程序每隔30秒生成一个 验证口令值。
为了确保验证的准确性和可靠性,本实施例中的验证口令窗口是以动态口令开机保护程 序为计算因子,利用HMAC-SHA1算法生成5个验证口令值,只要认证口令和动态口令开机 保护程序生成的5个验证口令值中的一个值相同,则认为该认证口令有效,否则无效,即当认
证口令在验证口令窗口范围时,则认为该认证口令有效,否则,该认证口令无效。
步骤110、动态口令开机保护程序加载系统的后续开机程序,将系统控制权转交给系统 开机程序,该计算机系统的开机程序将系统的控制权转交给转入了内存地址的操作系统或操 作程序。
步骤111、认证口令无效,动态口令开机保护程序判断无效次数是否超过预设值,若超 过预设值,则执行步骤U2,否则返回步骤104;
其中,本步骤中通过设定判断无效次数是否超过预设值(或称阈值)的处理动作,进一 步地充分考虑到用户的实际使用情况,确保了本发明实施例提供的方案的灵活性。
步骤112:自动关闭计算机。
综上,本发明实施例提供的实现开机保护的方法,进一步地,动态口令保护程序还会执 行与动态口令生成装置进行时间同步的操作,从而实现尽量减少验证误差,提高开机保护方 法的准确度,其中,参见步骤109,动态口令保护程序与动态口令生成装置执行时间同步的 步骤,具体包括
获取动态口令保护程序在生成验证窗口时,计算机的当前时间值(为了便于说明,定义 该获取的计算机的当前时间值为第一时间值);
获取认证口令匹配到验证窗口中数值时,计算机的当前时间值(为了便于说明,定义该
获取的计算机的当前时间值为计算机的第二时间值);
根据当前时间值获取单元获取的第一时间值和匹配时间值获取单元获取的第二时间值, 获取第一时间值和第二时间值的时间差值,
其中,参见图2,如全文所述,验证窗口生成时,会以计算机的第一时间值(假设丁=12: 00: 30)、以及对该第一时间值加/减N秒(本实施例以60秒为例)、加/减M秒(本实施例以30 秒为例)后的时间值为计算因子,假设,如图2所示,认证口令匹配到对该第一时间值加30 秒的时间值(IM2: 00; 30),则第一时间值(假设T-12: 00: 00)和该第二时间值(T=12: 00: 30)的差值30秒,即为待获取的时间差值,该时间差值用于实现动态口令保护程序与动
态口令生成装置的时间同步,计算机的动态口令保护程序可以根据该时间差值有效抑制验证 窗口的漂移问题,从而实现尽量减少验证误差,提高开机保护方法的准确度。
进一步地,本领域技术人员可以获知,本发明实施例提供的方法还适用于当计算机保存
有与动态口令生成装置对应的动态口令生成算法的情况,其中,在计算机的BIOS的预设位置 或开机硬盘的预设位置中预存有与动态口令生成装置对应的动态口令生成算法。相应地,在 上述计算机的动态口令保护程序判断收到的认证口令是否有效的步骤之前还包括- 当动态口令保护程序接收用户输入的认证口令后,直接获取在BIOS的预设位置或开机硬 盘的预设位置中预存的与动态口令生成装置对应的动态口令生成算法;
相应地,计算机的动态口令保护程序判断收到的认证口令是否有效的步骤具体包括动 态口令保护程序根据获取的动态口生成算法,生成验证窗口,根据验证窗口,判断认证口令 是否在验证窗口范围,如果是,则认证口令有效;否则,认证口令无效。g卩,采用本发明实 施例提供的方法,当需要实现开机保护时,用户只需要向与该计算机对应的动态口令生成装 置获取该动态口令生成装置生成的动态认证口令,然后将该认证口令输入到计算机的开机保 护程序中,开机保护程序利用该认证口令直接进行验证。综上进一步地增加了本发明实施例 提供的方法的灵活性和整个技术方案的完整性。
综上所述,本发明实施例提供了一种实现开机保护的方法,通过采用了动态密码技术, 提高了系统的安全等级;并且安全令牌无需和主机相连接,节省了研发投资和系统的稳定性; 降低了对用户计算机机器配置的需求;由于动态口令不需要用户去记忆口令,从而解决了用 户需要强制记忆密码的烦琐性,增加了系统的易用性。
实施例2
参见图2,本发明实施例提供了一种实现开机保护的系统,该系统包括计算机和动态 口令生成装置;计算机包括预处理模块、接收模块、判断模块、加载模块和处理模块;动 态口令生成装置包括接收模块和生成模块;其中,
在计算机中,
预处理模块,用于计算机上电,加载并执行动态口令保护程序;
接收模块,用于在预处理模块处理后,利用动态口令保护程序接收用户输入的认证口令; 判断模块,用于当接收模块接收到认证口令后,动态口令保护程序判断该认证口令是否 有效;
加载模块,用于当判断模块判断的结果为认证口令有效后,动态口令保护程序加载计算 机的开机程序;
处理模块,用于当判断模块判断的结果为认证口令无效时,动态口令保护程序通过处理 模块不加载计算机的开机程序; 动态口令生成装置包括
接收模块,用于接收用户的动态口令生成命令;
生成模块,用于根据接收模块接收的动态口令生成命令,根据当前时间、动态口令生成
算法生成认证口令。
输出模块,用于将生成模块生成的认证口令输出。 其中,计算机的预处理模块具体包括 上电单元,用于给计算机上电;
第一装入单元,用于当上电单元给计算机上电后,若动态口令保护程序位于BIOS中,则 通过计算机的主板开发工具将动态口令保护程序写入BIOS的预设位置;
第二装入单元,用于当上电单元给计算机上电后,若动态口令保护程序位于主引导记录 中,通过计算机的开发工具将动态口令保护程序写入计算机开机硬盘的主引导记录的位置, 并保留分区表信息;
第一加载执行单元,用于当第一装入单元将动态口令保护程序写入BIOS的预设位置后, 在BI0S自检成功后加载并执行动态口令保护程序,将控制权转交给动态口令保护程序;
第二加载执行单元,用于当第二装入单元将动态口令保护程序写入计算机开机硬盘的主 引导记录的位置,并保留分区表信息后,则在BI0S自检成功后加载并执行主引导记录中的动 态口令保护程序,将控制权转交给动态口令保护程序。
进一步地,计算机还包括提示模块,用于提示用户输入用户信息;
相应地,计算机的接收模块还用于接收用户信息,用户信息包括账号信息、用户的密码
{曰息;
相应地,
计算机的判断模块具体包括-
获取单元,用于当动态口令保护程序验证用户信息通过后,根据在BIOS的预设位置或开
机硬盘的预设位置中预存的用户信息和动态口令生成装置的标识的对应关系,获取与用户信
息对应的动态口令生成算法;
生成单元,用于根据获取单元获取的动态口令生成算法,生成验证窗口;
验证单元,用于根据生成单元生成的验证窗口,判断认证口令是否在验证窗口范围,如
果是,则认证口令有效;否则,认证口令无效。
其中,进一步地,计算机的判断模块还包括设置单元,
设置单元,用于设置无效次数的阈值,相应地,计算机的判断模块还包括
处理单元,用于当验证单元验证认证口令无效时,判断用户的无效次数是否超过预设的
无效次数的阈值,如果是,则自动关闭计算机;否则,提示用户再次输入认证口令。
其中,计算机的判断模块中的生成单元具体用于根据动态口令开机保护程序以计算机系
统的当前时间值、对计算机系统的当前时间值加/减预设时间段值后得到的数值,作为计算因 子,利用动态口令生成算法,生成验证口令序列,验证口令序列为验证窗口;验证窗口具体 为在有效时间范围内的多个随机口令。 进一步地,计算机还包括
同步模块,用于实现动态口令保护程序与动态口令生成装置的时间同步。其中,同步模 块具体包括
当前时间值获取单元,用于获取动态口令保护程序在生成验证窗口时,计算机的当前时 间,并记为第一时间值;
匹配时间值获取单元,用于获取认证口令匹配到验证窗口中数值时所对应的时间因子的 值,并记为第二时间值;
同步单元,用于根据当前时间值获取单元获取的第一时间值和匹配时间值获取单元获取 的第二时间值,获取第一时间值和第二时间值的时间差值,该时间差值用于实现述动态口令 保护程序与动态口令生成装置的时间同步。
其中,上述接收模块在接收用户的动态口令生成命令时,具体可以通过按钮触发的形式, 或,指纹扫描的形式,或声控开关的形式,或人体体温感应的方式,或压力感应的方式,或 光电感应的方式等,实现用户向动态口令生成装置发送动态口令生成命令的目的,本发明实 施例不限制具体所采用的实现方式和方法。
其中,上述输出模块在将上述生成模块生成的认证口令输出时,输出模块具体包括以下 任一单元或其中组合
第一输出单元,用于以显示的方式将生成模块生成的认证口令输出;
第二输出单元,用于以发声的方式将生成模块生成的认证口令输出;
第三输出单元,用于以震动的方式将生成模块生成的认证口令输出;
第四输出单元,用于以适用于用户触摸的方式将生成模块生成的认证口令输出。
其中,本发明实施例提供的计算机还包括获取模块,
获取模块,用于当动态口令保护程序接收用户输入的认证口令后,获取在BI0S的预设位 置或开机硬盘的预设位置中预存的与动态口令生成装置对应的动态口令生成算法。 其中,本发明实施例提供的动态口令生成装置具体可以为安全令牌。
综上所述,本发明实施例提供了一种实现开机保护的系统,通过釆用了动态密码技术, 提高了系统的安全等级;并且安全令牌无需和主机相连接,节省了研发投资和系统的稳定性; 降低了对用户计算机机器配置的需求;由于动态口令不需要用户去记忆口令,从而解决了用
户需要强制记忆密码的烦琐性,增加了系统的易用性。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之 内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1、一种实现开机保护的方法,其特征在于,所述方法包括计算机上电,加载并执行动态口令保护程序;所述动态口令保护程序接收用户输入的认证口令,其中,所述认证口令为所述用户通过向动态口令生成装置发送动态口令生成命令获取,当所述动态口令生成装置收到所述用户的动态口令生成命令,根据所述动态口令生成装置的当前时间、动态口令生成算法生成所述认证口令;所述动态口令保护程序判断所述认证口令是否有效,如果是,则加载所述计算机的开机程序,否则,所述动态口令保护程序不加载所述计算机的开机程序。
2、 如权利要求l所述的方法,其特征在于,所述动态口令保护程序位于BIOS中或主引 导记录中,相应地,所述方法还包括若所述动态口令保护程序位于BIOS中,则通过所述计算机的 主板开发工具将所述动态口令保护程序写入所述BIOS的预设位置;相应地,所述方法还包括若所述动态口令保护程序位于主引导记录中,则通过所述计 算机的开发工具将所述动态口令保护程序写入所述计算机开机硬盘的主引导记录的位置,并 保留分区表信息。
3、 如权利要求2所述的方法,其特征在于,所述计算机加载并执行动态口令保护程序的 步骤,具体包括;若所述动态口令保护程序位于所述BIOS中,则在所述BI0S自检成功后加载并执行所述 动态口令保护程序,将控制权转交给所述动态口令保护程序;若所述动态口令保护程序位于所述主引导记录中,则在所述BI0S自检成功后加载并执行 所述主引导记录中的动态口令保护程序,将控制权转交给所述动态口令保护程序。
4、 如权利要求2所述的方法,其特征在于,所述计算机开机硬盘的主引导记录的位置具 体为-计算机开机硬盘的0柱面0磁头1扇区及所述1扇区的后续扇区。
5、 如权利要求l所述的方法,其特征在于,所述动态口令保护程序接收用户输入的认证 口令的步骤,之前还包括所述动态口令保护程序提示输入动态口令,具体的提示方式包括显示对话框的方式,或, 显示字符的方式。
6、 如权利要求2所述的方法,其特征在于,所述动态口令保护程序判断所述认证口令是 否有效的步骤,包括所述动态口令保护程序接收所述用户输入的认证口令后,获取在所述BIOS的预设位置或 所述开机硬盘的预设位置中预存的与所述动态口令生成装置对应的动态口令生成算法;所述动态口令保护程序根据所述获取的动态口生成算法,生成验证窗口,根据所述验证 窗口,判断所述认证口令是否在所述验证窗口范围,如果是,则所述认证口令有效;否则, 所述认证口令无效。
7、 如权利要求2所述的方法,其特征在于,所述动态口令保护程序判断所述认证口令是 否有效的步骤,还包括所述动态口令保护程序接收所述用户信息,所述用户信息包括账号信息、用户的密码信息;所述动态口令保护程序判断所述认证口令是否有效的步骤,具体包括-所述动态口令保护程序收到所述用户信息后,根据所述在BIOS的预设位置或所述开机硬盘的预设位置中预存的用户信息和动态口令生成装置的标识的对应关系,获取与所述用户信息对应的动态口令生成算法;根据所述获取的动态口令生成算法,生成验证窗口,根据所述验证窗口,判断所述认证口令是否在所述验证窗口范围内,如果是,则所述认证口令有效;否贝IJ,所述认证口令无效。
8、 如权利要求6或7所述的方法,其特征在于,所述方法还包括设置无效次数的阈值, 相应地,当所述认证口令无效时,判断所述用户的无效次数是否超过预设的无效次数的阙值,如 果是,则自动关闭计算机;否则,提示用户再次输入认证口令。
9、 如权利要求6或7所述的方法,其特征在于,所述根据所述动态口令生成算法,生成 验证窗口的步骤,具体包括所述动态口令开机保护程序以所述计算机系统的当前时间值、对所述计算机系统的当前 时间值加/减预设时间段值后得到的数值,作为计算因子,利用所述动态口令生成算法生成验 证口令序列,所述验证口令序列为所述验证窗口;相应地,所述验证窗口具体为在有效时间范围内的多个随机口令。
10、 如权利要求9所述的方法,其特征在于,所述时间段值具体为所述动态口令开机保 护程序和所述验证口令窗口的更新率的时间值。
11、 如权利要求6或7所述的方法,其特征在于,所述方法还包括所述动态口令保护 程序判断所述认证口令是否有效后,还执行如下步骤;获取所述动态口令保护程序在生成验证窗口时所述计算机系统的当前时间值,并记为第 一时间值;获取所述认证口令匹配到所述验证窗口中数值时所对应的时间因子的值,并记为第二时 间值;根据所述获取的第一时间值和所述第二时间值,计算所述第一时间值和所述第二时间值 的时间差值,所述时间差值用于实现所述动态口令保护程序与所述动态口令生成装置的时间 同步。
12、 一种实现开机保护的系统,其特征在于,所述系统包括计算机和动态口令生成装 置;所述计算机包括预处理模块,用于计算机上电,加载并执行动态口令保护程序;接收模块,用于在所述预处理模块处理后,利用所述动态口令保护程序接收用户输入的 认证口令;判断模块,用于当所述接收模块接收到所述认证口令后,所述动态口令保护程序根据所 述认证口令,判断所述认证口令是否有效;加载模块,用于当所述判断模块判断的结果为所述认证口令有效后,所述动态口令保护 程序加载所述计算机的开机程序;处理模块,用于当所述判断模块判断的结果为所述认证口令无效时,所述动态口令保护 程序通过所述处理模块不加载所述计算机的开机程序; 所述动态口令生成装置包括接收模块,用于接收所述用户的动态口令生成命令;生成模块,用于根据所述接收模块接收的动态口令生成命令,根据当前时间、动态口令 生成算法生成认证口令。输出模块,用于将所述生成模块生成的认证口令输出。
13、 如权利要求12所述的系统,其特征在于,所述计算机的预处理模块具体包括-上电单元,用于给计算机上电;第一装入单元,用于当所述上电单元给所述计算机上电后,若所述动态口令保护程序位 于BIOS中,则通过所述计算机的主板开发工具将所述动态口令保护程序写入所述BIOS的预 设位置;第二装入单元,用于当所述上电单元给所述计算机上电后,若所述动态口令保护程序位 于主引导记录中,则通过所述计算机的开发工具将所述动态口令保护程序写入所述计算机开 机硬盘的主引导记录的位置,并保留分区表信息;第一加载执行单元,用于当所述第一装入单元将所述动态口令保护程序写入所述BIOS的 预设位置后,在所述BI0S自检成功后加载并执行所述动态口令保护程序,将控制权转交给所 述动态口令保护程序;第二加载执行单元,用于当所述第二装入单元将所述动态口令保护程序写入所述计算机 开机硬盘的主引导记录的位置,并保留分区表信息后,在所述BI0S自检成功后加载并执行所 述主引导记录中的动态口令保护程序,将控制权转交给所述动态口令保护程序。
14、 如权利要求12所述的系统,其特征在于, 所述计算机还包括提示模块,用于提示用户输入用户信息;相应地,所述计算机的接收模块还用于接收所述用户信息,所述用户信息包括账号信息、 用户的密码信息; 相应地,所述计算机的判断模块具体包括获取单元,用于当所述动态口令保护程序验证所述用户信息通过后,根据在所述BIOS的 预设位置或所述开机硬盘的预设位置中预存的用户信息和动态口令生成装置的标识的对应关 系,获取与所述用户信息对应的动态口令生成算法; 生成单元,用于根据所述获取单元获取的动态口令生成算法,生成验证窗口; 验证单元,用于根据所述生成单元生成的验证窗口,判断所述认证口令是否在所述验证 窗口范围,如果是,则所述认证口令有效;否则,所述认证口令无效。
15、 如权利要求14所述的系统,其特征在于,所述计算机的判断模块还包括设置单元, 所述设置单元,用于设置无效次数的阈值,相应地,所述计算机的判断模块还包括 处理单元,用于当所述验证单元验证所述认证口令无效时,判断所述用户的无效次数是否超过预设的无效次数的阈值,如果是,则自动关闭计算机;否则,提示所述用户再次输入 认证口令。
16、 如权利要求14所述的系统,其特征在于,所述计算机的判断模块中的生成单元具体 用于根据所述动态口令开机保护程序以所述计算机系统的当前时间值、对所述计算机系统的 当前时间值加/减预设时间段值后得到的数值,作为计算因子,利用所述动态口令生成算法生 成验证口令序列,所述验证口令序列为所述验证窗口;所述验证窗口具体为在有效时间范围 内的多个随机口令。
17、 如权利要求14所述的系统,其特征在于,所述计算机还包括同步模块,用于实现所述动态口令保护程序与所述动态口令生成装置的时间同步。
18、 如权利要求17所述的系统,其特征在于,所述同步模块具体包括 当前时间值获取单元,用于获取所述动态口令保护程序在生成验证窗口时,所述计算机的当前时间,并记为第一时间值;匹配时间值获取单元,用于获取所述认证口令匹配到所述验证窗口中数值时所对应的时 间因子的值,并记为第二时间值;同步单元,用于根据所述当前时间值获取单元获取的第一时间值和所述匹配时间值获取 单元获取的第二时间值,获取所述第一时间值和所述第二时间值的时间差值,所述时间差值 用于实现述动态口令保护程序与所述动态口令生成装置的时间同步。
19、如权利要求12所述的系统,其特征在于,所述输出模块具体包括以下任一单元或其 中组合第一输出单元,用于以显示的方式将生成模块生成的认证口令输出; 第二输出单元,用于以发声的方式将生成模块生成的认证口令输出; 第三输出单元,用于以震动的方式将生成模块生成的认证口令输出; 第四输出单元,用于以适用于用户触摸的方式将生成模块生成的认证口令输出。
20、如权利要求13所述的系统,其特征在于,所述计算机还包括获取模块, 所述获取模块,用于当所述动态口令保护程序接收所述用户输入的认证口令后,获取在所述BIOS的预设位置或所述开机硬盘的预设位置中预存的与所述动态口令生成装置对应的动态口令生成算法。
全文摘要
本发明公开了一种实现开机保护的方法和系统,属于信息安全领域。方法包括计算机上电,加载并执行动态口令保护程序;动态口令保护程序接收用户输入的认证口令,其中,认证口令为用户通过向动态口令生成装置发送动态口令生成命令获取,动态口令生成装置收根据动态口令生成装置的当前时间、动态口令生成算法生成认证口令;动态口令保护程序判断认证口令是否有效,如果是,则加载计算机的开机程序。系统包括计算机和动态口令生成装置。通过采用了动态密码技术,提高了系统的安全等级;并且安全令牌无需和主机相连接,节省了研发投资和系统的稳定性;降低了对用户计算机机器配置的需求;由于动态口令不需要用户去记忆口令,增加了系统的易用性。
文档编号G06F9/445GK101377804SQ200810223250
公开日2009年3月4日 申请日期2008年9月28日 优先权日2008年9月28日
发明者于华章, 舟 陆 申请人:北京飞天诚信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1