CN101377803A - 一种实现开机保护的方法和系统 - Google Patents

一种实现开机保护的方法和系统 Download PDF

Info

Publication number
CN101377803A
CN101377803A CN 200810223249 CN200810223249A CN101377803A CN 101377803 A CN101377803 A CN 101377803A CN 200810223249 CN200810223249 CN 200810223249 CN 200810223249 A CN200810223249 A CN 200810223249A CN 101377803 A CN101377803 A CN 101377803A
Authority
CN
China
Prior art keywords
dynamic password
password
defence program
authenticate
user
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
CN 200810223249
Other languages
English (en)
Other versions
CN101377803B (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.)
Beijing Feitian Technologies Co Ltd
Original Assignee
Beijing Feitian Technologies Co Ltd
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 Beijing Feitian Technologies Co Ltd filed Critical Beijing Feitian Technologies Co Ltd
Priority to CN 200810223249 priority Critical patent/CN101377803B/zh
Publication of CN101377803A publication Critical patent/CN101377803A/zh
Priority to US12/565,125 priority patent/US9158905B2/en
Application granted granted Critical
Publication of CN101377803B publication Critical patent/CN101377803B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种实现开机保护的方法和系统,属于信息安全领域。方法包括:计算机上电,加载并执行动态口令保护程序;动态口令保护程序接收用户输入的认证口令,认证口令为用户通过向动态口令生成装置发送动态口令生成命令获取,当动态口令生成装置根据用户使用的动态口令生成装置的当前次数、动态口令生成算法生成认证口令;动态口令保护程序判断认证口令有效,加载计算机的开机程序。系统包括:计算机和动态口令生成装置。通过采用了动态密码技术,提高了系统的安全等级;并且安全令牌无需和主机相连接,节省了研发投资和系统的稳定性;降低了对用户计算机机器配置的需求;由于动态口令不需要用户去记忆口令,增加了系统的易用性。

Description

