数据安全服务系统的制作方法

文档序号:9401962阅读:296来源:国知局
数据安全服务系统的制作方法
【专利说明】数据安全服务系统
[0001] 相关申请的交叉引用
[0002] 本申请要求2013年2月12日提交的美国专利申请号13/765,265的优先权,所述 专利的内容以引用的方式整体并入本文。本申请出于所有目的以引用的方式结合以下专利 申请的全部公开内容:与本申请同时提交的标题为"AUTOMATIC KEY ROTATION"的共同待决 的美国专利申请号13/764, 944;与本申请同时提交的标题为"POLICY ENFORCEMENT WITH ASSOCIATED DATA"的共同待决的美国专利申请号13/764,995 ;与本申请同时提交的标题 为"DATA SECURITY WITH A SECURITY MODULE"的共同待决的美国专利申请号 13/765, 020 ; 与本申请同时提交的标题为"FEDERATED KEY MANAGEMENT"的共同待决的美国专利申请号 13/765,209 ;与本申请同时提交的标题为"DELAYED DATA ACCESS"的共同待决的美国专利 申请号13/765,239 ;与本申请同时提交的标题为"DATA SECURITY SERVICE"的共同待决 的美国专利申请号13/764, 963;以及与本申请同时提交的标题为"SE⑶RE MANAGEMENT OF INFORMATION USING A SECURITY MODULE" 的共同待决的美国专利申请号 13/765,283。
【背景技术】
[0003] 在许多语境中,计算资源和相关数据的安全性非常重要。作为实例,组织通常利用 计算装置的网络来向它们的用户提供一组稳健的服务。网络通常跨多个地理边界并通常与 其他网络连接。例如,组织可支持其使用计算资源的内部网络和由其他人管理的计算资源 两者进行的操作。例如,组织的计算机可在使用另一个组织的服务的同时与其他组织的计 算机通信以访问和/或提供数据。在许多情况下,组织使用由其他组织管理的硬件来配置 并操作远程网络,从而降低基础设施成本并实现其他优点。在具有此类计算资源配置的情 况下,确保对它们所持有的资源和数据的访问安全可能具有挑战性,尤其是随着此类配置 的大小和复杂性的增长。
[0004] 附图简述
[0005] 将参照附图描述根据本公开的各个实施方案,在附图中:
[0006] 图1示出表示根据各个实施方案的本公开的各个方面的说明性图;
[0007] 图2示出可实现本公开的各个方面的环境的说明性实例;
[0008] 图3示出根据至少一个实施方案的可实现本公开的各个方面的环境的说明性实 例以及环境的各个组件之间的示例性信息流动;
[0009] 图4示出根据至少一个实施方案的用于储存密文的说明性过程的示例性步骤;
[0010] 图5示出根据至少一个实施方案的可实现本公开的各个方面的环境的说明性实 例以及环境的各个组件之间的示例性信息流动;
[0011] 图6示出根据至少一个实施方案的用于响应检索数据的请求的说明性过程的示 例性步骤;
[0012] 图7示出根据至少一个实施方案的可实现本公开的各个方面的环境的说明性实 例以及环境的各个组件之间的示例性信息流动;
[0013] 图8示出根据至少一个实施方案的用于响应储存数据的请求的说明性过程的示 例性步骤;
[0014] 图9示出根据至少一个实施方案的可实现本公开的各个方面的环境的说明性实 例以及环境的各个组件之间的示例性信息流动;
[0015] 图10示出根据至少一个实施方案的用于响应检索数据的请求的说明性过程的示 例性步骤;
[0016] 图11示出可实现本公开的各个方面的环境的说明性实例;
[0017] 图12示出根据至少一个实施方案的可实现本公开的各个方面的环境的说明性实 例以及环境的各个组件之间的示例性信息流动;
[0018] 图13示出根据至少一个实施方案的用于响应检索数据的请求的说明性过程的示 例性步骤;
[0019] 图14示出根据至少一个实施方案的用于响应对数据进行解密的请求的说明性过 程的示例性步骤;
[0020] 图15示出根据至少一个实施方案的用于获取已解密数据的说明性过程的示例性 步骤;
[0021] 图16不出根据至少一个实施方案的不例性密码服务系统的图解表不;
[0022] 图17示出根据至少一个实施方案的用于配置策略的说明性过程的示例性步骤;
[0023] 图18示出根据至少一个实施方案的用于在强制实施策略的同时执行密码操作的 说明性过程的示例性步骤;并且
[0024] 图19示出可实现各个实施方案的环境的说明性实例。
[0025] 详述
[0026] 在以下描述中,将描述各个实施方案。出于解释的目的,将阐述具体的配置和细 节,以便提供实施方案的透彻理解。然而,对本领域的技术人员将是显而易见的是,没有具 体细节的情况下也可以实行实施方案。此外,为了不使所描述的实施方案变得模糊,可能会 省略或简化众所周知的特征。
[0027] 本文描述并提议的技术允许增强包括分布式计算资源的环境中的数据安全性。在 一个实例中,分布式计算环境包括可由适当的计算资源实现的一个或多个数据服务系统。 数据服务系统可允许执行与数据有关的各种操作。作为一个说明性实例,分布式计算环境 包括一个或多个数据储存服务系统。可向数据储存服务系统传输执行数据储存操作的电子 请求。示例性操作是使用数据储存服务系统储存数据的操作和使用数据储存服务系统检索 由数据储存服务系统储存的数据的操作。数据服务系统、包括数据储存服务系统还可执行 操纵数据的操作。例如,在一些实施方案中,数据储存服务系统能够对数据进行加密。
[0028] 本公开的各个实施方案包括分布式计算环境,所述分布式计算环境包括使用适当 的计算资源实现的密码服务系统。密码服务系统可由分布式系统实现,所述分布式系统接 收并响应于执行密码操作、如明文的加密和密文的解密的电子请求。在一些实施方案中,密 码服务系统管理密钥。响应于执行密码操作的请求,密码服务系统可执行使用所管理密钥 进行的密码操作。例如,响应于所接收请求,密码服务系统可选择适当的密钥来执行密码操 作,执行密码操作,并提供密码操作的一个或多个结果。在替代配置中,密码服务系统可产 生包络密钥(例如,用于加密特定数据项的会话密钥)并将包络密钥返回至调用服务系统 的密码操作的系统。系统随后可使用包络密钥执行密码操作。
[0029] 在一些实施方案中,密码服务系统为计算资源服务提供者的多个租户管理密钥。 计算资源的租户可以是作为计算资源提供者的客户操作的实体(例如,组织或个人)。客户 可以远程地并编程地配置并操作物理上由计算资源提供者托管的资源。当客户向密码服务 系统提供执行密码操作的请求时(或当实体向密码服务系统提交请求时),密码服务系统 可选择由密码服务系统为客户管理的密钥来执行密码操作。由密码服务系统管理的密钥可 得到安全管理,使得其他用户和/或数据服务系统不能访问他人密钥。实体(例如,用户、客 户、服务系统)缺少对另一个实体的密钥的访问权可意味着所述实体不具有获取他人密钥 的授权方式和/或所述实体不具有引起管理他人密钥的系统在所述实体的指导下使用密 钥的授权方式。例如,密码服务系统可管理密钥,使得对于一个客户来说,其他客户既无法 访问所述客户的密钥也不能引起密码服务系统使用所述客户的密钥来执行密码操作。作为 另一个实例,密码服务系统可管理密钥,使得其他服务系统(如数据储存服务系统)不能引 起密码服务系统使用一些或所有密钥来执行密码操作。对密钥的未授权访问可通过适当的 安全措施来阻止,使得例如未授权访问是困难或不可能的。困难可能是由于计算上的不切 实际性和/或由于需要未授权事件(例如,非法的、侵权的和/或以其他方式不被允许的, 如授权证书的泄露)发生以便获得访问。根据各个实施方案的系统可被配置来确保对获得 对密钥的访问权的计算上的不切实际性进行客观测量。此类测量可例如根据具有限定单位 计算能力(例如,一定操作数/单位时间)的计算机破解经授权访问密钥所需的已加密信 息将花费的平均时间的量来测量。
[0030] 如上所述,密码服务系统可接收来自各种实体(如计算资源提供者的客户)的请 求。密码服务系统还可接收来自计算资源提供者内部的实体的请求。例如,在一些实施方 案中,由计算资源提供者实现的数据服务系统可向密码服务系统传输请求,以引起密码服 务系统执行密码操作。作为一个实例,客户可向数据储存服务系统传输储存数据对象的请 求。请求可指示在储存时数据对象应被加密。数据储存服务系统可向密码服务系统传达执 行密码操作的请求。密码操作可以是例如对由数据储存服务系统用来加密数据对象的密钥 进行加密。密码操作可以是对数据对象本身进行加密。密码操作可以是生成数据储存服务 系统可用来加密数据对象的包络密钥。
[0031] 根据各个实施方案的系统实施各种安全措施以提供增强的数据安全性。例如,在 各个实施方案中,密码服务系统可利用它所管理的密钥的方式受到限制。例如,在一些实施 方案中,密码服务系统被配置来仅在适当的授权之后使用对应于客户的密钥。如果使用客 户的密钥的请求据称源自客户(即,来自代表客户操作的计算装置),则密码服务系统可被 配置来要求请求是使用客户所拥有的适当证书电子地(数字地)被签名。如果使用客户的 密钥的请求源自另一个数据服务系统,则密码服务系统可被配置来要求数据服务系统提供 客户已经向数据服务系统做出已签名请求的证明。例如,在一些实施方案中,数据服务系统 被配置来获取并提供用作已认证客户请求的证明的令牌。其他安全措施也可内置于包括密 码服务系统的电子环境的配置中。例如,在一些实施方案中,密码服务系统被配置来根据语 境限制密钥使用。作为一个说明性实例,针对来自客户或来自代表客户起作用的数据服务 系统的请求,密码服务系统可被配置来使用密钥进行加密。然而,针对来自客户(而不是来 自另一个数据服务系统)的请求,密码服务系统可被配置来仅使用密钥进行解密。以此方 式,如果数据服务系统泄露,则数据服务系统将不能引起密码服务系统对数据进行解密。
[0032] 各种安全措施可内置于密码服务系统和/或它的电子环境中。一些安全措施可根 据策略来管理,在一些实施方案中所述策略是可配置的。作为一个实例,密码服务系统可利 用使得用户能够配置关于密钥的策略的应用程序编程接口(API)。关于密钥的策略可以是 以下信息:当由密码服务系统处理时,所述信息确定密钥在一定情况下是否可使用。策略 可例如限制能够直接使用密钥的用户和/或系统的标识码,限制密钥可使用时的时间,限 制密钥可用来对其执行密码操作的数据,并提供其他限制。策略可提供显式限制(例如,谁 不可使用密钥)和/或可提供显式授权(例如,谁可使用密钥)。此外,策略可复杂地构成 以便大体上提供密钥可以和不可以使用时的条件。当接收到使用密钥执行密码操作的请求 时,关于密钥的任何策略可被访问并处理,以确定请求是否可根据策略完成。
[0033] 图1是展示本公开的各个实施方案的说明性图100。在实施方案中,密码服务系统 执行密码操作,密码操作可包括根据一个或多个密码算法应用一个或多个计算。如图1所 示,密码服务系统使得用户或服务系统能够从密文生成明文。在示例性配置中,密码服务系 统可用于对密钥进行加密/解密,并且这些密钥可用于对数据、如储存在数据储存服务系 统中的数据进行加密/解密。例如,密码服务系统接收从在密钥下加密的密文生成明文的 请求。密码服务系统确定请求者是授权实体;使用主密钥对密钥进行解密并且将现已解密 的密钥返回至服务系统,所述服务系统可使用已解密密钥从密文生成明文。在另一种配置 中,密码服务系统接收密文并且将所接收密文处理成明文,所述明文作为服务由密码服务 系统提供。在这个实例中,密文可作为从授权实体到密码服务系统的电子请求的部分来提 供给密码服务系统,授权实体可以是操作密码服务系统的计算资源提供者的客户和/或可 以是计算资源提供者的另一个服务系统。图1所示的密码服务系统可利用一个或多个强加 密算法对数据进行加密。此类强加密算法可包括例如高级加密标准(AES)、Blowfish、数据 加密标准(DES)、三重DES、Serpent或Twofish,并且根据所选择的具体实现方式,可以是不 对称的或对称的密钥体系。一般地,密码服务系统可利用任何加密和/或解密算法(加密 法)或利用由密码服务系统管理的数据的算法的组合。
[0034] 如下文将更详细论述,密码服务系统可以各种方式来实现。在实施方案中,密码服 务系统由根据下文的描述配置的计算机系统来实现。计算机系统自身可包括一个或多个计 算机系统。例如,根据各个实施方案,密码服务系统可实现为共同地被配置来执行密码操作 的计算机系统的网络。或换言之,计算机系统可以是分布式系统。在实施方案中,密文是已 经使用密码算法加密的信息。在图1的实例中,密文是呈已加密形式的明文。明文可以是 任何信息,并且当名称不包括文字文本时,明文和密文可以是以任何合适形式编码的信息, 并且不必包括文本信息,但它可包括文本信息。例如,如图1所示,明文和密文包括比特序 列。明文和密文也可以其他方式并且一般以加密和解密可由计算机系统执行的任何方式来 表不。
[0035] 图2示出可实现如图1所示的密码服务系统的环境200的说明性实例。在200的环 境中,各种组件一起操作,以便提供安全数据相关的服务。在这个具体实例中,环境200包 括密码服务系统、认证服务系统、数据服务前端以及数据服务后端储存系统。在一个实施方 案中,在环境200中,密码服务系统被配置来执行密码操作,如通过接收来自数据服务前端 的明文并提供密文作为回报,或向服务系统提供包络密钥、使得服务系统可使用包络密钥 来执行加密操作。密码服务系统可执行如下文描述的另外的功能,如安全存储用于执行密 码操作的密钥,密码操作如将明文转换成密文和将密文解密成明文。密码服务系统还可执 行策略强制实施所包括的操作,如强制实施与其中储存的密钥关联的策略。以下提供可由 密码服务系统强制实施的示例性策略。在实施方案中,数据服务前端是被配置来接收并响 应在网络上从各个用户传输的请求的系统。请求可以是执行与储存或将要储存在数据服务 后端储存系统中的数据有关的操作的请求。在环境200中,认证服务系统、密码服务系统、 数据服务前端以及数据服务后端储存系统可以是计算资源提供者的系统,所述计算资源提 供者利用系统向由图2所示的用户代表的客户提供服务。图2所示的网络可以是任何合适 的网络或网络组合,包括下文论述的那些。
[0036] 在实施方案中,认证服务系统是被配置来执行对用户进行认证所包括的操作的计 算机系统。例如,数据服务前端可向认证服务系统提供来自用户的信息,以接收指示用户请 求是否可信的信息作为回报。确定用户请求是否可信可以任何合适的方式来执行,并且执 行认证的方式在各个实施方案之间可能有所不同。例如,在一些实施方案中,用户对传输至 数据服务前端的消息进行电子签名。电子签名可使用进行认证的实体(例如,用户)和认 证服务系统都可获得的秘密信息(例如,与用户关联的密钥对的私人密钥)生成。可向认 证服务系统提供请求和请求的签名,认证服务系统可使用秘密信息计算用于与所接收签名 进行比较的参考签名,以便确定请求是否可信。如果请求可信,那么认证服务系统可以提供 以下信息,数据服务前端可以使用所述信息向其他服务系统(如密码服务系统)证明请求 是可信的,从而使得其他服务系统能够相应地操作。例如,认证服务系统可提供另一个服务 系统可分析以验证请求可信性的令牌。电子签名和/或令牌可具有以各种方式来限制的有 效性。例如,电子签名和/或令牌可在一定时间量内是有效的。在一个实例中,电子签名和 /或令牌至少部分地基于将时间戳看作输入的函数(例如,基于散列的消息认证码)生成, 时间戳包括在用于验证的电子签名和/或令牌内。检验所提交电子签名/或令牌的实体可 以检查所接收时间戳是足够当前的(例如,在从当前时间开始的预先确定的时间量内)并 使用所接收时间戳生成参考签名/令牌。如果用于生成所提交电子签名/令牌的时间戳不 是足够当前的和/或所提交签名/令牌和参考签名/令牌不匹配,那么认证可能失败。以 此方式,如果电子签名泄露,它将仅在短时间内有效,从而限制由泄露造成的潜在危害。应 注意,验证可信性的其他方式也被视为是在本公开的范围内。
[0037] 在实施方案中,数据服务后端储存系统是根据通过数据服务前端接收的请求储存 数据的计算机系统。如下文更详细论述,数据服务后端储存系统可以已加密形式储存数据。 数据服务后端储存系统中的数据也可以非加密形式储存。在一些实施方案中,由数据服务 前端实现的API允许请求指定是否应加密将要存储在数据服务后端储存系统中的数据。根 据各个实施方案,加密并储存在数据服务后端储存系统中的数据可以各种方式来加密。例 如,在各个实施方案中,数据是使用密码服务系统可访问但环境200的一些或所有其他系 统不可访问的密钥来加密。数据可由密码服务系统编码以便储存在数据服务后端储存系统 中,和/或在一些实施方案中,数据可由另一系统、如用户系统或数据服务前端的系统使用 由密码服务系统解密的密钥来加密。以下提供环境200可操作以对数据进行加密的各种方 式的实例。
[0038] 环境200 (和本文描述的其他环境)的众多变体被视为是在本公开的范围内。例 如,环境200可包括可与密码服务系统和/或认证服务系统通信的另外服务系统。例如,环 境200可包括可以不同方式储存数据的另外数据储存服务系统(各自可包括前端系统和后 端系统)。例如,一个数据储存服务系统可提供有效数据访问,其中数据储存服务系统以同 步方式执行数据储存服务(例如,检索数据的请求可接
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1