一种基于嵌入式的主机安全保护方法

文档序号:6546316阅读:320来源:国知局
一种基于嵌入式的主机安全保护方法
【专利摘要】一种基于嵌入式的主机安全保护方法,包括以下步骤:1)将MBR放到ARM的扇区中,随机生成一512B的字符串,与512B的MBR进行按位加密,生成新的512B字符串;2)解密时用随机字符串与加密MBR字符串进行按位解密运算,然后再与步骤1)的加密算法进行解密,得到真正的MBR;3)首次运行指纹验证模块时生成一个字符串,存到预先约定好的ARM上的某一个扇区,运行指纹模块时与第一次存到ARM存储器指定扇区的字符串对比,验证后生成新的随机字符串,实现动态加密解密;4)进入计算机之前,将512个字符传送到MBR指定的位置上,将真正的MBR加载到指定扇区,开机启动;5)若主机待机,据Windows消息响应机制,程序Hook所有对主机的操作,重新输入指纹信息,获得操作许可,大大的提高安全性。
【专利说明】一种基于嵌入式的主机安全保护方法
【技术领域】
[0001]本发明属于主机安全保护【技术领域】,具体涉及一种基于嵌入式的主机安全保护方法,用于主机在启动之前和启动后的安全保护。
【背景技术】
[0002]现在的个人计算机应用中,大都使用用户ID+密码的方法来进行用户的身份认证和访问控制。但是,如果一旦密码忘记,或被别人窃取,计算机系统以及文件的安全问题就受到了威胁。而基于生物特征的认证系统凭借它的唯一性,是当下信息安全领域的研究热点,很多操作权限验证方式均采用之。但是,由于以上认证系统的运行均设立在主机系统启动之后,对于专业的技术人员来说,都具备可以突破验证过程的能力,所以安全系数在专业层次来说也不是相对较高。

【发明内容】

