文章目录

  • 1、TEE API介绍
  • 2、Client API : CA与TA通信的API介绍
  • 3、TEE API : TA系统调用TEE OS的API
    • (1)、Asymmetric
    • (2)、Authenticated Encryption
    • (3)、Basic Arithmetic
    • (4)、Cancellation
    • (5)、Converter
    • (6)、Data Stream Access
    • (7)、Deprecated
    • (8)、Events
    • (9)、Fast Modular Multiplication
    • (10)、Generic Object
    • (11)、Generic Operation
    • (12)、Initialization
    • (13)、Internal Client API
    • (14)、Key Derivation
    • (15)、Logical Operation
    • (16)、MAC
    • (17)、Memory Allocation and Size of Objects
    • (18)、Memory Management
    • (19)、Message Digest
    • (20)、Modular Arithmetic
    • (21)、Other Arithmetic
    • (22)、Panic Function
    • (23)、Peripherals
    • (24)、Persistent Object
    • (25)、Persistent Object Enumeration
    • (26)、Property Access
    • (27)、Random Data Generation
    • (28)、Symmetric Cipher
    • (29)、TA Interface
    • (30)、Time
    • (31)、Transient Object

★★★ 友情链接 : 个人博客导读首页—点击此处 ★★★

1、TEE API介绍

TEE API分两种:

  • 一类是CA与TA通信的API,实现方式就是应用程序调用libteec.so库,libteec.so库是由optee_client编译出的,libteec.so中调用了dev/tee_priv节点陷入kernel
    mode,在kernel mode中调用smc同步异常指令陷入到ATF,ATF再跳出到TEE OS, TEE
    OS再将消息发送给相应的TA。
    该API在globalplatform中的TEE_Client_API_Specification-V1.0_c.pdf文档中有所规定,api的具体实现是在optee_client/libteec
  • 一类是TA系统调用TEE OS的API,这是的实现方式其实就是系统调用,调用SVC同步异常指令,进入kernel mode。
    该API在globalplatform中的GPD_TEE_Internal_Core_API_Specification_v1.1.pdf文档中有所规定,api的具体实现是在optee_os\lib\libutee

2、Client API : CA与TA通信的API介绍

这类api不到10个(一共9个)

TEEC_InitializeContext
TEEC_FinalizeContext
TEEC_RegisterSharedMemory
TEEC_AllocateSharedMemory
TEEC_ReleaseSharedMemory
TEEC_OpenSession
TEEC_CloseSession
TEEC_InvokeCommand
TEEC_RequestCancellation

3、TEE API : TA系统调用TEE OS的API

这类api就有很多了,也分好几类:

(1)、Asymmetric
TEE_AsymmetricDecrypt
TEE_AsymmetricEncrypt
TEE_AsymmetricSignDigest
TEE_AsymmetricVerifyDigest
(2)、Authenticated Encryption
TEE_AEDecryptFinal
TEE_AEEncryptFinal
TEE_AEInit
TEE_AEUpdate
TEE_AEUpdateAAD
(3)、Basic Arithmetic
TEE_BigIntAdd
TEE_BigIntDiv
TEE_BigIntMul
TEE_BigIntNeg
TEE_BigIntSquare
TEE_BigIntSub
(4)、Cancellation
TEE_GetCancellationFlag
TEE_MaskCancellation
TEE_UnmaskCancellation
(5)、Converter
TEE_BigIntConvertFromOctetString
TEE_BigIntConvertFromS32
TEE_BigIntConvertToOctetString
TEE_BigIntConvertToS32
(6)、Data Stream Access
TEE_ReadObjectData
TEE_SeekObjectData
TEE_TruncateObjectData
TEE_WriteObjectData
(7)、Deprecated
TEE_BigIntInitFMMContext
TEE_CloseAndDeletePersistentObject
TEE_CopyObjectAttributes
TEE_GetObjectInfo
TEE_RestrictObjectUsage
(8)、Events
TEE_Event_AddSources
TEE_Event_CancelSources
TEE_Event_CloseQueue
TEE_Event_DropSources
TEE_Event_ListSources
TEE_Event_OpenQueue
TEE_Event_TimerCreate
TEE_Event_Wait
(9)、Fast Modular Multiplication
TEE_BigIntComputeFMM
TEE_BigIntConvertFromFMM
TEE_BigIntConvertToFMM
(10)、Generic Object
TEE_CloseObject
TEE_GetObjectBufferAttribute
TEE_GetObjectInfo (deprecated)
TEE_GetObjectInfo1
TEE_GetObjectValueAttribute
TEE_RestrictObjectUsage (deprecated)
TEE_RestrictObjectUsage1
(11)、Generic Operation
TEE_AllocateOperation
TEE_CopyOperation
TEE_FreeOperation
TEE_GetOperationInfo
TEE_GetOperationInfoMultiple
TEE_IsAlgorithmSupported
TEE_ResetOperation
TEE_SetOperationKey
TEE_SetOperationKey2
(12)、Initialization
TEE_BigIntInit
TEE_BigIntInitFMM
TEE_BigIntInitFMMContext (deprecated)
TEE_BigIntInitFMMContext1
(13)、Internal Client API
TEE_CloseTASession
TEE_InvokeTACommand
TEE_OpenTASession
(14)、Key Derivation
TEE_DeriveKey
(15)、Logical Operation
TEE_BigIntAbs
TEE_BigIntAssign
TEE_BigIntCmp
TEE_BigIntCmpS32
TEE_BigIntGetBit
TEE_BigIntGetBitCount
TEE_BigIntSetBit
TEE_BigIntShiftRight
(16)、MAC
TEE_MACCompareFinal
TEE_MACComputeFinal
TEE_MACInit
TEE_MACUpdate
(17)、Memory Allocation and Size of Objects
TEE_BigIntFMMContextSizeInU32
TEE_BigIntFMMSizeInU32
TEE_BigIntSizeInU32 (macro)
(18)、Memory Management
TEE_CheckMemoryAccessRights
TEE_Free
TEE_GetInstanceData
TEE_Malloc
TEE_MemCompare
TEE_MemFill
TEE_MemMove
TEE_Realloc
TEE_SetInstanceData
(19)、Message Digest
TEE_DigestDoFinal
TEE_DigestExtract
TEE_DigestUpdate
(20)、Modular Arithmetic
TEE_BigIntAddMod
TEE_BigIntExpMod
TEE_BigIntInvMod
TEE_BigIntMod
TEE_BigIntMulMod
TEE_BigIntSquareMod
TEE_BigIntSubMod
(21)、Other Arithmetic
TEE_BigIntComputeExtendedGcd
TEE_BigIntIsProbablePrime
TEE_BigIntRelativePrime
(22)、Panic Function
TEE_Panic
(23)、Peripherals
TEE_Peripheral_Close
TEE_Peripheral_CloseMultiple
TEE_Peripheral_GetPeripherals
TEE_Peripheral_GetState
TEE_Peripheral_GetStateTable
TEE_Peripheral_Open
TEE_Peripheral_OpenMultiple
TEE_Peripheral_Read
TEE_Peripheral_SetState
TEE_Peripheral_Write
(24)、Persistent Object
TEE_CloseAndDeletePersistentObject (deprecated)
TEE_CloseAndDeletePersistentObject1
TEE_CreatePersistentObject
TEE_OpenPersistentObject
TEE_RenamePersistentObject
(25)、Persistent Object Enumeration
TEE_AllocatePersistentObjectEnumerator
TEE_FreePersistentObjectEnumerator
TEE_GetNextPersistentObject
TEE_ResetPersistentObjectEnumerator
TEE_StartPersistentObjectEnumerator
(26)、Property Access
TEE_AllocatePropertyEnumerator
TEE_FreePropertyEnumerator
TEE_GetNextProperty
TEE_GetPropertyAsBinaryBlock
TEE_GetPropertyAsBool
TEE_GetPropertyAsIdentity
TEE_GetPropertyAsString
TEE_GetPropertyAsU32
TEE_GetPropertyAsU64
TEE_GetPropertyAsUUID
TEE_GetPropertyName
TEE_ResetPropertyEnumerator
TEE_StartPropertyEnumerator
(27)、Random Data Generation
TEE_GenerateRandom
(28)、Symmetric Cipher
TEE_CipherDoFinal
TEE_CipherInit
TEE_CipherUpdate
(29)、TA Interface
TA_CloseSessionEntryPoint
TA_CreateEntryPoint
TA_DestroyEntryPoint
TA_InvokeCommandEntryPoint
TA_OpenSessionEntryPoint
(30)、Time
TEE_GetREETime
TEE_GetSystemTime
TEE_GetTAPersistentTime
TEE_SetTAPersistentTime
TEE_Wait
(31)、Transient Object
TEE_AllocateTransientObject
TEE_CopyObjectAttributes (deprecated)
TEE_CopyObjectAttributes1
TEE_FreeTransientObject
TEE_GenerateKey
TEE_InitRefAttribute
TEE_InitValueAttribute
TEE_PopulateTransientObject
TEE_ResetTransientObject