一种实现开机保护的方法和系统
技术领域
本发明涉及信息安全领域,特别涉及一种实现开机保护的方法和系统。
背景技术
在计算机应用领域,计算机的开机保护过程或客户端访问远程服务器的过程中,例如,在普通的开机模式下,当用户启动计算机时,常用的开机保护方法是通过要求用户输入密码来确认使用者的身份是否合法。只要用户能够正确输入密码,计算机(或远程服务器)就认为他是合法用户,允许其进行登录访问。通常,每个用户的密码是由该用户自己设定的,理论上只有自己本人才知道,因此只要能够正确输入该密码,计算机就认为他就是本机的合法用户。
并且,计算机只能识别用户的数字身份,所有对用户的授权也是针对用户数字身份的授权,而现实世界是一个真实的物理世界,每个人都拥有独一无二的物理身份。如何保证以数字身份进行操作的操作者就是这个数字身份合法拥有者,也就是说保证操作者的物理身份与数字身份相对应,就成为一个很重要的问题。
发明人在实现本发明的过程中,经过分析后发现现有技术至少存在以下缺点和不足:
一方面,上述提到的用户名/密码方式下,由于许多用户为了防止忘记密码,经常采用诸如自己或家人的生日、电话号码等作为密码,这些有意义的字符串容易被他人猜测到;或者采用把密码抄在一个自己认为安全的地方,这也存在着安全隐患,极易造成密码泄露;并且,当非法用户利用获取的密码实现登录后,将硬盘移植到没有密码的计算机中,便可以更换其中的内容,实现系统的正常启动。因此,上述用户名/密码方式是一种具有安全隐患的身份认证方式;
另一方面,上述用户名/密码方式属于静态密码的认证方式,但在具体应用过程中,静态密码认证方式存在着许多不安全因素,极易造成密码泄露而导致一系列非法登录。因此静态密码认证方式是一种极具安全隐患的身份认证方式;
综上所述,现有技术中计算机开机保护存在安全隐患,容易造成密码泄露;操作者的物理身份与数字身份的绑定没有保证。
发明内容
鉴于现有技术存在的缺点和不足,本发明提供了一种实现开机保护的方法和系统,能够提高开机过程中安全性和可靠性,并且具有使用方便、应用范围广等特点,所述技术方案如下:
一方面,提供了一种实现开机保护的方法,所述方法包括:
计算机上电,加载并执行动态口令保护程序;
所述动态口令保护程序接收用户输入的认证口令,其中,所述认证口令为所述用户通过向动态口令生成装置发送动态口令生成命令获取,当所述动态口令生成装置收到所述用户的动态口令生成命令,根据所述用户使用的所述动态口令生成装置的当前次数、动态口令生成算法生成所述认证口令;
所述动态口令保护程序判断所述认证口令是否有效,如果是,则加载所述计算机的开机程序,否则,所述动态口令保护程序不加载所述计算机的开机程序。
其中,所述动态口令保护程序位于BIOS中或主引导记录中,
相应地,所述方法还包括:若所述动态口令保护程序位于BIOS中,则通过所述计算机的主板开发工具将所述动态口令保护程序写入所述BIOS的预设位置;
相应地,所述方法还包括:若所述动态口令保护程序位于主引导记录中,则通过所述计算机的开发工具将所述动态口令保护程序写入所述计算机开机硬盘的主引导记录的位置,并保留分区表信息。
其中,所述计算机加载并执行动态口令保护程序的步骤,具体包括;
若所述动态口令保护程序位于所述BIOS中,则在所述BIOS自检成功后加载并执行所述动态口令保护程序,将控制权转交给所述动态口令保护程序;
若所述动态口令保护程序位于所述主引导记录中,则在所述BIOS自检成功后加载并执行所述主引导记录中的动态口令保护程序,将控制权转交给所述动态口令保护程序。
其中,所述计算机开机硬盘的主引导记录的位置具体为:
计算机开机硬盘的0柱面0磁头1扇区及所述1扇区的后续扇区。
进一步地,所述动态口令保护程序接收用户输入的认证口令的步骤,之前还包括:
所述动态口令保护程序提示输入动态口令,具体的提示方式包括显示对话框的方式,或,显示字符的方式。
其中,所述动态口令保护程序判断所述认证口令是否有效的步骤,包括:
所述动态口令保护程序接收所述用户输入的认证口令后,获取在所述BIOS的预设位置或所述开机硬盘的预设位置中预存的与所述动态口令生成装置对应的动态口令生成算法;
所述动态口令保护程序根据所述获取的动态口生成算法,生成验证窗口,根据所述验证窗口,判断所述认证口令是否在所述验证窗口范围内,如果是,则所述认证口令有效;否则,所述认证口令无效。
其中,所述动态口令保护程序判断所述认证口令是否有效的步骤,还包括:
所述动态口令保护程序接收所述用户信息,所述用户信息包括账号信息、用户的密码信息;
所述动态口令保护程序根据所述认证口令,判断所述认证口令是否有效的步骤,具体包括:
所述动态口令保护程序收到所述用户信息后,根据所述在BIOS的预设位置或所述开机硬盘的预设位置中预存的用户信息和动态口令生成装置的标识的对应关系,获取与所述用户信息对应的动态口令生成算法;
根据所述获取的动态口令生成算法,生成验证窗口,根据所述验证窗口,判断所述认证口令是否在所述验证窗口范围内,如果是,则所述认证口令有效;否则,所述认证口令无效。
进一步地,所述方法还包括:设置无效次数的阈值,相应地,
当所述认证口令无效时,判断所述用户的无效次数是否超过预设的无效次数的阈值,如果是,则自动关闭计算机;否则,提示用户再次输入认证口令。
其中,所述根据所述动态口令生成算法,生成验证窗口的步骤,具体包括:
所述动态口令开机保护程序以计算机系统的当前验证次数值、对所述当前验证次数值加/减预设次数值后得到的数值,作为计算因子,利用所述动态口令验证算法,生成验证口令序列,所述验证口令序列为所述验证窗口;
相应地,所述验证窗口具体为在有效验证次数范围内的多个随机口令。
进一步地,所述方法还包括:所述动态口令保护程序判断所述认证口令是否有效后,还执行如下步骤;
获取所述动态口令保护程序在生成验证窗口时所述计算机系统的当前验证次数值,并记为第一次数值;
获取所述认证口令匹配到所述验证窗口中数值时所对应的验证次数因子的值,并记为第二次数值;
根据所述获取的第一次数值和所述第二次数值,计算所述第一次数值和所述第二次数值的次数差值,所述次数差值用于实现述动态口令保护程序与所述动态口令生成装置的次数同步。
进一步地,所述动态口令开机保护程序生成验证口令序列的步骤,之后还包括:
所述动态口令开机保护程序执行自身的次数递增加1;
所述动态口令生成装置收到所述用户的动态口令生成命令,根据所述用户使用所述动态口令生成装置的当前次数、动态口令生成算法生成所述认证口令的步骤,之后还包括:
所述动态口令生成装置执行自身的次数递增加1。
另一方面,提供了一种实现开机保护的系统,所述系统包括:计算机和动态口令生成装置;所述计算机包括:
预处理模块,用于计算机上电,加载并执行动态口令保护程序;
接收模块,用于在所述预处理模块处理后,利用所述动态口令保护程序接收用户输入的认证口令;
判断模块,用于当所述接收模块接收到认证口令后,所述动态口令保护程序判断所述认证口令是否有效;
加载模块,用于当所述判断模块判断的结果为所述认证口令有效后,所述动态口令保护程序加载所述计算机的开机程序;
处理模块,用于当所述判断模块判断的结果为所述认证口令无效时,所述动态口令保护程序通过所述处理模块不加载所述计算机的开机程序;
所述动态口令生成装置包括:
接收模块,用于接收所述用户的动态口令生成命令;
生成模块,用于根据所述接收模块接收的动态口令生成命令,根据所述用户使用所述动态口令生成装置的当前次数、动态口令生成算法生成认证口令。
输出模块,用于将所述生成模块生成的认证口令输出。
其中,所述计算机的预处理模块具体包括:
上电单元,用于给计算机上电;
第一装入单元,用于当所述上电单元给所述计算机上电后,若所述动态口令保护程序位于BIOS中,则通过所述计算机的主板开发工具将所述动态口令保护程序写入所述BIOS的预设位置;
第二装入单元,用于当所述上电单元给所述计算机上电后,若所述动态口令保护程序位于主引导记录中,通过所述计算机的开发工具将所述动态口令保护程序写入所述计算机开机硬盘的主引导记录的位置,并保留分区表信息;
第一加载执行单元,用于当所述第一装入单元将所述动态口令保护程序写入所述BIOS的预设位置后,在所述BIOS自检成功后加载并执行所述动态口令保护程序,将控制权转交给所述动态口令保护程序;
第二加载执行单元,用于当所述第二装入单元将所述动态口令保护程序写入所述计算机开机硬盘的主引导记录的位置,并保留分区表信息后,则在所述BIOS自检成功后加载并执行所述主引导记录中的动态口令保护程序,将控制权转交给所述动态口令保护程序。
进一步地,所述计算机还包括提示模块,用于提示用户输入用户信息;
相应地,所述计算机的接收模块还用于接收所述用户信息,所述用户信息包括账号信息、用户的密码信息;
相应地,
所述计算机的判断模块具体包括:
获取单元,用于当所述动态口令保护程序验证所述用户信息通过后,根据所述在BIOS的预设位置或所述开机硬盘的预设位置中预存的用户信息和动态口令生成装置的标识的对应关系,获取与所述用户信息对应的动态口令生成算法;
生成单元,用于根据所述获取单元获取的动态口令生成算法,生成验证窗口;
验证单元,用于根据所述生成单元生成的验证窗口,判断所述认证口令是否在所述验证窗口范围内,如果是,则所述认证口令有效;否则,所述认证口令无效。
进一步地,所述计算机的判断模块还包括:设置单元,
所述设置单元,用于设置无效次数的阈值,相应地,所述计算机的判断模块还包括:
处理单元,用于当所述验证单元验证所述认证口令无效时,判断所述用户的无效次数是否超过预设的无效次数的阈值,如果是,则自动关闭计算机;否则,提示用户再次输入认证口令。
其中,所述计算机的判断模块中的生成单元具体用于根据所述动态口令开机保护程序以所述计算机系统的当前验证次数值、对所述计算机系统的当前验证次数值加/减预设次数值后得到的数值,作为计算因子,利用所述动态口令生成算法,生成验证口令序列,所述验证口令序列为所述验证窗口;所述验证窗口具体为在有效次数范围内的多个随机口令。
进一步地,所述计算机还包括:
同步模块,用于实现所述动态口令保护程序与所述动态口令生成装置的次数同步。
其中,所述同步模块具体包括:
当前次数值获取单元,用于获取所述动态口令保护程序在生成验证窗口时所述计算机系统的当前验证次数值,并记为第一次数值;
匹配次数值获取单元,用于获取所述认证口令匹配到所述验证窗口中数值时所对应的验证次数因子的值,并记为第二次数值;
同步单元,用于根据所述获取的第一次数值和所述第二次数值,计算所述第一次数值和所述第二次数值的次数差值,所述次数差值用于实现述动态口令保护程序与所述动态口令生成装置的次数同步。
其中,所述输出模块具体包括以下任一单元或其中组合:
第一输出单元,用于以显示的方式将生成模块生成的认证口令输出;
第二输出单元,用于以发声的方式将生成模块生成的认证口令输出;
第三输出单元,用于以震动的方式将生成模块生成的认证口令输出;
第四输出单元,用于以适用于用户触摸的方式将生成模块生成的认证口令输出。
进一步地,所述计算机还包括:获取模块,
所述获取模块,用于当所述动态口令保护程序接收所述用户输入的认证口令后,获取在所述BIOS的预设位置或所述开机硬盘的预设位置中预存的与所述动态口令生成装置对应的动态口令生成算法。
进一步地,所述计算机还包括:
次数递增模块,用于当动态口令开机保护程序生成验证口令序列后,所述动态口令开机保护程序执行自身的次数递增加1;
相应地,所述动态口令生成装置还包括:
次数递增模块,用于当所述动态口令生成装置的生成模块生成所述认证口令后,所述动态口令生成装置执行自身的次数递增加1。
本发明提供的技术方案的有益效果是:
通过采用了动态密码技术,提高了系统的安全等级;并且安全令牌无需和主机相连接,节省了研发投资和系统的稳定性;降低了对用户计算机机器配置的需求;由于动态口令不需要用户去记忆口令,从而解决了用户需要强制记忆密码的烦琐性,增加了系统的易用性。
附图说明
图1是本发明实施例1提供的实现开机保护的方法的流程示意图;
图2是本发明实施例2提供的实现开机保护的系统示意图;
图3是本发明实施例2提供的实现开机保护的详细的系统示意图;
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
为了提高开机过程中安全性和可靠性,本发明提供了一种实现开机保护的方法,该方法基于安全令牌,利用安全令牌的动态密码认证实现,具体内容如下:计算机上电,加载并执行动态口令保护程序;动态口令保护程序接收用户输入的认证口令,其中,认证口令为用户通过向动态口令生成装置发送动态口令生成命令获取,当动态口令生成装置收到用户的动态口令生成命令,根据用户使用的动态口令生成装置的当前次数、动态口令生成算法生成认证口令;动态口令保护程序判断认证口令是否有效,如果是,则加载计算机的开机程序,否则,动态口令保护程序不加载计算机的开机程序。本发明实施例提供的方法具有使用方便、应用范围广等特点,参见如下实施例对本发明实施例提供的方法进行详细说明。
实施例1
参见图1,本发明实施例提供了一种实现开机保护的方法,具体内容如下:
步骤101:计算机上电,BIOS自检;
在本实施例中,动态口令开机保护程序可以置于BIOS程序中,作为BIOS程序的一部分,也可以位于计算机开机硬盘的主引导记录中。其中,
若动态口令保护程序位于BIOS中,则通过计算机的主板开发工具将动态口令保护程序写入BIOS的预设位置;
若动态口令保护程序位于主引导记录中,则通过计算机的开发工具将动态口令保护程序写入计算机开机硬盘的主引导记录的位置,并保留分区表信息,例如,开机硬盘的0柱面0磁头1扇区及其后续若干扇区等。
步骤102、BIOS自检成功后加载并执行动态口令开机保护程序,将计算机系统的控制权转移给动态口令开机保护程序;
在本实施例中,BIOS程序包括自检查程序和动态口令开机保护程序,自检查程序首先检查CPU,在CPU正常的基础上之后,将检查Key Board控制芯片、第一个16KB的RAM、时/计数器8253和DMA控制器、中断控制器8259A和显示器、软盘和硬盘以及打印适配设备和异步通信设备,若一切检查无误,则加载动态口令开机保护程序。
其中,若动态口令保护程序位于BIOS中,则在BIOS自检成功后加载并执行动态口令保护程序,将控制权转交给动态口令保护程序;
若动态口令保护程序位于主引导记录中,则在BIOS自检成功后加载并执行主引导记录中的动态口令保护程序,将控制权转交给动态口令保护程序。
本发明实施例为了便于说明,以动态口令开机保护程序置于BIOS程序中为例进行说明。
步骤103、动态口令开机保护程序初始化,加载动态口令的程序配置;
步骤104、动态口令开机保护程序初始化后,显示输入对话框,提示用户输入认证信息;
其中,当动态口令开机保护程序初始化后,可以采用以显示对话框的形式提示用户输入认证信息,或以发声的形式,或以字符的形式,提示用户输入认证信息,本发明实施例不限制具体所采用的提示方式和方法。
步骤105、用户向动态口令生成装置发送动态口令生成命令;
其中,该步骤中用户在向动态口令生成装置发送动态口令生成命令时,具体通过按钮触发的形式,或,指纹扫描的形式,或声控开关的形式,或人体体温感应的方式,或压力感应的方式,或光电感应的方式等,实现向动态口令生成装置发送动态口令生成命令的目的,本发明实施例不限制具体所采用的实现方式和方法。
步骤106、动态口令生成装置内部以该用户使用该动态口令生成装置的当前次数为计算因子,利用HMAC-SHA1算法生成认证口令,并输出给用户;
其中,动态口令生成装置收到用户发送的动态口令生成命令后,以该用户使用的动态口令生成装置的当前次数为计算因子,利用优选的HMAC-SHA1算法生成认证口令,并输出给用户;其中该HMAC-SHA1算法为优选算法,还可以采用其他任意一种可以生成认证口令的算法程序,如hmac_sha256算法,hma_sha512算法,hmac_md5算法等。
其中,本发明实施例所涉及的OTP技术是指用户的密码按照用户使用的动态口令生成装置的次数不断动态变化,每个密码只使用一次。相应地,动态密码认证方式一般采用一种称之为安全令牌的专用硬件(安全令牌也可以是软件形式的,如手机的java程序),它内置于运行专门密码算法的密码生成芯片,根据当前使用次数生成当前密码并输出。
其中,该动态口令生成装置将生成的认证口令输出给用户具体可以采用如下的任一方式,或其组合:
以显示的方式(如显示屏等)将认证口令输出;以发声的方式将认证口令输出;以震动的方式将认证口令输出;还可以以适用于用户触摸的方式(如凹凸触点)将认证口令输出,本发明实施例不限制具体的输出方式和方式。
步骤107、用户将认证口令、用户账号输入到计算机的提示对话框中,计算机中的动态口令开机保护程序获取上述认证口令;
其中,本步骤在具体实现时,可以根据具体的需要设置该计算机的提示对话框,用于提供给用户输入认证口令,进一步,参见表1,该提示对话框还可以包括常规的用户账号、用户密码、动态口令生成装置序列号等提示信息。
表1
 
