CN105580311B - 使用请求供应的密钥保护数据安全性的方法和装置 - Google Patents
使用请求供应的密钥保护数据安全性的方法和装置 Download PDFInfo
- Publication number
- CN105580311B CN105580311B CN201480052720.0A CN201480052720A CN105580311B CN 105580311 B CN105580311 B CN 105580311B CN 201480052720 A CN201480052720 A CN 201480052720A CN 105580311 B CN105580311 B CN 105580311B
- Authority
- CN
- China
- Prior art keywords
- request
- key
- data
- cryptographic key
- isp
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/76—Proxy, i.e. using intermediary entity to perform cryptographic operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3242—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Storage Device Security (AREA)
Abstract
请求被提交给请求处理实体,其中所述请求包括将用于履行所述请求的密码密钥。所述请求处理实体,在接收到所述请求后,从所述请求提取所述密钥并且使用所述密钥来执行一个或多个密码操作以便履行所述请求。所述一个或多个密码操作可包括通过所述请求处理实体的子***加密将以加密形式存储的数据/解密已经以加密形式存储的数据。在履行所述请求后,所述请求处理实体可执行一个或多个操作以失去对所述请求中的所述密钥的访问,从而失去使用所述密钥的能力。
Description
相关申请的交叉引用
本申请以引用方式出于所有目的并入2013年9月25日提交的标题为“具有密钥的资源定位符”(RESOURCE LOCATORS WITH KEYS)的美国专利申请号14,037,282和2013年9月25日提交的标题为“使用请求供应的密钥的数据安全性”(DATA SECURITY USING REQUEST-SUPPLIED KEYS)的美国专利申请号14/037,292的全部公开内容。
技术背景
在许多语境中,计算资源和相关数据的安全性非常重要。作为实例,组织通常利用计算装置的网络来向它们的用户提供一组稳健的服务。网络通常跨多个地理边界并通常与其他网络连接。例如,组织可支持其使用计算资源的内部网络和由其他人管理的计算资源两者进行的操作。例如,组织的计算机可在使用另一个组织的服务的同时与其他组织的计算机通信以访问和/或提供数据。在许多情况下,组织使用由其他组织管理的硬件来配置并操作远程网络,从而降低基础设施成本并实现其他优点。在具有此类计算资源配置的情况下,确保对它们所持有的资源和数据的访问安全可能具有挑战性,尤其是随着此类配置的大小和复杂性的增长。
附图简述
将参照附图描述根据本公开的各个实施方案,在附图中:
图1示出可实现各个实施方案的环境的说明性实例;
图2示出可实现各个实施方案的环境的说明性实例;
图3示出根据至少一个实施方案的请求的代表的说明性实例;
图4示出根据至少一个实施方案的用于提交请求的过程的说明性实例;
图5示出根据至少一个实施方案的用于处理请求的过程的说明性实例;
图6示出根据至少一个实施方案的请求的代表的说明性实例;
图7示出根据至少一个实施方案的用于处理PUT请求的过程的说明性实例;
图8示出根据至少一个实施方案的用于提交GET请求的过程的说明性实例;
图9示出根据各个实施方案的请求的代表的说明性实例;
图10示出根据至少一个实施方案的用于提交请求的过程的说明性实例;
图11示出可实现各个实施方案的环境的说明性实例;
图12示出根据至少一个实施方案的用于处理请求的过程的说明性实例;
图13示出可实现各个实施方案的环境的说明性实例;
图14示出根据至少一个实施方案的用于处理请求的过程的说明性实例;以及
图15示出可实现各个实施方案的环境。
详述
在以下描述中,将描述各个实施方案。出于解释的目的,将阐述具体的配置和细节,以便提供实施方案的透彻理解。然而,对本领域的技术人员将是显而易见的是,没有具体细节的情况下也可以实行实施方案。此外,为了不使所描述的实施方案变得模糊,可能会省略或简化众所周知的特征。
本文描述和建议的技术涉及请求的提交和处理,其中所述请求包括密码密钥。所述请求可由服务提供者(如计算资源服务提供者)的客户生成并且由其提交。处理所述请求可包括使用被包括在请求中的密钥来执行一个活多个密码操作,如关于数据的电子(数字)签名的加密、解密和生成。在一些实施方案中,本文描述和建议的技术用来允许服务器端加密(和/或相关技术如解密),其中有待用于加密/解密的密钥是由客户端(即,客户装置或代表客户操作)控制的。
在各个实施方案中,请求中所提供的密钥的使用被执行以便服务提供者在使用密钥的有限时间之外缺少对密钥的访问。例如,服务提供者可操作数据存储服务。客户可将数据传送到服务提供者以便通过数据存储服务来存储。对服务提供者的请求可包括有待使用来加密数据的密钥。服务提供者可从所述请求获得密钥并且使用所述密钥来加密数据,以便可使用数据存储服务来持久地存储已加密数据。当不再需要密钥时(例如,当数据的加密已经完成时),服务提供者可执行一个或多个操作以失去对密钥的访问,如通过销毁存储器中的任何密钥副本或允许将其销毁。数据的呈明文形式的任何副本可以类似方式被销毁或允许将其销毁。一旦已经销毁了密钥和明文数据,客户就可确保提供者不能够加密数据。因此,即使提供者处的安全漏洞或其他事件致使对未经客户授权的数据的访问,所述漏洞本身不允许对呈明文形式的数据的访问。
根据不同实施方案可以各种方式在请求中提供密钥。例如,在一些实施方案中,所述请求包括呈明文形式的密钥。所述明文密钥可以是有待在对称密钥算法中使用的对称密钥。所述明文密钥还可以是用于不对称密钥算法的公钥-私钥对的公钥,其中服务提供者缺少对密钥对的私钥的访问并且所述私钥可访问能够使用私钥来解密的实体(例如,客户)。在一些实施方案中,请求包括呈加密(包裹)形式的密钥。例如,可对所述密钥进行加密以便可由服务提供者或在服务提供者的指导下的另一个实体解密。用来加密请求中的密钥的密钥可以是与能够解密所述密钥的实体(例如,服务提供者)共享的秘密或公钥-私钥对的公钥,其中所述私钥将由实体使用来解密已加密密钥,以用于处理所述请求。[注意:需要更新段落间距]。
在接收到具有密钥的请求后,服务提供者可访问来自所述请求的密钥,从而(如果适用)解密所述密钥或使所述密钥解密,并且随后处理请求。可执行其他操作,如通过验证请求的电子签名或检查请求的履行是否遵循任何适用的策略。下文更详细地论述可能执行的操作的其他细节。
图1示出可实现各个实施方案的环境100的说明性实例。在环境100中,客户102将请求104传送到服务提供者106。客户102例如可利用服务提供者106的服务。所述服务提供者可提供与数据相关的任何类型的服务,所述服务可由客户利用。示例***包括数据存储服务、数据库服务、处理数据的服务和其他服务。为了向服务提供者106提交请求104,客户102可在一个或多个用户装置的帮助下传送所述请求,所述一个或多个客户装置如个人计算机或膝上型计算机、移动装置、平板计算装置、电子书阅读器和/或如下文结合图15更详细描述的其他装置。另外,可根据客户102的一个或多个自动化过程提交请求104。例如,作为客户102的装置的人类操作员与客户102的装置的浏览器或其他应用的互动的结果可传送请求104。请求104可以是通过网络,如互联网或任何其他网络或下文论述的网络组合传送的电子请求。在一些实施方案中,例如,请求104是由服务提供者106向网络服务接口提供的网络服务请求。一般来说,可根据各种协议来配置请求104,请求可通过所述协议来以电子方式提交。
如图1所示,请求104包括数据108和密码密钥110。所述数据可包括各种类型的信息并且可根据各个实施方案的各种方式格式化。例如,在一些实施方案中,所述数据被组织为文件,如媒体文件。还可以其他方式格式化数据。所述数据可被例如组织以便包括在数据库或其他装置中。如下文更详细论述的密码密钥110可以是用来加密数据108或以其他方式执行关于数据的一个或多个密码操作的密钥。应当注意,如下文将更详细地论述,请求104还可以各种方式包括密码密钥110。例如,在一些实施方案中,请求104包括呈明文形式的密码密钥110。在其他实施方案中,请求104包括呈已加密形式的密码密钥。例如,如下文更详细地论述,可通过另一个密钥对密码密钥110进行加密,以使得与其相关的服务提供者106或另一个***能够解密已加密的密码密钥110。以此方式,在将来自客户102的请求104提交给服务提供者106后,服务提供者106可使用密码密钥110来加密请求104中所接收到的数据108,从而生成已加密数据112。
随后可将已加密数据112存储在数据存储***114中。数据存储***114(虽然被示出为与服务提供者106分开)可以是服务提供者106的子***。例如,可向服务提供者106的网络服务器提交请求104,其中所述网络服务器被配置来允许访问数据存储***114。一般来说,数据存储***114可作为对客户的服务进行操作,以使得客户可使用服务提供者106的资源来达成存储数据的目的。其他实施方案也包括那些,其中数据存储***114与服务提供者106分开。数据存储***114可例如由是服务提供者106和客户102的第三方的实体操作,或在一些实施方案中,数据存储***114可以是客户102的子***;也就是说,是客户102的***的子***。应当注意,如“客户”和“服务”提供者的术语可具有多个意义并且此类意义在上下文中是清晰的。例如,术语“客户”可以是指支持客户实体的操作的实体(例如,法人实体如组织或个人)或***(例如,计算装置或计算装置网络)。类似地,术语“服务提供者”可以是指支持服务提供者实体的操作的法人实体或***。
如图1所示,在加密数据108以生成已加密数据112后,服务提供者106可采取致使服务提供者106失去对密码密钥110的访问的一个或多个动作。这在图1中示出为服务提供者106将密码密钥110传递给标记为回收站的图标。应当注意,虽然如图式中所示的为达说明的目的,将密码密钥110传递到回收站中,但是各个实施方案可采取动作以失去对密码密钥110的访问,以致于没有必要涉及密码密钥110的传输。例如,在一些实施方案中,在接收到请求104并且使用密码密钥110后,服务提供者106可执行一个或多个操作以销毁密码密钥110。可根据各个实施方案以各种方式执行密码密钥110的销毁。例如,在一些实施方案中,密码密钥110和请求104未由服务提供者106持久地存储,但被维持在服务提供者106的装置的易失性存储器中。
密码密钥110的销毁可通过允许利用其他数据(如接收作为后一请求的一部分的数据)重写存储密码密钥110的一个或多个存储器位置来执行。还可执行其他操作。例如,如果将密码密钥110存储在易失性或非易失性存储器中,那么密码密钥110可通过利用其他数据(如随机数据或非随机数据如零字符串)重写(例如,通过意图销毁密码密钥的一个或多个写操作)用来存储密码密钥110的一个或多个存储器位置来销毁。一般来说,可使用将致使服务提供者106失去对密码密钥110的访问的任何操作。以此方式,客户102能够向服务提供者106提交具有密码密钥的请求,客户102期望使用所述密码密钥来加密数据108。此外,因为服务提供者106在各个实施方案中被配置来在密码密钥110的使用之后失去对密码密钥110的访问,所以客户102可确保服务提供者在处理请求104后不能够通过解密已加密数据112来访问数据108。换句话说,数据112的安全性最终由客户102控制,其中服务提供者106在有限时间内可访问数据。
应当注意,虽然为了说明的目的通篇使用产生已加密数据(和对应的解密数据)的各个过程,但是各个过程可根据其他实施方案变化。例如,用于本文所示的加密的示例性过程展示使用由服务提供者的客户所供应的密钥的加密,并且其中执行加密以使得在一定时间之后,服务提供者失去对已经使用过的密钥的访问。然而,还可使用更多复杂方案,其中使用多于一个密钥来控制对数据的访问。例如,参考图1,在一些实施方案中,可使用由客户以请求供应的密钥以及由服务提供者持有或服务提供者可以其他方式访问的密钥两者来加密数据。以此方式,通过具有解密已加密数据的能力来访问数据108需要客户102与服务提供者106之间的协同动作。在一些实施方案中,例如,可利用一个密钥对数据108进行加密,并且随后利用另一个密钥对所述数据108再次加密。在其他实例中,密码密钥110可与另一个密钥结合以便生成用来加密数据108的又一个密钥。此类变体还可扩展至除客户102和服务提供者106之外的多方,以便需要多个实体的大体协同动作来合法访问已经加密的数据(也就是说访问呈明文形式的数据)。其他变体也被视为是在本公开的范围内。
另外,虽然本文所述的各个实施方案示出具有某些类型的数据的请求,但是请求可包括其他类型的数据。例如,请求可包括所述请求的各个参数的数据,所述数据可由服务提供者使用来确定是否和/或如何履行请求。一般来说,如本文所论述的请求被简化以用于说明的目的。例如,请求可包括各种上下文数据,如请求者的身份、发起请求的网络地址、生成所述请求中的一些或全部的实体的身份和/或其他类型的数据。
此外,还应当注意,虽然图1示出具有待加密的数据108的请求104,但是在本公开的范围内的请求没有必要具有待加密的数据。例如,在一些实施方案中,请求可具有对数据的引用(例如,数据对象的标识符,所述标识符可以是URL的形式),所述引用没有必要包括在请求中。处理这种请求可包括使用所述引用来获得数据。作为另一个实例,一些请求可能缺少数据,因为所述请求包括作为一个或多个请求操作的数据检索。检索数据的请求可包括密码密钥,但所述数据可被存储在另一个位置中。处理所述请求可包括访问已加密数据以便使用在所述请求中提供的密码密钥来解密。其他变体也被视为是在本公开的范围内。
图2示出根据各个实施方案的服务提供者200的环境的说明性实例。如图2中所示,服务提供者200包括客户接口202。所述客户接口可以是服务提供者200的子***,所述子***允许由服务提供者200处理来自客户的请求的提交,如上文结合图1所述。客户接口因此可包括用于为客户提供向服务提供者200提交请求的能力的适当的计算装置。这个客户接口例如可包括被配置来通过互联网或另一种网络接收请求的一个或多个网络服务器。虽然未如此示出,但是其他基础设施也可包括在客户接口202中,如允许客户接口202针对服务提供者200的客户恰当地运行的适当的联网设备。
当通过客户接口202接收请求时,所述请求可与适当的认证信息一起被接收。例如,如图2所示,请求204可与所述请求的签名206一起被接收。所述签名可根据各个实施方案来生成。例如,提交请求204的客户可使用在所述客户与服务提供者200之间共享的秘密信息来生成签名206。作为另一个实例,客户可能已经使用不对称的数字签名方案,以便使用私钥/公钥对的私钥来签署请求204。一般来说,可使用用来认证请求204的任何类型的信息,并且在一些实施方案中,可提交请求而无需这种信息。此外,在一些实施方案中,使用不同于在请求中供应的密码密钥的密码密钥来生成请求的电子签名,尽管在一些实施方案中,使用与在请求中供应的密钥的相同密钥来生成电子签名。
然而,如图2所示,当通过客户接口202接收请求204时,(例如,通过服务提供者200的内部网络)将具有签名206的所述请求204提供到服务提供者200的认证***208。或者,可提供所述请求的足以生成电子签名206的一部分来代替整个请求。认证***208可以是服务提供者200的子***,所述子***被配置来如通过验证由请求提供的电子签名来认证请求。在验证请求204的签名206后,认证***208可向客户接口202提供签名206是否有效的响应。客户接口202的装置可使用由认证***208提供的信息,以便确定如何处理请求204。例如,如果认证***208指示签名206是无效的,则客户接口202可拒绝所述请求。类似地,如果来自认证***208的信息指示请求204的签名206是有效的,客户接口202可处理请求204。
虽然未在图式中示出,但是认证***208或在服务提供者200内或代表其运行的另一个***可运行来执行与确定如何处理请求有关的其他操作。例如,认证***208或与其协同运行的另一个***可用来检查决定请求是否可被履行的一个或多个策略。可至少部分基于各个因素来进行策略确定,所述因素如提交请求的请求者的身份、一天的某个时间、存储数据或将要存储数据的位置的逻辑标识符以及其他上下文信息。可通过客户接口202或通过适当配置的应用编程接口(API)调用的另一个接口来管理策略。
返回图2所示的实施方案,如果认证***208确定签名206是有效的,则客户接口202可确定处理请求。处理请求可涉及已加密数据210在客户接口202与请求处理基础设施212之间的传递。请求处理基础设施212可包括共同运行以提供服务提供者200的服务的一个或多个装置。例如,如图2所示,请求处理基础设施可包括用来存储代表服务提供者200的客户的数据的多个数据存储***214。也可包括未示出的包括联网基础设施的其他基础设施。根据可通过客户接口202提交的各种类型的请求数据,例如通过网络在客户接口202与请求处理基础设施212之间的传递可根据各个实施方案以各种方式发生。例如,如果请求204是存储数据的请求,那么客户接口可利用在请求204中提供的密钥来加密所述数据并且将已加密数据210传送到请求处理基础设施212,以便存储在数据存储***214中的一个或多个中。
类似地,如果请求204是检索数据的请求,那么客户接口202可将通信传送到请求处理基础设施212,从而允许将来自数据存储***214中的一个或多个的数据提供到客户接口202。客户接口202随后可使用在请求204中提供的密钥来解密已加密数据210并且将已解密数据提供到提交请求204的客户。应当注意,图2所示的服务提供者200的环境被简化以用于说明的目的,并且还可包括众多其他装置和子***,如记录客户对服务提供者200的使用的会计***。此外,服务提供者200可包括位于不同地理位置以达冗余和/或可用性目的的设施。
图3示出根据各个实施方案的请求300的说明性实例,其中所述请求可以是如上文结合图1-2所述的请求。如在图3所示的实例中所示,请求300包括对称密钥,所述对称密钥可以是用于数据的加密和解密两者的密码密钥。在实施方案中,在请求300中以明文形式提供请求300的对称密钥302。应当注意,虽然在一些实施方案中,在请求300中以明文形式提供对称密钥,但是请求从客户到服务提供者或通常在实体之间的传递可涉及各种协议,以便确保请求300中任何数据的安全性。例如,请求300的传送可涉及传输层安全性(TLS)和/或另一个协议,以使得对称密钥302在从一个实体传送到另一个实体期间被加密。此外,虽然图3示出具有对称密钥302的请求300,但是所述请求300可包括图式中未示出的其他数据。如上文论述的这种数据可包括各种请求参数、认证信息、待加密的数据和/或其他信息。
另外,虽然图3示出具有密钥的请求,但是正如本所述和所示的所有请求,可在所述请求中提供各种其他数据,如待运行的数据和/或包括关于请求的上下文信息和不能够验证请求的真实性的认证信息的各种元数据。各种请求参数也可包括在请求中。例如,请求参数可指定,服务器端加密本应用来使用由请求提供的密钥加密数据。如果这种参数不存在和/或指示将不使用服务器端加密,那么可在不执行加密的情况下处理所述请求,无论请求中是否包括密钥。此外,对于与电子签名一起提交的请求来说,参数可指定所述请求的哪一部分用来生成电子签名。这种参数可指示请求的哪一部分应该用于检查电子签名,从而允许在其生成之后如通过添加在履行请求期间待运行的数据来修改请求。一般来说,请求在本公开中被简化以用于说明的目的。
图4示出根据各个实施方案的可用来传送请求和接收对请求的响应的的过程400的说明性实例。过程400可由任何合适的***执行,如由如上文所述和下文结合图15描述的客户的装置。在实施方案中,过程400包括获得402密码密钥。可根据各个实施方案以各种方式获得402所述密码密钥。例如,在一些实施方案中,通过生成密码密钥来获得402所述密码密钥。可使用例如随机数发生器或密钥推导函数如公钥推导函数2(PPKDF2)或Bcrypt来生成密码密钥。也可以其他方式获得402所述密码密钥。例如,可从数据存储装置获取密码密钥。作为另一个实例,密码密钥可以是从存储器获取的或由执行过程400的***用户输入的口令、密码短语或密码。一般来说,可使用获得获得402密码密钥的任何方式。
在已经获得402密码密钥的情况下,过程400可包括生成404具有所获得的密码密钥的请求;也就是说,生成包括所获得的密码密钥的请求。所述请求可通过以适合于传送的方式(也就是说以可由请求将提交至的***处理的格式)布置用于请求的数据来生成。一旦生成404,就可提交406所生成的请求。可以任何合适的方式,如通过传送到被配置来接收所生成的请求的网络服务器的互联网协议(IP)地址来执行所生成的请求的提交406。在一些实施方案中,可执行其他操作,例如,由统一资源定位符(URL)生成请求。与域名服务(DNS)的通信可发生以获得***的IP地址,所生成的请求随后被提交406给所述***。一般来说,可执行提交请求的任何方式。
在提交后,可由所生成的请求提交406至的***处理请求。因此,过程400可包括接收408对请求的响应或所述响应可以是根据提交请求的协议来适当配置的响应。应当注意,不是所有实施方案都需要接收对请求的响应。例如,一些协议可允许在不确认请求已被接收和/或履行的情况下提交请求。作为说明性实例,所述请求可以是存储数据。在一些实施方案中,在可能不需要确认请求的处理的情况下,在提交后,可设想请求已被处理或可能已被处理。
图5示出用于处理请求的过程500的说明性实例,其中可如上述接收所述请求并且可根据如上述如过程400提交所述请求。可以任何合适的***,如通过运行来提供如上述的客户接口的装置(例如,服务器)来执行过程500。在实施方案中,过程500包括接收502具有密码密钥的请求。可根据各个实施方案以各种方式接收502所述请求。例如,如上所述,可通过网络根据通信协议来提交所述请求并且可因此根据这种协议来接收所述请求。一般来说,可以任何合适的方式来接收502所述请求。
在接收到请求后,过程500可包括确定504是否履行所述请求。可根据各个实施方案以各种方式来做出是否履行请求的确定504。例如,如上所述,在一些实例中,所述请求可与请求的电子签名一起被接收。因此,可通过确定签名是否有效来做出确定。可以各种方式执行签名是否有效的确定。例如,执行过程500的***可验证签名本身或可将签名和请求(或通常是被签署来生成签名的数据)传送到可操作来验证电子签名的另一个***。此外,如上所述,确定504是否履行请求可包括执行一个或多个策略是否会妨碍履行请求的确定。一般来说,可执行是否履行请求的确定的任何方式。
另外,虽然图5和本文所示的其他过程示出是否履行请求的确定,但是在各个实施方案中,***可履行所有适当配置的请求而无需具有有效的电子签名和/或遵循策略。返回图5所示的实施方案,如果确定504不履行请求(如在签名无效和/或策略妨碍请求的履行时),过程500可包括拒绝506所述请求。可根据各个实施方案以各种方式拒绝506所述请求。例如,可提供对请求的响应,所述响应指示所述请求被拒绝和/或提供为何拒绝请求的信息。作为另一个实例,可通过不采取任何动作来简单地执行拒绝请求。也就是说,通过不提供对请求的响应并且决不履行请求来进行。一般来说,请求不被履行的任何方式都可视为拒绝请求。
然而,如果确定履行请求,那么过程500可包括从所述请求提取508密码密钥。随后可使用510所提取的密码密钥来执行一个或多个所请求的密码操作;也就是说执行请求的履行所涉及的一个或多个密码操作。所述一个或多个密码操作可根据各个实施方案和根据所接收到的请求类型而变化。在一些实施方案中,一个或多个密码操作包括加密请求所包括的数据和/或加密其他数据。作为另一个实例,一个或多个密码操作可包括解密请求所引用的和/或在请求中所提供的数据。一般来说,任何类型的密码操作,诸如密钥推导和/或电子签名生成和/或验证可作为一个或多个密码操作的一部分来执行。此外,虽然本文所述的各个说明性实施方案展示单个密码操作诸如加密,但是在履行单个请求时可执行多种类型的密码操作。作为实例,在请求中所提供的一个或多个密钥可用来加密数据并且生成所述数据的电子签名和/或已加密数据,其中所述电子签名可用于稍后验证所述数据已改变。其他变体也被视为是在本公开的范围内。
在执行一个或多个密码操作后,过程500可包括提供512对请求的响应。所述响应可根据各个实施方案和根据所做出的请求类型而变化。例如,如果请求是检索数据,那么响应可包括被检索和解密的数据。如果请求是存储数据,那么响应可以是对数据已经存储的确认。校验和或其他验证信息可与响应一起提供。在执行请求的履行中所涉及的一个或过密码操作后的某个时刻,过程500可包括失去514对所提取的密码密钥的访问,其中可以如上述的各种方式失去访问。
图6是根据各个实施方案的请求600的说明性实例。如图6所示,不同于上文结合图3所述的请求,请求600包括可以是公钥/私钥对的公钥的客户公钥602,其中所述私钥由客户持有或代表客户。正如本文所述的其他请求,请求600可包括如上述的其他数据。可如上文结合图4所述来提交请求600。
图7示出过程700的说明性实例,所述过程700可用来处理包括如上文结合图6所述的客户公钥的请求。可以任何合适的***,如提供如上述的客户接口的***来执行过程700。如图7所示,过程700包括接收702具有客户公钥的PUT请求;也就是说具有作为所述请求的一部分的客户公钥的PUT请求(即,存储数据的请求)。可如上述并且通常以任何合适的方式来接收702所述请求。在接收到702具有客户公钥的PUT请求后,过程700可包括确定704是否履行所述请求,其中是否履行所述请求的确定可如上述做出。如果确定704不应该履行所述请求,那么过程700可包括拒绝706请求,如上所述。然而,如果确定704应该履行请求,那么过程700可包括从请求提取708客户公钥以供使用。在实施方案中,过程700包括获得710加密密钥,其中所述加密密钥可以是如上所述的对称密钥。可如上所述以任何合适的方式获得710加密。例如,可从数据存储器获取或生成加密密钥。所获得的710加密密钥可用来712加密在请求中提供的或由待加密的请求以其他方式请求的数据。客户公钥可用来714加密(包裹)加密密钥。以此方式,可使用对应于客户公钥的私钥来解密已加密的加密密钥。因此,如果执行过程700的提供者没有访问已加密的加密密钥,那么所述提供者不能解密已加密的加密密钥。
过程700还可包括存储716已加密数据。已加密数据例如可被传送到数据存储***以用于其持久存储。可提供718对请求的响应,其中所述响应可包括已加密的加密密钥。执行过程700的***可失去720对加密密钥的访问,如上所述。以此方式,一旦执行过程700的***失去720对加密密钥的访问,所述***就不再具有解密已加密数据的能力,并且通常对应于客户公钥的私钥的使用是必要的以便通过首先解密加密密钥以解密所解密的数据来合法地(即,不需要猜测密钥或另外以未被授权的方式获得对数据的访问)解密已加密数据。
应注意,正如本文所述的所有过程,变体被视为是在本公开的范围内。作为实例,图7示出用于处理PUT请求的过程,其中所述请求包括客户公钥。可根据各个实施方案以不同方式处理这种请求。在一些实施方案中,例如,尽管对称加密密钥的使用通常在计算上更加有效,但是客户公钥可用来加密在请求中所接收的数据而不是使用随后由公钥包裹的加密密钥。以此方式,仅可通过能访问对应于客户公钥的私钥的实体来解密数据,所述客户在各个实施方案中可以只是提交请求的所述客户。
作为被视为本公开的范围内的变体的另一个实例,已加密的加密密钥可与已加密数据一起存储并且可或可不响应于请求来传送。在解密数据的这种实施方案中,可从存储器获得加密密钥并将其提供到能够解密加密密钥的实体(例如,具有可用来解密加密密钥的私钥的客户),从而随后可提供回已解密的加密密钥以便允许解密数据。例如,检索数据的客户请求可使得提供者传送具有通知(包括已加密的加密密钥)的初始响应,所述初始响应是加密密钥需要解密。所述客户可解密加密密钥并且将已解密的加密密钥提供回提供者以便允许提供者解密已加密数据并且向客户提供已解密数据。其他变体也可被视为处于本公开的范围内,包括其中将密文以及可用来解密所述密文的已加密密钥从提供者提供给客户的变体。对于例如服务器端加密用于PUT请求而客户端加密用来获得对所存储数据的访问的实施方案来说,提供者可提供用于(例如,通过适当规范用于解密的数据)适当处理数据的指令或可提供呈客户端库形式的可执行指令,以便确保正确执行解密(即,确保以将会成功解密数据方式执行解密)。
图8示出用于通过另一个***如提供者获得以加密形式存储的数据的过程800的说明性实例,如上所述。可以任何合适的***,如上所述的提供者的客户装置来执行过程800。在实施方案中,过程800包括获得802已加密的加密密钥。例如,可依据上述过程700或其变体的执行来接收已加密的加密密钥。获得已加密的加密密钥可包括接收已加密的加密密钥或访问来自持久数据存储器的已加密的加密密钥。一般来说,可以任何合适的方式获得802已加密的加密密钥。
可使用804用来加密所述加密密钥的对应于公钥的私钥来解密已加密的加密密钥。一旦已经获得已解密的加密密钥,过程800可包括生成806具有已解密的加密密钥的GET请求并且提交(例如,传送)808所生成的GET请求,如上所述。接收GET请求的***可通过使用所述请求中的加密密钥来解密由加密密钥进行加密的数据来处理所述请求。随后可接收810响应,其中所述响应可包括适当的信息,如已经使用在GET请求中提供的已解密的加密密钥解密的数据。
正如本文所述的所有过程,过程800的变体被视为是在本公开的范围内。例如,当已加密的加密密钥与根据已加密的加密密钥加密的数据存储在一起时,可通过从远程存储器获取已加密的加密密钥来获得已加密的加密密钥。作为另一个实例,在一些实施方案中,过程800可包括提交GET请求,所述GET请求通过提供根据已加密的加密密钥来加密的数据来履行。执行过程800的***可获得已加密数据并且使用已解密的加密密钥来解密已加密数据。换言之,可修改过程800以便在客户端加密数据,即使所述数据是在服务器端加密过的。
图9示出各种请求的说明性实例,所述请求可包括根据各个实施方案以各种形式包裹(例如,加密)的密码密钥。例如,图9示出请求902的说明性实例,其具有根据与提供者共享的秘密906加密的对称密钥904,其中与所述提供者共享的所述秘密可以是在客户与提供者之间共享的另一个对称密钥。作为另一个实例,图9示出请求908的实例,所述请求908包括根据提供者公钥912加密的对称密钥910,所述提供者公钥912可以是对应于公钥私钥对的公钥,提供者已访问所述公钥私钥对的对应私钥。另一个请求914包括根据与第三方共享的秘密918加密的对称密钥916。也就是针对客户和提供者两者是第三方的实体。作为又一个实例,图9示出具有根据第三方的公钥924加密的对称密钥922的请求920,其中所述第三方可以是针对客户和提供者的第三方。如上所述,图9所示的请求也可包括另外的信息。
图10示出根据各个实施方案的可用来提交请求的过程1000的说明性实例。可以任何合适的***,如上所述的提供者的客户的***来执行过程1000。在实施方案中,过程1000包括获得1002密码密钥,其中可如上所述获得1002密码密钥。所获得的密码密钥可用来生成1004包裹的密码密钥,也就是说根据另一个密钥加密所获得的密码密钥。上文结合图9描述包裹的密码密钥的实例。过程1000可包括生成1006具有包裹的密码密钥的请求。也就是说所述请求可被生成来包括包裹的密码密钥。如上所述,随后可提交1008所生成的请求。在各个实施方案中,过程1000还可包括接收1010对提交1008的请求的响应。
如上所述,众多实施方案被视为是在本公开的范围内。在一些实施方案中,客户和服务提供者能够互动来实现数据安全性而无需使用第三方***来解包密码操作所需的密钥。图11因此示出可实践各个实施方案的环境1100的说明性实例。正如图1,如图11所示,环境1100包括向服务提供者1106提交请求1104的客户1102。在这个实例中,请求1104包括由另一个密钥包裹的加密密钥1108(如由包围所述加密密钥的括号指示)。服务提供者1106访问可用来解包加密密钥的密钥1110,从而允许服务提供者1106使用加密密钥1108来执行密码操作。
图12示出过程1200的说明性实例,所述过程1200可用来处理包括包裹的密码密钥的请求。过程1200可由任何合适的***来执行,如由上文结合图11描述的服务提供者1106的网络服务器。在实施方案中,过程1200包括接收1202具有包裹的密码密钥的请求。可做出1204是否履行请求的确定。如果确定1204不履行请求,那么过程1200可包括拒绝1206请求,如上所述。然而,如果确定1204应该履行请求,那么过程1200可包括从请求提取1208包裹的密码密钥。
可获得1210可用来解包密码密钥的密钥。可根据各个实施方案以各种方式执行可用来解包密码密钥的密钥获得。例如,可用来解包包裹的密码密钥的密钥可由执行过程1200的***存储。可用来解包包裹的密码密钥的密钥的标识符可用来从可由***存储的其他密钥查找可用来解包包裹的密码密钥的密钥。所述标识符可提供在接收1202的或可以其他方式(如由与提交请求的实体的关联)确定的请求中。一旦已经获得1210可用来解包包裹的密码密钥的密钥,过程1200可包括使用1212所获得的密钥来解包包裹的密码密钥。以此方式,获得未包裹的密码密钥。可使用1214所述未包裹的密码密钥来执行在履行接收1202的请求中所涉及的一个或多个密码操作。如上所述可提供1216对请求的响应并且可失去1218对未包裹的密码密钥的访问。
在一些实施方案中,如上所述,第三方的参与是维持数据安全性的一部分。图13因此示出可实践各个实施方案的环境1300的说明性实例。如所示的环境1300包括向服务提供者1306提交请求1304的客户1302,如上所述。还如上所述,请求1304可包括由另一个密钥包裹的加密密钥1308,如上文结合图9描述的。然而,在图13的实例中,服务提供者1306的接收请求的子***(或在一些实施方案中是服务提供者的所有子***)不能访问可用来解包加密密钥1308的密钥。因此,环境1300包括密钥管理***1310,所述未包裹的密码密钥访问可用来解包加密密钥1308的密钥1312。密钥管理***1310可以是可运行来管理代表服务提供者1306的一个或多个客户的密码密钥的任何***。
可根据各个实施方案以各种方式实现密钥管理***1310。在一些实施方案中,密钥管理***是服务提供者1306的可由例如由服务提供者1306托管的硬件安全模块(HSM)或安全地存储密码密钥的另一种类型的安全模块实现的子***。在一些实施方案中,密钥管理***1310作为服务提供者1306的另一种服务来实现,所述服务可以是由服务提供者1306提供的若干服务之一并且可通过网络访问客户1302,如下所述。在一些实施方案中,然而,密钥管理***是如上所述的由针对服务提供者1306和客户1302的第三方实现的***。在此类实施方案中,客户1302和服务提供者1306均不能访问可用来解包加密密钥1308的密钥,除非可用来解包加密密钥1308的密钥1312与客户1302中的一个或多个或服务提供者1306共享。其他变体也被视为是在本公开的范围内。例如,在一些实施方案中,密钥管理***1310可作为客户1302的一部分来实现。一般来说,密钥管理***1310是服务提供者1306必须与其通信以便使用可用来解包加密密钥的密钥1312来解包加密密钥1308或通常已解包加密密钥1308的***。服务提供者1306与密钥管理***1310之间的通信可通过一个或多个网络并且根据一个或多个适当的网络协议来发生。所述网络可以是例如互联网或任何合适的网络,如下所述。
图14示出过程1400的说明性实例,所述过程1400可被执行来处理包括如上文结合图13所述的包裹的加密密钥的请求。在实施方案中,过程1400包括接收1402具有包裹的加密密钥的请求,如上所述。如上文结合其他过程所论述,可做出1404是否履行请求的确定,并且如果确定1404不应该履行所述请求,那么过程1400可包括拒绝1406请求。然而,如果确定1404应该履行请求,那么过程1400可包括从请求提取包裹的密码密钥。可将包裹的密码密钥传送1410到解包***,所述解包***可以是如上文结合图13描述的密钥管理***,并且通常所述解包***可以是能访问可用来解包包裹的密码密钥的密钥的***。
包裹的密码密钥可以请求的形式传送到解包***,所述请求被适当配置用于由解包***履行。例如,可根据解包***可接受的格式来格式化所述请求并且所述请求可包括可由解包***使用来确定是否履行请求的信息。这种信息可包括例如用来认证传送到解包***的请求和/或所接收的1402具有包裹的密码密钥的请求的认证信息。也可提供可用来例如确定传送到解包***的请求的履行是否遵循一个或多个策略的其他信息或所述信息可以是上下文信息,如上所述。另外的信息可包括可用来解包包裹的密码密钥的密钥的标识符。假定解包***履行所传送1410的请求,过程1400可包括从解包***接收1412未包裹的密码密钥。可使用1414所述未包裹的密码密钥来执行在履行接收1402的请求中所涉及的一个或多个密码操作。如上所述可提供1416对请求的响应并且可失去1418对未包裹的密码密钥的访问,如上所述。
本公开的实施方案可鉴于以下条款来描述:
1.一种计算机实现的方法,其包括:
在服务提供者的一个或多个计算机***的控制下,所述一个或多个计算机***被配置有可执行指令,
从对应于所述服务提供者的客户的请求者接收请求,所述请求的履行涉及关于由所述请求提供的数据的一个或多个密码操作的执行以及在所述请求中供应的密码密钥的使用,所述服务提供者在一定时间内缺少对所述密码密钥的访问直到接收到所述请求;
通过作为执行关于所述指定数据的所述一个或多个密码操作的一部分的使用所述供应的密码密钥来履行所述请求;并且
向数据存储***提供执行所述一个或多个密码操作的结果;并且
在执行所述一个或多个密码操作的某一时刻后,执行致使所述服务提供者失去对所述密码密钥的访问的一个或多个操作。
2.如条款1所述的计算机实现的方法,其中履行所述请求包括解析所述请求以从呈明文形式的所述请求提取所述密钥。
3.如条款1至2所述的计算机实现的方法,其中:
所述密码密钥是公钥-私钥对的公钥,所述服务提供者缺少对其的访问;并且
所述一个或多个密码操作包括使用所述公钥执行对称算法。
4.如前述条款中任一项所述的计算机实现的方法,其中:
在所述请求中供应的所述密码密钥由另一个密钥加密;
所述方法还包括致使在所述请求中供应的所述密码密钥被解密;并且
使用所述供应的密码密钥来执行所述一个或多个密码操作包括使用所述已解密的供应的密码密钥来执行所述一个或多个密码操作。
5.如前述条款中任一项所述的计算机实现的方法,其中致使在所述请求中供应的所述密码密钥解密包括向另一个实体传送所述密码密钥以供解密。
6.一种***,其包括:
一个或多个处理器;以及
包括指令的存储器,当由所述一个或多个处理器执行时,所述指令致使所述***:
通过网络从请求者接收请求,所述请求的履行涉及使用包括在所述请求中供应的密码密钥的信息来执行关于所述请求中指定的数据的一个或多个密码操作,其中所述信息可用来认证所述请求;
作为接收并认证所述请求的结果,执行关于所述指定数据的所述一个或多个密码操作;并且
提供执行所述一个或多个密码操作的结果。
7.如条款6所述的***,其中:
所述请求是从数据存储***读取已加密数据的请求;并且
所述信息可用来使用在所述请求中供应的所述密码密钥来认证所述请求。
8.如条款6至7所述的***,其中所述信息可用来通过包括至少部分基于不同于在所述请求中供应的所述密码密钥的第二密码密钥生成的电子签名来认证所述请求。
9.如条款6至8所述的***,其中:
所述一个或多个密码操作包括加密所述指定的数据;并且
提供执行所述一个或多个密码操作的所述结果包括将所述指定的数据以加密形式传送到数据存储***以用于持久存储。
10.如条款6至9所述的***,其中所述指令进一步致使所述***执行一个或多个操作,以便在执行所述一个或多个密码操作之后的某一时刻失去对在请求中供应的所述密码密钥的访问。
11.如条款6至10所述的***,其中:
在所述请求中供应的所述密码密钥呈加密形式;并且
所述指令进一步致使所述***获得呈解密形式的所述密码密钥;并且
执行所述一个或多个密码操作利用呈解密形式的所述密码密钥。
12.如条款6至11所述的***,其中:
在所述请求中供应的所述密码密钥是公钥-私钥对的公钥;并且
执行关于所述指定数据的所述一个或多个密码操作包括:
利用对称密钥加密所述指定数据;并且
使用所述公钥加密所述对称密钥。
13.如条款6至12所述的***,其中所述***在一定时间内缺少对所述密码密钥的访问,直至接收到所述请求。
14.如条款6至13所述的***,其中:
在所述请求中供应的所述密码密钥被供应在呈加密形式的所述请求中;并且
所述***还包括子***,所述子***被配置来安全地存储从所述子***的外部难接近的多个密码密钥,所述多个密码密钥包括可用来解密以加密形式供应的所述密码密钥的特定密码密钥;
所述指令进一步致使所述***致使所述子***解密以加密形式供应的将用于执行所述一个或多个密码操作的所述密码密钥。
15.如条款6至14所述的***,其中所述信息可用来通过使用所述密码密钥认证所述请求来认证所述请求。
16.一种非暂时性计算机可读存储介质,其具有存储在其上的指令,当由计算机***的一个或多个处理器执行时,所述指令致使所述计算机***:
生成被格式化用于服务提供者的应用编程接口的应用编程接口请求,所述应用编程接口请求包括密码密钥并且使用所包括的密码密钥来指定将要由所述服务提供者关于数据执行的一个或多个密码操作;并且
允许所述生成的应用编程接口请求与至少部分基于所述请求生成的认证信息一起通过网络传送到服务提供者,从而致使所述服务提供者使用所述密码密钥来执行关于所述数据的所述一个或多个密码操作。
17.如条款16所述的非暂时性计算机可读存储介质,其中:
所述应用编程接口请求是将数据存储在所述服务提供者的数据存储***中;并且
所述一个或多个密码操作包括在将数据存储于所述数据存储***中之前加密所述数据。
18.如条款16至17所述的非暂时性计算机可读存储介质,其中:
所述应用编程接口请求是在数据存储***中检索数据,所述数据被以加密形式存储在所述数据存储***中;并且
所述一个或多个密码操作包括在从所述数据存储***检索数据之后解密所述数据。
19.如条款16至18所述的非暂时性计算机可读存储介质,其中所述密码密钥以加密形式包括在所述应用编程接口请求中,以使得所述服务提供者能够使用加密形式的所述密码密钥来获得非加密形式的所述密码密钥,以供用于执行所述一个或多个密码操作。
20.如条款16至19所述的非暂时性计算机可读存储介质,其中所述密码密钥难以访问所述服务提供者,直到接收到所述请求。
21.如条款16至20所述的非暂时性计算机可读存储介质,其中所述传送的应用编程接口请求缺少所述数据。
22.如条款16至21所述的非暂时性计算机可读存储介质,其中至少部分基于不同于所述应用编程接口请求中所包括的所述密码密钥的另一个密码密钥来生成所述认证信息。
23.如条款16至22所述的非暂时性计算机可读存储介质,其中所述应用编程接口请求还包括所述服务提供者所需的信息,以便确定所述请求的履行是否遵循可适用于所述请求的一个或多个策略。
如在本公开中多次指出,众多变体被认为是在本公开的范围内。例如,如所论述的,众多变体利用对称和/或不对称的密码原语。对称密钥算法可包括用于执行关于数据的密码操作的各种方案,包括分组密码、流密码以及数字签名方案。示例性对称密钥算法包括但不限于,高级加密标准(AES)、数据加密标准(DES)、三重DES(3DES)、Serpent、Twofish、blowfish、CAST5、RC4以及国际数据加密算法(IDEA)。对称密钥算法还可包括用来生成单向函数的输出的那些算法,并且包括但不限于利用基于散列的消息认证码(HMAC)、通用消息认证码(MAC)、PBKDF2以及Bcrypt的算法。对称密钥算法还可包括用于执行关于数据的密码操作的各种方案。示例性算法包括但不限于利用Diffie-Hellman密钥交换协议、数字签名标准(DSS)、数字签名算法、ElGamal算法、椭圆曲线算法、密码认证的密钥协商技术、pallier密码***、RSA加密算法(PKCS#1)、Cramer-Shoup密码***、YAK认证的密钥协商协议、NTRUEncrypt密码***、McEliece密码***的算法以及其他算法。椭圆曲线算法包括椭圆曲线Diffie-Hellman(ECDH)密钥协商方案、椭圆曲线集成加密方案(ECIES)、椭圆曲线数字签名算法(ECDSA)、ECMQV密钥协商方案以及ECQV隐式证书方案。其他算法和算法的组合也被视为是在本公开的范围内。
另外,如上所述,本公开的各种实施方案涉及使用请求中所包括的密码密钥来执行各种密码操作。虽然密钥被论述成用来执行所述操作,但是应当注意,本公开的各个实施方案包括密钥在使用之前以某种方式变换的那些实施方案。作为实例,在请求中的密钥是密码的情况下,所述口令在使用之前可进行变换(例如,利用密钥推导函数)以执行另外的密码操作。此外,虽然本公开论述特定类型的密钥(例如,加密密钥),但是此类密钥在使用之前可以类似方式进行变换。其他变体包括在请求中提供多个密钥以及请求参数和/或所述请求的格式化指示应该如何使用多个密钥的那些实施方案。
被视为处于本公开的范围内的其他变体包括利用预设的统一资源定位符(URL)的实施方案。参考如图1所示的包括服务提供者的客户的环境,客户可预生成包括URL的一部分的电子签名和/或其他信息(如密码密钥)的URL。所述客户可向另一个实体提供所述URL,并且另一个实体可利用所述URL来将请求提交给服务提供者,从而致使服务提供者在所述客户的授权下执行一个或多个操作。服务提供者可接收与URL一起提交的请求、验证电子签名并且使用所述URL中提供的密钥来执行一个或多个操作。以此方式,实现了各种便利,所述便利涉及在客户控制下通过密钥进行的服务器端加密和解密以及提供者在非必要时不能访问密钥。预设URL和其变体的使用在同时提交的美国专利申请号14/037,282、标题为“具有密钥的资源定位符”(Resource Locators With Keys)中详细论述,所述专利申请以全文引用方式并入。
图15示出用于实现根据各个实施方案的各方面的示例性环境1500的各方面。如将了解,尽管出于解释目的使用基于网络的环境,但是可视情况使用不同环境来实现各个实施方案。环境包括电子客户端装置1502,电子客户端装置可包括可操作来在适当网络1504上发送和接收请求、消息或信息并且将信息传送回装置用户的任何适当装置。此类客户设备的实例包括个人计算机、手机、手持通信设备,笔记本计算机、平板计算机、机顶盒,个人数据助理、嵌入式计算机***、电子书阅读器等。网络可包括任何适当网络,包括内部网、互联网、蜂窝网、局域网或任何其他此类网络或上述网络的组合。此类***所用的组件可以至少部分地取决于所选网络和/或环境的类型。用于通过此类网络通信的协议和组件是众所周知的,因而本文不再详细论述。网络上的通信可通过有线或无线连接及其组合来实现。在这个实例中,网络包括互联网,因为环境包括用于接收请求并且响应于所述请求而提供内容的网络服务器1506,然而对于其他网络来说,可使用服务类似目的的替代装置,如本领域技术人员所显而易见的。
所示环境包括至少一个应用程序服务器1508和数据存储器1510。应当理解,可以存在可以链接起来或以其它方式来配置的若干应用程序服务器、层或其它元件、过程或组件,这些应用程序服务器、层或其它元件、过程或组件可交互来执行如从适合的数据存储器获取数据的任务。如本文所使用的服务器可以各种方式来实现,诸如硬件装置或虚拟计算机***。在一些情境中,服务器可以是指在计算机***上实行的编程模块。如本文所使用的,术语“数据存储器”指代能够存储、访问和检索数据的任何装置或装置组合,所述装置的装置组合可包括任何标准、分布式或集群式环境中的任何组合和任何数目的数据服务器、数据库、数据存储装置和数据存储介质。应用程序服务器可包括任何适当硬件和软件,所述硬件和软件视执行客户端装置的一个或多个应用程序的各方面的需要而与数据存储器集成、处置应用程序的一些(甚至是大多数)数据访问和业务逻辑。应用程序服务器可提供与数据存储器协作的存取控制服务,并且能够生成将要传送到用户的内容、如文本、图片、音频和/或视频,在这个实例中,所述内容可以超文本标记语言(“HTML”)、可扩展标记语言(“XML”)或另一种适当结构化语言的形式由网络服务器向用户提供。所有请求和响应的处置以及客户端装置1502与应用程序服务器1508之间的内容递送可由网络服务器来处置。应当理解,网络服务器和应用程序服务器不是必要的,且仅仅是示例性组件,因为本文所论述的结构化代码可在如本文其他地方所论述的任何适当装置或主机上执行。此外,除非上下文另外清楚规定,否则如由单个装置执行的本文所述的操作可由可形成分布式***的多个装置共同执行。
数据存储器1510可包括若干单独的数据表、数据库或其他数据存储机构和介质,用来存储与本公开的特定方面相关的数据。举例来说,所示数据存储器可包括用于存储生成数据1512和用户信息1516的机构,生成数据和用户信息可用于提供用于生成端的内容。数据存储器还被示出为包括用于存储日志数据1514的机构,所述日志数据可用于报告、分析或其他此类目的。应当理解,可能存在可能需要存储在数据存储器中的许多其它方面,如页面图像信息和访问权信息,所述方面可视情况存储在上文列出的机构中的任何机构中或存储在数据存储器1510的中额外机构中。数据存储器1510可通过与它关联的逻辑来操作,以便从应用程序服务器1508接收指令,并且响应于所述指令而获取、更新或以其他方式处理数据。在一个实例中,用户通过由所述用户操作的装置可以针对某种类型的项目提交搜索请求。在此状况下,数据存储器可能访问用户信息来验证用户的身份,并且可访问目录详细信息以获取有关所述类型的项目的信息。接着可将信息如以网页上的结果列表的形式返回给用户,用户能够通过用户装置1502上的浏览器来查看所述网页。可在浏览器的专用页面或窗口中查看到感兴趣的特定项目的信息。然而,应当注意,本公开的实施方案不必受限于网页背景,但可能更普遍适用于处理一般的请求,其中所述请求在内容上不是必需的请求。
每个服务器通常将包括提供用于所述服务器的一般管理和操作的可执行程序指令的操作***,并且通常将包括存储指令的计算机可读存储介质(例如,硬盘、随机存取存储器、只读存储器等),当由服务器的处理器执行时,所述指令允许服务器实行其期望的功能。操作***的适合实现方式和服务器的一般功能是众所周知的或可商购的,并且易于由本领域普通技术人员实现,尤其是根据本文中的公开来实现。
在一个实施方案中,环境是利用通过通信链路、使用一个或多个计算机网络或直接连接来互连的若干计算机***和组件的分布式计算环境。然而,本领域普通技术人员应理解,这种***可在具有比图15所示的组件更少或更多数量的组件的***中同样顺利地操作。因此,图15中的***1500的描绘本质上应视为说明性的,并且不限制本公开的范围。
各个实施方案可进一步在广泛范围的操作环境中实现,在一些情况下,所述环境可包括一个或多个用户计算机、计算装置或可用于操作多个应用程序中的任一个的处理装置。用户或客户端装置可包括多个通用个人计算机中的任何一个,如运行标准操作***的台式计算机、膝上型计算机或平板计算机,以及运行移动软件并且能够支持多个网络连接协议和消息传递协议的蜂窝装置、无线装置和手持式装置。这种***还可包括多个工作站,所述工作站运行各种可商购得的操作***和用于如开发和数据库管理等目的的其他已知应用程序中的任一个。这些装置还可包括其他电子装置,如虚拟终端、薄型客户端、游戏***和能够通过网络通信的其他装置。
本公开的各个实施方案利用本领域技术人员可能熟悉的至少一种网络来使用各种各样可商购得的协议中的任一种支持通信,所述模型和协议如传输控制协议/互联网协议(“TCP/IP”)、在开放***互连(“OSI”)模型的各个层中操作的协议、文件传送协议(“FTP”)、通用即插即用(“UpnP”)、网络文件***(“NFS”)、公共互联网文件***(“CIFS”)以及AppleTalk。网络例如可以是例如局域网、广域网、虚拟专用网、互联网、内部网、外联网、公共交换电话网、红外网络、无线网络以及上述网络的任何组合。
在利用网络服务器的实施方案中,网络服务器可以运行各种各样服务器或中间层应用程序中的任一种,包括超文本传输协议(“HTTP”)服务器、FTP服务器、公共网关接口(“CGI”)服务器、数据服务器、Java服务器和业务应用程序服务器。服务器还能够响应于来自用户装置的请求而执行程序或脚本,如通过执行可以实施为以任何编程语言(如C、C#或C++)或任何脚本语言(如Perl、Python或TCL)以及其组合写成的一个或多个脚本或程序的一个或多个网络应用程序。所述服务器还可包括数据库服务器,包括但不限于那些可商购的和
环境可包括如上文所论述的各种各样数据存储区以及其他存储器和存储介质。这些可驻留在各种各样位置,如在一个或多个计算机本地(和/或驻留在一个或多个计算机中)的存储介质上,或远离网络上的计算机中的任何或所有计算机。在实施方案的特定集中,信息可驻留在本领域技术人员熟悉的存储区域网(“SAN”)中。类似地,用于执行属于计算机、服务器或其他网络装置的功能的任何必要的文件可视情况本地或远程存储。在***包括计算机化装置的情况下,这个这种装置可包括可通过总线电耦合的硬件元件,所述元件包括例如至少一个中央处理单元(“CPU”或“处理器”)、至少一个输入装置(例如,鼠标、键盘、控制器、触摸屏或小键盘)和至少一个输出装置(例如,显示装置、打印机或扬声器)。这种***还可包括一个或多个存储装置,如硬盘驱动器、光存储装置和如随机存取存储器(“RAM”)或只读存储器(“ROM”)的固态存储装置、以及可移动媒体装置、存储卡、闪存卡等。
此类装置还可包括计算机可读存储介质读取器、通信装置(例如,调制解调器、网卡(无线或有线)、红外线通信装置等)和工作存储器,如上文所论述。计算机可读存储介质读取器可与计算机可读存储介质连接或被配置来接收计算机可读存储介质,计算机可读存储介质表示远程、本地、固定和/或可移动存储装置以及用于暂时和/或更永久地含有、存储、传输和检索计算机可读信息的存储介质。***和各种装置通常还将包括位于至少一个工作存储器装置内的多个软件应用程序、模块、服务***或其他元件,包括操作***和应用程序,如客户端应用程序或网络浏览器。应当了解,替代实施方案可具有与上述实施方案不同的众多变体。例如,也可使用定制硬件,和/或特定元件可以在硬件、软件(包括可移植软件,如小程序)或两者中实现。此外,可以采用与如网络输入/输出装置的其他计算装置的连接。
用于含有代码或部分代码的存储介质和计算机可读介质可包括本领域已知或已使用的任何适当介质,包括存储介质和通信介质,如但不限于以用于存储和/或传输信息(如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术所实现的易失性和非易失性、可移动和不可移动的介质,包括RAM、ROM、电可擦可编程只读存储器(“EEPROM”)、闪存或其他存储器技术、只读光盘驱动器(“CD-ROM”)、数字通用光盘(DVD)或其他光学存储器、磁盒、磁带、磁盘存储装置或其他磁性存储装置,或可用于存储所需信息且可由***装置访问的任何其他介质。基于本文所提供的公开内容和教义,本技术领域普通技术人员将了解实现各个实施方案的其他方式和/或方法。
因此,应在说明性意义而不是限制性意义上理解本说明书和附图。然而,将显而易见的是:在不脱离如在权利要求书中阐述的本发明的更宽广精神和范围的情况下,可以对其做出各种修改和改变。
其他变体也在本公开的精神内。因此,尽管所公开的技术可容许各种修改和替代构造,但在附图中已示出并且在上文中详细描述所示的其特定实施方案。然而,应当了解,并不旨在将本发明限制于所公开的一种或多种具体形式,相反地,旨在涵盖落在如所附权利要求书限定的本发明的精神和范围内的所有修改、替代构造和等效物。
在描述所公开实施方案的上下文中(尤其是在以下权利要求书的上下文中),术语“一个(a,an)”和“所述”以及类似指称对象的使用应解释为涵盖单数和复数两者,除非在本文另外地指示或明显地与上下文矛盾。术语“包含”、“具有”、“包括”和“含有”应解释为开放式术语(即,意味着“包括但不限于”),除非另外地注解。术语“连接的”(当未更改且是指物理连接时)应解释为部分地或全部地纳入在以下解释内:附接至或结合在一起,即使存在介入物。除非本文另外指明,否则本文中值范围的列举仅仅意图用作个别地表示属于所述范围的各单独值的速记方法,并且犹如本文个别描述地那样将各单独值并入到本说明书中。除非此外另有指出或与上下文矛盾,否则术语“集合”(例如“项目集合”)的使用被解释为包括一个或多个成员的非空集合。此外,除非此外另有指出或与上下文矛盾,对应集合的术语“子集”没有必要表示对应集合的真子集,而对应集合的子集可以是相等的。
除非另外特别规定或另外与上下文矛盾,连接语言,如具有形式“A、B、以及C中的至少一个”或“A、B以及C中的至少一个”的短语另外与上下文一起理解为一般用来呈现的是,项目、术语等可以是A或B或C,或A和B和C的集合的任何非空子集。例如,在具有用于上文连接短语的三个成员的集合的说明性实例中,“A、B、以及C中的至少一个”和“A、B以及C中的至少一个”是指以下集合中的任一个:{A}、{B}、{C}、{A,B}、{A,C}、{B,C}、{A,B,C}。因此,此类连接性语言一般并非意在暗示某些实施方案需要存在A中的至少一个、B中的至少一个以及C中的至少一个。
可按任何合适的顺序来执行本文所述的过程操作,除非本文另外指明或明显地与上下文矛盾。本文所述的过程(或变体和/或其组合)的一些或全部可在配置有可执行指令的一个或多个计算机***的控制下实行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用程序)、由硬件或其组合来实施。代码可以例如包括可由一个或多个处理器执行的多个指令的计算机程序的形式存储在计算机可读储存介质上。计算机可读储存介质可以是非暂时性的。
本文所提供的任何以及所有实例或示例性语言(例如,“如”)的使用仅意图更好地说明本发明的实施方案,并且除非另外要求保护,否则不会对本发明的范围施加限制。本说明书中的语言不应解释为将任何非要求保护的要素指示为实践本发明所必需。
本文中描述了本公开的优选实施方案,包括发明人已知用于执行本发明的最佳模式。阅读上述说明后那些优选实施方案的变体对于本领域的普通技术人员可以变得显而易见。发明人希望技术人员视情况采用此类变体,并且发明人意图以不同于如本文所特别描述的方式来实践本公开的实施方案。因此,经适用的法律许可,本公开的范围包括在此附加的权利要求中叙述的所有主题的改良形式和等价物。此外,除非本文另外指示或明显地与上下文矛盾,否则本公开的范围涵盖其所有可能变体中的上述元素的任何组合。
本文所引用的所有参考文献(包括出版物、专利申请和专利)据此以引用方式并入,其程度等同于每个参考文献单独地且具体地被表示为以引用方式并入本文并且以其全文在本文得以陈述。
Claims (10)
1.一种计算机实现的用于保护数据安全性的方法,其包括:
在服务提供者的一个或多个计算机***的控制下,所述一个或多个计算机***被配置有可执行指令,
从对应于所述服务提供者的客户的请求者接收请求,所述请求的履行涉及关于所述请求中指定的数据的一个或多个密码操作的执行以及在所述请求中供应的密码密钥的使用,所述服务提供者在一定时间内缺少对所述密码密钥的访问直到接收到所述请求,其中所述请求中的所述密码密钥是用一公钥-私钥对中的公钥加密的对称密钥;
通过作为执行关于所述指定的数据的所述一个或多个密码操作的一部分的使用所述供应的密码密钥来履行所述请求,其中执行关于所述指定的数据的所述一个或多个密码操作包括:使用所述公钥-私钥对中的私钥来解密出所述对称密码密钥;以及,使用解密出的对称密码密钥来执行所述一个或多个密码操作;并且
向数据存储***提供执行所述一个或多个密码操作的结果;并且
在执行所述一个或多个密码操作的某一时刻后,执行致使所述服务提供者失去对所述密码密钥的访问的一个或多个操作。
2.如权利要求1所述的计算机实现的方法,其中所述解密包括向另一个实体传送所述密码密钥以供解密。
3.一种用于保护数据安全性的装置,其包括:
一个或多个处理器;以及
包括指令的存储器,当由所述一个或多个处理器执行时,所述指令致使所述装置:
通过网络从请求者接收请求,所述请求的履行涉及使用包括在所述请求中供应的密码密钥的信息来执行关于所述请求中指定的数据的一个或多个密码操作,其中所述信息可用来认证所述请求,其中所述请求中的所述密码密钥是用一公钥-私钥对中的公钥加密的对称密钥;
作为接收并认证所述请求的结果,执行关于所述指定的数据的所述一个或多个密码操作,其中执行关于所述指定的数据的所述一个或多个密码操作包括:使用所述公钥-私钥对中的私钥来解密出所述对称密码密钥;以及,使用解密出的对称密码密钥来执行所述一个或多个密码操作;并且
提供执行所述一个或多个密码操作的结果。
4.如权利要求3所述的装置,其中:
所述请求是从数据存储***读取已加密数据的请求;并且
所述信息可用来使用在所述请求中供应的所述密码密钥来认证所述请求。
5.如权利要求3所述的装置,其中所述信息可用来通过包括至少部分基于不同于在所述请求中供应的所述密码密钥的第二密码密钥生成的电子签名来认证所述请求。
6.如权利要求3所述的装置,其中:
所述一个或多个密码操作包括加密所述指定的数据;并且
提供执行所述一个或多个密码操作的所述结果包括将所述指定的数据以加密形式传送到数据存储***以用于持久存储。
7.如权利要求3所述的装置,其中所述指令进一步致使所述装置执行一个或多个操作,以便在执行所述一个或多个密码操作之后的某一时刻失去对在所述请求中供应的所述密码密钥的访问。
8.如权利要求3所述的装置,其中所述装置在一定时间内缺少对所述密码密钥的访问,直到接收到所述请求。
9.如权利要求3所述的装置,其中:
在所述请求中供应的所述密码密钥被供应在呈加密形式的所述请求中;并且
所述装置还包括子装置,所述子装置被配置来安全地存储从所述子装置的外部难以接近的多个密码密钥,所述多个密码密钥包括可用来解密以加密形式供应的所述密码密钥的特定密码密钥;
所述指令进一步致使所述装置致使所述子装置解密以加密形式供应的将用于执行所述一个或多个密码操作的所述密码密钥。
10.如权利要求3所述的装置,其中所述信息可用来通过使用所述密码密钥认证所述请求来认证所述请求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910495865.2A CN110266671A (zh) | 2013-09-25 | 2014-09-23 | 使用请求供应的密钥保护数据安全性的方法和装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/037,292 US9311500B2 (en) | 2013-09-25 | 2013-09-25 | Data security using request-supplied keys |
US14/037,292 | 2013-09-25 | ||
PCT/US2014/057051 WO2015048042A1 (en) | 2013-09-25 | 2014-09-23 | Data security using request-supplied keys |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910495865.2A Division CN110266671A (zh) | 2013-09-25 | 2014-09-23 | 使用请求供应的密钥保护数据安全性的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105580311A CN105580311A (zh) | 2016-05-11 |
CN105580311B true CN105580311B (zh) | 2019-07-05 |
Family
ID=52692105
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910495865.2A Pending CN110266671A (zh) | 2013-09-25 | 2014-09-23 | 使用请求供应的密钥保护数据安全性的方法和装置 |
CN201480052720.0A Active CN105580311B (zh) | 2013-09-25 | 2014-09-23 | 使用请求供应的密钥保护数据安全性的方法和装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910495865.2A Pending CN110266671A (zh) | 2013-09-25 | 2014-09-23 | 使用请求供应的密钥保护数据安全性的方法和装置 |
Country Status (6)
Country | Link |
---|---|
US (5) | US9311500B2 (zh) |
EP (3) | EP3611873B1 (zh) |
JP (3) | JP6389895B2 (zh) |
CN (2) | CN110266671A (zh) |
CA (1) | CA2923438C (zh) |
WO (1) | WO2015048042A1 (zh) |
Families Citing this family (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9742735B2 (en) | 2012-04-13 | 2017-08-22 | Ologn Technologies Ag | Secure zone for digital communications |
CA2870283C (en) | 2012-04-13 | 2021-07-06 | Ologn Technologies Ag | Apparatuses, methods and systems for computer-based secure transactions |
US9432348B2 (en) | 2012-04-20 | 2016-08-30 | Ologn Technologies Ag | Secure zone for secure purchases |
US20140281560A1 (en) * | 2013-03-15 | 2014-09-18 | Ologn Technologies Ag | Secure zone on a virtual machine for digital communications |
US11176546B2 (en) | 2013-03-15 | 2021-11-16 | Ologn Technologies Ag | Systems, methods and apparatuses for securely storing and providing payment information |
CA2918596C (en) | 2013-08-02 | 2023-03-07 | Ologn Technologies Ag | A secure server on a system with virtual machines |
US9311500B2 (en) | 2013-09-25 | 2016-04-12 | Amazon Technologies, Inc. | Data security using request-supplied keys |
US9237019B2 (en) | 2013-09-25 | 2016-01-12 | Amazon Technologies, Inc. | Resource locators with keys |
WO2016076934A2 (en) | 2014-08-22 | 2016-05-19 | Thomas John K | Verification system for secure transmission in a distributed processing network |
US10003584B1 (en) * | 2014-09-02 | 2018-06-19 | Amazon Technologies, Inc. | Durable key management |
US10110382B1 (en) * | 2014-09-02 | 2018-10-23 | Amazon Technologies, Inc. | Durable cryptographic keys |
US9819648B1 (en) | 2014-10-21 | 2017-11-14 | Amazon Technologies, Inc. | Secure content delivery |
GB2531770A (en) * | 2014-10-30 | 2016-05-04 | Ibm | Confidential Extracting System Internal Data |
US10333908B2 (en) | 2015-02-03 | 2019-06-25 | SecuritiNet Inc. | Transaction-based secure information delivery and assessment |
US10469477B2 (en) | 2015-03-31 | 2019-11-05 | Amazon Technologies, Inc. | Key export techniques |
WO2017034642A2 (en) | 2015-06-05 | 2017-03-02 | Nutanix, Inc. | Optimizable full-path encryption in a virtualization environment |
US10237246B1 (en) | 2015-07-31 | 2019-03-19 | Symphony Communication Services Holdings Llc | Secure message search |
US10432589B1 (en) * | 2015-07-31 | 2019-10-01 | Symphony Communication Services Holdings Llc | Secure end-to-end communications |
CN105376242A (zh) * | 2015-11-26 | 2016-03-02 | 上海斐讯数据通信技术有限公司 | 一种云终端数据访问的认证方法、***及云终端的管理*** |
WO2017127564A1 (en) | 2016-01-19 | 2017-07-27 | Priv8Pay, Inc. | Network node authentication |
US10103885B2 (en) * | 2016-01-20 | 2018-10-16 | Mastercard International Incorporated | Method and system for distributed cryptographic key provisioning and storage via elliptic curve cryptography |
TWI602076B (zh) * | 2016-05-13 | 2017-10-11 | 矽統科技股份有限公司 | 音訊處理編碼鎖定方法與收音裝置 |
US10164955B1 (en) | 2016-05-25 | 2018-12-25 | Google Llc | Volatile encryption keys |
US10404452B2 (en) * | 2016-08-19 | 2019-09-03 | Amazon Technologies, Inc. | Message service with distributed key caching for server-side encryption |
US10291401B1 (en) * | 2016-09-26 | 2019-05-14 | Amazon Technologies, Inc. | Stateless service-mediated security module |
US10819709B1 (en) | 2016-09-26 | 2020-10-27 | Symphony Communication Services Holdings Llc | Authorizing delegated capabilities to applications in a secure end-to-end communications system |
EP3340293A1 (de) | 2016-12-20 | 2018-06-27 | Siemens Aktiengesellschaft | Halbleitermodul mit stützstruktur auf der unterseite |
US10505730B2 (en) | 2017-02-06 | 2019-12-10 | Red Hat, Inc. | Secure data management |
DE102017103519A1 (de) * | 2017-02-21 | 2018-08-23 | Uniscon Universal Identity Control Gmbh | Verfahren zum gesicherten Zugriff auf Daten |
WO2018236420A1 (en) * | 2017-06-20 | 2018-12-27 | Google Llc | CLOUD EQUIPMENT SECURITY MODULES FOR CRYPTOGRAPHIC EXTERNALIZATION OPERATIONS |
US10958424B1 (en) * | 2017-11-02 | 2021-03-23 | Amazon Technologies, Inc. | Mechanism to allow third party to use a shared secret between two parties without revealing the secret |
US11698979B2 (en) | 2018-03-27 | 2023-07-11 | Workday, Inc. | Digital credentials for access to sensitive data |
US11522713B2 (en) | 2018-03-27 | 2022-12-06 | Workday, Inc. | Digital credentials for secondary factor authentication |
US11792181B2 (en) | 2018-03-27 | 2023-10-17 | Workday, Inc. | Digital credentials as guest check-in for physical building access |
WO2019191215A1 (en) * | 2018-03-27 | 2019-10-03 | Workday, Inc. | Digital credentials for secondary factor authentication |
US11792180B2 (en) | 2018-03-27 | 2023-10-17 | Workday, Inc. | Digital credentials for visitor network access |
US11627000B2 (en) | 2018-03-27 | 2023-04-11 | Workday, Inc. | Digital credentials for employee badging |
US11012436B2 (en) | 2018-03-27 | 2021-05-18 | Workday, Inc. | Sharing credentials |
US11700117B2 (en) | 2018-03-27 | 2023-07-11 | Workday, Inc. | System for credential storage and verification |
US11770261B2 (en) | 2018-03-27 | 2023-09-26 | Workday, Inc. | Digital credentials for user device authentication |
US11641278B2 (en) | 2018-03-27 | 2023-05-02 | Workday, Inc. | Digital credential authentication |
US11683177B2 (en) | 2018-03-27 | 2023-06-20 | Workday, Inc. | Digital credentials for location aware check in |
US11716320B2 (en) | 2018-03-27 | 2023-08-01 | Workday, Inc. | Digital credentials for primary factor authentication |
US11531783B2 (en) | 2018-03-27 | 2022-12-20 | Workday, Inc. | Digital credentials for step-up authentication |
SG10201805967SA (en) | 2018-07-11 | 2020-02-27 | Mastercard International Inc | Methods and systems for encrypting data for a web application |
JP7200559B2 (ja) * | 2018-09-11 | 2023-01-10 | 富士フイルムビジネスイノベーション株式会社 | ネットワーク装置及びプログラム |
CN111865829B (zh) * | 2019-04-24 | 2022-08-02 | 成都鼎桥通信技术有限公司 | 业务数据的加密解密方法及设备 |
US11263310B2 (en) * | 2019-11-26 | 2022-03-01 | Red Hat, Inc. | Using a trusted execution environment for a proof-of-work key wrapping scheme that verifies remote device capabilities |
US11520878B2 (en) * | 2019-11-26 | 2022-12-06 | Red Hat, Inc. | Using a trusted execution environment for a proof-of-work key wrapping scheme that restricts execution based on device capabilities |
US11347886B1 (en) * | 2021-06-30 | 2022-05-31 | Snowflake Inc. | Secure multi-party encrypted identifier data sharing |
WO2023064086A1 (en) * | 2021-10-13 | 2023-04-20 | Visa International Service Association | Efficient and protected data transfer system and method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6084969A (en) * | 1997-12-31 | 2000-07-04 | V-One Corporation | Key encryption system and method, pager unit, and pager proxy for a two-way alphanumeric pager network |
CN1470972A (zh) * | 2002-06-28 | 2004-01-28 | 用于提供安全服务器密钥操作的***和方法 | |
CN101938461A (zh) * | 2009-06-29 | 2011-01-05 | 索尼公司 | 信息处理服务器、信息处理设备、以及信息处理方法 |
CN102687482A (zh) * | 2009-12-29 | 2012-09-19 | 诺基亚公司 | 数据云的分布式认证 |
Family Cites Families (234)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5200999A (en) | 1991-09-27 | 1993-04-06 | International Business Machines Corporation | Public key cryptosystem key management based on control vectors |
US5179591A (en) | 1991-10-16 | 1993-01-12 | Motorola, Inc. | Method for algorithm independent cryptographic key management |
US5418854A (en) | 1992-04-28 | 1995-05-23 | Digital Equipment Corporation | Method and apparatus for protecting the confidentiality of passwords in a distributed data processing system |
EP0956673A4 (en) | 1996-12-20 | 2005-04-06 | Financial Services Technology | METHOD AND SYSTEM FOR PROCESSING ELECTRONIC DOCUMENTS |
US6272631B1 (en) * | 1997-06-30 | 2001-08-07 | Microsoft Corporation | Protected storage of core data secrets |
US6279110B1 (en) | 1997-11-10 | 2001-08-21 | Certicom Corporation | Masked digital signatures |
US6185316B1 (en) | 1997-11-12 | 2001-02-06 | Unisys Corporation | Self-authentication apparatus and method |
US6097817A (en) | 1997-12-10 | 2000-08-01 | Omnipoint Corporation | Encryption and decryption in communication system with wireless trunk |
US6453416B1 (en) | 1997-12-19 | 2002-09-17 | Koninklijke Philips Electronics N.V. | Secure proxy signing device and method of use |
US6754820B1 (en) | 2001-01-30 | 2004-06-22 | Tecsec, Inc. | Multiple level access system |
US6760711B1 (en) * | 1999-01-11 | 2004-07-06 | Microsoft Corporation | Merchant owned, ISP-hosted online stores with secure data store |
US6985583B1 (en) | 1999-05-04 | 2006-01-10 | Rsa Security Inc. | System and method for authentication seed distribution |
AU6640500A (en) | 1999-08-13 | 2001-03-19 | Microsoft Corporation | Methods and systems of protecting digital content |
US7343351B1 (en) | 1999-08-31 | 2008-03-11 | American Express Travel Related Services Company, Inc. | Methods and apparatus for conducting electronic transactions |
US7085931B1 (en) | 1999-09-03 | 2006-08-01 | Secure Computing Corporation | Virtual smart card system and method |
JP2001202452A (ja) * | 2000-01-21 | 2001-07-27 | Nippon Telegr & Teleph Corp <Ntt> | ディジタルコンテンツ配布方法、その装置およびそのプログラム記録媒体 |
JP4622064B2 (ja) | 2000-04-06 | 2011-02-02 | ソニー株式会社 | 情報記録装置、情報再生装置、情報記録方法、情報再生方法、および情報記録媒体、並びにプログラム提供媒体 |
US6826686B1 (en) | 2000-04-14 | 2004-11-30 | International Business Machines Corporation | Method and apparatus for secure password transmission and password changes |
US7512965B1 (en) | 2000-04-19 | 2009-03-31 | Hewlett-Packard Development Company, L.P. | Computer system security service |
US7757271B2 (en) | 2000-04-19 | 2010-07-13 | Hewlett-Packard Development Company, L.P. | Computer system security service |
US20020016840A1 (en) | 2000-05-12 | 2002-02-07 | Shai Herzog | Applying recursive policy for scoping of administration of policy based networking |
CN1249972C (zh) | 2000-06-05 | 2006-04-05 | 凤凰技术有限公司 | 使用多个服务器的远程密码验证的***和方法 |
JP2001356952A (ja) * | 2000-06-14 | 2001-12-26 | Do It Inc | データ暗号化方法及びシステム |
US20030041110A1 (en) | 2000-07-28 | 2003-02-27 | Storymail, Inc. | System, Method and Structure for generating and using a compressed digital certificate |
US20020194483A1 (en) | 2001-02-25 | 2002-12-19 | Storymail, Inc. | System and method for authorization of access to a resource |
US7500272B2 (en) | 2000-08-04 | 2009-03-03 | First Data Corporation | Manufacturing unique devices that generate digital signatures |
AU2001278159A1 (en) | 2000-08-11 | 2002-02-25 | Incanta, Inc. | Resource distribution in network environment |
US7010689B1 (en) * | 2000-08-21 | 2006-03-07 | International Business Machines Corporation | Secure data storage and retrieval in a client-server environment |
US7308431B2 (en) | 2000-09-11 | 2007-12-11 | Nokia Corporation | System and method of secure authentication and billing for goods and services using a cellular telecommunication and an authorization infrastructure |
US7689832B2 (en) | 2000-09-11 | 2010-03-30 | Sentrycom Ltd. | Biometric-based system and method for enabling authentication of electronic messages sent over a network |
WO2002025899A1 (en) * | 2000-09-22 | 2002-03-28 | General Instrument Corporation | Internet protocol telephony security architecture |
US6959394B1 (en) | 2000-09-29 | 2005-10-25 | Intel Corporation | Splitting knowledge of a password |
US20020112181A1 (en) | 2000-12-12 | 2002-08-15 | Smith Mark Elwin | Multilevel secure network access system |
JP2002190795A (ja) | 2000-12-20 | 2002-07-05 | Hitachi Ltd | 情報端末及び情報端末システム |
JP2002278839A (ja) | 2001-03-15 | 2002-09-27 | Sony Corp | データアクセス管理システム、メモリ搭載デバイス、およびデータアクセス管理方法、並びにプログラム記憶媒体 |
AU2002252405A1 (en) | 2001-03-19 | 2002-10-03 | Accenture Llp | Mobile valet |
US20020162019A1 (en) | 2001-04-25 | 2002-10-31 | Berry Michael C. | Method and system for managing access to services |
US20020161998A1 (en) * | 2001-04-27 | 2002-10-31 | International Business Machines Corporation | Method and system for providing hardware cryptography functionality to a data processing system lacking cryptography hardware |
WO2003003321A2 (en) | 2001-06-26 | 2003-01-09 | Enterprises Solutions, Inc. | Transaction verification system and method |
ATE241820T1 (de) | 2001-07-12 | 2003-06-15 | Castify Networks Sa | Verfahren zum bereitstellen von kundenzugriff auf einen inhaltanbietenden server unter kontrolle eines resoursenlokalisierenden servers |
US7610390B2 (en) | 2001-12-04 | 2009-10-27 | Sun Microsystems, Inc. | Distributed network identity |
KR100458516B1 (ko) | 2001-12-28 | 2004-12-03 | 한국전자통신연구원 | 웹-리소스 불법 변경 감지 장치 및 그 방법 |
US7073195B2 (en) | 2002-01-28 | 2006-07-04 | Intel Corporation | Controlled access to credential information of delegators in delegation relationships |
US7249379B2 (en) | 2002-02-01 | 2007-07-24 | Systems Advisory Group Enterprises, Inc. | Method and apparatus for implementing process-based security in a computer system |
US20040158734A1 (en) | 2002-02-01 | 2004-08-12 | Larsen Vincent Alan | System and method for process-based security in a portable electronic device |
JP4040886B2 (ja) | 2002-02-15 | 2008-01-30 | 三菱電機株式会社 | コンテンツ管理システムおよびコンテンツ管理方法 |
US7228417B2 (en) | 2002-02-26 | 2007-06-05 | America Online, Inc. | Simple secure login with multiple-authentication providers |
US6971017B2 (en) | 2002-04-16 | 2005-11-29 | Xerox Corporation | Ad hoc secure access to documents and services |
US7523490B2 (en) | 2002-05-15 | 2009-04-21 | Microsoft Corporation | Session key security protocol |
US7546633B2 (en) | 2002-10-25 | 2009-06-09 | Microsoft Corporation | Role-based authorization management framework |
US20040088260A1 (en) | 2002-10-31 | 2004-05-06 | Foster Ward Scott | Secure user authentication |
EP1570442A2 (en) | 2002-11-27 | 2005-09-07 | RSA Security Inc. | Identity authentication system and method |
JP4226309B2 (ja) * | 2002-12-11 | 2009-02-18 | 日本放送協会 | 利用者証明書発行サーバ及びそのプログラム、利用者認証サーバ及びそのプログラム、並びに、コンテンツ取得認証装置及びそのプログラム |
US7319757B2 (en) | 2003-01-02 | 2008-01-15 | Intel Corporation | Wireless communication device and method for over-the-air application service |
US20040143733A1 (en) * | 2003-01-16 | 2004-07-22 | Cloverleaf Communication Co. | Secure network data storage mediator |
US7320076B2 (en) * | 2003-03-05 | 2008-01-15 | Sun Microsystems, Inc. | Method and apparatus for a transaction-based secure storage file system |
US7702916B2 (en) | 2003-03-31 | 2010-04-20 | Visa U.S.A. Inc. | Method and system for secure authentication |
US20040221174A1 (en) | 2003-04-29 | 2004-11-04 | Eric Le Saint | Uniform modular framework for a host computer system |
US20070186102A1 (en) | 2003-05-06 | 2007-08-09 | Ng Raymond K | Method and apparatus for facilitating fine-grain permission management |
US7711097B2 (en) | 2003-07-09 | 2010-05-04 | Fujitsu Limited | Pay-per-connection scheme for wireless access to internet |
WO2005020541A1 (en) | 2003-08-13 | 2005-03-03 | Thomson Licensing | Method and device for securing content delivery over a communication network via content keys |
US8966276B2 (en) | 2003-09-12 | 2015-02-24 | Emc Corporation | System and method providing disconnected authentication |
US7290129B2 (en) | 2003-09-16 | 2007-10-30 | At&T Bls Intellectual Property, Inc. | Remote administration of computer access settings |
US8453196B2 (en) | 2003-10-14 | 2013-05-28 | Salesforce.Com, Inc. | Policy management in an interoperability network |
TWI240530B (en) | 2003-12-11 | 2005-09-21 | Inst Information Industry | Dynamic delegation method, storage medium and device using the same |
US7434050B2 (en) | 2003-12-11 | 2008-10-07 | International Business Machines Corporation | Efficient method for providing secure remote access |
JP2005197912A (ja) * | 2004-01-06 | 2005-07-21 | Nippon Telegr & Teleph Corp <Ntt> | 情報開示制御方法、情報開示制御プログラム、ならびに、耐タンパ装置 |
US7636941B2 (en) | 2004-03-10 | 2009-12-22 | Microsoft Corporation | Cross-domain authentication |
US8522039B2 (en) | 2004-06-09 | 2013-08-27 | Apple Inc. | Method and apparatus for establishing a federated identity using a personal wireless device |
US7814314B2 (en) | 2004-08-31 | 2010-10-12 | Ntt Docomo, Inc. | Revocation of cryptographic digital certificates |
GB0419479D0 (en) | 2004-09-02 | 2004-10-06 | Cryptomathic Ltd | Data certification methods and apparatus |
KR100645512B1 (ko) | 2004-09-30 | 2006-11-15 | 삼성전자주식회사 | 통신 시스템에서 네트워크 접속에 대한 사용자 인증 장치및 그 방법 |
US8181219B2 (en) | 2004-10-01 | 2012-05-15 | Microsoft Corporation | Access authorization having embedded policies |
US20060130100A1 (en) | 2004-10-12 | 2006-06-15 | Pentland Joseph D | Methods and apparatus for remotely displaying and distributing advertising and emergency information |
JP2006128873A (ja) | 2004-10-27 | 2006-05-18 | Matsushita Electric Ind Co Ltd | Url認証システム及びurl認証方法 |
US7251476B2 (en) | 2004-11-01 | 2007-07-31 | Xcellasave, Inc. | Method for advertising on digital cellular telephones and reducing costs to the end user |
US7251478B2 (en) | 2004-11-01 | 2007-07-31 | Xcellasave, Inc. | Method for advertising on digital cellular telephones and reducing costs to the end user |
BRPI0517606A (pt) | 2004-11-09 | 2008-10-14 | Mobile Phone Applic Inc | sistema e método para provimento de conteúdo para um dispositivo de comunicação móvel |
US7886155B2 (en) | 2004-12-20 | 2011-02-08 | Biogy, Inc. | System for generating requests to a passcode protected entity |
US7734051B2 (en) | 2004-11-30 | 2010-06-08 | Novell, Inc. | Key distribution |
KR101202671B1 (ko) | 2004-12-28 | 2012-11-19 | 텔레콤 이탈리아 소시에떼 퍼 아찌오니 | 사용자가 가입자 단말에서 단말 장치에 원격으로 접속할 수있게 하기 위한 원격 접속 시스템 및 방법 |
US20060149677A1 (en) | 2005-01-06 | 2006-07-06 | Microsoft Corporation | Contextual ad processing on local machine |
JP4548737B2 (ja) | 2005-01-24 | 2010-09-22 | パナソニック株式会社 | 署名生成装置及び署名検証装置 |
US20060174125A1 (en) | 2005-01-31 | 2006-08-03 | Brookner George M | Multiple cryptographic key security device |
CA2596307A1 (en) | 2005-02-04 | 2006-08-10 | Cellfire, Inc. | Delivering targeted advertising to mobile devices |
KR100750214B1 (ko) | 2005-02-15 | 2007-08-17 | 권도균 | 공인 인증서를 이용한 로그인 방법 |
CN101120351B (zh) | 2005-02-18 | 2010-10-06 | Rsa安全公司 | 派生种子的分发方法 |
US7478419B2 (en) | 2005-03-09 | 2009-01-13 | Sun Microsystems, Inc. | Automated policy constraint matching for computing resources |
US7770206B2 (en) | 2005-03-11 | 2010-08-03 | Microsoft Corporation | Delegating right to access resource or the like in access management system |
US7784092B2 (en) | 2005-03-25 | 2010-08-24 | AT&T Intellectual I, L.P. | System and method of locating identity providers in a data network |
US8689347B2 (en) | 2005-05-13 | 2014-04-01 | Cryptomill Inc. | Cryptographic control for mobile storage means |
EP1902401B1 (en) | 2005-05-13 | 2017-03-29 | CryptoMill Inc. | Content cryptographic firewall system |
FI20050562A0 (fi) | 2005-05-26 | 2005-05-26 | Nokia Corp | Menetelmä avainmateriaalin tuottamiseksi |
US20060282878A1 (en) | 2005-06-14 | 2006-12-14 | Stanley James C | Expression of packet processing policies using file processing rules |
US7685430B1 (en) | 2005-06-17 | 2010-03-23 | Sun Microsystems, Inc. | Initial password security accentuated by triple encryption and hashed cache table management on the hosted site's server |
US7836306B2 (en) | 2005-06-29 | 2010-11-16 | Microsoft Corporation | Establishing secure mutual trust using an insecure password |
US20070037552A1 (en) | 2005-08-11 | 2007-02-15 | Timothy Lee | Method and system for performing two factor mutual authentication |
JP2007053658A (ja) * | 2005-08-19 | 2007-03-01 | Nec Corp | 問い合わせ対応システム、端末、サーバ及びプログラム |
US8194859B2 (en) * | 2005-09-01 | 2012-06-05 | Qualcomm Incorporated | Efficient key hierarchy for delivery of multimedia content |
US20070061571A1 (en) | 2005-09-09 | 2007-03-15 | Hammes Peter S | System and method for managing security testing |
US20070101401A1 (en) * | 2005-10-27 | 2007-05-03 | Genty Denise M | Method and apparatus for super secure network authentication |
US7721322B2 (en) | 2005-11-22 | 2010-05-18 | Oracle International Corporation | Enterprise service-to-service trust framework |
KR20070108315A (ko) | 2005-12-07 | 2007-11-09 | 한국전자통신연구원 | 서명된 콜백 유알엘 메시지를 이용한 개인정보 공유 서비스제공 장치 및 방법 |
KR100825736B1 (ko) | 2005-12-07 | 2008-04-29 | 한국전자통신연구원 | 무선 xml 전자 서명 서비스 제공 장치 및 그 방법 |
US8006289B2 (en) | 2005-12-16 | 2011-08-23 | International Business Machines Corporation | Method and system for extending authentication methods |
US8321437B2 (en) | 2005-12-29 | 2012-11-27 | Nextlabs, Inc. | Detecting behavioral patterns and anomalies using activity profiles |
US7716240B2 (en) | 2005-12-29 | 2010-05-11 | Nextlabs, Inc. | Techniques and system to deploy policies intelligently |
CN100571125C (zh) | 2005-12-30 | 2009-12-16 | 上海贝尔阿尔卡特股份有限公司 | 一种用于用户设备与内部网络间安全通信的方法及装置 |
US8688813B2 (en) | 2006-01-11 | 2014-04-01 | Oracle International Corporation | Using identity/resource profile and directory enablers to support identity management |
GB2434947B (en) * | 2006-02-02 | 2011-01-26 | Identum Ltd | Electronic data communication system |
JP2007214757A (ja) * | 2006-02-08 | 2007-08-23 | Denso Corp | 車両用情報処理システム |
US8312523B2 (en) | 2006-03-31 | 2012-11-13 | Amazon Technologies, Inc. | Enhanced security for electronic communications |
US7752676B2 (en) * | 2006-04-18 | 2010-07-06 | International Business Machines Corporation | Encryption of data in storage systems |
US8239671B2 (en) | 2006-04-20 | 2012-08-07 | Toshiba America Research, Inc. | Channel binding mechanism based on parameter binding in key derivation |
CN100517205C (zh) | 2006-04-21 | 2009-07-22 | 邱波 | 用于it领域的同时多维、增速、省空间的***显示方法 |
US7913084B2 (en) | 2006-05-26 | 2011-03-22 | Microsoft Corporation | Policy driven, credential delegation for single sign on and secure access to network resources |
US8151116B2 (en) | 2006-06-09 | 2012-04-03 | Brigham Young University | Multi-channel user authentication apparatus system and method |
US9276739B2 (en) * | 2006-06-30 | 2016-03-01 | Koninklijke Philips N.V. | Method and apparatus for encrypting/decrypting data |
US8151317B2 (en) | 2006-07-07 | 2012-04-03 | International Business Machines Corporation | Method and system for policy-based initiation of federation management |
US20120245978A1 (en) | 2006-07-12 | 2012-09-27 | Arbitron, Inc. | System and method for determinimg contextual characteristics of media exposure data |
US20080040773A1 (en) | 2006-08-11 | 2008-02-14 | Microsoft Corporation | Policy isolation for network authentication and authorization |
DE102006038037A1 (de) | 2006-08-14 | 2008-02-21 | Siemens Ag | Verfahren und System zum Bereitstellen eines zugangsspezifischen Schlüssels |
AU2007286884A1 (en) | 2006-08-24 | 2008-02-28 | Cook Medical Technologies Llc | Multi-display computer terminal system |
US8705746B2 (en) * | 2006-09-29 | 2014-04-22 | Microsoft Corporation | Data security in an off-premise environment |
US8601598B2 (en) | 2006-09-29 | 2013-12-03 | Microsoft Corporation | Off-premise encryption of data storage |
US8060916B2 (en) | 2006-11-06 | 2011-11-15 | Symantec Corporation | System and method for website authentication using a shared secret |
US8041954B2 (en) | 2006-12-07 | 2011-10-18 | Paul Plesman | Method and system for providing a secure login solution using one-time passwords |
US9124602B2 (en) | 2007-01-05 | 2015-09-01 | International Business Machines Corporation | Method and apparatus for creating custom access control hierarchies |
US8468244B2 (en) | 2007-01-05 | 2013-06-18 | Digital Doors, Inc. | Digital information infrastructure and method for security designated data and with granular data stores |
US20080178010A1 (en) | 2007-01-18 | 2008-07-24 | Vaterlaus Robert K | Cryptographic web service |
AU2008211235B2 (en) | 2007-01-26 | 2012-01-19 | Interdigital Technology Corporation | Method and apparatus for securing location information and access control using the location information |
JP4973246B2 (ja) | 2007-03-09 | 2012-07-11 | 日本電気株式会社 | アクセス権管理システム、サーバ及びアクセス権管理プログラム |
US8413221B2 (en) | 2007-03-23 | 2013-04-02 | Emc Corporation | Methods and apparatus for delegated authentication |
US7996823B2 (en) | 2007-05-31 | 2011-08-09 | International Business Machines Corporation | Mechanism to provide debugging and optimization in policy and knowledge controlled distributed computing systems, through the use of tagged policies and knowledge representation elements |
US20090049518A1 (en) | 2007-08-08 | 2009-02-19 | Innopath Software, Inc. | Managing and Enforcing Policies on Mobile Devices |
US8332922B2 (en) | 2007-08-31 | 2012-12-11 | Microsoft Corporation | Transferable restricted security tokens |
JP5458888B2 (ja) | 2007-09-25 | 2014-04-02 | 日本電気株式会社 | 証明書生成配布システム、証明書生成配布方法およびプログラム |
US8059820B2 (en) | 2007-10-11 | 2011-11-15 | Microsoft Corporation | Multi-factor content protection |
US8453198B2 (en) | 2007-12-27 | 2013-05-28 | Hewlett-Packard Development Company, L.P. | Policy based, delegated limited network access management |
US8266306B2 (en) | 2007-12-31 | 2012-09-11 | Symantec Corporation | Systems and methods for delegating access to online accounts |
US9323938B2 (en) | 2007-12-31 | 2016-04-26 | Enterra Solutions, Llc | Holistic XACML and obligation code automatically generated from ontologically defined rule set |
US8621561B2 (en) | 2008-01-04 | 2013-12-31 | Microsoft Corporation | Selective authorization based on authentication input attributes |
CA2621147C (en) | 2008-02-15 | 2013-10-08 | Connotech Experts-Conseils Inc. | Method of bootstrapping an authenticated data session configuration |
US20090210712A1 (en) | 2008-02-19 | 2009-08-20 | Nicolas Fort | Method for server-side detection of man-in-the-middle attacks |
US8418222B2 (en) | 2008-03-05 | 2013-04-09 | Microsoft Corporation | Flexible scalable application authorization for cloud computing environments |
US8464058B1 (en) | 2008-04-08 | 2013-06-11 | Hewlett-Packard Development Company, L.P. | Password-based cryptographic method and apparatus |
US8281151B2 (en) | 2008-04-09 | 2012-10-02 | Hewlett-Packard Development Company L. P. | Auditor assisted extraction and verification of client data returned from a storage provided while hiding client data from the auditor |
US20110099362A1 (en) | 2008-06-23 | 2011-04-28 | Tomoyuki Haga | Information processing device, encryption key management method, computer program and integrated circuit |
US8245039B2 (en) | 2008-07-18 | 2012-08-14 | Bridgewater Systems Corp. | Extensible authentication protocol authentication and key agreement (EAP-AKA) optimization |
US20110055585A1 (en) | 2008-07-25 | 2011-03-03 | Kok-Wah Lee | Methods and Systems to Create Big Memorizable Secrets and Their Applications in Information Engineering |
US8276184B2 (en) | 2008-08-05 | 2012-09-25 | International Business Machines Corporation | User-centric resource architecture |
US9258113B2 (en) | 2008-08-29 | 2016-02-09 | Red Hat, Inc. | Username based key exchange |
US8099768B2 (en) | 2008-09-18 | 2012-01-17 | Oracle America, Inc. | Method and system for multi-protocol single logout |
WO2010037201A1 (en) | 2008-09-30 | 2010-04-08 | Wicksoft Corporation | System and method for secure management of mobile user access to enterprise network resources |
KR101019322B1 (ko) | 2008-10-22 | 2011-03-07 | 성균관대학교산학협력단 | 상황 인지 역할 기반 접근 제어 시스템 및 그 제어방법 |
US8744077B2 (en) | 2008-10-28 | 2014-06-03 | International Business Machines Corporation | Cryptographic encoding and decoding of secret data |
US8891756B2 (en) | 2008-10-30 | 2014-11-18 | Certicom Corp. | Collision-resistant elliptic curve hash functions |
US20100125894A1 (en) | 2008-11-19 | 2010-05-20 | At&T Intellectual Property I, L.P. | Systems, methods and computer program products that facilitate remote access of devices in a subscriber network |
US9106426B2 (en) | 2008-11-26 | 2015-08-11 | Red Hat, Inc. | Username based authentication and key generation |
CN101448130B (zh) * | 2008-12-19 | 2013-04-17 | 北京中星微电子有限公司 | 监控***中数据加密保护的方法、***和设备 |
US8505078B2 (en) | 2008-12-28 | 2013-08-06 | Qualcomm Incorporated | Apparatus and methods for providing authorized device access |
US20100205649A1 (en) | 2009-02-06 | 2010-08-12 | Microsoft Corporation | Credential gathering with deferred instantiation |
US8793774B1 (en) | 2009-03-31 | 2014-07-29 | Juniper Networks, Inc. | Methods and apparatus for accessing a secure network segment |
US20130132232A1 (en) | 2009-04-22 | 2013-05-23 | Florian Pestoni | System And Method For Digital Rights Management With Delegated Authorization For Content Access |
US8068504B2 (en) | 2009-05-18 | 2011-11-29 | Tresys Technology, Llc | One-way router |
EP2448170A4 (en) | 2009-06-23 | 2015-06-24 | Panasonic Ip Man Co Ltd | CLEF-CRYPTOGRAM DISTRIBUTION SYSTEM |
US20110055562A1 (en) | 2009-08-28 | 2011-03-03 | The Go Daddy Group, Inc. | Public key certificate based social website account authentication |
JP2011054028A (ja) * | 2009-09-03 | 2011-03-17 | Ntt Data Solfis Corp | 暗号化ネットワークストレージシステム |
US8498959B2 (en) | 2009-09-29 | 2013-07-30 | Hewlett-Packard Development Company, L.P. | Policy enforcement |
US20110083015A1 (en) | 2009-10-05 | 2011-04-07 | Eidgenossiche Technische Hochschule Zurich | System and method for an electronic signature for quick and efficient data authentication |
US20110126197A1 (en) | 2009-11-25 | 2011-05-26 | Novell, Inc. | System and method for controlling cloud and virtualized data centers in an intelligent workload management system |
US9225526B2 (en) | 2009-11-30 | 2015-12-29 | Red Hat, Inc. | Multifactor username based authentication |
US8386800B2 (en) | 2009-12-04 | 2013-02-26 | Cryptography Research, Inc. | Verifiable, leak-resistant encryption and decryption |
US20110167479A1 (en) | 2010-01-07 | 2011-07-07 | Oracle International Corporation | Enforcement of policies on context-based authorization |
US8776204B2 (en) | 2010-03-12 | 2014-07-08 | Alcatel Lucent | Secure dynamic authority delegation |
US20110231940A1 (en) | 2010-03-19 | 2011-09-22 | Microsoft Corporation | Credential-based access to data |
US8353019B2 (en) | 2010-03-26 | 2013-01-08 | Canon Kabushiki Kaisha | Security token destined for multiple or group of service providers |
JP5404501B2 (ja) * | 2010-03-30 | 2014-02-05 | 日本電信電話株式会社 | 暗号化情報の有効期限延長システム、有効期限延長方法及びプログラム |
US9015489B2 (en) | 2010-04-07 | 2015-04-21 | Microsoft Technology Licensing, Llc | Securing passwords against dictionary attacks |
US8918848B2 (en) | 2010-04-26 | 2014-12-23 | Blackberry Limited | Method and system for third party client authentication |
US8826001B2 (en) * | 2010-04-27 | 2014-09-02 | International Business Machines Corporation | Securing information within a cloud computing environment |
US8607358B1 (en) * | 2010-05-18 | 2013-12-10 | Google Inc. | Storing encrypted objects |
US9160738B2 (en) | 2010-05-27 | 2015-10-13 | Microsoft Corporation | Delegation-based authorization |
WO2011159842A2 (en) | 2010-06-15 | 2011-12-22 | Nimbula, Inc. | Virtual computing infrastructure |
US8625802B2 (en) | 2010-06-16 | 2014-01-07 | Porticor Ltd. | Methods, devices, and media for secure key management in a non-secured, distributed, virtualized environment with applications to cloud-computing security and management |
US8352611B2 (en) | 2010-06-29 | 2013-01-08 | International Business Machines Corporation | Allocating computer resources in a cloud environment |
US20120017095A1 (en) * | 2010-07-19 | 2012-01-19 | Coreguard | Software Service for Encrypting and Decrypting Data |
JP2012028860A (ja) | 2010-07-20 | 2012-02-09 | Toshiba Corp | 記録装置、コントローラ及び記録装置の制御方法 |
US8799656B2 (en) | 2010-07-26 | 2014-08-05 | Intel Corporation | Methods for anonymous authentication and key agreement |
US8868923B1 (en) | 2010-07-28 | 2014-10-21 | Sandia Corporation | Multi-factor authentication |
AU2011296303B2 (en) | 2010-08-30 | 2015-01-22 | VMware LLC | Unified workspace for thin, remote, and SaaS applications |
US20120060035A1 (en) | 2010-09-08 | 2012-03-08 | Microsoft Corporation | Secure and Verifiable Data Handling |
US9069940B2 (en) | 2010-09-23 | 2015-06-30 | Seagate Technology Llc | Secure host authentication using symmetric key cryptography |
US8776190B1 (en) | 2010-11-29 | 2014-07-08 | Amazon Technologies, Inc. | Multifactor authentication for programmatic interfaces |
US8832271B2 (en) | 2010-12-03 | 2014-09-09 | International Business Machines Corporation | Identity provider instance discovery |
SG182012A1 (en) | 2010-12-09 | 2012-07-30 | Jhingan Nikhil | System and method for verifying authenticity of documents |
US8955035B2 (en) | 2010-12-16 | 2015-02-10 | Microsoft Corporation | Anonymous principals for policy languages |
US8538029B2 (en) | 2011-03-24 | 2013-09-17 | Hewlett-Packard Development Company, L.P. | Encryption key fragment distribution |
US8561152B2 (en) | 2011-05-17 | 2013-10-15 | Microsoft Corporation | Target-based access check independent of access request |
US10963584B2 (en) * | 2011-06-08 | 2021-03-30 | Workshare Ltd. | Method and system for collaborative editing of a remotely stored document |
US10237060B2 (en) * | 2011-06-23 | 2019-03-19 | Microsoft Technology Licensing, Llc | Media agnostic, distributed, and defendable data retention |
US8732462B2 (en) * | 2011-07-07 | 2014-05-20 | Ziptr, Inc. | Methods and apparatus for secure data sharing |
US9009315B2 (en) | 2011-07-28 | 2015-04-14 | Telefonaktiebolaget L M Ericsson (Publ) | Hierarchical delegation and reservation of lookup keys |
US9197409B2 (en) | 2011-09-29 | 2015-11-24 | Amazon Technologies, Inc. | Key derivation techniques |
US9178701B2 (en) | 2011-09-29 | 2015-11-03 | Amazon Technologies, Inc. | Parameter based key derivation |
US8788843B2 (en) | 2011-10-28 | 2014-07-22 | LogMeln, Inc. | Storing user data in a service provider cloud without exposing user-specific secrets to the service provider |
US20140013409A1 (en) | 2012-07-06 | 2014-01-09 | Milind I. Halageri | Single sign on for cloud |
US20130254536A1 (en) * | 2012-03-22 | 2013-09-26 | Workshare, Ltd. | Secure server side encryption for online file sharing and collaboration |
US9692732B2 (en) | 2011-11-29 | 2017-06-27 | Amazon Technologies, Inc. | Network connection automation |
US9330245B2 (en) | 2011-12-01 | 2016-05-03 | Dashlane SAS | Cloud-based data backup and sync with secure local storage of access keys |
US8806193B2 (en) * | 2011-12-22 | 2014-08-12 | Adobe Systems Incorporated | Methods and apparatus for integrating digital rights management (DRM) systems with native HTTP live streaming |
US8819444B2 (en) | 2011-12-27 | 2014-08-26 | Majid Shahbazi | Methods for single signon (SSO) using decentralized password and credential management |
EP2798560B1 (en) | 2011-12-28 | 2016-09-21 | Intel Corporation | Methods and apparatus to facilitate single sign-on services |
US8966268B2 (en) | 2011-12-30 | 2015-02-24 | Vasco Data Security, Inc. | Strong authentication token with visual output of PKI signatures |
KR20170046191A (ko) | 2012-01-20 | 2017-04-28 | 인터디지탈 패튼 홀딩스, 인크 | 로컬 기능을 갖는 아이덴티티 관리 |
US8977857B1 (en) | 2012-02-10 | 2015-03-10 | Google Inc. | System and method for granting access to protected information on a remote server |
US8892865B1 (en) | 2012-03-27 | 2014-11-18 | Amazon Technologies, Inc. | Multiple authority key derivation |
CN102624737B (zh) | 2012-03-27 | 2015-05-06 | 武汉理工大学 | 单点登录***中针对Form身份鉴别的单点登录集成方法 |
US8739308B1 (en) | 2012-03-27 | 2014-05-27 | Amazon Technologies, Inc. | Source identification for unauthorized copies of content |
US20130282461A1 (en) | 2012-04-20 | 2013-10-24 | Visa International Service Association | Systems and methods to use transaction authorization communications to process offers |
US9053329B2 (en) | 2012-05-24 | 2015-06-09 | Lockbox Llc | Systems and methods for validated secure data access |
US8769289B1 (en) | 2012-09-14 | 2014-07-01 | Emc Corporation | Authentication of a user accessing a protected resource using multi-channel protocol |
US8769651B2 (en) | 2012-09-19 | 2014-07-01 | Secureauth Corporation | Mobile multifactor single-sign-on authentication |
CN102916885B (zh) | 2012-10-26 | 2015-04-29 | 华为技术有限公司 | 一种多生成树协议网络拓扑收敛的方法、设备及*** |
US9602480B2 (en) | 2012-10-26 | 2017-03-21 | Nokia Technologies Oy | Methods and apparatus for data access control |
US9137222B2 (en) | 2012-10-31 | 2015-09-15 | Vmware, Inc. | Crypto proxy for cloud storage services |
US9064109B2 (en) | 2012-12-20 | 2015-06-23 | Intel Corporation | Privacy enhanced key management for a web service provider using a converged security engine |
US8997198B1 (en) | 2012-12-31 | 2015-03-31 | Emc Corporation | Techniques for securing a centralized metadata distributed filesystem |
CN103107995B (zh) * | 2013-02-06 | 2015-11-25 | 中电长城网际***应用有限公司 | 一种云计算环境数据安全存储***和方法 |
US9246678B2 (en) | 2013-03-14 | 2016-01-26 | Intel Corporation | Secure cloud storage and encryption management system |
US10362006B2 (en) * | 2013-03-15 | 2019-07-23 | Mastercard International Incorporated | Systems and methods for cryptographic security as a service |
US9008305B2 (en) | 2013-03-15 | 2015-04-14 | Startal, Inc. | Video data delivery protection |
US9544293B2 (en) | 2013-09-20 | 2017-01-10 | Oracle International Corporation | Global unified session identifier across multiple data centers |
US9311500B2 (en) | 2013-09-25 | 2016-04-12 | Amazon Technologies, Inc. | Data security using request-supplied keys |
-
2013
- 2013-09-25 US US14/037,292 patent/US9311500B2/en active Active
-
2014
- 2014-09-23 EP EP19197540.8A patent/EP3611873B1/en active Active
- 2014-09-23 CN CN201910495865.2A patent/CN110266671A/zh active Pending
- 2014-09-23 EP EP23176840.9A patent/EP4236203A3/en active Pending
- 2014-09-23 JP JP2016542891A patent/JP6389895B2/ja active Active
- 2014-09-23 CN CN201480052720.0A patent/CN105580311B/zh active Active
- 2014-09-23 WO PCT/US2014/057051 patent/WO2015048042A1/en active Application Filing
- 2014-09-23 CA CA2923438A patent/CA2923438C/en active Active
- 2014-09-23 EP EP14846931.5A patent/EP3050249B1/en active Active
-
2016
- 2016-04-04 US US15/090,315 patent/US10037428B2/en active Active
-
2018
- 2018-06-12 JP JP2018111507A patent/JP6787952B2/ja active Active
- 2018-07-27 US US16/048,126 patent/US10936730B2/en active Active
-
2020
- 2020-10-29 JP JP2020181042A patent/JP2021022945A/ja active Pending
-
2021
- 2021-02-17 US US17/177,496 patent/US20210173948A1/en active Pending
-
2023
- 2023-12-27 US US18/397,696 patent/US20240126895A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6084969A (en) * | 1997-12-31 | 2000-07-04 | V-One Corporation | Key encryption system and method, pager unit, and pager proxy for a two-way alphanumeric pager network |
CN1470972A (zh) * | 2002-06-28 | 2004-01-28 | 用于提供安全服务器密钥操作的***和方法 | |
CN101938461A (zh) * | 2009-06-29 | 2011-01-05 | 索尼公司 | 信息处理服务器、信息处理设备、以及信息处理方法 |
CN102687482A (zh) * | 2009-12-29 | 2012-09-19 | 诺基亚公司 | 数据云的分布式认证 |
Also Published As
Publication number | Publication date |
---|---|
US20210173948A1 (en) | 2021-06-10 |
US20150089244A1 (en) | 2015-03-26 |
JP2016535550A (ja) | 2016-11-10 |
EP4236203A2 (en) | 2023-08-30 |
JP6389895B2 (ja) | 2018-09-12 |
US20240126895A1 (en) | 2024-04-18 |
JP2018160919A (ja) | 2018-10-11 |
EP3611873A1 (en) | 2020-02-19 |
US10936730B2 (en) | 2021-03-02 |
CA2923438C (en) | 2024-04-23 |
WO2015048042A1 (en) | 2015-04-02 |
EP3050249A4 (en) | 2017-09-06 |
EP3050249B1 (en) | 2019-11-06 |
EP4236203A3 (en) | 2023-11-08 |
US9311500B2 (en) | 2016-04-12 |
JP2021022945A (ja) | 2021-02-18 |
CA2923438A1 (en) | 2015-04-02 |
EP3611873B1 (en) | 2023-08-30 |
US20190034644A1 (en) | 2019-01-31 |
US20160217290A1 (en) | 2016-07-28 |
EP3050249A1 (en) | 2016-08-03 |
JP6787952B2 (ja) | 2020-11-18 |
CN110266671A (zh) | 2019-09-20 |
US10037428B2 (en) | 2018-07-31 |
CN105580311A (zh) | 2016-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105580311B (zh) | 使用请求供应的密钥保护数据安全性的方法和装置 | |
JP7007985B2 (ja) | 鍵を有するリソースロケーター | |
JP6838799B2 (ja) | キーエクスポート技術 | |
CN105556894B (zh) | 用于网络连接自动化的方法和*** | |
CN105027107B (zh) | 迁移计算资源的计算机实现的方法及计算*** | |
CA3098836A1 (en) | Key management system and method | |
JP2020502896A (ja) | コンテンツ配信ネットワークを介した機密データの安全なデータ配給 | |
CN108476133A (zh) | 通过部分可信的第三方进行的密钥交换 | |
JP2020502668A (ja) | ネットワークを介した機密データの安全なデータ取得 | |
CN110178348A (zh) | 敏感数据的跨网络安全数据流出 | |
US11546169B2 (en) | Dynamic response signing capability in a distributed system | |
US20230188364A1 (en) | Partial payload encryption with integrity protection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |