安全区交互制造技术

技术编号:26610862 阅读:61 留言:0更新日期:2020-12-04 21:36
本公开的各方面提供了与安全区有关的各种方法。例如,一种用于安全区实体对第二实体进行认证的方法可以包括:由安全区实体的主机计算设备的一个或多个处理器接收请求和对第二实体的身份的断言,该断言包括用于第二身份的身份信息;使用安全区实体的断言验证器来确定断言是否有效;当断言有效时,提取身份信息;使用用于安全区实体的访问控制列表来对第二实体进行认证以确定身份信息是否满足访问控制列表的预期;当身份信息满足访问控制列表的预期时,完成请求。

【技术实现步骤摘要】
【国外来华专利技术】安全区交互相关申请的交叉引用本申请要求于2018年4月30日提交的美国临时申请No.62/664,463的申请日的权益,其公开内容通过引用合并于此。
技术介绍
安全区技术可以使软件程序员能够开发安全的应用,这些应用被包含在称为安全区(enclave)的安全执行环境中。能够通过代码身份来识别安全区。安全区的代码身份封装安全区编写者对安全区行为的预期,并且通常包括关于正在安全区内部运行的代码、在其中运行代码的环境以及影响代码执行的任何附加参数的密码信息。安全区代码身份是由安全区执行的许多安全操作的基础。在安全区内部运行的应用通常具有像存储器和代码完整性及存储器加密一样的保护措施。这些保护措施保护安全区免受在其外部执行的代码例如操作系统或管理程序的影响。附加地,安全区能够提供它们正在运行的代码的可验证证明。这是在安全区系统内启用信任的关键安全性属性。利用这些保护和安全性保证,程序设计员能够编写应用,该应用首先验证它确实在运行预期代码,执行一些安全性敏感的计算,并且将任何附加应用秘密供应到安全区中或从安全区中提取任何附加应用秘密。像这样的单安全区系统对简单应用来说是足够的,在简单应用中,应用逻辑是自包含的并且不需要与外部实体进行通信。然而,这种相同的安全性并未很好地转化到涉及多个本地和远程安全区实体的更复杂系统。一些系统也提供秘密密封,该秘密密封允许对秘密进行加密,使得仅具有特定身份的实体才能够打开它。前述安全区技术可以提供用于供应被绑定到安全区的身份的指定子集的密钥的硬件支持。这可以授予安全区密封秘密使得它们仅能够由在同一机器上执行的其身份与由密封器机器指定的子集匹配的另一安全区解封的能力。
技术实现思路
本公开的各方面提供了一种用于安全区实体对第二实体进行认证的方法。该方法包括:由安全区实体的主机计算设备的一个或多个处理器接收请求和对第二实体的身份的断言,该断言包括用于第二身份的身份信息;由一个或多个处理器使用安全区实体的断言验证器来确定断言是否有效;当断言有效时,由一个或多个处理器提取身份信息;由一个或多个处理器使用用于安全区实体的访问控制列表来对第二实体进行认证以确定身份信息是否满足访问控制列表的预期;以及当身份信息满足访问控制列表的预期时,由一个或多个处理器完成请求。在一个示例中,第二实体是非安全区实体。在另一示例中,第二实体是第二安全区实体。在另一示例中,断言无效,从而拒绝请求。在另一示例中,当身份信息不满足访问控制列表的预期时,拒绝请求。在另一示例中,该方法还包括:使用安全区实体的断言生成器来生成包括用于安全区实体的身份信息的第二断言;以及将第二断言发送到第二实体以进行验证。在另一示例中,断言验证器包括用于验证断言并从经验证的断言中提取身份的指令。在另一示例中,断言验证器提供指示断言是否有效的布尔响应。在另一示例中,该方法还包括使用身份访问控制列表评估器来确定身份信息是否满足访问控制列表的预期,并且身份访问控制列表评估器包括用于对由实体拥有的身份集进行操作并且对照访问控制策略来评估该身份集的指令。在此示例中,身份访问控制列表评估器提供指示身份信息是否满足访问控制列表的预期匹配的布尔响应。此外,访问控制列表包括安全区身份预期的表达式,并且身份预期用于确定身份信息是否满足访问控制列表的预期。此外或替换地,安全区身份预期经由一个或多个逻辑运算被配置为包括两个或更多个身份预期的谓词。此外或替换地,每个身份预期包括参考身份和匹配规范,并且其中,至少一个参考身份和至少一个匹配规范用于确定身份信息是否满足访问控制列表的预期。在另一示例中,安全区实体包括安全区服务器,该安全区服务器包括被配置成接收并完成请求的指令,并且其中,该安全区服务器用于完成请求。在另一示例中,身份信息包括身份描述,该身份描述将断言的身份分类为由安全区实体支持的身份类型并且识别负责处理该身份类型的身份的机构。在此示例中,机构用于识别断言验证器以便确定断言是否有效。此外或替换地,机构用于识别库以便确定身份信息是否满足访问控制列表的预期。附加地或替换地,机构用于识别包括接口的插件以便确定断言是否有效并且以便确定身份信息是否满足访问控制列表的预期。在另一示例中,安全区实体和第二实体位于主机计算设备的本地存储器中。在另一示例中,第二实体位于第二主机计算设备的本地存储器中,第二主机计算设备与主机计算设备不同。本公开的另一方面提供了一种在安全区实体与第二实体之间建立通信信道的方法。该方法包括:由安全区实体的主机计算设备的一个或多个处理器从第二实体接收要发起通信信道的请求;由一个或多个处理器与第二实体协商用于通信信道的记录协议和用于以密码方式保护在通信信道之上发送的业务的秘密密钥;以及在协商完成之后,利用使用记录协议并且使用秘密密钥的通信信道与第二实体进行通信以对在通信信道之上交换的数据进行加密和认证。在一个示例中,该方法还包括由一个或多个处理器进行证明和认证过程以验证第二实体的身份,证明过程包括接收第二实体的身份的断言并且验证第二实体的身份。在此示例中,证明和认证过程进一步包括将安全区实体的身份的断言发送到第二实体。在另一示例中,协商记录协议在进行证明和认证过程之前发生。在此示例中,该方法进一步包括在进行证明和认证过程之前协商身份的一种或多种类型的断言,使得在证明和认证过程中使用身份的一种或多种类型的断言。在此示例中,协商身份的一种或多种类型的断言包括识别安全区实体能够做出并验证的一种或多种类型的断言。此外或替换地,协商身份的一种或多种类型的断言包括接收第二实体能够做出并验证的一种或多种类型的断言。在另一示例中,请求作为对安全区实体的远程过程调用被接收。在另一示例中,记录协议是消息传递协议,该消息传递协议用于在使用通信信道与第二实体进行通信时发送应用级数据。在另一示例中,该方法还包括由一个或多个处理器进行认证和授权过程以验证第二实体的身份,并且在协商完成之后进行认证和授权过程的至少一部分。在此示例中,认证和授权过程的第一部分包括验证接收到的第二实体的身份的断言。在另一示例中,认证和授权过程的第二部分包括使用从断言中提取的身份信息来授权第二实体。在此示例中,在使用通信信道来通信之前执行第一部分并且在使用通信信道来通信之前执行第二部分。或者,该方法还包括当安全区实体不能够对第二实体进行认证时中止通信信道。在另一示例中,在协商秘密密钥之前协商记录协议。在另一示例中,第二实体是非安全区实体。在另一示例中,第二实体是第二安全区实体。在此示例中,协商是利用第二安全区实体的安全区服务器来进行的,该安全区服务器被配置为包括被配置成接收并完成请求的指令的安全区服务器,并且其中,安全区服务器用于完成请求。在另一示例中,安全区实体和第二实体位于主机计算设备的本地存储器中。在另一示例中,在另一示例中,第二实体位于第二主机计算设备的本地存储器中,第二主机计算设备与主机计算设备不同。本公开的另一方面提供了一种在主机计算设备的第一安全区实体中密封秘密的方法。该方法包括:由主机计算设备的一个或多个处理器向第一安全区实体的密封库输入报头和秘密,该报头包括用于秘密的本文档来自技高网
...

