CN104317651A - 一种基于可信软件栈的接口调用方法 - Google Patents

一种基于可信软件栈的接口调用方法 Download PDF

Info

Publication number
CN104317651A
CN104317651A CN201410536849.0A CN201410536849A CN104317651A CN 104317651 A CN104317651 A CN 104317651A CN 201410536849 A CN201410536849 A CN 201410536849A CN 104317651 A CN104317651 A CN 104317651A
Authority
CN
China
Prior art keywords
layer
service
trusted
service providing
software stack
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.)
Pending
Application number
CN201410536849.0A
Other languages
English (en)
Inventor
苏振宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201410536849.0A priority Critical patent/CN104317651A/zh
Publication of CN104317651A publication Critical patent/CN104317651A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于可信软件栈的接口调用方法,其具体实现过程为:将可信软件栈自底向上分成驱动层、核心服务层、服务应用层,其中驱动层包括TCM安全芯片、与TCM安全芯片驱动通信的设备驱动、与设备驱动双向通信的驱动程序库,所述驱动程序库与核心服务层通信连接;服务应用层包括应用程序和可信服务提供层;设置用户应用程序和可信服务提供层之间的调用;设置可信服务提供层与核心服务层之间的调用;设置核心服务层与设备驱动库之间的调用;设置设备驱动库与设备驱动的接口调用。该一种基于可信软件栈的接口调用方法与现有技术相比,划分了可信软件栈的各个层次,说明了各个层次之间接口的调用流程,为可信应用程序的开发提供了有效的方法。

Description

一种基于可信软件栈的接口调用方法
技术领域
本发明涉及计算机软件技术领域,具体地说是一种实用性强、基于可信软件栈的接口调用方法。
背景技术
为了使用可信密码模块TCM,用户需要一个与之交互的软件模块,该软件模块是可信软件栈。可信软件栈作为使用可信密码模块TCM的入口,位于用户应用软件与TCM之间,主要提供TCM安全芯片的访问、安全认证、密码服务和资源管理等功能,解决TCM芯片自身接口的复杂性和对外服务的不便性。
由于不同安全芯片在功能上存在差别,因此不同的安全芯片使用时需要有相应的软件栈。基于此,现提供一种基于可信软件栈的接口调用方法,该方法以可信密码模块TCM为平台,实现了应用软件与TCM安全芯片的有效通信。
发明内容
本发明的技术任务是针对以上不足之处,提供一种实用性强、基于可信软件栈的接口调用方法。
一种基于可信软件栈的接口调用方法,其具体实现过程为:
将可信软件栈自底向上分成驱动层、核心服务层、服务应用层,其中驱动层包括TCM安全芯片、与TCM安全芯片驱动通信的设备驱动、与设备驱动双向通信的驱动程序库,所述驱动程序库与核心服务层通信连接;服务应用层包括应用程序和可信服务提供层;
设置服务应用层与核心服务层之间的调用方式:应用程序与可信服务提供层之间的调用采用动态链接库方式,并为开发者提供动态链接库相应的头文件和库文件以开发安全应用程序;可信服务提供层与核心服务层之间使用调用RPC的方式进行通信,并在通信过程中按照接口描述语言IDL的定义自动分配空间;
设置核心服务层与驱动程序库之间的调用方式:两者之间采用动态链接库的调用方式;
设置驱动程序库与设备驱动之间的调用方式:两者之间采用Linux操作系统下访问驱动程序的加密服务提供程序CSP接口调用。
所述服务应用层包括本地应用层和远程应用层,本地应用层包括本地应用程序、与其对应连接的可信服务提供层;远程应用层包括远程应用程序、与其对应连接的可信服务提供层;相对应的,上述本地应用层的可信服务提供层、远程应用层的可信服务提供层均与核心服务层通信连接。
所述本地应用程序、远程应用程序均通过可信计算核心服务接口TSPI接口与其相对应的可信服务提供层相连接。
所述本地应用层的可信服务提供层通过本地调用RPC的方式与核心服务层调用连接;远程应用层的可信服务提供层通过远程调用RPC的方式与核心服务层调用连接。
本发明的一种基于可信软件栈的接口调用方法,具有以下优点:
该发明的一种基于可信软件栈的接口调用方法使用底层的安全芯片TCM,把与其相应的可信软件栈TSM划分为多个不同的功能接口层,方便用户开发基于可信计算的上层安全应用程序;实用性强,说明了各个接口的调用流程,为可信应用程序的开发提供了有效的方法,适用范围广泛,易于推广。
附图说明
附图1为本发明的调用示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
本发明提供一种基于可信软件栈的接口调用方法,把TCM安全芯片的可信软件栈划分为多个不同的功能接口层,说明了各个接口的调用方法,为用户开发基于可信计算的上层安全应用程序提供了方便。如附图1所示,其具体实现过程为:
将可信软件栈自底向上分成驱动层、核心服务层、服务应用层,其中驱动层包括TCM安全芯片、与TCM安全芯片驱动通信的设备驱动、与设备驱动双向通信的驱动程序库,所述驱动程序库与核心服务层通信连接;服务应用层包括应用程序和可信服务提供层。
设置服务应用层与核心服务层之间的调用方式:应用程序与可信服务提供层之间的调用采用动态链接库方式,并为开发者提供动态链接库相应的头文件和库文件以开发安全应用程序;可信服务提供层与核心服务层之间使用调用RPC的方式进行通信,并在通信过程中按照接口描述语言IDL的定义自动分配空间。
设置核心服务层与驱动程序库之间的调用方式:两者之间采用动态链接库的调用方式;由于设备驱动库的接口是标准的,为了便于可信计算核心服务层的移植,在使用驱动库时也采用动态链接的方式,这样核心服务层可以使用不同的驱动库,从而运行在拥有不同安全芯片的平台上。
设置驱动程序库与设备驱动之间的调用方式:两者之间采用Linux操作系统下访问驱动程序的加密服务提供程序CSP接口调用。
开发者可根据具体应用需求,选择在不同的功能层次调用相应的接口进行开发。
所述服务应用层包括本地应用层和远程应用层,本地应用层包括本地应用程序、与其对应连接的可信服务提供层;远程应用层包括远程应用程序、与其对应连接的可信服务提供层;相对应的,上述本地应用层的可信服务提供层、远程应用层的可信服务提供层均与核心服务层通信连接。
所述本地应用程序、远程应用程序均通过可信计算核心服务接口TSPI接口与其相对应的可信服务提供层相连接。
所述本地应用层的可信服务提供层通过本地调用RPC的方式与核心服务层调用连接;远程应用层的可信服务提供层通过远程调用RPC的方式与核心服务层调用连接。
无论是本地应用程序还是远程应用程序,调用TCM安全芯片并不需要对可信软件栈的每个层次接口都进行调用,只使用最上层可信服务提供层的可信计算核心服务接口TSPi进行调用,可信软件栈底层的核心服务、驱动程序库以及设备驱动接口只作为抽象接口,不具体体现给用户,它们之间的数据交互均由可信软件栈自动实现。
上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的一种基于可信软件栈的接口调用方法的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。

