一种可信计算机平台软件栈功能架构的构建方法技术

技术编号:17407540 阅读:48 留言:0更新日期:2018-03-07 05:12
本发明专利技术公开一种可信计算机平台软件栈功能架构的构建方法,可信计算机平台软件栈由上至下分别是:TSS服务提供者,TSS核心服务,TCG设备驱动库和TPM设备驱动,构建方法包括:密钥管理、密码学服务、安全存储、完整性验证、授权协议和证书管理。本发明专利技术构建方法所构建的基于安全芯片的电力业务终端多级安全模型,在软件层建立可信软件栈,为系统提供度量应用程序的工具,系统可以通过可信软件栈调用可信芯片,实现对应用程序的度量;可信软件栈实现支持应用可信平台模块功能的单个入口点、提供对可信平台模块的同步访问功能、给上层应用程序提供合适的接口来隐藏可信平台模块的指令流和管理可信平台模块资源。

A construction method of software stack function architecture for trusted computer platform

The invention discloses a method for constructing trusted computing platform software stack architecture, trusted computing platform software stack from top to bottom are: TSS service providers, TSS core services, TCG device driver and TPM device driver, the construction method comprises the following steps: key management and cryptographic services, security storage, authentication, authorization and certificate of agreement management. The construction of electric power service terminal multilevel security model based on security chip construction method, the establishment of trusted software stack in the software layer, to provide tools for the application of the metric system, the system can through the trusted software stack called trusted chip, realize the measurement on the application; trusted software stack to achieve a single entrance point, support function module the application of trusted platform for trusted platform module synchronization function, access to the upper application provides a suitable interface to hide the trusted platform module instruction stream and trusted platform module resources management.