【技术保护点】
1.一种用于安全区实体对第二实体进行认证的方法,所述方法包括:/n由所述安全区实体的主机计算设备的一个或多个处理器接收请求和对所述第二实体的身份的断言,所述断言包括用于第二身份的身份信息;/n由所述一个或多个处理器使用所述安全区实体的断言验证器来确定所述断言是否有效;/n当所述断言有效时,由所述一个或多个处理器提取所述身份信息;/n由所述一个或多个处理器使用用于所述安全区实体的访问控制列表来对所述第二实体进行认证以确定所述身份信息是否满足所述访问控制列表的预期;以及/n当所述身份信息满足所述访问控制列表的预期时,由所述一个或多个处理器完成所述请求。/n

【技术特征摘要】
【国外来华专利技术】20180430 US 62/664,4631.一种用于安全区实体对第二实体进行认证的方法,所述方法包括:
由所述安全区实体的主机计算设备的一个或多个处理器接收请求和对所述第二实体的身份的断言,所述断言包括用于第二身份的身份信息;
由所述一个或多个处理器使用所述安全区实体的断言验证器来确定所述断言是否有效;
当所述断言有效时,由所述一个或多个处理器提取所述身份信息;
由所述一个或多个处理器使用用于所述安全区实体的访问控制列表来对所述第二实体进行认证以确定所述身份信息是否满足所述访问控制列表的预期;以及
当所述身份信息满足所述访问控制列表的预期时,由所述一个或多个处理器完成所述请求。


2.根据权利要求1所述的方法,其中,所述第二实体是非安全区实体。


3.根据权利要求1所述的方法,其中,所述第二实体是第二安全区实体。


4.根据权利要求1所述的方法,其中,当所述断言无效时,拒绝所述请求。