Claims (4)

1.一种基于可信软件栈的接口调用方法,其特征在于其具体实现过程为:
将可信软件栈自底向上分成驱动层、核心服务层、服务应用层,其中驱动层包括TCM安全芯片、与TCM安全芯片驱动通信的设备驱动、与设备驱动双向通信的驱动程序库,所述驱动程序库与核心服务层通信连接;服务应用层包括应用程序和可信服务提供层;
设置服务应用层与核心服务层之间的调用方式:应用程序与可信服务提供层之间的调用采用动态链接库方式,并为开发者提供动态链接库相应的头文件和库文件以开发安全应用程序;可信服务提供层与核心服务层之间使用调用RPC的方式进行通信,并在通信过程中按照接口描述语言IDL的定义自动分配空间;
设置核心服务层与驱动程序库之间的调用方式:两者之间采用动态链接库的调用方式;
设置驱动程序库与设备驱动之间的调用方式:两者之间采用Linux操作系统下访问驱动程序的加密服务提供程序CSP接口调用。
2.根据权利要求1所述的一种基于可信软件栈的接口调用方法,其特征在于:所述服务应用层包括本地应用层和远程应用层,本地应用层包括本地应用程序、与其对应连接的可信服务提供层;远程应用层包括远程应用程序、与其对应连接的可信服务提供层;相对应的,上述本地应用层的可信服务提供层、远程应用层的可信服务提供层均与核心服务层通信连接。
3.根据权利要求2所述的一种基于可信软件栈的接口调用方法,其特征在于:所述本地应用程序、远程应用程序均通过可信计算核心服务接口TSPI接口与其相对应的可信服务提供层相连接。
4.根据权利要求2所述的一种基于可信软件栈的接口调用方法,其特征在于:所述本地应用层的可信服务提供层通过本地调用RPC的方式与核心服务层调用连接;远程应用层的可信服务提供层通过远程调用RPC的方式与核心服务层调用连接。
CN201410536849.0A 2014-10-13 2014-10-13 一种基于可信软件栈的接口调用方法 Pending CN104317651A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410536849.0A CN104317651A (zh) 2014-10-13 2014-10-13 一种基于可信软件栈的接口调用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410536849.0A CN104317651A (zh) 2014-10-13 2014-10-13 一种基于可信软件栈的接口调用方法

