[发明专利]一种针对可信嵌入式系统的可信平台模块在审
| 申请号: | 201410137170.4 | 申请日: | 2014-04-04 |
| 公开(公告)号: | CN103927488A | 公开(公告)日: | 2014-07-16 |
| 发明(设计)人: | 刘刚;潘秋凡;张敬;田冬冬 | 申请(专利权)人: | 西安电子科技大学 |
| 主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F21/62;G06F9/44 |
| 代理公司: | 北京科亿知识产权代理事务所(普通合伙) 11350 | 代理人: | 汤东凤 |
| 地址: | 710071 陕西省*** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 针对 可信 嵌入式 系统 平台 模块 | ||
技术领域
本发明属于嵌入式系统技术领域,尤其涉及一种针对可信嵌入式系统的可信平台模块。
背景技术
在构建可信嵌入式系统时,由于嵌入式系统平台种类繁多,针对嵌入式系统的可信平台模块(TPM)芯片较少,可信平台模块(TPM)与嵌入式硬件平台缺乏统一的接口,已有嵌入式平台缺乏外部接口资源等若干原因,无法找到一种比较容易实现、具有一定通用性的基于可信平台模块(TPM)芯片的可信嵌入式系统平台的设计方法,阻碍了可信嵌入式系统的应用和普及。
发明内容
本发明实施例的目的在于提供一种针对可信嵌入式系统的可信平台模块,旨在解决现有嵌入式系统平台上通过外部接口扩展TPM芯片比较困难的问题。
本发明实施例是这样实现的,一种针对可信嵌入式系统的可信平台模块,该针对可信嵌入式系统的可信平台模块包括七大子模块:tddl模块、tpmd模块、tpmd_dev模块、编码解码模块、密码学模块、存储模块、执行引擎模块;
tddl模块与tpmd模块连接,用于提供实体访问软件可信平台模块的标准接口,通过socket与tpmd模块的后台程序进行通信;
tpmd模块与tpmd_dev模块、编码解码模块、密码学模块、存储模块和执行引擎模块连接,tpmd模块是一个后台程序,用于在可信平台模块启动时创建通信套接字,当用户请求到来后,会接收数据并调用编码解码模块、密码学模块、存储模块、执行引擎模块中的一个或多个进行可信平台模块命令处理,最后将处理结果返回给实体;
tpmd_dev模块与tpmd模块连接,用于兼容硬件可信平台模块,或者用来直接与实体进行通信;
编码解码模块与tpmd模块连接,用于解析实体请求的具体可信平台模块命令以及将软件可信平台模块执行后的结果编码后返回;
密码学模块与tpmd模块连接,用于为可信平台模块的功能及命令实现提供辅助;
存储模块与tpmd模块连接,用于可信平台模块密钥的存储管理,尤其是背书密钥EK和存储根密钥SRK非易失性密钥;EK是可信计算平台的身份标识,是可信平台模块密钥系统中的最高级密钥;SRK由EK生成,用来管理可信平台模块的所有密钥和用户的数据;
执行引擎模块与tpmd模块连接,用于实现可信平台模块的指令;包含的是可信平台模块中绝大多数命令的实现。
进一步,密码学模块的包括TCG规范定义的主要算法的实现,包括RSA算法、SHA-1算法、HMAC算法以及随机数生成算法。
进一步,该基于可信平台模块芯片的可信嵌入式系统访问软件可信平台模块的三种方式:
一、通过tddl模块访问可信平台模块:tddl模块向实体提供了访问可信平台模块的标准接口函数,分别为Tddli_Open、Tddli_Close、Tddli_TransmitData、Tddli_Cancel、Tddli_GetStatus、Tddli_GetCapability、Tddli_SetCapability,tddl模块接收实体请求的可信平台模块命令并接收可信平台模块处理后的结果返回给实体;
二、通过tpmd模块访问可信平台模块:tpmd模块接收tddl模块发来的用户请求字节流,调用编码解码模块解析出相应的可信平台模块请求命令,调用执行引擎模块执行具体的可信平台模块命令,根据可信平台模块命令的需要,调用存储模块进行密钥的加载或存储、或调用密码学模块进行密码运算,最后再调用编码解码模块将执行结果编码后返回给tddl模块;
三、通过tpmd_dev模块访问可信平台模块:实体通过标准I/O接口write/read访问/dev/tpm,tpmd_dev获取操作命令并转发给用户空间的守护进程tpmd模块,tpmd模块通过调用相应的密码学模块、存储模块和执行引擎模块执行操作,tpmd_dev模块则再从tpmd模块读取执行结果,并最终返回给实体。
进一步,tpmd模块操作方法包括以下步骤:
步骤一,tpmd模块启动后会创建并初始化用于与tddl模块通信的socket,并且设置此后台程序退出标识stopflag为0,此标识为全局变量,当收到程序意外中断或程序收到结束信号,如,sig==SIGTERM||sig==SIGQUIT||sig==SIGINT时,则置标识stopflag为1;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410137170.4/2.html,转载请声明来源钻瓜专利网。





