一种基于USBkey的可信操作系统技术方案

技术编号:17940034 阅读:23 留言:0更新日期:2018-05-15 20:22
本发明专利技术提供一种基于USBkey的可信操作系统,在UKey和主机通过USB接口连接后,主机端的驱动层通过实模式UKey驱动在系统引导阶段运行,并通过系统BIOS引导程序利用USB装置的主机控制器进而激励USB装置;主机端的功能实现层位于驱动层后端,包括启动认证组件,可信引导组件和安装维护功能组件,实现UKey的认证过程并引导控制权转移到主机端;然后主机端在用户接口层提供了可信支撑模块,面向用户的使用接口,包括管理接口和可信功能调用接口两大部分。可信启动机制是为了解决操作系统自身的完整性问题而提出的,其目标是确保系统启动后不被篡改的操作系统,它是操作系统得以可靠运行的前提。

A trusted operating system based on USBkey

The invention provides a trusted operating system based on USBkey. After the UKey and the host are connected through the USB interface, the drive layer of the host terminal runs in the system boot stage through the real mode UKey, and uses the system BIOS boot program to stimulate the USB device by using the host controller of the USB device; the function implementation layer of the host end is located in the system. The rear end of the driving layer, including the startup authentication component, the trusted boot component and the installation and maintenance function component, implements the authentication process of the UKey and transfers the control power to the host end; then the host end provides the trusted support module in the user interface layer, the user interface, the management interface and the trusted function call interface two Gross\u3002 A trusted startup mechanism is proposed to solve the problem of the integrity of the operating system itself. Its goal is to ensure that the operating system is not tampered after the system is started. It is the prerequisite for the reliable operation of the operating system.