【技术实现步骤摘要】
一种可信计算机平台软件栈功能架构的构建方法
本专利技术涉及信息统计安全
,尤其涉及一种可信计算机平台软件栈功能架构的构建方法。
技术介绍
可信计算是针对目前计算系统不能从根本上解决安全问题而提出的,通过在计算系统中集成专用硬件模块建立信任源点,利用密码机制建立信任链,构建可信赖的计算环境,为计算机平台系统提供安全基础。可信计算平台是构建在计算系统中并用来实现可信计算功能的支撑系统,是信任链的源头,只有解决源头的安全问题,才能建立起信任链,从而保证整体的安全可信。可信平台模块是可信计算平台的重要组成部分,可信平台模块包括密码算法、密钥管理、证书管理、密码协议、密码服务等内容,为实现上层平台的自身的完整性度量、平台身份证明和数据安全存储提供密码支持,可信计算组织提出了可信软件栈,并规定了它的功能需求、层次结构以及各层次之间的函数接口。TSS是TPM的支撑软件,TPM芯片是一个提供可信计算基本功能的安全硬件模块,但由于芯片资源有限,它仅仅对外提供了基本功能的接口,所以要使用TSS作为TPM芯片的扩充和支撑系统,实现面向上层实际应用程序的功能,提供访问TPM功能的函数接口;TSS是TPM与上层应用之间的桥梁,不仅使TPM提供的功能得到充分的应用,而且使上层应用能够方便、安全地使用TPM的功能。TSS由四个模块构成,它们由上至下分别是:TSS服务提供者(TSP),TSS核心服务(TCS),TCG设备驱动库(TDDL),TPM设备驱动(TDD)。其中在体系最上层的TSP是向用户的应用程序提供接口的,它把来自应用程序的参数打包传给TCS模块,由TCS模块来提供具体的功能函数(例如密钥管理),TCS模块把来自TSP模块的参数进行分析和操作以后写成一个TPM可以识别的字节流,通过TDDL传到TPM里面去,TPM接收到字节流以后进行相应的操作,把结果以字节流的形式通过TDDL返回到TCS里去,对字节流分析以后,把结果传给TSP,由TSP把正式的结果返回给应用程序。TDD是内核模式的组件,它接收来自于TDDL的字节流,并把它们发向TPM,最后返回对TDDL的响应。通过调用可信软件栈中服务提供者所提供的接口函数,上层应用程序可以使用的功能,由此可以将可信计算应用于各种领域之中。这些领域包括安全风险管理、电子商务、数字版权管理、网络认证授权、虚拟专用网、网络入侵检测、恶意代码检测与防范等。
技术实现思路
专利技术目的:为克服现有技术不足,本专利技术旨于提供一种可信计算机平台软件栈功能架构的构建方法。技术方案:为解决上述技术问题,本专利技术提供如下技术方案:一种可信计算机平台软件栈功能架构的构建方法,可信计算机平台软件栈功能架构的构建方法包括:(1)密钥管理:用户通过调用可信计算平台的硬件模块TCM_CreateWrapKey命令,TCM产生对称加密密钥或ECC密钥对,并用上一级密钥加密存储;创建密钥时设置使用密码和迁移密码,使用密码用于加密和解密操作的使用授权,但不允许发现实际密码值的迁移密码对用户在一个特定的公钥下迁移密钥进行授权;当用户需要使用该密钥时,调用TCM_LoadWrapKey命令,TCM用父密钥解密并将它载入到一个空闲的区域,返回keyhandle,供用户使用;(2)密码学服务:可信计算机平台中配备的密码算法包括随机数生成算法、杂凑算法、消息验证码算法、对称密码算法和非对称密码算法;(3)安全存储:TCM提供对于密钥和其它敏感数据的安全存储功能,保证存储在其中的密钥和敏感信息不会被破坏、更改和泄漏,以及未授权使用;(4)完整性验证:可信计算机平台完整性验证包括完整性度量、存储与报告三方面;完整性度量是指计算度量值,记录该事件到事件日志,并把度量值记入相应的平台配置寄存器PCR中;完整性报告是指TCM向验证者提供其保护区域中平台或部分部件的完整性的度量值、日志中的度量事件和相关的证书,验证者可以通过完整性报告判断平台的状态;验证者可通过分析完整性度量事件日志信息判断该PCR值是否来自正确的度量过程;可信计算机平台向外部实体提供完整性度量值报告的功能,所报告的度量值作为判断平台可信性的依据;(5)授权协议:任何实体可提交TCM命令,实体和TCM平台之间形成一条安全的交流通道,通过这条交流通道提交TCM命令并且返回结果;交流通道为完成面向session的信息交换遵循请求-响应语义学,协议实现外部实体与TCM之间的授权认证、信息的完整性验证和敏感数据的机密性保护;(6)证书管理:数字证书采用公开密钥体制,即利用一对互相匹配的密钥进行加密、解密;每个用户自己设定一把特定的、仅为本人所知的专有密钥私钥,用它进行解密和签名同时设定一把公共密钥公钥并由本人公开,用于加密和验证签名。上述可信计算平台的硬件模块TCM为可信计算平台提供密码运算功能,具有受保护的存储空间;上述平台配置寄存器PCR位于TPM内部,仅仅用来装载对模块的度量值,大小为160比特;上述完整性度量是为保证可信计算平台的可信性引入,是指任何想要获得平台控制权的实体,在获得控制权之前都要被度量;上述数字证书又叫“数字身份证”、“数字ID”,是由认证中心发放并经认证中心数字签名的,包含公开密钥拥有者以及公开密钥相关信息的一种电子文件,用来证明数字证书持有者的真实身份;上述实体为进程、线程或者控制器。进一步的,所述(1)密钥管理,通过引入对称算法和“用户实体”概念减少密钥管理层级,简化密钥存储保护,并采用三级密钥管理模式:A、密码模块密钥、存储主密钥、平台所有者的授权数据直接存放在可信密码模块内部,通过可信密码模块的物理安全措施保护;B、实体加密密钥、实体认证密钥、实体权限数据等信息构成实体身份数据块,由存储根密钥加密保护,存放在TCM外部;实体拥有的各种应用密钥、P仪等由实体加密密钥加密保护,存放在TCM外部,平台通过设置实体的权限数据来控制用户对密钥的访问;C、TCM的功能之一就是创建SMI对称密钥和ECC非对称密钥对,这些密钥的详细信息在创建后将保存在TCM中,但由于TCM的空间有限,必要时将他们以加密的形式放到外部的存储区中,当要使用这个密钥的时候,如上节中的加载步骤将其加载到TCM内再进行使用。进一步的,所述(1)密钥管理中,迁移密钥必须在受控的环境中发生,保证密钥只从一个硬件受保护的环境转移到另一个硬件受保护的环境中。数据的移动性是密钥管理中的一个重要话题,当存储在一个平台上的数据需要备份到另一个平台上,与该数据相关的密钥也必须迁移,才能使这些数据可用。进一步的,所述(2)密码学服务中随机数生成算法为单向散列函数将一个不可预测的输入变成犯字节长度的随机数;对称密码算法为引入对称加密算法,使用对称加密算法生成加密密钥,以及进行TCM内部的加解密操作;非对称密码算法包括公钥密码和密钥密码,公钥密码算法为ECC密码算法,密钥位长为m,ECC密码算法包括密钥对生成、签名/验证算法、加解密算法和密钥协商等方面,密钥对生成为ECC的密钥对,包括私钥d和公钥Q,其中d为小于n-1的一个随机的正整数,Q为椭圆曲线E上的一个非无穷远点且满足Q=dG,G为曲线中的一个基点;杂凑算法为SMZ,对于给定的长度为k的消息,杂凑算法经过填充、迭代压缩和选裁,生成杂凑值,经预处理过的消本文档来自技高网
...
一种可信计算机平台软件栈功能架构的构建方法