用户账号 feitian
用户密码 2008feitian
动态口令生成装置序列号 123456789
认证口令 abcd123
如表1所示,当该提示对话框还可以包括常规的用户账号、用户密码、动态口令生成装置序列号等提示信息时,计算机需要验证用户账号、用户密码、动态口令生成装置序列号全部通过后,获取认证口令。本实施例为了便于说明,以提示用户输入用户账号、认证口令为例进行说明。
步骤108:动态口令开机保护程序获取的用户账号为索引条件,查找到计算机系统内部存储的与该用户账号绑定的动态口令生成装置的算法程序,即HMAC-SHA1算法程序,以系统的当前验证次数为计算因子,利用该算法程序生成生验证口令窗口;
其中,在本实施例步骤108中,动态口令生成装置与用户账号的对应关系预先存储在BIOS的指定位置。
步骤109、动态口令开机保护程序通过验证口令窗口对认证口令进行验证,判断认证口令是否有效,如果有效,则执行步骤110;否则,执行步骤111;
其中,本步骤中动态口令开机保护程序通过验证口令窗口对认证口令进行验证时,具体内容如下:
由于计算机系统内保存有动态口令生成装置的信息,动态口令生成装置的使用次数与计算机系统的验证次数保持一致,如针对序列号为123456789的动态口令生成装置,在该计算机内部记载了该动态口令生成装置的信息,当用户在获取认证口令时,是第10次使用该动态口令生成装置,相应地,在计算机内与该使用次数保持一致的验证次数也应该是10次。
为了确保验证的准确性和可靠性,本实施例中的验证口令窗口是动态口令开机保护程序以计算机系统当前验证次数以及当前验证次数分别加/减5次、加/减6秒后的次数值为计算因子,利用HMAC-SHA1算法生成的5个验证口令值,只要认证口令和动态口令开机保护程序生成的5个验证口令值中的一个值相同,则认为该认证口令有效,否则无效,即当认证口令在验证口令窗口范围时,则认为该认证口令有效,否则,该认证口令无效。
步骤110、动态口令开机保护程序加载系统的后续开机程序,将系统控制权转交给系统开机程序,该计算机系统的开机程序将系统的控制权转交给转入了内存地址的操作系统或操作程序。
步骤111、认证口令无效,动态口令开机保护程序判断无效次数是否超过预设值,若超过预设值,则执行步骤112,否则返回步骤104;
其中,本步骤中通过设定判断无效次数是否超过预设值(或称阈值)的处理动作,进一步地充分考虑到用户的实际使用情况,确保了本发明实施例提供的方案的灵活性。
步骤112:自动关闭计算机。
综上,本发明实施例提供的实现开机保护的方法,进一步地,动态口令保护程序还会执行与动态口令生成装置进行次数同步的操作,从而实现尽量减少验证误差,提高开机保护方法的准确度,其中,参见步骤109,动态口令保护程序与动态口令生成装置执行次数同步的步骤,具体包括:
获取动态口令保护程序在生成验证窗口时,计算机的当前次数值(为了便于说明,定义该获取的计算机的当前验证次数值为第一次数值);
获取认证口令匹配到验证窗口中数值时,计算机的当前次数值(为了便于说明,定义该获取的计算机的当前次数值为计算机的第二次数值);
根据获取的第一次数值和获取的第二次数值,获取第一次数值和第二次数值的次数差值,
其中,如上文所述,验证窗口生成时,会以计算机的第一次数值(假设X=100次)、以及对该第一次数值加/减N次(本实施例以3次为例)、加/减M秒(本实施例以5次为例)后的次数值为计算因子,假设,如图2所示,认证口令匹配到对该第一次数值加5秒的次数值(Y=105次),则第一次数值(假设X=100)和该第二次数值(Y=105)的差值5次,即为待获取的次数差,该次数差值用于实现动态口令保护程序与动态口令生成装置的次数同步,计算机的动态口令保护程序可以根据该次数差值有效抑制验证窗口的漂移问题,从而实现尽量减少验证误差,提高开机保护方法的准确度。
进一步地,本领域技术人员可以获知,本发明实施例提供的方法还适用于当计算机保存有与对应动态口令生成装置对应的动态口令生成算法的情况,其中,在计算机的BIOS的预设位置或开机硬盘的预设位置中预存有与动态口令生成装置对应的动态口令生成算法。相应地,在上述计算机的动态口令保护程序判断收到的认证口令是否有效的步骤,之前还包括:
当动态口令保护程序接收用户输入的认证口令后,直接获取在BIOS的预设位置或开机硬盘的预设位置中预存的与动态口令生成装置对应的动态口令生成算法;
相应地,计算机的动态口令保护程序判断收到的认证口令是否有效的步骤具体包括:动态口令保护程序根据获取的动态口生成算法,生成验证窗口,根据验证窗口,判断认证口令是否在验证窗口范围内,如果是,则认证口令有效;否则,认证口令无效。即,采用本发明实施例提供的方法,当需要实现开机保护时,用户只需要向与该计算机对应的动态口令生成装置获取该动态口令生成装置生成的动态认证口令,然后将该认证口令输入到计算机的开机保护程序中,开机保护程序利用该认证口令直接进行验证。综上进一步地增加了本发明实施例提供的方法的灵活性和整个技术方案的完整性。
本领域技术人员可以获知,在动态口令开机保护程序生成验证口令序列的步骤,之后还包括:动态口令开机保护程序执行自身的次数递增加1;
相应地,动态口令生成装置收到用户的动态口令生成命令,根据用户使用动态口令生成装置的当前次数、动态口令生成算法生成认证口令的步骤,之后还包括:动态口令生成装置执行自身的次数递增加1。其中,不限制动态口令开机保护程序和动态口令生成装置递增的具体数值。
综上所述,本发明实施例提供了一种实现开机保护的方法,通过采用了动态密码技术,提高了系统的安全等级;并且安全令牌无需和主机相连接,节省了研发投资和系统的稳定性;降低了对用户计算机机器配置的需求;由于动态口令不需要用户去记忆口令,从而解决了用户需要强制记忆密码的烦琐性,增加了系统的易用性。
实施例2
参见图2,本发明实施例提供了一种实现开机保护的系统,该系统包括:计算机和动态口令生成装置;参见图3,计算机包括:预处理模块、接收模块、判断模块、加载模块和处理模块;动态口令生成装置包括接收模块、生成模块和输出模块;其中,
在计算机中,
预处理模块,用于计算机上电,加载并执行动态口令保护程序;
接收模块,用于在预处理模块处理后,利用动态口令保护程序接收用户输入的认证口令;
判断模块,用于当接收模块接收到认证口令后,动态口令保护程序判断认证口令是否有效;
加载模块,用于当判断模块判断的结果为认证口令有效后,动态口令保护程序加载计算机的开机程序;
处理模块,用于当判断模块判断的结果为认证口令无效时,动态口令保护程序通过处理模块不加载计算机的开机程序;
在动态口令生成装置中,
接收模块,用于接收用户的动态口令生成命令;
生成模块,用于根据接收模块接收的动态口令生成命令,根据用户使用动态口令生成装置的当前次数、动态口令生成算法生成认证口令。
输出模块,用于将生成模块生成的认证口令输出。
其中,上述计算机的预处理模块具体包括:
上电单元,用于给计算机上电;
第一装入单元,用于当上电单元给计算机上电后,若动态口令保护程序位于BIOS中,则通过计算机的主板开发工具将动态口令保护程序写入BIOS的预设位置;
第二装入单元,用于当上电单元给计算机上电后,若动态口令保护程序位于主引导记录中,通过计算机的开发工具将动态口令保护程序写入计算机开机硬盘的主引导记录的位置,并保留分区表信息;
第一加载执行单元,用于当第一装入单元将动态口令保护程序写入BIOS的预设位置后,在BIOS自检成功后加载并执行动态口令保护程序,将控制权转交给动态口令保护程序;
第二加载执行单元,用于当第二装入单元将动态口令保护程序写入计算机开机硬盘的主引导记录的位置,并保留分区表信息后,则在BIOS自检成功后加载并执行主引导记录中的动态口令保护程序,将控制权转交给动态口令保护程序。
进一步地,
计算机还包括提示模块,用于提示用户输入用户信息;
相应地,计算机的接收模块还用于接收用户信息,用户信息包括账号信息、用户的密码信息;
相应地,
计算机的判断模块具体包括:
获取单元,用于当动态口令保护程序验证用户信息通过后,根据在BIOS的预设位置或开机硬盘的预设位置中预存的用户信息和动态口令生成装置的标识的对应关系,获取与用户信息对应的动态口令生成算法;
生成单元,用于根据获取单元获取的动态口令生成算法,生成验证窗口;
验证单元,用于根据生成单元生成的验证窗口,判断认证口令是否在验证窗口范围,如果是,则认证口令有效;否则,认证口令无效。
进一步地,计算机的判断模块还包括:设置单元,
设置单元,用于设置无效次数的阈值,相应地,计算机的判断模块还包括:
处理单元,用于当验证单元验证认证口令无效时,判断用户的无效次数是否超过预设的无效次数的阈值,如果是,则自动关闭计算机;否则,提示用户再次输入认证口令。
其中,计算机的判断模块中的生成单元具体用于根据动态口令开机保护程序以计算机系统的当前验证次数值、对计算机系统的当前验证次数值加/减预设次数值后得到的数值,作为计算因子,利用动态口令生成算法,生成验证口令序列,验证口令序列为验证窗口;验证窗口具体为在有效次数范围内的多个随机口令。
进一步地,计算机还包括:
同步模块,用于实现动态口令保护程序与动态口令生成装置执行次数同步。
其中,同步模块具体包括:
当前次数值获取单元,用于获取动态口令保护程序在生成验证窗口时计算机系统的当前验证次数值,并记为第一次数值;
匹配次数值获取单元,用于获取认证口令匹配到验证窗口中数值所对应的验证次数因子的值,并记为第二次数值;
同步单元,用于根据获取的第一次数值和第二次数值,计算第一次数值和第二次数值的次数差值,次数差值用于实现述动态口令保护程序与动态口令生成装置的次数同步。
其中,本发明实施例提供的动态口令生成装置的输出模块具体包括以下任一单元或其中组合:
第一输出单元,用于以显示的方式将生成模块生成的认证口令输出;
第二输出单元,用于以发声的方式将生成模块生成的认证口令输出;
第三输出单元,用于以震动的方式将生成模块生成的认证口令输出;
第四输出单元,用于以适用于用户触摸的方式将生成模块生成的认证口令输出。
进一步地,计算机还包括:获取模块,
获取模块,用于当动态口令保护程序接收用户输入的认证口令后,获取在BIOS的预设位置或开机硬盘的预设位置中预存的与动态口令生成装置对应的动态口令生成算法。
进一步地,计算机还包括:
次数递增模块,用于当动态口令开机保护程序生成验证口令序列后,动态口令开机保护程序执行自身的次数递增加1;
相应地,动态口令生成装置还包括:
次数递增模块,用于当动态口令生成装置的生成模块生成认证口令后,动态口令生成装置执行自身的次数递增加1。
其中,本发明实施例提供的动态口令生成装置具体可以为安全令牌。
综上所述,本发明实施例提供了一种实现开机保护的系统,通过采用了动态密码技术,提高了系统的安全等级;并且安全令牌无需和主机相连接,节省了研发投资和系统的稳定性;降低了对用户计算机机器配置的需求;由于动态口令不需要用户去记忆口令,从而解决了用户需要强制记忆密码的烦琐性,增加了系统的易用性。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (21)

1、一种实现开机保护的方法,其特征在于,所述方法包括:
计算机上电,加载并执行动态口令保护程序;
所述动态口令保护程序接收用户输入的认证口令,其中,所述认证口令为所述用户通过向动态口令生成装置发送动态口令生成命令获取,当所述动态口令生成装置收到所述用户的动态口令生成命令后,根据所述用户使用的所述动态口令生成装置的当前次数、动态口令生成算法生成所述认证口令;
所述动态口令保护程序判断所述认证口令是否有效,如果是,则加载所述计算机的开机程序,否则,所述动态口令保护程序不加载所述计算机的开机程序。
2、如权利要求1所述的方法,其特征在于,所述动态口令保护程序位于BIOS中或主引导记录中,
相应地,所述方法还包括:若所述动态口令保护程序位于BIOS中,则通过所述计算机的主板开发工具将所述动态口令保护程序写入所述BIOS的预设位置;
相应地,所述方法还包括:若所述动态口令保护程序位于主引导记录中,则通过所述计算机的开发工具将所述动态口令保护程序写入所述计算机开机硬盘的主引导记录的位置,并保留分区表信息。
3、如权利要求2所述的方法,其特征在于,所述计算机加载并执行动态口令保护程序的步骤,具体包括;
若所述动态口令保护程序位于所述BIOS中,则在所述BIOS自检成功后加载并执行所述动态口令保护程序,将控制权转交给所述动态口令保护程序;
若所述动态口令保护程序位于所述主引导记录中,则在所述BIOS自检成功后加载并执行所述主引导记录中的动态口令保护程序,将控制权转交给所述动态口令保护程序。
4、如权利要求2所述的方法,其特征在于,所述计算机开机硬盘的主引导记录的位置具体为:
计算机开机硬盘的0柱面0磁头1扇区及所述1扇区的后续扇区。
5、如权利要求1所述的方法,其特征在于,所述动态口令保护程序接收用户输入的认证口令的步骤,之前还包括:
所述动态口令保护程序提示输入动态口令,具体的提示方式包括显示对话框的方式,或,显示字符的方式。
6、如权利要求2所述的方法,其特征在于,所述动态口令保护程序判断所述认证口令是否有效的步骤,包括:
所述动态口令保护程序接收所述用户输入的认证口令后,获取在所述BIOS的预设位置或所述开机硬盘的预设位置中预存的与所述动态口令生成装置对应的动态口令生成算法;
所述动态口令保护程序根据所述获取的动态口生成算法,生成验证窗口,根据所述验证窗口,判断所述认证口令是否在所述验证窗口范围内,如果是,则所述认证口令有效;否则,所述认证口令无效。
7、如权利要求2所述的方法,其特征在于,所述动态口令保护程序判断所述认证口令是否有效的步骤,还包括:
所述动态口令保护程序接收所述用户信息,所述用户信息包括账号信息、用户的密码信息;
所述动态口令保护程序根据所述认证口令,判断所述认证口令是否有效的步骤,具体包括:
所述动态口令保护程序收到所述用户信息后,根据所述在BIOS的预设位置或所述开机硬盘的预设位置中预存的用户信息和动态口令生成装置的标识的对应关系,获取与所述用户信息对应的动态口令生成算法;
根据所述获取的动态口令生成算法,生成验证窗口,根据所述验证窗口,判断所述认证口令是否在所述验证窗口范围内,如果是,则所述认证口令有效;否则,所述认证口令无效。
8、如权利要求6或7所述的方法,其特征在于,所述方法还包括:设置无效次数的阈值,相应地,
当所述认证口令无效时,判断所述用户的无效次数是否超过预设的无效次数的阈值,如果是,则自动关闭计算机;否则,提示用户再次输入认证口令。
9、如权利要求6或7所述的方法,其特征在于,所述根据所述动态口令生成算法,生成验证窗口的步骤,具体包括:
所述动态口令开机保护程序以计算机系统的当前验证次数值、对所述当前验证次数值加/减预设次数值后得到的数值,作为计算因子,利用所述动态口令验证算法,生成验证口令序列,所述验证口令序列为所述验证窗口;
相应地,所述验证窗口具体为在有效验证次数范围内的多个随机口令。
10、如权利要求6或7所述的方法,其特征在于,所述方法还包括:所述动态口令保护程序判断所述认证口令是否有效后,还执行如下步骤;
获取所述动态口令保护程序在生成验证窗口时所述计算机系统的当前验证次数值,并记为第一次数值;
获取所述认证口令匹配到所述验证窗口中数值时所对应的验证次数因子的值,并记为第二次数值;
根据所述获取的第一次数值和所述第二次数值,计算所述第一次数值和所述第二次数值的次数差值,所述次数差值用于实现所述动态口令保护程序与所述动态口令生成装置的次数同步。
11、如权利要求9所述的方法,其特征在于,所述方法还包括:所述动态口令开机保护程序生成所述验证口令序列的步骤,之后还包括:
所述动态口令开机保护程序执行自身的次数递增加1;
所述动态口令生成装置收到所述用户的动态口令生成命令,根据所述用户使用的所述动态口令生成装置的当前次数、动态口令生成算法生成所述认证口令的步骤,之后还包括:
所述动态口令生成装置执行自身的次数递增加1。
12、一种实现开机保护的系统,其特征在于,所述系统包括:计算机和动态口令生成装置;所述计算机包括:
预处理模块,用于计算机上电,加载并执行动态口令保护程序;
接收模块,用于在所述预处理模块处理后,利用所述动态口令保护程序接收用户输入的认证口令;
判断模块,用于当所述接收模块接收到认证口令后,所述动态口令保护程序判断所述认证口令是否有效;
加载模块,用于当所述判断模块判断的结果为所述认证口令有效后,所述动态口令保护程序加载所述计算机的开机程序;
处理模块,用于当所述判断模块判断的结果为所述认证口令无效时,所述动态口令保护程序通过所述处理模块不加载所述计算机的开机程序;
所述动态口令生成装置包括:
接收模块,用于接收所述用户的动态口令生成命令;
生成模块,用于根据所述接收模块接收的动态口令生成命令,根据所述用户使用的所述动态口令生成装置的当前次数、动态口令生成算法生成认证口令。
输出模块,用于将所述生成模块生成的认证口令输出。
13、如权利要求12所述的系统,其特征在于,所述计算机的预处理模块具体包括:
上电单元,用于给所述计算机上电;
第一装入单元,用于当所述上电单元给所述计算机上电后,若所述动态口令保护程序位于BIOS中,则通过所述计算机的主板开发工具将所述动态口令保护程序写入所述BIOS的预设位置;
第二装入单元,用于当所述上电单元给所述计算机上电后,若所述动态口令保护程序位于主引导记录中,通过所述计算机的开发工具将所述动态口令保护程序写入所述计算机开机硬盘的主引导记录的位置,并保留分区表信息;
第一加载执行单元,用于当所述第一装入单元将所述动态口令保护程序写入所述BIOS的预设位置后,在所述BIOS自检成功后加载并执行所述动态口令保护程序,将控制权转交给所述动态口令保护程序;
第二加载执行单元,用于当所述第二装入单元将所述动态口令保护程序写入所述计算机开机硬盘的主引导记录的位置,并保留分区表信息后,则在所述BIOS自检成功后加载并执行所述主引导记录中的动态口令保护程序,将控制权转交给所述动态口令保护程序。
14、如权利要求12所述的系统,其特征在于,
所述计算机还包括提示模块,用于提示所述用户输入用户信息;
相应地,所述计算机的接收模块还用于接收所述用户信息,所述用户信息包括账号信息、用户的密码信息;
相应地,
所述计算机的判断模块具体包括:
获取单元,用于当所述动态口令保护程序验证所述用户信息通过后,根据所述在BIOS的预设位置或所述开机硬盘的预设位置中预存的用户信息和动态口令生成装置的标识的对应关系,获取与所述用户信息对应的动态口令生成算法;
生成单元,用于根据所述获取单元获取的动态口令生成算法,生成验证窗口;
验证单元,用于根据所述生成单元生成的验证窗口,判断所述认证口令是否在所述验证窗口范围内,如果是,则所述认证口令有效;否则,所述认证口令无效。
15、如权利要求14所述的系统,其特征在于,所述计算机的判断模块还包括:设置单元,
所述设置单元,用于设置无效次数的阈值,相应地,所述计算机的判断模块还包括:
处理单元,用于当所述验证单元验证所述认证口令无效时,判断所述用户的无效次数是否超过预设的无效次数的阈值,如果是,则自动关闭计算机;否则,提示用户再次输入认证口令。
16、如权利要求14所述的系统,其特征在于,所述计算机的判断模块中的生成单元具体用于根据所述动态口令开机保护程序以所述计算机系统的当前验证次数值、对所述计算机系统的当前验证次数值加/减预设次数值后得到的数值,作为计算因子,利用所述动态口令生成算法,生成验证口令序列,所述验证口令序列为所述验证窗口;所述验证窗口具体为在有效次数范围内的多个随机口令。
17、如权利要求14所述的系统,其特征在于,所述计算机还包括:
同步模块,用于实现所述动态口令保护程序与所述动态口令生成装置的次数同步。
18、如权利要求17所述的系统,其特征在于,所述同步模块具体包括:
当前次数值获取单元,用于获取所述动态口令保护程序在生成验证窗口时所述计算机系统的当前验证次数值,并记为第一次数值;
匹配次数值获取单元,用于获取所述认证口令匹配到所述验证窗口中数值时所对应的验证次数因子的值,并记为第二次数值;
同步单元,用于根据所述获取的第一次数值和所述第二次数值,计算所述第一次数值和所述第二次数值的次数差值,所述次数差值用于实现述动态口令保护程序与所述动态口令生成装置的次数同步。
19、如权利要求12所述的系统,其特征在于,所述输出模块具体包括以下任一单元或其中组合:
第一输出单元,用于以显示的方式将生成模块生成的认证口令输出;
第二输出单元,用于以发声的方式将生成模块生成的认证口令输出;
第三输出单元,用于以震动的方式将生成模块生成的认证口令输出;
第四输出单元,用于以适用于用户触摸的方式将生成模块生成的认证口令输出。
20、如权利要求13所述的系统,其特征在于,所述计算机还包括:获取模块,
所述获取模块,用于当所述动态口令保护程序接收所述用户输入的认证口令后,获取在所述BIOS的预设位置或所述开机硬盘的预设位置中预存的与所述动态口令生成装置对应的动态口令生成算法。
21、如权利要求16所述的系统,其特征在于,所述计算机还包括:
次数递增模块,用于当动态口令开机保护程序生成验证口令序列后,所述动态口令开机保护程序执行自身的次数递增加1;
相应地,所述动态口令生成装置还包括:
次数递增模块,用于当所述动态口令生成装置的生成模块生成所述认证口令后,所述动态口令生成装置执行自身的次数递增加1。
CN 200810223249 2008-09-28 2008-09-28 一种实现开机保护的方法和系统 Expired - Fee Related CN101377803B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN 200810223249 CN101377803B (zh) 2008-09-28 2008-09-28 一种实现开机保护的方法和系统
US12/565,125 US9158905B2 (en) 2008-09-28 2009-09-23 Method for computer startup protection and system thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200810223249 CN101377803B (zh) 2008-09-28 2008-09-28 一种实现开机保护的方法和系统

Publications (2)

Publication Number Publication Date
CN101377803A true CN101377803A (zh) 2009-03-04
CN101377803B CN101377803B (zh) 2011-08-17

Family

ID=40421341

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200810223249 Expired - Fee Related CN101377803B (zh) 2008-09-28 2008-09-28 一种实现开机保护的方法和系统

Country Status (1)

Country Link
CN (1) CN101377803B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101977202A (zh) * 2010-11-11 2011-02-16 北京航空航天大学 一种用于b/s网络结构的一次性口令认证系统和认证方法
CN102262573A (zh) * 2011-06-20 2011-11-30 奇智软件(北京)有限公司 操作系统启动保护方法和装置
CN103713966A (zh) * 2011-06-20 2014-04-09 北京奇虎科技有限公司 移动终端系统启动保护方法和装置
CN104364791A (zh) * 2012-03-06 2015-02-18 温科尼克斯多夫国际有限公司 通过bios/(u)efi扩展的pc保护
CN107197373A (zh) * 2017-06-06 2017-09-22 深圳前海茂佳软件科技有限公司 电视使用权限管理方法、电视及计算机可读存储介质
CN103713920B (zh) * 2011-06-20 2017-11-14 北京奇虎科技有限公司 便携设备操作系统启动保护方法和装置
CN107729732A (zh) * 2017-09-18 2018-02-23 郑州云海信息技术有限公司 一种基于信息安全的计算机启动方法及系统
CN109325324A (zh) * 2018-09-29 2019-02-12 韩浩杨 计算机开机验证系统
WO2019095357A1 (zh) * 2017-11-20 2019-05-23 深圳市汇顶科技股份有限公司 系统启动校验方法及系统、电子设备和计算机存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7210166B2 (en) * 2004-10-16 2007-04-24 Lenovo (Singapore) Pte. Ltd. Method and system for secure, one-time password override during password-protected system boot
CN100492966C (zh) * 2004-11-26 2009-05-27 王小矿 基于智能卡和动态密码的身份认证系统
CN100468434C (zh) * 2006-06-28 2009-03-11 北京飞天诚信科技有限公司 一种实现计算机的开机保护方法及装置
CN101178802A (zh) * 2006-11-08 2008-05-14 李东声 网络银行交易中动态密码的实现方法与电子签名装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101977202A (zh) * 2010-11-11 2011-02-16 北京航空航天大学 一种用于b/s网络结构的一次性口令认证系统和认证方法
CN102262573A (zh) * 2011-06-20 2011-11-30 奇智软件(北京)有限公司 操作系统启动保护方法和装置
CN102262573B (zh) * 2011-06-20 2014-01-15 奇智软件(北京)有限公司 操作系统启动保护方法和装置
CN103713966A (zh) * 2011-06-20 2014-04-09 北京奇虎科技有限公司 移动终端系统启动保护方法和装置
CN103713920B (zh) * 2011-06-20 2017-11-14 北京奇虎科技有限公司 便携设备操作系统启动保护方法和装置
CN104364791A (zh) * 2012-03-06 2015-02-18 温科尼克斯多夫国际有限公司 通过bios/(u)efi扩展的pc保护
CN110084026A (zh) * 2012-03-06 2019-08-02 温科尼克斯多夫国际有限公司 通过bios/(u)efi扩展的pc保护
CN107197373A (zh) * 2017-06-06 2017-09-22 深圳前海茂佳软件科技有限公司 电视使用权限管理方法、电视及计算机可读存储介质
CN107729732A (zh) * 2017-09-18 2018-02-23 郑州云海信息技术有限公司 一种基于信息安全的计算机启动方法及系统
WO2019095357A1 (zh) * 2017-11-20 2019-05-23 深圳市汇顶科技股份有限公司 系统启动校验方法及系统、电子设备和计算机存储介质
CN109325324A (zh) * 2018-09-29 2019-02-12 韩浩杨 计算机开机验证系统