【技术实现步骤摘要】
一种基于USBkey的可信操作系统
本专利技术涉及安全加密操作系统领域,尤其涉及一种基于USBkey的可信操作系统。
技术介绍
可信操作系统可以针对不同的应用场合提供不同的安全解决方案,并确保系统中的用户的操作动作和过程在任意操作条件下是可预测的,同时需要保证客体内容的安全可靠,以及自身完整性的操作系统。在传统的操作系统相关安全准则中,也根据操作者的不同角色授权(例如超级管理员、普通管理员、一般用户等)分配相应的的调用系统服务的权限。在TCSEC中提供了的可信概念默认只要是系统的超级管理员就是无条件可信的。与传统的安全操作系统相比,可信操作系统制定了如下规定规定1.主体行为的可信性;可信操作操作系统一定要确保用户身份、主体行为的可信性。2.客体内容的完整性、保密性和可信性;保证信息读写、通信等操作行为的可信,确保服务及应用程序的安全有效,保证了客体内容的可信。可是普通的可信操作系统方案,存在移植困难,平台通用难,易于攻破等特点。
技术实现思路
本专利技术提供了一种基于USBkey的可信操作系统,解决了以下问题:1.常用的TPM存在启动困难问题,如何使用USBKey在启动层方面做到提高使用的可能性和系统的稳定性;2.融合USBKey技术,便于在各个操作系统平台之间移植使用;3.基于USBKey的信任根问题。其技术方案如下所述:一种基于USBkey的可信操作系统,在UKey和主机通过USB接口连接后,主机端的驱动层通过实模式UKey驱动在系统引导阶段运行,并通过系统BIOS引导程序利用USB装置的主机控制器进而激励USB装置;主机端的功能实现层位于驱动层后端,包括启动认证组件,可信引导组件和安装维护功能组件,实现UKey的认证过程并引导控制权转移到主机端;然后主机端在用户接口层提供了可信支撑模块,面向用户的使用接口,包括管理接口和可信功能调用接口两大部分。所述启动认证组件包括实模式UKey驱动、UKey操作程序接口、启动认证实现三部分,所述启动认证实现通过UKey执行调用程序,在引导过程开始阶段,对置入的便携式UKey硬件设备进行验证操作并同时验证操作者输入的PIN码,只有对应的UKey设备和准确的PIN码才能通过验证,进入下面的操作流程。在启动认证实现流程中,可信引导部分需要在位于主引导文件信息加载组件中的预定点执行启动认证代码,所述可信引导部分的流程由三个进程组成:进程Ⅰ的程序数据在主引导记录MBR中存储,进程Ⅱ的程序数据存储在紧邻进程Ⅰ后的扇区中,进程Ⅰ和进程Ⅱ都保存为磁盘扇区,进程Ⅲ则以文件的格式置于文件系统中。所述进程Ⅰ引导程序是一个汇编格式文件Process1.S,用来读取进程Ⅱ,包括下列步骤:1)初始化启动系统;2)检查所装载驱动器的尺寸以及访问模式;3)装载进程Ⅱ的首扇区;4)执行进程Ⅱ。进程Ⅱ的程序包含start.S和asm.S两个汇编格式文件以及相关的C格式程序文件,Start.S处在进程Ⅱ的开始位置,进程Ⅱ从start.S发起执行,包括下列步骤:1)把指针指向地址块的起始点;2)把进程Ⅱ的程序代码依据地址块加载到存储介质;3)把控制权传递给进程Ⅱ的asm.S。在start.S中,地址相关数据总共是8个字节,处于512字节的结尾位置,磁盘起始读写的地址由前4个字节记录,其后紧邻着的2个字节用来记录读写的数据量长度,最后的2个字节用来记录内存中的存储地址;指示地址相关的数据组织形式将会根据要传递的进程Ⅱ的代码文件数据量进行相应的调整。asm.S执行流程为:1)调用启动认证程序;2)保存加载的预期摘要值;3)从实模式变更到保护模式;4)执行加载系统函数。所述加载系统函数进行系统BIOS信息的查询,对mbi变量进行赋值操作,与此同时,把占用权限转移到cmain.c函数,所述cmain.c函数流程为:1)对进程Ⅲ程序实施安全散列算法SHA-1验证;2)同记录值进行对比;3)把进程Ⅱ程序加载到存储介质;4)执行chain_process2函数,汇编格式的chain_process2函数是在asm.S中的ENTRY定义的。安装维护功能组件利用操作系统上的USBKey驱动,并在此基础上利用封装好的USBKey操作接口对USBKey进行操作。管理接口为用户提供管理、配置USBKey的操作接口;可信功能调用是在UKey操作接口的基础上,为应用层提供一致性验证的功能调用,以系统调用的形式提供。可信启动机制是为了解决操作系统自身的完整性问题而提出的,其目标是确保系统启动后不被篡改的操作系统,它是操作系统得以可靠运行的前提。所述基于USBkey的可信操作系统,具有以下特点,从而保障系统启动过程的可信:1.确保系统是由可以信赖的系统管理员启动的,这主要是通过验证USBKey及相应的PIN码来确认开机人员的合法身份;2.通过USBKey的完整性认证算法对操作系统装载器、操作系统内核进行完整性验证,并通过可信链的传递过程,保证将系统控制权可信地传递到操作系统。3.USBKey集合于底层启动的稳定性高于其他方式,并且对于操作系统的影响最小。附图说明图1是Process1.S的执行流程图;图2是可信引导的流程的进程Ⅱ的流程示意图;图3是asm.S执行流程图;图4是cmain.c执行流程图;图5是可信引导的流程的进程Ⅲ时cmain.c函数执行流程图;图6是可信系统总体启动结构示意图;图7是启动认证组件的结构示意图;图8是可信引导组件结构图;图9是安装维护模块结构图。具体实施方式本专利技术主要涉及USBkey加密技术的设计,提出一种采用USBkey和BIOS组成的信任根为基础的安全增强系统,通过USBKey技术做成安全启动方案,这种加密技术能够作用于许多操作系统平台,进一步提高用户的安全操作,保护用户的系统信息安全。对于USBkey会执行下列操作:1.启动认证功能的实现启动认证组件可分为实模式UKey驱动、UKey操作程序接口、启动认证功能程序等三个子程序。其中启动认证功能程序通过UKey执行调用程序,在引导过程开始阶段,对置入的便携式UKey硬件设备进行验证操作并同时验证操作者输入的PIN码。只有对应的UKey设备和准确的PIN码才能通过验证,进入下面的操作流程。在启动认证实现流程中,可信引导部分需要在位于主引导文件信息加载组件中的预定点执行启动认证代码,调用组件根据代码文件记录的执行数据来进行接下来的动作。PIN码的验证报告由启动认证程序生成传递,如果验证通过,调用组件进入下一步操作,如果没有通过验证,并且输入错误PIN码次数超过预定次数限制,则调用程序组件不再进行任何操作。2.可信引导的设计与实现可信引导的流程通常由三个进程组成。进程Ⅰ的程序数据在主引导记录(MBR)中存储。进程Ⅱ的程序数据存储在紧邻进程Ⅰ后的扇区中。进程Ⅰ和进程Ⅱ都保存为磁盘扇区。进程Ⅲ则以文件的格式置于文件系统中。进程1进程Ⅰ引导程序是一个汇编格式文件Process1.S。主要用来读取进程Ⅱ。进程Ⅰ把进程Ⅱ的首扇区start.S加载到内存中,然后把操作权限转移到start.S。Process1.S通常位于MBR或者某个分区的引导扇区中,汇编处理后的二进制代码大小一般不能超过一个扇区的大小,即512个字节。Process1.S执行流程图如图1所示。图本文档来自技高网...
一种基于USBkey的可信操作系统

