针对在可信执行环境中执行的可验证性制造技术

技术编号:32864090 阅读:18 留言:0更新日期:2022-04-02 11:47
本公开的示例实施例涉及针对在可信执行环境(TEE)中执行的可验证性。根据一种方法,由第一装置向第二装置传输对任务的执行的请求,任务包括要被执行的多个功能。基于第二装置的至少一个可信执行环境中的预期执行计划,从多个功能的标识信息生成第一验证密钥。从第二装置接收针对任务的执行结果和第二验证密钥。通过比较第一验证密钥和第二验证密钥,确定执行结果的正确性。通过该方案,可以提供由远程设备返回的执行结果的正确性的可验证性,并且在安全、信任和隐私方面实现高性能。信任和隐私方面实现高性能。信任和隐私方面实现高性能。

【技术实现步骤摘要】
【国外来华专利技术】针对在可信执行环境中执行的可验证性


[0001]本公开的实施例概括地涉及计算机
,尤其涉及针对在可信执行环境(TEE)中执行的可验证性的方法、设备、装置和计算机可读存储介质。

技术介绍

[0002]诸如云计算服务之类的远程计算服务为个人和公司提供场外机会。云服务的示例是云处理服务,其中用户被给与对计算机或计算平台处的处理器资源的访问,以用于数据处理。这例如在以下情况下可能是有用:在弱计算设备需要间歇地访问高性能计算,而获得实际的高性能计算硬件将是浪费的,因为硬件将大部分未使用,因为该需求仅仅是间歇的。
[0003]虽然有用,但是当数据被外包并且在云平台中被切换时存在一些安全性和隐私问题。云计算中的一个关键问题是由云平台提供的处理结果可能是不正确的。解决这个问题的一种方法是可验证计算。可验证计算用于在远程计算平台中检查计算的完整性和机密性。

技术实现思路

