首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在基于Arm TrustZone的可信应用程序(TA)中,远程用户如何将输出绑定到特定的TA?

在基于Arm TrustZone的可信应用程序(TA)中,远程用户如何将输出绑定到特定的TA?
EN

Security用户
提问于 2020-06-25 01:49:00
回答 1查看 404关注 0票数 1

我看了下面的图,其中显示了使用Arm TrustZone体系结构,系统的资源可以分为富执行环境(REE)和可信的执行环境(TEE)。

在这里,我试图理解以下内容:假设一个远程用户希望在TEE中运行一个特定的可信应用程序(TA)来对他的输入进行一些计算。如何确保这个远程方的计算实际上是由正确的TA完成的?

EN

回答 1

Security用户

回答已采纳

发布于 2020-06-25 22:21:31

有一个TA的输出包括一个计算结果的签名,使用一个只有TA知道的密钥。

签名的数据也需要包括计算的参数,而不仅仅是结果。否则,对手可以获取一次计算的结果,并假装它们是TA也执行过的不同计算的结果。如果更方便,您可以使用参数的加密散列,而不是参数本身。

将TA版本也包括在内,这样如果TA的版本中有错误,您可以决定拒绝它的计算。(如果TA存在允许攻击者修改已签名数据中的版本的漏洞,则这不会有帮助。如果发生这种情况,您要么需要旋转签名密钥,要么在TEE的认证中依赖TA版本,如下所述。)

下一个问题是,如果有签名,你怎么知道它是真实的?你需要一个公钥基础设施来把TA的公钥和他们的身份联系起来。计算的信任根包括:

  • 制球器制造商。TEE由硬件和软件组成,通常由不同的实体组成,但就您的目的而言,您可以将TEE制造商视为单个实体。
  • TA制造商。
  • 在TEE上安装TA的一个或多个实体。在这个答案中,我将这些实体统称为“TSM”(可信的服务管理器)。

接受方通常提供“认证”功能。确切地说,认证的内容各不相同,但一般的想法是,认证是对某些数据的签名,包括TA的标识信息和正在运行的TEE的标识信息。签名由一个密钥组成,该密钥具有到认证机构运行的证书颁发机构(CA)的信任路径。认证机构通常是TEE供应商或TSM。证言上写着:

TA {1234-567-89a} version 4.2运行在Yoyodyne TEE操作系统1.1.7上,运行在ACME-TZ-5522芯片上,2020年-06-25日22:16:44运行,说: Moo签署了,TEE。签署了TEE的公钥,TSM操作CA.签署了TSM操作CA,TSM根CA。

根据TEE/TSM基础设施的设置方式和执行计算的情况,让TA为每个计算结果发出认证,或者让TA在安装时生成私钥,一劳永逸地验证公钥,并使用自己的私钥对每个计算结果签名,可能会更方便。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/233746

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档