【技术保护点】
一种基于USBkey的可信操作系统,其特征在于:在UKey和主机通过USB接口连接后,主机端的驱动层通过实模式UKey驱动在系统引导阶段运行,并通过系统BIOS引导程序利用USB装置的主机控制器进而激励USB装置;主机端的功能实现层位于驱动层后端,包括启动认证组件,可信引导组件和安装维护功能组件,实现UKey的认证过程并引导控制权转移到主机端;然后主机端在用户接口层提供了可信支撑模块,面向用户的使用接口,包括管理接口和可信功能调用接口两大部分。

【技术特征摘要】
1.一种基于USBkey的可信操作系统,其特征在于:在UKey和主机通过USB接口连接后,主机端的驱动层通过实模式UKey驱动在系统引导阶段运行,并通过系统BIOS引导程序利用USB装置的主机控制器进而激励USB装置;主机端的功能实现层位于驱动层后端,包括启动认证组件,可信引导组件和安装维护功能组件,实现UKey的认证过程并引导控制权转移到主机端;然后主机端在用户接口层提供了可信支撑模块,面向用户的使用接口,包括管理接口和可信功能调用接口两大部分。2.根据权利要求1所述的基于USBkey的可信操作系统,其特征在于:所述启动认证组件包括实模式UKey驱动、UKey操作程序接口、启动认证实现三部分,所述启动认证实现通过UKey执行调用程序,在引导过程开始阶段,对置入的便携式UKey硬件设备进行验证操作并同时验证操作者输入的PIN码,只有对应的UKey设备和准确的PIN码才能通过验证,进入下面的操作流程。3.根据权利要求2所述的基于USBkey的可信操作系统,其特征在于:在启动认证实现流程中,可信引导部分需要在位于主引导文件信息加载组件中的预定点执行启动认证代码,所述可信引导部分的流程由三个进程组成:进程Ⅰ的程序数据在主引导记录MBR中存储,进程Ⅱ的程序数据存储在紧邻进程Ⅰ后的扇区中,进程Ⅰ和进程Ⅱ都保存为磁盘扇区,进程Ⅲ则以文件的格式置于文件系统中。4.根据权利要求3所述的基于USBkey的可信操作系统,其特征在于:所述进程Ⅰ引导程序是一个汇编格式文件Process1.S,用来读取进程Ⅱ,包括下列步骤:1)初始化启动系统;2)检查所装载驱动器的尺寸以及访问模式;3)装载进程Ⅱ的首扇区;4)执行进程Ⅱ。5.根据权利要求3所述的基于USBkey的可信操作系统,其特征在于:进程Ⅱ的程序包含start.S和asm.S两个汇编格式文件以及相关的C格式程序文件,...

【专利技术属性】
技术研发人员:张涛周洋陈财森应书皓赵石钏
申请(专利权)人:鸿秦北京科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1