5.根据权利要求1所述的方法,其中,当所述身份信息不满足所述访问控制列表的预期时,拒绝所述请求。


6.根据权利要求1所述的方法,进一步包括:
使用所述安全区实体的断言生成器来生成包括用于所述安全区实体的身份信息的第二断言;以及
将所述第二断言发送到所述第二实体以进行验证。


7.根据权利要求1所述的方法,其中,所述断言验证器包括用于验证断言并且从经验证的断言中提取身份的指令。


8.根据权利要求1所述的方法,其中,所述断言验证器提供指示所述断言是否有效的布尔响应。


9.根据权利要求1所述的方法,进一步包括,使用身份访问控制列表评估器来确定所述身份信息是否满足所述访问控制列表的预期,其中,所述身份访问控制列表评估器包括用于对由实体拥有的身份集进行操作并且对照访问控制策略来评估该身份集的指令。


10.根据权利要求9所述的方法,其中,所述身份访问控制列表评估器提供指示所述身份信息是否满足所述访问控制列表的预期匹配的布尔响应。


11.根据权利要求10所述的方法,其中,所述访问控制列表包括安全区身份预期的表达式,并且所述身份预期用于确定所述身份信息是否满足所述访问控制列表的预期。


12.根据权利要求10所述的方法,其中,所述安全区身份预期经由一个或多个逻辑运算被配置为包括两个或更多个身份预期的谓词。


13.根据权利要求10所述的方法,其中,每个身份预期包括参考身份和匹配规范,并且其中,至少一个参考身份和至少一个匹配规范用于确定所述身份信息是否满足所述访问控制列表的预期。


14.根据权利要求1所述的方法,其中,所述安全区实体包括安全区服务器,所述安全区服务器包括被配置成接收并完成所述请求的指令,并且其中,所述安全区服务器用于完成所述请求。


15.根据权利要求1所述的方法,其中,所述身份信息包括身份描述,所述身份描述将所述断言的身份分类为由所述安全区实体支持的身份类型并且识别负责处理该身份类型的身份的机构。


16.根据权利要求15所述的方法,其中,所述机构用于识别所述断言验证器以便确定所述断言是否有效。


17.根据权利要求15所述的方法,其中,所述机构用于识别库以便确定所述身份信息是否满足所述访问控制列表的预期。


18.根据权利要求15所述的方法,其中,所述机构用于识别包括接口的插件以便确定所述断言是否有效并且以便确定所述身份信息是否满足所述访问控制列表的预期。


19.根据权利要求1所述的方法,其中,所述安全区实体和所述第二实体位于所述主机计算设备的本地存储器中。


20.根据权利要求1所述的方法,其中,所述第二实体位于第二主机计算设备的本地存储器中,所述第二主机计算设备与所述主机计算设备不同。


21.一种在安全区实体与第二实体之间建立通信信道的方法,所述方法包括:
由所述安全区实体的主机计算设备的一个或多个处理器从所述第二实体接收要发起所述通信信道的请求;
由所述一个或多个处理器与所述第二实体协商用于所述通信信道的记录协议和用于以密码方式保护在所述通信信道上发送的业务的秘密密钥;以及
在所述协商完成之后,利用使用所述记录协议并且使用所述秘密密钥的所述通信信道与所述第二实体进行通信以对在所述通信信道上交换的数据进行加密和认证。


22.根据权利要求21所述的方法,进一步包括由所述一个或多个处理器进行证明和认证过程以验证所述第二实体的身份,其中,所述过程包括:
接收所述第二实体的身份的断言;以及
验证所述第二实体的身份。


23.根据权利要求22所述的方法,其中,所述证明和认证过程进一步包括将所述安全区实体的身份的断言发送到所述第二实体。


24.根据权利要求22所述的方法,其中,协商所述记录协议在进行所述证明和认证过程之前发生。


25.根据权利要求22所述的方法,进一步包括在进行所述证明和认证过程之前协商身份的一种或多种类型的断言,使得在所述断言和认证过程中使用所述身份的一种或多种类型的断言。


26.根据权利要求25所述的方法,其中,协商身份的一种或多种类型的断言包括识别所述安全区实体能够做出并验证的一种或多种类型的断言。


27.根据权利要求25所述的方法,其中,协商身份的一种或多种类型的断言包括接收所述第二实体能够做出并验证的一种或多种类型的断言。


28.根据权利要求21所述的方法,其中,所述请求作为对所述安全区实体的远程过程调用被接收。


29.根据权利要求21所述的方法,其中,所述记录协议是消息传递协议,所述消息传递协议用于在使用所述通信信道与所述第二实体进行通信时发送应用级数据。


30.根据权利要求21所述的方法,进一步包括由所述一个或多个处理器进行认证和授权过程...

【专利技术属性】
技术研发人员:安娜·萨派克乌代·萨瓦岗卡尔杰弗里·托马斯·安德森托马斯·迈克尔·罗德
申请(专利权)人:谷歌有限责任公司
类型:发明
国别省市:美国;US

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

1