Publications (1)

Publication Number Publication Date
CN104317651A true CN104317651A (zh) 2015-01-28

Family

ID=52372886

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410536849.0A Pending CN104317651A (zh) 2014-10-13 2014-10-13 一种基于可信软件栈的接口调用方法

Country Status (1)

Country Link
CN (1) CN104317651A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110022370A (zh) * 2019-04-12 2019-07-16 浙江中烟工业有限责任公司 一种基于对象句柄的可信协议栈实现方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050091503A1 (en) * 2003-10-24 2005-04-28 Roberts Paul C. Providing secure input and output to a trusted agent in a system with a high-assurance execution environment
CN1988534A (zh) * 2005-12-23 2007-06-27 联想(北京)有限公司 可信计算平台和在内核态下访问tpm服务的方法
CN101527024A (zh) * 2008-03-06 2009-09-09 同方股份有限公司 一种安全网上银行系统及其实现方法
CN102768714A (zh) * 2011-05-04 2012-11-07 国民技术股份有限公司 一种基于tsm的tcm管理接口及其实现方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050091503A1 (en) * 2003-10-24 2005-04-28 Roberts Paul C. Providing secure input and output to a trusted agent in a system with a high-assurance execution environment
CN1988534A (zh) * 2005-12-23 2007-06-27 联想(北京)有限公司 可信计算平台和在内核态下访问tpm服务的方法
CN101527024A (zh) * 2008-03-06 2009-09-09 同方股份有限公司 一种安全网上银行系统及其实现方法
CN102768714A (zh) * 2011-05-04 2012-11-07 国民技术股份有限公司 一种基于tsm的tcm管理接口及其实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李志鹏: "嵌入式可信签名终端软件栈关键技术研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110022370A (zh) * 2019-04-12 2019-07-16 浙江中烟工业有限责任公司 一种基于对象句柄的可信协议栈实现方法

Similar Documents

Publication Publication Date Title
WO2018072715A1 (zh) 通信系统和电子设备
WO2018072713A1 (zh) 通信系统和电子设备
CN103455377B (zh) 用于管理业务线程池的系统和方法
US10726142B2 (en) Operating system independent, secure data storage system
WO2018072714A1 (zh) 多通道通信系统和电子设备
EP3017396B1 (en) System and method for providing secure access control to a graphics processing unit
CN109313569B (zh) 用于虚拟硬件控制的系统和方法
US20110307639A1 (en) Virtual serial port management system and method
CN107403152B (zh) 高通平台TrustZone指纹识别实现方法及系统
WO2012088109A3 (en) Providing a security boundary
US20130031602A1 (en) Thin client system, and access control method and access control program for thin client system
KR101920239B1 (ko) 파일 시스템 기능을 제공하는 단말기의 장치 및 방법
US9331988B2 (en) System and method for provisioning secrets to an application (TA) on a device
US8955057B2 (en) Managing access to class objects in a system utilizing a role-based access control framework
US20150339242A1 (en) Method and apparatus for transmitting data in android platform based terminal device
US10674438B2 (en) Restricting access to external schemas from within a database level container by whitelisting allowed schemas
CN106341811A (zh) 一种数据迁移方法及服务器
CN103995751A (zh) 一种跨平台通信系统及方法
US20220413903A1 (en) Framework for migrating applications across public and private clouds
US20220103554A1 (en) Isolated cell architecture for cloud computing platform
US9898600B2 (en) Method and apparatus for managing application data of portable terminal
KR20170003541A (ko) 임베디드 컨트롤러를 사용하여 클래스 디바이스 인터페이스를 하나의 호스트 인터페이스와 통합하는 방법 및 장치
US20230328114A1 (en) Security zone policy enforcement in a cloud infrastructure system
CN103646206A (zh) 一种兼容不同密码设备的访问方法
CN104317651A (zh) 一种基于可信软件栈的接口调用方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20150128

WD01 Invention patent application deemed withdrawn after publication