【技术保护点】
一种可信计算机平台软件栈功能架构的构建方法,其特征在于:可信计算机平台软件栈功能架构的构建方法包括:(1)密钥管理:用户通过调用可信计算平台的硬件模块TCM_CreateWrapKey命令,TCM产生对称加密密钥或ECC密钥对,并用上一级密钥加密存储;创建密钥时设置使用密码和迁移密码,使用密码用于加密和解密操作的使用授权,但不允许发现实际密码值的迁移密码对用户在一个特定的公钥下迁移密钥进行授权;当用户需要使用该密钥时,调用TCM_LoadWrapKey命令,TCM用父密钥解密并将它载入到一个空闲的区域,返回keyhandle,供用户使用;(2)密码学服务:可信计算机平台中配备的密码算法包括随机数生成算法、杂凑算法、消息验证码算法、对称密码算法和非对称密码算法;(3)安全存储:TCM提供对于密钥和其它敏感数据的安全存储功能,保证存储在其中的密钥和敏感信息不会被破坏、更改和泄漏,以及未授权使用;(4)完整性验证:可信计算机平台完整性验证包括完整性度量、存储与报告三方面;完整性度量是指计算度量值,记录该事件到事件日志,并把度量值记入相应的平台配置寄存器PCR中;完整性报告是指TCM向验证者提供其保护区域中平台或部分部件的完整性的度量值、日志中的度量事件和相关的证书,验证者可以通过完整性报告判断平台的状态;验证者可通过分析完整性度量事件日志信息判断该PCR值是否来自正确的度量过程;可信计算机平台向外部实体提供完整性度量值报告的功能,所报告的度量值作为判断平台可信性的依据;(5)授权协议:任何实体可提交TCM命令,实体和TCM平台之间形成一条安全的交流通道,通过这条交流通道提交TCM命令并且返回结果;交流通道为完成面向session的信息交换遵循请求‑响应语义学,协议实现外部实体与TCM之间的授权认证、信息的完整性验证和敏感数据的机密性保护;(6)证书管理:数字证书采用公开密钥体制,即利用一对互相匹配的密钥进行加密、解密;每个用户自己设定一把特定的、仅为本人所知的专有密钥私钥,用它进行解密和签名同时设定一把公共密钥公钥并由本人公开,用于加密和验证签名。...

