CN105740713A - 一种基于优先级的tpm读写控制方法 - Google Patents
一种基于优先级的tpm读写控制方法 Download PDFInfo
- Publication number
- CN105740713A CN105740713A CN201610057994.XA CN201610057994A CN105740713A CN 105740713 A CN105740713 A CN 105740713A CN 201610057994 A CN201610057994 A CN 201610057994A CN 105740713 A CN105740713 A CN 105740713A
- Authority
- CN
- China
- Prior art keywords
- priority
- tpm
- credible
- layer
- read
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000007717 exclusion Effects 0.000 claims abstract description 15
- 239000010410 layer Substances 0.000 abstract 4
- 239000012792 core layer Substances 0.000 abstract 1
- 230000015654 memory Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于优先级的TPM读写控制方法,该TPM读写控制方法由可信软件栈实现,可信软件栈包含三个层次:内核层、系统服务层和用户应用层。本发明的一种基于优先级的TPM读写控制方法和现有技术相比,通过在可信软件栈的可信服务应用层TSP增加互斥锁,在可信中间件TMD增加优先级控制,把并行访问控制成串行访问,增强了可信软件栈的易用性和鲁棒性。
Description
技术领域
本发明涉及信息安全领域,具体地说是一种基于优先级的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对象。当同时有两种不同类型对象访问时,在可信中间件添加优先级控制,来保证高优先级的优先顺序。
通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的几种具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。
Claims (3)
1.一种基于优先级的TPM读写控制方法,其特征在于,该TPM读写控制方法由可信软件栈实现,可信软件栈包含三个层次:内核层、系统服务层和用户应用层;
内核层:包括可信芯片设备驱动和可信芯片,用来操作系统内核的TPM设备驱动,负责把系统服务层的调用转化成TPM可接受的字节流传送给TPM,然后把TPM返回的数据发送给系统服务层;
系统服务层:主要由可信芯片设备驱动库和可信计算核心服务两部分组成;可信芯片设备驱动库提供用户态接口,使得不同的可信计算核心服务便于在不同平台的移植;可信计算核心服务则被用于控制和请求安全芯片的服务;
用户应用层:主要是指可信服务应用层和可信中间件,用于对可信计算应用提供接口;其中,可信服务应用层添加互斥锁来保证同一时刻只有一个实例来调用TPM硬件资源。
2.根据权利要求1所述的一种基于优先级的TPM读写控制方法,其特征在于,所述的可信服务应用层加锁的流程如下:
1)获取可信服务层的唯一实例;
2)在该实例下获取互斥锁;
3)如果成功进入下个步骤,如果未获取成功,则等待,直至获取到该实例下的互斥锁;
4)调用可信计算核心服务来进行系统层调用可信芯片;
5)释放该实例下的互斥锁,以便下次可以获取该锁;
6)退出返回。
3.根据权利要求1所述的一种基于优先级的TPM读写控制方法,其特征在于,所述的可信中间件的优先级控制流程如下:
1)有可信计算应用请求;
2)判断该请求中对象是否属于高优先级;
3)如果是高优先级,写入高优先级队列,否则写入到低优先级队列;
4)判断高优先级队列是否为空;不为空则进入步骤5),为空则进入步骤7);
5)调用可信应用层处理;
6)高优先级队列-1,返回步骤4);
7)判断低优先级队列是否为空;不为空则进入步骤8),为空则进入步骤10);
8)调用可信应用层处理;
9)低优先级队列-1,返回步骤7);
10)退出返回。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610057994.XA CN105740713B (zh) | 2016-01-28 | 2016-01-28 | 一种基于优先级的tpm读写控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610057994.XA CN105740713B (zh) | 2016-01-28 | 2016-01-28 | 一种基于优先级的tpm读写控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105740713A true CN105740713A (zh) | 2016-07-06 |
CN105740713B CN105740713B (zh) | 2018-03-27 |
Family
ID=56246914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610057994.XA Active CN105740713B (zh) | 2016-01-28 | 2016-01-28 | 一种基于优先级的tpm读写控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105740713B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107066885A (zh) * | 2016-10-11 | 2017-08-18 | 深圳市华威世纪科技股份有限公司 | 跨平台可信中间件的实现系统及实现方法 |
CN107273214A (zh) * | 2017-06-30 | 2017-10-20 | 郑州云海信息技术有限公司 | 一种基于固态硬盘的多核控制器资源访问方法及其装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4685567B2 (ja) * | 2005-09-15 | 2011-05-18 | 株式会社日立製作所 | 情報処理装置によるサービス提供システム |
CN101355775B (zh) * | 2008-08-15 | 2011-09-21 | 中兴通讯股份有限公司 | 配置数据批量导入装置及其多客户端互斥方法 |
CN103646206B (zh) * | 2013-12-24 | 2016-08-17 | 北京可信华泰信息技术有限公司 | 一种兼容不同密码设备的访问方法 |
CN105184167B (zh) * | 2015-07-21 | 2017-12-08 | 电子科技大学 | 基于TPM细粒度权限的Android系统安全增强系统及方法 |
-
2016
- 2016-01-28 CN CN201610057994.XA patent/CN105740713B/zh active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107066885A (zh) * | 2016-10-11 | 2017-08-18 | 深圳市华威世纪科技股份有限公司 | 跨平台可信中间件的实现系统及实现方法 |
CN107273214A (zh) * | 2017-06-30 | 2017-10-20 | 郑州云海信息技术有限公司 | 一种基于固态硬盘的多核控制器资源访问方法及其装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105740713B (zh) | 2018-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7290066B2 (en) | Methods and structure for improved transfer rate performance in a SAS wide port environment | |
JPH071495B2 (ja) | データ処理システム | |
US8838863B2 (en) | Resource controlling with dynamic priority adjustment | |
US10423558B1 (en) | Systems and methods for controlling data on a bus using latency | |
WO2017056725A1 (ja) | 車載制御装置 | |
US20120239833A1 (en) | Buffer management device, buffer management method, and storage device | |
JP2005242718A (ja) | データ転送装置、および転送制御プログラム | |
US9471521B2 (en) | Communication system for interfacing a plurality of transmission circuits with an interconnection network, and corresponding integrated circuit | |
KR100480605B1 (ko) | 네트워크 제어기의 송신부 버퍼 및 수신부 버퍼를제어하는 방법 및 네트워크 제어기 | |
US20100325375A1 (en) | Data-access control device and data-access control method | |
CN102402422A (zh) | 处理器组件及该组件内存共享的方法 | |
US20090216960A1 (en) | Multi Port Memory Controller Queuing | |
US8166316B2 (en) | Single interface access to multiple bandwidth and power memory zones | |
JP5551201B2 (ja) | メモリ制御装置 | |
US8527684B2 (en) | Closed loop dynamic interconnect bus allocation method and architecture for a multi layer SoC | |
US20050289254A1 (en) | Dynamic buffer allocation method | |
CN105740713A (zh) | 一种基于优先级的tpm读写控制方法 | |
US8949845B2 (en) | Systems and methods for resource controlling | |
US20060095637A1 (en) | Bus control device, arbitration device, integrated circuit device, bus control method, and arbitration method | |
CN116685943A (zh) | 可编程原子单元中的自调度线程 | |
EP1513071B1 (en) | Memory bandwidth control device | |
US20200104193A1 (en) | Port Groups | |
US20090216959A1 (en) | Multi Port Memory Controller Queuing | |
US20130054902A1 (en) | Accelerating blocking memory operations | |
US20100088446A1 (en) | Prioritizing interrupt controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |