【技术实现步骤摘要】
【国外来华专利技术】针对在可信执行环境中执行的可验证性
[0001]本公开的实施例概括地涉及计算机
,尤其涉及针对在可信执行环境(TEE)中执行的可验证性的方法、设备、装置和计算机可读存储介质。
技术介绍
[0002]诸如云计算服务之类的远程计算服务为个人和公司提供场外机会。云服务的示例是云处理服务,其中用户被给与对计算机或计算平台处的处理器资源的访问,以用于数据处理。这例如在以下情况下可能是有用:在弱计算设备需要间歇地访问高性能计算,而获得实际的高性能计算硬件将是浪费的,因为硬件将大部分未使用,因为该需求仅仅是间歇的。
[0003]虽然有用,但是当数据被外包并且在云平台中被切换时存在一些安全性和隐私问题。云计算中的一个关键问题是由云平台提供的处理结果可能是不正确的。解决这个问题的一种方法是可验证计算。可验证计算用于在远程计算平台中检查计算的完整性和机密性。
技术实现思路
[0004]总体上,本公开的示例实施例提供了用于在TEE中的执行的可验证性的方案。
[0005]在第一方面,提供了一种第一装置。该第一装置包括:至少一个处理器;以及包括计算机程序代码的至少一个存储器;其中至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使第一装置:向第二装置传输对任务的执行的请求,任务包括要被执行的多个功能;基于第二装置的至少一个可信执行环境中的预期执行计划,从多个功能的标识信息生成第一验证密钥;从第二装置接收针对任务的执行结果和第二验证密钥;以及通过比较第一验证密钥和第二验证密钥来确定执行结果的正确性。 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】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所述的装置,其中所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述第二装置通过以下来基于所述第一数目和所述确定的所述结果来生成所述验证信息:响应于...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。