动态安全度量的实现方法、安全度量装置和应用系统的制作方法

文档序号:7710950阅读:129来源:国知局
专利名称:动态安全度量的实现方法、安全度量装置和应用系统的制作方法
技术领域
本发明涉及网络安全技术,更具体地,涉及一种动态安全度量的实现方法、安全度 量装置及应用系统。
背景技术
安全度量通常指系统和/或信息的完整性度量。目前,现有系统中通常采用静态 度量,即在被度量实体执行时刻或者约定的时刻进行度量。图1是现有技术的应用系统的 一个例子的结构示意图。如图1所示,该应用系统10可以包括通用处理器11、BI0S (Basic Input Output System,基本输入输出系统)12、FW(Firmware,固件)13、操作系统14和应用 程序15。通过对应用系统进行静态度量,在一定程度上保障了系统的安全性。但是,静态度量无法克服被度量实体在度量后使用前被篡改的问题,仍然存在一 定的安全隐患,并且由于现有的硬件系统性能较低也无法解决该问题。

发明内容
本发明要解决的一个技术问题是提供一种安全度量装置,能够根据度量比对的结 果确定被调用的系统和/或软件信息的完整性。本发明提供了一种安全度量装置,包括控制模块,用于获取系统和/或软件信 息,向安全处理器发送度量比对指令,并将系统和/或软件信息发送到安全处理器;安全 处理器,用于根据来自控制模块的度量比对指令对接收的系统和/或软件信息进行度量操 作,并将度量操作获得的度量结果和度量基准值进行比较,根据比较结果返回比较结果状 态。根据本发明安全度量装置的一个实施例,控制模块还用于在应用系统初始化时向 安全处理器发送度量存储指令,并将需要被度量的系统和/或软件信息发送到安全处理 器;安全处理器还用于根据来自控制模块的度量存储指令对接收的需要被度量的系统和/ 或软件信息进行度量操作,存储度量操作的结果作为度量基准值。根据本发明安全度量装置的另一实施例,安全处理器包括存储器,用于存储度量 基准值;宏指令译码器,用于对来自控制模块的度量比对指令进行译码获得散列运算指令 和比较指令,将散列运算指令和比较指令分别发送给散列运算IP部件和比较IP部件;散列 运算IP部件,用于接收散列运算指令,根据散列运算指令对系统和/或软件信息进行度量 操作,将度量结果发送给比较IP部件;比较IP部件,用于接收比较指令,将来自散列运算 IP部件的度量结果与存储在存储器中的度量基准值进行比较,输出比较结果。本发明提供的安全度量装置,根据控制模块发送的度量指令对被调用的系统和/ 或软件信息进行度量,再将度量后的结果与存储的度量基准值进行比对以根据比对的结果 确定被调用的系统和/或软件信息是否被篡改,从而在系统和/或软件信息被加载到应用 系统之前接受完整性检查,进而可以保护应用系统的安全。进一步,通过散列运算IP部件和比较IP部件完成度量比对操作,可以满足完整性度量对硬件系统的性能要求,使得安全度量装置具有较高的性能。本发明要解决的另一技术问题是提供一种应用系统,能够根据度量比对的结果确定应用系统中被调用的系统和/或软件信息的完整性。本发明提供了一种应用系统,包括安全度量装置,用于接收应用系统的系统和/ 或软件信息,对接收的系统和/或软件信息进行度量操作,将度量操作获得的度量结果和 度量基准值进行比较,根据比较结果返回比较结果状态。根据本发明应用系统的一个实施例,安全度量装置包括控制模块,用于获取系统 和/或软件信息,向安全处理器发送度量比对指令,并将系统和/或软件信息发送到安全处 理器,返回比较结果状态;安全处理器,用于根据来自控制模块的度量比对指令对接收的系 统和/或软件信息进行度量操作,并将度量操作获得的度量结果和度量基准值进行比较, 根据比较结果向控制模块返回比较结果状态。根据本发明应用系统的另一实施例,安全处理器包括存储器,用于存储度量基准 值;宏指令译码器,用于对来自控制模块的度量比对指令进行译码获得散列运算指令和比 较指令,将散列运算指令和比较指令分别发送给散列运算IP部件和比较IP部件;散列运算 IP部件,用于接收散列运算指令,根据散列运算指令对系统和/或软件信息进行度量操作, 将度量结果发送给比较IP部件;比较IP部件,用于接收比较指令,将来自散列运算IP部件 的度量结果与存储在存储器中的度量基准值进行比较,输出比较结果。本发明提供的应用系统,通过其中的安全度量装置来检查应用系统中被调用的系 统和/或软件信息的完整性,从而可以保护应用系统的安全。本发明要解决的又一技术问题是提供一种动态安全度量的实现方法,能够根据度 量比对的结果确定被调用的系统和/或软件信息的完整性。本发明提供了一种动态安全度量的实现方法,包括控制系统向安全处理器发送 度量比对指令,并将系统和/或软件信息发送到安全处理器;安全处理器根据度量比对指 令对接收的系统和/或软件信息进行度量操作;安全处理器将度量操作获得的度量结果和 存储的度量基准值进行比较,根据比较结果返回比较结果状态。根据本发明动态安全度量的实现方法的一个实施例,控制系统定期或者在系统和 /或软件被调用时向安全处理器发送度量比对指令,系统和/或软件信息以数据包的形式 被发送到安全处理器。根据本发明动态安全度量的实现方法的另一实施例,度量比对指令为宏指令,度 量操作为散列运算。根据本发明动态安全度量的实现方法的又一实施例,通过宏指令译码器对度量比 对指令进行译码操作,将译码后的指令发送给散列运算IP部件和比较IP部件;散列运算 IP部件根据译码后的指令对系统和/或软件信息进行度量操作;比较IP部件比较散列运 算IP部件的度量操作的结果和存储的度量基准值,输出比较结果。本发明提供的动态安全度量的实现方法,根据度量指令对被调用的系统和/或软 件信息进行度量,再将度量后的结果与存储的度量基准值进行比对以确定被调用的系统和 /或软件信息是否被篡改,从而在系统和/或软件信息被加载到应用系统之前完成完整性 检查,进而可以保护应用系统的安全。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分。在附 图中图1是现有技术的应用系统的一个例子的结构示意图。图2是具有本发明的安全度量装置的应用系统的一个例子的结构示意图。图3是具有本发明的安全度量装置的应用系统的另一例子的结构示意图。图4是本发明安全度量装置的第一实施例的结构示意图。图5是本发明安全度量装置的第二实施例的结构示意图。图6是宏指令译码器在MCOS体系中的控制关系图。图7是MD5IP部件的一个实例的接口示意图。图8是SHAlIP部件的一个实例的接口示意图。图9是比较IP部件的一个实例的接口示意图。图10是本发明动态安全度量的实现方法的第一实施例的流程示意图。图11是根据本发明安全度量的实现方法的第二实施例的流程示意图。
具体实施例方式下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。本 发明的示例性实施例及其说明用于解释本发明,但并不构成对本发明的不当限定。本发明在启动某一部件(例如,硬件或软件)之前、使用该部件的过程中以及任何 用户想进行度量的时刻,通过对其进行安全度量,验证该部件是否被篡改,从而保证系统和 /或软件信息的安全性。本发明采用硬件结构实现安全度量,在很大程度上提高了系统的性 能。图2是具有本发明的安全度量装置的应用系统的一个例子的结构示意图。如图2所示,与图1的现有技术相比,该应用系统20还包括安全度量装置21。图 2示出的是一个应用系统的实例,在实际应用中并不仅限于此,该应用系统可以还包含其 他部件,或者包含图2中示出的部分部件。例如,应用系统可以是数字信号处理系统或以 WINDOWS.Linux等操作系统为基础的主机系统。其中,安全度量装置21用于接收应用系统 的系统和/或软件信息(例如,该信息可以是软件代码文件、各种进程、硬件的特征值、固件 的特征值等),对接收的系统和/或软件信息进行度量操作,将度量操作获得的度量结果和 度量基准值进行比较,根据比较结果返回比较结果状态。将安全度量装置集成到应用系统 中,通过该安全度量装置来检查应用系统中被调用的系统资源和应用软件等的完整性,从 而保护应用系统的安全。图3是具有本发明的安全度量装置的应用系统的另一例子的结构示意图。如图3所示,该应用系统30中的安全度量装置31包括控制模块311,用于获取 待度量的系统和/或软件信息,向安全处理器发送度量比对指令,并将系统和/或软件信息 发送到安全处理器,将比较比较结果状态返回给用户,由用户选择是否执行或调用该系统 和/或软件信息;安全处理器312,用于根据来自控制模块的度量比对指令对接收的系统和 /或软件信息进行度量操作,并将度量操作获得的度量结果和度量基准值进行比较,根据比 较结果向控制模块返回比较结果状态,如果两者不一致,则返回比对不正确的结果状态,表明被度量的系统和/或软件信息与初始化时不一致,可能该系统和/或软件信息被篡改攻 击;如果两者一致,则返回比对正确的结果状态,表明该系统和/或软件信息与初始化时一 致,该系统和/或软件信息未被篡改过,仍然可信。另外,控制模块与通用处理器之间可以通过任何现有的接口来通信,例如,通用串 行总线(USB, Universal Serial Bus)接口,外围设备接口 (PCI)或低阶通道连接(LPC, Lower Order Path Connection)接口。在本发明应用系统的一个实施例中,还可以在操作系统中嵌入控制模块,由该控 制模块控制对操作系统及操作系统上层的应用软件系统的度量操作。在操作系统或应用软 件系统调用软件之前,由该控制模块获取被调用的软件信息,将度量比对指令与该被调用 的软件信息一起发送到安全处理器,由安全处理器执行度量比对操作,再由控制模块将比 较结果状态返回给用户。在本发明应用系统的另一实施例中,还可以在BIOS中嵌入控制模块,与上一实施 例类似,由该控制模块控制对BIOS、操作系统和应用软件系统的度量操作。在需要度量时, 控制模块将度量比对指令与BIOS、操作系统或应用软件一起发送到安全处理器,由安全处 理器完成对这些待度量信息的度量比对。在又一实施例中,控制模块还用于在应用系统初始化时向安全处理器发送度量存 储指令,并将需要被度量的系统和/或软件信息发送到安全处理器;安全处理器还用于根 据来自控制模块的度量存储指令对接收的需要被度量的系统和/或软件信息进行度量操 作,存储度量操作的结果作为度量基准值。接下来再介绍一个具有本发明的安全度量装置的应用系统的实例。在该实例中,安全度量装置中的安全处理器包括存储器,用于存储度量基准值; 宏指令译码器,用于对来自控制模块的度量比对指令进行译码获得散列运算指令和比较指 令,将散列运算指令和比较指令分别发送给散列运算IP (Intellectual Property,知识产 权)部件和比较IP部件;散列运算IP部件,用于接收散列运算指令,根据散列运算指令对 系统和/或软件信息进行度量操作,将度量结果发送给比较IP部件;比较IP部件,用于接 收比较指令,将来自散列运算IP部件的度量结果与存储在存储器中的度量基准值进行比 较,输出比较结果。图4是本发明安全度量装置的第一实施例的结构示意图。如图4所示,该安全度量装置40包括控制模块41和安全处理器42。其中,控制模 块41,用于获取应用系统资源信息,向安全处理器发送度量比对指令,并将获取的应用系统 资源信息发送到安全处理器;安全处理器42,用于根据来自控制模块的度量比对指令对接 收的应用系统资源信息进行度量操作,并将度量操作获得的度量结果和度量基准值进行比 较,根据比较结果返回比较结果状态,如果两者不一致,则返回比对不正确的结果状态,表 明被度量的系统和/或软件信息与初始化时不一致,可能该系统和/或软件信息被篡改攻 击;如果两者一致,则返回比对正确的结果状态,表明该系统和/或软件信息与初始化时一 致,该系统和/或软件信息未被篡改过,仍然可信。上述比较时所需的度量基准值可以被预存在安全处理器的非易失性存储器中、存 储在安全处理器之外的另一安全设备中、或通过具有如下功能的控制模块与安全处理器进 行计算和存储以防止度量基准值被篡改。
7
下述表1给出了一个存储度量基准值的实例。
权利要求
1.一种安全度量装置,其特征在于,所述安全度量装置包括控制模块,用于获取系统和/或软件信息,向安全处理器发送度量比对指令,并将所述 系统和/或软件信息发送到所述安全处理器;所述安全处理器,用于根据来自所述控制模块的所述度量比对指令对接收的所述系 统和/或软件信息进行度量操作,并将所述度量操作获得的度量结果和度量基准值进行比 较,根据比较结果返回比较结果状态。
2.根据权利要求1所述的安全度量装置,其特征在于,所述控制模块,还用于在应用系统初始化时向所述安全处理器发送度量存储指令,并 将需要被度量的系统和/或软件信息发送到所述安全处理器;所述安全处理器,还用于根据来自所述控制模块的所述度量存储指令对接收的所述需 要被度量的系统和/或软件信息进行所述度量操作,存储度量操作的结果作为所述度量基 准值。
3.根据权利要求1或2所述的安全度量装置,其特征在于,所述安全处理器包括 存储器,用于存储所述度量基准值;宏指令译码器,用于对来自所述控制模块的所述度量比对指令进行译码获得散列运算 指令和比较指令,将所述散列运算指令和比较指令分别发送给所述散列运算IP部件和所 述比较IP部件;散列运算IP部件,用于接收所述散列运算指令,根据所述散列运算指令对所述系统和 /或软件信息进行所述度量操作,将度量结果发送给比较IP部件;所述比较IP部件,用于接收所述比较指令,将来自所述散列运算IP部件的度量结果与 存储在所述存储器中的所述度量基准值进行比较,输出比较结果。
4.一种应用系统,其特征在于,所述应用系统包括安全度量装置,用于接收所述应用系统的系统和/或软件信息,对接收的所述系统和 /或软件信息进行度量操作,将所述度量操作获得的度量结果和度量基准值进行比较,根据 比较结果返回比较结果状态。
5.根据权利要求4所述的应用系统,其特征在于, 所述安全度量装置包括控制模块,用于获取所述系统和/或软件信息,向安全处理器发送度量比对指令,并将 所述系统和/或软件信息发送到所述安全处理器,返回比较结果状态;所述安全处理器,用于根据来自所述控制模块的所述度量比对指令对接收的所述系统 和/或软件信息进行度量操作,并将所述度量操作获得的度量结果和所述度量基准值进行 比较,根据所述比较结果向所述控制模块返回所述比较结果状态。
6.根据权利要求5所述的应用系统,其特征在于,所述安全处理器包括 存储器,用于存储所述度量基准值;宏指令译码器,用于对来自所述控制模块的所述度量比对指令进行译码获得散列运算 指令和比较指令,将所述散列运算指令和比较指令分别发送给所述散列运算IP部件和所 述比较IP部件;散列运算IP部件,用于接收所述散列运算指令,根据所述散列运算指令对所述系统和 /或软件信息进行所述度量操作,将度量结果发送给比较IP部件;所述比较IP部件,用于接收所述比较指令,将来自所述散列运算IP部件的度量结果与 存储在所述存储器中的所述度量基准值进行比较,输出比较结果。
7. 一种动态安全度量的实现方法,其特征在于,所述方法包括控制系统向安全处理器发送度量比对指令,并将系统和/或软件信息发送到所述安全 处理器;所述安全处理器根据所述度量比对指令对接收的所述系统和/或软件信息进行度量 操作;所述安全处理器将所述度量操作获得的度量结果和存储的度量基准值进行比较,根据 比较结果返回比较结果状态。
8.根据权利要求7所述的动态安全度量的实现方法,其特征在于,所述控制系统定期 或者在所述系统和/或软件被调用时向所述安全处理器发送所述度量比对指令,所述系统 和/或软件信息以数据包的形式被发送到所述安全处理器。
9.根据权利要求7所述的动态安全度量的实现方法,其特征在于,所述度量比对指令 为宏指令,所述度量操作为散列运算。
10.根据权利要求7所述的动态安全度量的实现方法,其特征在于,通过宏指令译码器对所述度量比对指令进行译码,将译码后的指令发送给散列运算IP 部件和比较IP部件;所述散列运算IP部件根据译码后的指令对所述系统和/或软件信息进行所述度量操作;所述比较IP部件比较所述散列运算IP部件的度量操作的结果和存储的度量基准值, 输出比较结果。
全文摘要
本发明公开了一种动态安全度量的实现方法、安全度量装置及应用系统。其中,安全度量装置包括控制模块,用于获取系统和/或软件信息,向安全处理器发送度量比对指令,并将系统和/或软件信息发送到安全处理器;安全处理器,用于根据来自控制模块的度量比对指令对接收的系统和/或软件信息进行度量操作,并将度量操作获得的度量结果和存储的度量基准值进行比较,根据比较结果返回比较结果状态。本发明的动态安全度量的实现方法、安全度量装置及应用系统,根据度量后的结果与度量基准值进行比对以确定被调用的系统和/或软件信息是否被篡改,从而在系统和/或软件信息被加载到应用系统之前完成完整性检查。
文档编号H04L29/06GK101996286SQ20091016136
公开日2011年3月30日 申请日期2009年8月10日 优先权日2009年8月10日
发明者刘大力, 曹春春 申请人:北京多思科技发展有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1