一种基于优先级的TPM读写控制方法与流程

文档序号:13728947阅读:272来源:国知局
技术领域本发明涉及信息安全领域,具体地说是一种基于优先级的TPM读写控制方法。

背景技术:
基于TPM安全芯片的可信应用必须基于可信软件栈。可信软件栈提供一种从上而下,从应用层到硬件层的接口。但是常规的可信软件栈中只提供单线程的TPM读写能力,在许多应用系统中,可信软件栈的可用性都受到约束。公开的相关专利文件:名称为“一种多接口SRAM读写控制电路及方法”,该文件公开了“一种多接口SRAM读写控制电路及方法,所述控制电路包括接口信号转换模块和带优先级的多路选择及反馈模块,通过简单的硬件电路,判断系统中访问SRAM的各模块接口的优先级,以协调各模块接口交替连续访问SRAM。本发明既节省了软件开销,又大大提高了SRAM的访问效率,可以广泛应用于嵌入式SOC芯片”。名称为“视频处理芯片数据流控制及帧缓存装置”,该文件公开了“一种视频处理芯片数据流控制及帧缓存装置,它包括接收并缓存外部数据流的输入缓冲池;实现处理后的数据流输出的输出缓冲池;对数据流的输入、输出进行实时控制和对帧缓存器进行读写控制,以及对数据流的视频帧率进行转换的控制模块。输入缓冲池片内连接OSD控制模块和视频输入处理模块,输出缓冲池片内连接视频输出处理模块,控制模块片外连接帧缓存器。输入缓冲池和输出缓冲池均含有多个FIFO结构异步缓冲器,控制模块包括仲裁模块、地址管理模块和显存控制器,仲裁模块由有限状态转换机组成,它采用直接跳转策略和优先级动态调整策略实现对各路数据流的输入输出的实时控制,显存控制器采用突发传输方式,帧缓存器采用SDRAM或DDRSDRAM存储器”。上述公开文件与本

技术实现要素:
要解决的技术问题,采用的技术手段都不相同。发明内容本发明的技术任务是提供一种基于优先级的TPM读写控制方法。本发明的技术任务是按以下方式实现的,该TPM读写控制方法由可信软件栈实现,可信软件栈包含三个层次:内核层、系统服务层和用户应用层;内核层:包括可信芯片设备驱动和可信芯片,用来操作系统内核的TPM设备驱动,负责把系统服务层的调用转化成TPM可接受的字节流传送给TPM,然后把TPM返回的数据发送给系统服务层;系统服务层:主要由可信芯片设备驱动库和可信计算核心服务两部分组成;可信芯片设备驱动库提供用户态接口,使得不同的可信计算核心服务便于在不同平台的移植;可信计算核心服务则被用于控制和请求安全芯片的服务;用户应用层:主要是指可信服务应用层和可信中间件,用于对可信计算应用提供接口;其中,可信服务应用层添加互斥锁来保证同一时刻只有一个实例来调用TPM硬件资源。所述的可信服务应用层加锁的流程如下:1)获取可信服务层的唯一实例;2)在该实例下获取互斥锁;3)如果成功进入下个步骤,如果未获取成功,则等待,直至获取到该实例下的互斥锁;4)调用可信计算核心服务来进行系统层调用可信芯片;5)释放该实例下的互斥锁,以便下次可以获取该锁;6)退出返回。所述的可信中间件的优先级控制流程如下:1)有可信计算应用请求;2)判断该请求中对象是否属于高优先级;3)如果是高优先级,写入高优先级队列,否则写入到低优先级队列;4)判断高优先级队列是否为空;不为空则进入步骤5),为空则进入步骤7);5)调用可信应用层处理;6)高优先级队列-1,返回步骤4);7)判断低优先级队列是否为空;不为空则进入步骤8),为空则进入步骤10);8)调用可信应用层处理;9)低优先级队列-1,返回步骤7);10)退出返回。本发明的一种基于优先级的TPM读写控制方法和现有技术相比,通过在可信软件栈的可信服务应用层TSP增加互斥锁,在可信中间件TMD增加优先级控制,把并行访问控制成串行访问,增强了可信软件栈的易用性和鲁棒性。附图说明附图1为一种基于优先级的TPM读写控制方法的可信软件栈的整体架构图;附图2为一种基于优先级的TPM读写控制方法的可信服务应用层加锁控制流程图;附图3为一种基于优先级的TPM读写控制方法的可信中间件的优先级控制流程图。具体实施方式实施例1:该TPM读写控制方法由可信软件栈实现,可信软件栈包含三个层次:内核层、系统服务层和用户应用层;内核层:包括可信芯片设备驱动和可信芯片,用来操作系统内核的TPM设备驱动,负责把系统服务层的调用转化成TPM可接受的字节流传送给TPM,然后把TPM返回的数据发送给系统服务层;系统服务层:主要由可信芯片设备驱动库和可信计算核心服务两部分组成;可信芯片设备驱动库提供用户态接口,使得不同的可信计算核心服务便于在不同平台的移植;可信计算核心服务则被用于控制和请求安全芯片的服务;用户应用层:主要是指可信服务应用层和可信中间件,用于对可信计算应用提供接口;其中,可信服务应用层添加互斥锁来保证同一时刻只有一个实例来调用TPM硬件资源。其中可信服务应用层加锁的流程如下:1)获取可信服务层的唯一实例;2)在该实例下获取互斥锁;3)如果成功进入下个步骤,如果未获取成功,则等待,直至获取到该实例下的互斥锁;4)调用可信计算核心服务来进行系统层调用可信芯片;5)释放该实例下的互斥锁,以便下次可以获取该锁;6)退出返回。可信服务应用层位于可信软件栈的最上层,为应用程序使用可信计算服务提供调用接口,并为应用程序与安全芯片的数据传输提供保护。它接收可信中间件的接口请求,调用可信计算核心服务接口来完成相应功能。在可信服务层调用可信计算核心服务接口时,增加互斥锁,保证在同一时刻该调用接口独占TPM硬件资源的目的。通过此种方案,把并行访问控制成串行访问,增强了可信服务层的鲁棒性。其中可信中间件的优先级控制流程如下:1)有可信计算应用请求;2)判断该请求中对象是否属于高优先级;3)如果是高优先级,写入高优先级队列,否则写入到低优先级队列;4)判断高优先级队列是否为空;不为空则进入步骤5),为空则进入步骤7);5)调用可信应用层处理;6)高优先级队列-1,返回步骤4);7)判断低优先级队列是否为空;不为空则进入步骤8),为空则进入步骤10);8)调用可信应用层处理;9)低优先级队列-1,返回步骤7);10)退出返回。可信中间件主要功能是完成上下文管理,策略管理,NVRAM(非易失性存储)管理,PCR对象管理和Hash(杂凑)对象等。可信中间件的工作对象分为需要授权和无须授权两种,按照此种类型,把需要访问的对象,按照优先级划为两类:(1)需要授权的为高优先级,包括:上下文对象,NVRAM对象,策略对象(2)不需要授权的为低优先级,包括:PCR对象和Hash对象。当同时有两种不同类型对象访问时,在可信中间件添加优先级控制,来保证高优先级的优先顺序。通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的几种具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1