Globalplatform TEE api介绍相关推荐

  1. TEE Internal core API介绍(globalplatform)

    目录 一.TEE的API介绍 1.Cryptographic Operations API 加解密函数介绍() (1).Generic Operation Functions TEE_Allocate ...

  2. TEE系列之GP规范TEE API浅析

    TEE系列之GP规范&TEE API浅析 1.GlobalPlatform 2.TEE GP API介绍 2.1 TEE Client API介绍 2.2 TEE OS API 1.Globa ...

  3. HTML5 Audio标签方法和函数API介绍

     问说网 > 文章教程 > 网页制作 > HTML5 Audio标签方法和函数API介绍 Audio APIHTML5HTML5 Audio预加载 HTML5 Audio标签方法和函 ...

  4. Servlet基础(一) Servlet基础和关键的API介绍

    转载:http://www.cnblogs.com/mengdd/p/3202550.html Servlet基础(一) Servlet简介 关键API介绍及结合源码讲解 Servlet基础(一) S ...

  5. Socket基础API介绍

    文章目录 1 Socket基础API介绍 1 Socket基础API介绍 我们先来看下使用Socket API建立简易TCP服务端和客户端的步骤: 用Socket API建立简易TCP服务端: 建立一 ...

  6. 学习笔记Hadoop(十四)—— MapReduce开发入门(2)—— MapReduce API介绍、MapReduce实例

    四.MapReduce API介绍 一般MapReduce都是由Mapper, Reducer 及main 函数组成. Mapper程序一般完成键值对映射操作; Reducer 程序一般完成键值对聚合 ...

  7. 组合筛选vue_Vue 3 组合式API介绍

    组合式API介绍 通过创建 Vue 组件,我们可以将接口的可重复部分及其功能提取到可重用的代码段中.仅此一项就可以使我们的应用程序在可维护性和灵活性方面走得更远.然而,我们的经验已经证明,光靠这一点可 ...

  8. 科大讯飞cordova语音插件填坑及api介绍

    项目要求语音合成,准备调用科大讯飞的cordova插件,百度仅有一篇有价值的参考文章(再吐槽下,百度搜索到各种复制的文章....),谷歌有2篇,但介绍不全,只用typescript列出api,没有ap ...

  9. 43_pytorch nn.Module,模型的创建,构建子模块,API介绍,Sequential(序号),ModuleList,ParameterList,案例等(学习笔记)

    1.40.PyTorch nn.Module 1.40.1.模型的创建 1.40.2.构建子模块 1.40.3.nn.Module API介绍 1.40.3.1.核心功能 1.40.3.2.查看模块 ...

最新文章

  1. css 网格布局_我从CSS网格布局中学到的东西
  2. 因为看见,所以发现:QBotVariant谢绝落幕
  3. Nodejs的模块系统以及require的机制
  4. sql根据某个字段拼接另外字段
  5. 浙江理工大学2019年4月赛
  6. [网络安全自学篇] 四十二.DNS欺骗和钓鱼网站原理详解及防御机理
  7. Spring Boot Redis Cluster 实战干货
  8. 解决SVN提交代码时的错误:“Could not execute PROPPATCH”
  9. java 数据抓取 动态获得cookies里变动的属性_@CookieValue获取Cookie信息,使用Servlet API作为入参,处理模型数据...
  10. 1 个 AI 模型 = 5 辆汽车终身碳排量,AI 为何如此耗能?
  11. caj阅读器Mac版下载
  12. Postgresql - 监控 moniter — pgbadger
  13. Citespace的英文文献数据导入
  14. 计算机视觉 | 八斗人工智能 (中)
  15. latex tips latex 大括号 \left\{ \right\}
  16. LOL无限火力是哪个服务器先上线,LOL无限火力2019什么时间上线 2019LOL无限火力新玩法了解一下...
  17. 对日或赴日工作日语面试题大总结(1)
  18. 概率统计及其应用第三章知识总结_肖博高中数学必备知识点总结最全版-第一更...
  19. “百度杯”CTF比赛 十月场 - 那些年我追过的贝丝
  20. Centos7配置代理Squid

热门文章

  1. 医院无线网络系统设计
  2. 专家揭示模块化数据中心的真谛
  3. flutter可视化_Flutter 对Dart情有独钟的那些事儿
  4. Algorithm:C++语言实现之图论算法相关(图搜索广度优先BFS、深度优先DFS,最短路径SPF、带负权的最短路径Bellman-ford、拓扑排序)
  5. twisted:基于python的twisted框架编写一个客户端和服务端的对话聊天空间
  6. Py之twisted:Python库之twisted简介、安装、使用方法等详细攻略
  7. SQL:使用备份向导、SQL命令、导出数据三种方式对已建立的数据库进行备份
  8. TextView SpannableString 使用之实现可点击超链接效果
  9. codeforces 480B B. Long Jumps(贪心)
  10. tq2440 jlink连接问题