CN104317651A - 一种基于可信软件栈的接口调用方法 - Google Patents
一种基于可信软件栈的接口调用方法 Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000006854 communication Effects 0.000 claims abstract description 9
- 238000004891 communication Methods 0.000 claims abstract description 6
- 230000008569 process Effects 0.000 claims abstract description 4
- 101000666901 Oxyuranus scutellatus scutellatus Kunitz-type serine protease inhibitor taicotoxin Proteins 0.000 claims description 3
- 230000007175 bidirectional communication Effects 0.000 abstract 1
- 230000008859 change Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
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的方式与核心服务层调用连接。
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110022370A (zh) * | 2019-04-12 | 2019-07-16 | 浙江中烟工业有限责任公司 | 一种基于对象句柄的可信协议栈实现方法 |
Citations (4)
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管理接口及其实现方法 |
-
2014
- 2014-10-13 CN CN201410536849.0A patent/CN104317651A/zh active Pending
Patent Citations (4)
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)
Title |
---|
李志鹏: "嵌入式可信签名终端软件栈关键技术研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (1)
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 |