[0003]为了克服上述现有技术的不足,本发明的目的是提供一种基于嵌入式的主机安全保护方法,本发明利用嵌入式系统和生物特征识别技术,结合嵌入式设备与密码体制,设计了一种更加安全,便捷的计算机访问控制技术,具有方法简单、安全性高的特点。
[0004]为了实现上述目的,本发明采用的技术方案是:一种基于嵌入式的主机安全保护方法,包括以下步骤:
1)将MBR放到ARM的扇区中,先随机生成一个512B的字符串,称为随机加密字符串,然后用随机加密字符串与MBR进行每一位的按位加密,生成一个新的字符串,称为加密MBR
字符串;
2)解密时用随机加密字符串与加密MBR字符串进行按位解密运算,然后再与步骤I)的加密算法进行解密,得到真正的MBR ;
3)指纹验证模块会生成一个字符串,称为指纹唯一识别字符串,与存到ARM指定扇区的字符串对比相同,那么就成功验证,生成新的随机解密字符串,供下次使用,便实现了动态的加密解密;
4)在进入计算机之前,ARM和计算机BIOS的通信只能通过字符串传递,不能通过文件的形式传递,用512个字符当成文件,将512个字符传送到MBR指定的位置上,由固化在硬盘扇区中的程序将真正的MBR加载到指定扇区,就可开机启动;
5)当主机启动后,若需主机待机,此时主机端程序运行,依据Windows消息响应机制,程序Hook所有对主机的操作,待用户重新输入指纹信息,并由ARM传送转换后的字符串,通过主机程序验证方可重新获得操作许可,主机端程序写入注册表,保证开机自启动,每次都需经过验证。
[0005]采用汇编,从底层将系统引导区修改,将主机MBR转移至其他扇区,地址存储在ARM设备中,方便CPU获得读取。将验证方式与Windows Hook相结合,实现主机启动后的动态锁定与解锁。最后利用以上软硬件结合的验证方式,从头至尾贯穿主机,实行了全方位的安全防护。
[0006]因此本发明具有以下优点:
I)将生物特征信息与计算机访问控制相结合,可实现轻松、快速、安全的系统访问。
[0007]2)密码与生物特征结合的双重身份验证使得在访问数据或网络方面实现更高的安全级别。
[0008]3)利用嵌入式设备与主机进行交互实现对计算机的实时监控认证。
[0009]4)可利用虹膜,指纹,掌纹,人脸等生物特征使验证方式多样化。
[0010]5)进行生物特征识别的同时生成密码系统需要的随机密钥,方便且高效。
[0011]当用户同识别系统交互进行身份认证时,识别系统(即ARM与指纹模块组成的模块)获取其特征转换为字符串并与ARM闪存中存储的特征模板进行比对,当匹配成功后,识别系统将CPU指向存储主机真实MBR的扇区使之正常启动或操作,否则系统将自动锁定,等待验证,操作系统启动后,生物特征信息仍然作为产生验证信息的来源,利用识别系统对主机系统时刻操作认证,一 旦匹配不成功,计算机可以随时进行锁定。这样极大的提高了主机的安全性。该系统针对现当下存在的突出的计算机访问安全问题,实现了对计算机加解密,访问唯一性,开关机验证等安全认证功能。
具体实施方案
[0012]下面结合具体实施例对本发明作进一步详细说明。
[0013]一种基于嵌入式的主机安全保护方法,包括以下步骤:
I)将MBR放到ARM的扇区中,先随机生成一个512B的字符串,称为随机加密字符串,然后用随机加密字符串与MBR进行每一位的按位加密,生成一个新的字符串,称为加密MBR
字符串。
[0014]2 )解密时用随机加密字符串与加密MBR字符串进行按位解密运算,然后再与步骤O的加密算法进行解密,得到真正的MBR ;
3)指纹验证模块会生成一个字符串,称为指纹唯一识别字符串,与存到ARM指定扇区的字符串对比相同,那么就成功验证,生成新的随机解密字符串,提供给下次使用,便实现了动态的加密解密;
4)在进入计算机之前,ARM和计算机BIOS的通信只能通过字符串传递,而不通过文件的形式传递,用512个字符当成文件,将512个字符传送到MBR指定的位置上,该位置位于硬盘的第一个扇区中,由固化在硬盘扇区中的程序将真正的MBR加载到指定扇区,就能够开机启动,程序固化在硬盘的第二的扇区中;
5)当主机启动之后,若需主机待机,此时主机端程序运行,依据Windows消息响应机制,程序Hook所有对主机的操作,待用户重新输入指纹信息,并由ARM传送转换后的字符串,通过主机程序验证方可重新获得操作许可,主机端程序写入注册表,保证开机自启动,每次都需经过验证,大大的提高安全性。
[0015]计算机引导汇编部分
I)首先分析计算机启动的引导过程:
按下开机电源--> 固化在计算机主板上的BIOS进行开机自检一> 如果自检成功—>检测第一存储外设的第一块扇区标志位是否是55AA —>是则BIOS将第一外设存储的第一个扇区(也就是MBR)加载到计算机内存0000:7C00H处,不是则检测第二存储外设……一> 然后将计算机的控制权力给了第一外设的第一快硬盘分区一> 计算机开始执行该扇区上的代码一> 代码将执行一系列代码引导计算机启动
2)由于我们的工作主要在重写MBR,所以下面我们来分析下MBR:
MBR 一共 512B,是 446B+64B+2B 的结构
446B是功能性引导代码部分,这一部分是我们写功能代码的区域,代码的长度不能超过446B,如果超过就要跨扇区写代码,对于程序的稳定性和可移植性都有一定的影响,所以我们将代码控制在446B;
64B是计算机分区表,分区表的功能是为电脑的磁盘划分多个分区便于用户管理,最多四个表项每个表项16B,如果这一部分丢失,那么计算机识别的硬盘就是一整硬盘,毫无意义,如果加密该64B的内容,那么对于磁盘的信息保护有了极大的保障。
[0016]2B是MBR标识符,常为55AA,如果不是这个数值,那么则该扇区不会当做MBR。
[0017]3)汇编程序大体思路分析
第一步将计算机真正的MBR备份,以防丢失,把MBR存储到ARM的存储器中,然后将MBR进行按位加密,这样即 使以后有人得到ARM外设,也很难能够分析出来我们的MBR在什么地方;
第二步向计算机磁盘的第一扇区写上我们的代码,代码功能是在屏幕上显示 "Please insert your keyt and restart the computer! 〃然后将执行权限转交给
ARM ;
第三步是将ARM的代码写入到ARM指定扇区,代码功能是在屏幕上显示PLEASE BRUSH FINGERPRINT然后等待ARM验证生物识别部分,如果成功将MBR解密写入扇区,如果失败将虚拟MBR写入扇区,最后都会把计算机的引导权给计算机。
[0018]上位机部分 开机自启原理:
在上位机程序代码中使用RegCreateKey等注册表函数在注册表HKEY_L0CAL_MACHINE\Software\Microsoft\ffindows\CurrentVersion\Run 下新建一个字符串,值为所要自动执行的程序名,将数据设置为程序所在的目录,即可将该程序设置自动执行。
[0019]当程序第一次执行时,写入注册表行为同时得到执行,由此实现了上位机程序的开机自启动。
[0020]主机唤醒后,由于Hook程序的自启动,因此,主机屏蔽所有键盘鼠标消息。
[0021]由于单一程序调用的HOOK API是仅在当前程序下的线程消息,所以需要设置动态链接库(DLL)实现Hook对系统全局消息的屏蔽。
[0022]在主机启动之前,由于主机磁盘的O磁道I扇区已被本系统重写,如果不具备ARM设备或者指纹信息,无法通过WinPE等设备绕过验证过程进入系统(原因在于真实的MBR已被搬运,所包含的硬盘分区表信息无法读取到),并且由于主机启动之前的验证过程的识别判断程序并未运行在主机操作系统上(此时主机尚未进入操作系统),所以可以避免外界人员通过技术手段突破验证。
[0023]当如上设备具备,并且已通过验证后,主机启动,进入操作系统。此时,用户可在本程序安装之初设置是否在开机之后决定二次验证。当主机启动之后,有时候会遭遇用户需要待机主机的情况,此时主机端程序运行,依据Windows消息响应机制,程序Hook所有对主机的操作,等待用户重新输入指纹信息,并由ARM传送转换后的字符串,通过主机程序验证方可重新获得操作能力。同时,主机端程序写入注册表,保证开机自启动,即每次都需经过验证,大大的提高安全性。
【权利要求】
1.一种基于嵌入式的主机安全保护方法,其特征在于,包括以下步骤: 1)将MBR放到ARM的扇区中,随机生成一个512B的字符串,称为随机加密字符串,然后进行每一位的按位加密,写好简单加密算法对MBR进行加密,加密得到的字符串,称为加密MBR字符串; 2)调用随机函数生成一个512B的字符串,与加密MBR字符串进行按位加密运算,解密时用随机加密字符串与加密MBR字符串进行按位解密运算,然后再与步骤I)的加密算法进行解密,得到真正的MBR; 3)指纹验证模块会生成一个字符串,称为指纹唯一识别字符串,与事先存到ARM指定扇区的字符串对比相同,就成功验证,生成新的随机解密字符串,供下次使用,实现动态的加密解密; 4)在进入计算机之前,ARM和计算机BIOS的通信只能通过字符串传递,用512个字符当成文件,将512个字符传送到MBR指定的位置上,由固化在硬盘扇区中的程序将真正的MBR加载到指定扇区,开机启动; 5)当主机启动后,若需主机待机,此时主机端程序运行,依据Windows消息响应机制,程序Hook所有对主机的操作,待用户重新输入指纹信息,并由ARM传送转换后的字符串,通过主机程序验证方可重新获得操作许可,主机端程序写入注册表,保证开机自启动,每次都需经过验证。
【文档编号】G06F21/62GK103942482SQ201410198876
【公开日】2014年7月23日 申请日期:2014年5月13日 优先权日:2014年5月13日
【发明者】刘意先, 罗康健, 张巍耀, 吴限, 田荔华, 王坤 申请人:西安邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1