【技术特征摘要】
1.一种可信计算机平台软件栈功能架构的构建方法,其特征在于:可信计算机平台软件栈功能架构的构建方法包括:(1)密钥管理:用户通过调用可信计算平台的硬件模块TCM_CreateWrapKey命令,TCM产生对称加密密钥或ECC密钥对,并用上一级密钥加密存储;创建密钥时设置使用密码和迁移密码,使用密码用于加密和解密操作的使用授权,但不允许发现实际密码值的迁移密码对用户在一个特定的公钥下迁移密钥进行授权;当用户需要使用该密钥时,调用TCM_LoadWrapKey命令,TCM用父密钥解密并将它载入到一个空闲的区域,返回keyhandle,供用户使用;(2)密码学服务:可信计算机平台中配备的密码算法包括随机数生成算法、杂凑算法、消息验证码算法、对称密码算法和非对称密码算法;(3)安全存储:TCM提供对于密钥和其它敏感数据的安全存储功能,保证存储在其中的密钥和敏感信息不会被破坏、更改和泄漏,以及未授权使用;(4)完整性验证:可信计算机平台完整性验证包括完整性度量、存储与报告三方面;完整性度量是指计算度量值,记录该事件到事件日志,并把度量值记入相应的平台配置寄存器PCR中;完整性报告是指TCM向验证者提供其保护区域中平台或部分部件的完整性的度量值、日志中的度量事件和相关的证书,验证者可以通过完整性报告判断平台的状态;验证者可通过分析完整性度量事件日志信息判断该PCR值是否来自正确的度量过程;可信计算机平台向外部实体提供完整性度量值报告的功能,所报告的度量值作为判断平台可信性的依据;(5)授权协议:任何实体可提交TCM命令,实体和TCM平台之间形成一条安全的交流通道,通过这条交流通道提交TCM命令并且返回结果;交流通道为完成面向session的信息交换遵循请求-响应语义学,协议实现外部实体与TCM之间的授权认证、信息的完整性验证和敏感数据的机密性保护;(6)证书管理:数字证书采用公开密钥体制,即利用一对互相匹配的密钥进行加密、解密;每个用户自己设定一把特定的、仅为本人所知的专有密钥私钥,用它进行解密和签名同时设定一把公共密钥公钥并由本人公开,用于加密和验证签名。2.根据权利要求1所述的可信计算机平台软件栈功能架构的构建方法,其特征在于:所述(1)密钥管理中,通过引入对称算法和“用户实体”概念减少密钥管理层级,简化密钥存储保护,并采用三级密钥管理模式:A、密码模块密钥、存储主密钥、平台所有者的授权数据直接存放在可信密码模块内部,通过可信密码模块的物理安全措施保护;B、实体加密密钥、实体认证密钥、实体权限数据等信息构成实体身份数据块,由存储根密钥加密保护,存放在TCM外部;实体拥有的各种应用密钥、P仪等由实体加密密钥加密保护,存放在TCM外部,平台通过设置实体的权限数据来控制用户对密钥的访问;C、TCM的功能之一就是创建SMI对称密钥和ECC非对称密钥对,这些密钥的详细信息在创建后将保存在TCM中,但由于TCM的空间有限,必要时将他们以加密的形式放到外部的存储区中,当要使用这个密钥的时候,如上节中的加载步骤将其加载到TCM内再进行使用。3.根据权利要求1所述的可信计算机平台软件栈功能架构的构建方法,其特征在于:所述(1)密钥管理中,迁移密钥必须在受控的环境中发生,保证密钥只从一个硬件受保护的环境转移到另一个硬件受保护的环境中。4.根据权利要求1所述的可信计算机平台软件栈功能架构的构建方法,其特征在于:所述(2)密码学服务中,随机数生成算法为单向散列函数将一个不可预测的输入变成犯字节长度的随机数;对称密码算法为引入对称加密算法,使用对称加密算法生成加密密钥,以及进行TCM内部的加解密操作;非对称密码算法包括公钥密码和密钥密码,公钥密码算法为ECC密码算法,密钥位长为m,ECC密码算法包括密钥对生成、签名/验证算法、加解密算法和密钥协商等方面,密钥对生成为ECC的密钥对,包括私钥d和公钥Q,其中d为小于n-1的一个随机的正整数,Q为椭圆曲线E上的一个非无穷远点,且满足Q=dG,G为曲线中的一个基点;杂凑算法为SMZ,对于给定的长度为k的消息,杂凑算法经过填充、迭代压缩和选裁,生成杂凑值,经预处理过的消息分组长度为比特,杂凑值长度为比特,杂凑函数将消息压缩为独特的数字信息,保证原有消息的合法性和安全性,SMZ是单向加密函数,并且对于任意长度的消息经处理后都将生成同样长度的杂凑值,使得比较原始消息更为方便,对于机密信息仅需保存其杂凑值,一方面,存储的杂凑值不能被破译使原始信息充分得到了保护,即使在传输过程中也不用担心杂凑值被恶意截取,另一方面,比...

【专利技术属性】
技术研发人员:吴克河徐美娇刘忠海张鹏郭伟
申请(专利权)人:华北电力大学北京智芯微电子科技有限公司国网信息通信产业集团有限公司国家电网公司国网辽宁省电力有限公司信息通信分公司国网冀北电力有限公司
类型:发明
国别省市:北京,11

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

1