Also Published As

Publication number Publication date
CN101377803B (zh) 2011-08-17

Similar Documents

Publication Publication Date Title
CN101377803B (zh) 一种实现开机保护的方法和系统
CN101359354B (zh) 一种实现开机保护的方法和系统
CN112560004B (zh) 完整性确定方法和系统
JP5745061B2 (ja) 起動プロセスの際の対話型コンポーネントの使用の認証
CN106156635A (zh) 终端启动方法和装置
CN102449631B (zh) 用于执行管理操作的系统和方法
US9158905B2 (en) Method for computer startup protection and system thereof
US9749141B2 (en) Secure boot devices, systems, and methods
CN101916348A (zh) 一种用户操作系统的安全引导方法及引导系统
CN103164241A (zh) 利用了生物认证装置的计算机的启动方法以及计算机
US11675893B2 (en) Verification application, method, electronic device and computer program
CN113452678A (zh) 登录信息输入方法、登录信息保存方法及相关装置
CN101106455A (zh) 身份认证的方法和智能密钥装置
KR101654778B1 (ko) 하드웨어 강제 액세스 보호
CN104091109A (zh) 指纹加指静脉双模态验证电脑管理员身份的系统及方法
CN101377804B (zh) 一种实现开机保护的方法和系统
CN109992973A (zh) 一种利用oprom机制的启动度量方法及装置
CN114861158A (zh) 安全认证方法、装置、系统、电子设备及存储介质
CN102594815B (zh) 登录操作系统前设置用户权限并执行相应操作的方法、装置
CN105468964B (zh) 计算机系统以及计算机系统操作方法
CN116032484A (zh) 一种通信设备安全启动的方法、装置和电子设备
CN110601846B (zh) 一种校验虚拟可信根的系统及方法
CN107315962A (zh) 一种嵌入式平台的可信处理模块
WO2011149329A1 (en) Method of providing trusted application services
CN106100853A (zh) 移动终端安全认证方法和装置

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

Granted publication date: 20110817