[0004]总体上,本公开的示例实施例提供了用于在TEE中的执行的可验证性的方案。
[0005]在第一方面,提供了一种第一装置。该第一装置包括:至少一个处理器;以及包括计算机程序代码的至少一个存储器;其中至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使第一装置:向第二装置传输对任务的执行的请求,任务包括要被执行的多个功能;基于第二装置的至少一个可信执行环境中的预期执行计划,从多个功能的标识信息生成第一验证密钥;从第二装置接收针对任务的执行结果和第二验证密钥;以及通过比较第一验证密钥和第二验证密钥来确定执行结果的正确性。
[0006]在第二方面,提供了一种第二装置。该第二装置包括:至少一个处理器;以及包括计算机程序代码的至少一个存储器;其中至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使第二装置:从第一装置接收对任务的执行的请求,任务包括要被执行的多个功能;基于执行计划,在至少一个可信执行环境中执行多个功能以获得针对任务的执行结果;基于执行计划,从多个功能的标识信息生成第二验证密钥;以及向第一装置传输执行结果和用于验证执行结果的正确性的第二验证密钥。
[0007]在第三方面,提供了一种方法。该方法包括:由第一装置并且向第二装置传输对任务的执行的请求,任务包括要被执行的多个功能;基于第二装置的至少一个可信执行环境中的预期执行计划,从多个功能的标识信息生成第一验证密钥;从第二装置接收针对任务的执行结果和第二验证密钥;以及通过比较第一验证密钥与第二验证密钥来确定执行结果的正确性。
[0008]在第四方面,提供了一种方法。该方法包括:由第二装置从第一装置接收对任务的执行的请求,任务包括要被执行的多个功能;基于执行计划,在至少一个可信执行环境中执行多个功能以获得针对任务的执行结果;基于执行计划,从多个功能的标识信息生成第二
验证密钥;以及向第一装置传输执行结果和用于验证执行结果的正确性的第二验证密钥。
[0009]在第五方面,提供了一种第一装置。该第一装置包括:用于向第二装置传输对任务的执行的请求的部件,任务包括要被执行的多个功能;用于基于第二装置的至少一个可信执行环境中的预期执行计划从多个功能的标识信息生成第一验证密钥的部件;用于从第二装置接收针对任务的执行结果和第二验证密钥的部件;以及用于通过比较第一验证密钥和第二验证密钥来确定执行结果的正确性的部件。
[0010]在第六方面,提供了一种第二装置。该第二装置包括:用于从第一装置接收对任务的执行的请求的部件,任务包括要被执行的多个功能;用于基于执行计划在至少一个可信执行环境中执行多个功能以获得针对任务的执行结果的部件;用于基于执行计划从多个功能的标识信息生成第二验证密钥的部件;以及用于向第一装置传输执行结果和用于验证执行结果的正确性的第二验证密钥的部件。
[0011]在第其方面,提供了一种非瞬态计算机可读介质,包括程序指令,程序指令用于使第一装置:向第二装置传输对任务的执行的请求,任务包括要被执行的多个功能;基于第二装置的至少一个可信执行环境中的预期执行计划,从多个功能的标识信息生成第一验证密钥;从第二装置接收针对任务的执行结果和第二验证密钥;以及通过比较第一验证密钥与第二验证密钥来确定执行结果的正确性。
[0012]在第八方面,提供了一种非瞬态计算机可读介质,包括程序指令,程序指令用于使第二装置:从第一装置接收对任务的执行的请求,任务包括要被执行的多个功能;基于执行计划,在至少一个可信执行环境中执行多个功能以获得针对任务的执行结果;基于执行计划,从多个功能的标识信息生成第二验证密钥;以及向第一装置传输执行结果和用于验证执行结果的正确性的第二验证密钥。
[0013]应当理解,
技术实现思路
部分无意标识本公开的实施例的关键或必要特征,也无意用于限制本公开的范围。通过以下描述,本公开的其他特征将变得容易理解。
附图说明
[0014]现在将参照附图描述一些示例实施例,其中:
[0015]图1示出了其中可以实现本公开的示例实施例的示例环境;
[0016]图2示出了示出根据本公开的一些示例实施例的用于可验证计算的过程的信令图;
[0017]图3示出了示出根据本公开的一些示例实施例的功能的执行顺序的改变的示例;
[0018]图4A至图4D示出了根据本公开的一些示例实施例的执行计划的一些示例;
[0019]图5A至图5C示出了根据本公开的一些示例实施例的用于在第二装置处生成针对给定功能的中间密钥的过程;
[0020]图6A和图6B示出了根据本公开的一些示例实施例的用于在第一装置处生成针对给定功能的中间密钥的过程;
[0021]图7示出了根据本公开的一些示例实施例的在请求要被执行的任务的装置处实现的示例方法的流程图;
[0022]图8示出了根据本公开的一些示例实施例的在执行所请求的任务的装置处实现的示例方法的流程图;
[0023]图9示出了适合于实现本公开的示例实施例的设备的简化框图;以及
[0024]图10示出了根据本公开的一些示例实施例的示例计算机可读介质的框图。
[0025]在所有附图中,相同或相似的附图标记表示相同或相似的元素。
具体实施方式
[0026]现在将参考一些示例实施例来描述本公开的原理。应当理解,描述这些实施例仅用于说明的目的,并帮助本领域技术人员理解和实现本公开,并不在于暗示对本公开的范围的任何限制。本文中描述的公开内容可以以除了下面描述的方式之外的各种方式来实现。
[0027]在以下描述和权利要求中,除非另外定义,否则本文使用的所有技术和科学术语具有与本公开所属领域的普通技术人员通常理解的相同含义。
[0028]本公开中对“一个实施例”,“实施例”,“示例实施例”等的引用表示所描述的实施例可以包括特定的特征、结构或特性,但是每个实施例不必都包括该特定的特征、结构或特性。此外,这些术语不一定指相同实施例。此外,当结合实施例描述特定特征、结构或特性时,主张的是结合其他实施例(无论是否明确描述)来使本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种第一装置,包括:至少一个处理器;以及包括计算机程序代码的至少一个存储器;其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第一装置:向第二装置传输对任务的执行的请求,所述任务包括要被执行的多个功能;基于所述第二装置的至少一个可信执行环境中的预期执行计划,从所述多个功能的标识信息生成第一验证密钥;从所述第二装置接收针对所述任务的执行结果和第二验证密钥;以及通过比较所述第一验证密钥和所述第二验证密钥来确定所述执行结果的正确性。2.根据权利要求1所述的装置,其中所述预期执行计划至少指示所述多个功能的执行顺序,并且其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第一装置通过以下来生成所述第一验证密钥:按照所述执行顺序生成针对所述多个功能的中间密钥,针对功能的中间密钥至少基于针对在所述执行顺序中所述功能的前序功能的中间密钥来确定;以及基于针对所述多个功能中的最后功能所生成的所述中间密钥,确定所述第一验证密钥。3.根据权利要求2所述的装置,其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第一装置通过以下来生成所述中间密钥:对于所述多个功能中的给定功能,确定在所述执行顺序中针对所述给定功能的前序功能的第一数目和针对所述给定功能的后继功能的第二数目;基于所述第一数目生成针对所述给定功能的验证信息;以及基于所述第二数目和所述验证信息,生成针对所述给定功能的所述中间密钥。4.根据权利要求3所述的装置,其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第一装置通过以下来生成所述验证信息:响应于所述第一数目指示一个前序功能,通过连接针对所述一个前序功能的所述中间密钥和所述给定功能的所述标识信息,来生成所述验证信息。5.根据权利要求3所述的装置,其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第一装置通过以下来生成所述验证信息:响应于所述第一数目指示多个前序功能,通过以下来生成针对所述给定功能的所述验证信息:合并针对所述多个前序功能的所述中间密钥,以获得合并中间密钥,以及连接所述合并中间密钥与所述给定功能的所述标识信息。6.根据权利要求3所述的装置,其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第一装置通过以下生成所述验证信息:响应于所述第一数目指示零个前序功能,通过连接随机数和所述给定功能的所述标识信息来生成所述验证信息,所述随机数也用于所述第二验证密钥的生成。7.根据权利要求6所述的装置,其中所述至少一个存储器和所述计算机程序代码被配
置为与所述至少一个处理器一起还使所述第一装置:通过向所述任务中要被处理的输入数据应用散列函数,来生成所述随机数。8.根据权利要求3所述的装置,其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第一装置通过以下来基于所述第二数目和所述验证信息生成所述中间密钥:响应于所述第二数目指示零个后继功能,通过向所述验证信息应用散列函数,来生成针对所述给定功能的所述中间密钥。9.根据权利要求3所述的装置,其中所述预期执行计划还指示所述多个功能跨所述至少一个可信执行环境的分布,并且其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第一装置通过以下来基于所述第二数目和所述验证信息来生成针对所述给定功能的所述中间密钥:响应于所述第二数目指示至少一个后继功能,基于所述预期执行计划确定所述至少一个后继功能是否在与所述给定功能的可信执行环境不同的可信执行环境中被执行;响应于确定所述至少一个后继功能在与所述给定功能的所述可信执行环境不同的可信执行环境中被执行,通过向所述验证信息应用散列函数来生成针对所述给定功能的所述中间密钥;以及响应于确定所述至少一个后继功能在与所述给定功能的所述可信执行环境相同的可信执行环境中被执行,将所述验证信息确定为针对所述给定功能的所述中间密钥。10.根据权利要求1所述的装置,其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第一装置通过以下来确定所述执行结果的所述正确性:响应于所述第二验证密钥与所述第一验证密钥相同,确定所述执行结果是正确的;以及响应于所述第二验证密钥不同于所述第一验证密钥,确定所述执行结果是不正确的。11.一种第二装置,包括:至少一个处理器;以及包括计算机程序代码的至少一个存储器;其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第二装置:从第一装置接收对任务的执行的请求,所述任务包括要被执行的多个功能;基于执行计划,在至少一个可信执行环境中执行所述多个功能以获得针对所述任务的执行结果;基于所述执行计划,从所述多个功能的标识信息生成第二验证密钥;以及向所述第一装置传输所述执行结果和用于验证所述执行结果的正确性的第二验证密钥。12.根据权利要求11所述的装置,其中所述执行计划至少指示所述多个功能的执行顺序,并且其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第二装置通过以下来生成所述第二验证密钥:
按照所述执行顺序生成针对所述多个功能的中间密钥,针对功能的中间密钥至少基于针对在所述执行顺序中所述功能的前序功能的中间密钥来确定;以及基于针对所述多个功能中的最后功能所生成的所述中间密钥,确定所述第二验证密钥。13.根据权利要求12所述的装置,其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第二装置通过以下来生成针对所述多个功能的所述中间密钥:在所述至少一个可信执行环境内生成针对所述多个功能的所述中间密钥。14.根据权利要求12所述的装置,其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第二装置通过以下来生成所述中间密钥:对于所述多个功能中的给定功能,确定在所述执行顺序中针对所述给定功能的前序功能的第一数目和针对所述给定功能的后继功能的第二数目;基于所述前序功能的所述第一数目,生成针对所述给定功能的验证信息;以及基于所述第二数目和所述验证信息,生成针对所述给定功能的所述中间密钥。15.根据权利要求14所述的装置,其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第二装置通过以下来生成所述验证信息:响应于所述第一数目指示零个前序功能,通过连接随机数和所述给定功能的所述标识信息来生成所述验证信息,所述随机数还由所述第一装置使用以用于第一验证密钥的生成。16.根据权利要求15所述的装置,其中所述随机数是通过向所述任务中要被处理的输入数据应用散列函数来生成的。17.根据权利要求15所述的装置,其中所述预期执行计划还指示所述多个功能跨所述至少一个可信执行环境的分布,并且其中所述至少一个存储器和所述计算机程序代码被配置以与所述至少一个处理器一起使所述第二装置通过以下来生成所述验证信息:响应于所述第一数目指示针对所述给定功能的至少一个前序功能,基于所述执行计划确定所述至少一个前序功能和所述给定功能是否在与所述给定功能的可信执行环境相同的可信执行环境中被执行;以及基于所述第一数目和所述确定的结果,生成所述验证信息。18.根据权利要求17所述的装置,其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第二装置通过以下来基于所述第一数目和所述确定的所述结果来生成所述验证信息:响应于...

【专利技术属性】
技术研发人员:闫峥孙暐丁文秀
申请(专利权)人:诺基亚技术有限公司
类型:发明
国别省市:

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

1