CN110799941A - 防盗和防篡改的数据保护 - Google Patents

防盗和防篡改的数据保护 Download PDF

Info

Publication number
CN110799941A
CN110799941A CN201880043202.0A CN201880043202A CN110799941A CN 110799941 A CN110799941 A CN 110799941A CN 201880043202 A CN201880043202 A CN 201880043202A CN 110799941 A CN110799941 A CN 110799941A
Authority
CN
China
Prior art keywords
key
server
decryption key
client
client system
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.)
Granted
Application number
CN201880043202.0A
Other languages
English (en)
Other versions
CN110799941B (zh
Inventor
S·A·菲尔德
A·N·索拉姆
J·M·沃尔顿
周大翊
A·M·西门科
A·M·本-梅纳赫姆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Priority to CN202311001658.XA priority Critical patent/CN117040840A/zh
Publication of CN110799941A publication Critical patent/CN110799941A/zh
Application granted granted Critical
Publication of CN110799941B publication Critical patent/CN110799941B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
    • G06F21/126Interacting with the operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/86Secure or tamper-resistant housings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4416Network booting; Remote initial program loading [RIPL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • H04L63/045Network 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 wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/067Network architectures or network communication protocols for network security for supporting key management in a packet data network using one-time keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key 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/0822Key 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key 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/0825Key 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 asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3226Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3234Cryptographic 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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/109Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by using specially-adapted hardware at the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/40User authentication by quorum, i.e. whereby two or more security principals are required
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/321Cryptographic 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 a third party or a trusted authority
    • H04L9/3213Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Abstract

提供了用于通过维持密钥来向客户端数据添加安全性的系统和方法,该密钥提供了远离客户端数据对该客户端数据的访问。在一些情况下,系统使用加密密钥对数据集群进行加密,将加密的数据集群与唯一标识符相关联,并将唯一标识符和解密密钥发送到服务器进行存储。然后解密密钥从服务器被接收,并被用于对加密的数据集群进行解密。在允许访问密钥之前,服务器还可以执行策略检查或触发附加认证,诸如SMS、电话或电子邮件通知。此外,在一些实例中,服务器还可以响应异常(诸如停用和其他资产管理事件)来阻止访问所存储的密钥。

Description

防盗和防篡改的数据保护
背景技术
在当代计算机系统和网络中,计算机用户访问在各种存储配置(包括传统的内部部署环境和数据服务器中心环境)中被存储和管理的数据。此类数据可能会遭到盗窃或篡改。例如,在停用期间磁盘可能会被错误处理,并且恶意软件和间谍软件还可能被安装在存储设备或主机系统上。
对组织的安全区域、设备或包含敏感数据的材料的物理访问使恶意内部人员可以窃取或破坏存储的数据。例如,看门人或其他建筑承包商可能会窃取物理磁盘、其他存储设备或甚到整个计算机系统。进一步地,除了物理上盗窃和/或对存储硬件的错误处理之外,操作系统可能会被对存储介质进行物理访问的未授权人员植入恶意软件。恶意软件可能会渗透或破坏数据,或维持持续未经授权的访问以及其他问题。
此外,在计算机网络中,黑客可以操纵网络连接和所连接的系统的正常行为。黑客可以使用脚本或其他软件来攻击计算机网络,以旨在获得有关目标系统的更多信息或获得对数据的访问的方式来操纵通过网络连接的数据。根据一些估计,每年发现超过一百万个新的独特恶意软件样本。与过去的蠕虫和群发邮件不同,许多新病毒特别针对特定行业、公司甚到用户,从而使它们更难以检测和预防。
大多数计算机系统最终都会停止服务。然而,敏感数据通常保留在这些系统的存储设备上。有时,该计算机或存储设备会被回收、转售、留在壁橱中以收集灰尘、或者可能掉入恶意人员的手中。公司使用几种流行的方法来从停用的存储设备中移除数据。然而,利用操作系统删除数据仅可以移除指向数据的指针,而不是移除数据本身,因此实际上数据仍可以被恢复。其他用于移除数据的过程可以很庞大、使用起来很耗时、昂贵且危险,并且到最后数据仍然可以被读取。
因此,持续需要提供用于向被维持在存储设备上的数据添加安全性的方法,特别是对于易受盗窃和/或篡改的存储设备。
发明内容
本发明内容被提供以简化形式介绍一些概念,这些概念将在下面的详细描述中进一步描述。本发明内容既不旨在标识所要求保护的主题内容的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题内容的范围。
所公开的实施例涉及用于通过对数据进行加密并且通过将解密密钥与加密的数据分离地维持来改进所存储数据的安全性的系统和方法。
在一些实施例中,用户使用客户端系统生成数据集群,该数据集群使用加密密钥被加密,并且还与唯一密钥标识符相关联。在一个实施例中,客户端系统将唯一密钥标识符和对应的解密密钥发送到服务器以进行存储。当用户需要访问加密的数据集群时,客户端系统向服务器发送通信请求,该服务器有权访问存储解密密钥并从服务器接收通信响应的密钥ID数据库。然后,客户端系统将唯一密钥ID发送到服务器。在一个实施例中,可以使用引导管理器来实现发送唯一密钥ID,以使得客户端发送对引导代码的请求并从服务器接收引导代码。在另一实施例中,可以通过将引导代码嵌入客户端系统的固件中来实现发送唯一密钥ID。在将唯一密钥标识符发送到服务器后,客户端系统从服务器接收解密密钥,并使用解密密钥对加密的数据集群进行解密。
在服务器端,服务器接收唯一密钥标识符和解密密钥。服务器将唯一密钥标识符和解密密钥存储在密钥ID数据库中。当用户需要访问加密的数据集群时,服务器从客户端系统接收通信请求,并将通信响应发送到客户端系统。然后,服务器取回被存储在客户端系统正请求访问的加密的数据集群中的唯一密钥ID。在一个实施例中,可以经由引导管理器来取回唯一密钥ID,使得服务器从客户端系统接收对引导代码的请求,并启动加载引导代码的引导管理器。通过引导代码,服务器获得被存储在客户端系统正请求访问的加密的数据集群中的唯一密钥标识符。在另一实施例中,可以经由访问嵌入在客户端系统固件中的引导代码来实现取回唯一密钥ID。在接收到唯一密钥ID后,服务器然后在密钥ID数据库中搜索匹配。响应于找到匹配,服务器获取与密钥标识符相关联的解密密钥,并将解密密钥发送到客户端系统。
在另一实施例中,在客户端系统加密的数据集群之后,创建经聚类的加密的数据的唯一密钥ID。唯一密钥ID可以包括证书印章。解密密钥使用公共密钥进一步被加密。私有密钥与公共密钥相关,并被配置为对加密的解密密钥进行解密。客户端系统将加密的解密密钥和唯一密钥ID作为元数据存储在加密的数据集群中,然后将私有密钥和唯一密钥ID发送到服务器以进行存储。当用户需要再次访问加密的数据时,客户端系统将通信请求发送到服务器,并从服务器接收准许该请求的响应。然后,客户端系统将唯一密钥ID和加密的解密密钥发送到服务器。在一个实施例中,通过使用引导管理器启动引导代码来实现将唯一密钥ID和加密的解密密钥发送到服务器的动作,使得客户端在从服务器接收到引导代码后,会将唯一密钥ID和加密的解密密钥发送给服务器。然而,应当注意,引导代码可以在启动用于访问密钥的过程之前或之后被获得。在一个实施例中,可以通过将引导代码嵌入到客户端系统固件中来实现发送唯一密钥ID。然后,客户端系统从服务器接收解密的解密密钥,并使用解密的解密密钥对加密的数据集群进行解密。
在服务器端,服务器从客户端系统接收唯一密钥ID和私有密钥,该私有密钥被配置为用于对加密的解密密钥进行解密。服务器将私有密钥和唯一密钥ID存储在密钥ID数据库中。当用户需要访问加密的数据集群时,服务器从客户端系统接收通信请求,并将通信响应发送到客户端系统。然后,服务器取回被存储在加密的数据集群中的唯一密钥ID和加密的解密密钥作为元数据。在一个实施例中,可以通过启动引导管理器来取回唯一密钥ID,使得在从客户端系统接收到引导代码请求后,服务器启动引导管理器,该引导管理器向客户端提供引导代码。备选地,可以在从客户端系统接收上述通信请求之前安装引导管理器。
通过引导管理器,以及在客户端执行引导代码,服务器接收到唯一密钥ID和加密的解密密钥,唯一密钥ID和加密的解密密钥被存储在客户端系统请求访问的加密的数据集群的元数据中。在另一实施例中,可以经由访问嵌入在客户端系统固件中的引导代码来实现取回唯一密钥ID和加密的解密密钥。在接收到唯一密钥ID后,服务器然后在密钥ID数据库中搜索匹配唯一密钥ID。响应于找到匹配,服务器获取与唯一密钥ID相关联的私有密钥,并使用该私有密钥对加密的解密密钥进行解密,并将解密的解密密钥发送到客户端系统。
在另一实施例中,在生成数据集群并对其进行加密之后,客户端系统创建加密的数据集群的唯一密钥ID。唯一密钥ID可以包括证书印章。客户端系统使用被存储在服务器上的对称密钥将要被加密的解密密钥和唯一密钥ID发送到服务器。客户端系统从服务器接收加密的解密密钥,并将加密的解密密钥和唯一密钥ID一起存储在客户端处所维持的数据集群中作为元数据。当用户需要访问数据集群时,客户端系统将通信请求发送到服务器,并从服务器接收准许该请求的响应。然后,客户端系统将唯一密钥ID和加密的解密密钥发送到服务器。在一个实施例中,可以通过从服务器启动引导管理器来实现发送唯一密钥ID和加密的解密密钥,使得客户端系统发送对引导代码的请求。在从服务器接收到引导代码之后(该引导代码可以在服务器接收到唯一密钥ID之前和/或在客户端未发送对引导代码的请求的情况下被接收),客户端将唯一密钥ID和加密的解密密钥发送给服务器。在另一实施例中,可以通过运行嵌入在客户端系统固件中的引导代码来实现发送唯一密钥ID和加密的解密密钥。在将唯一密钥ID和加密的解密密钥发送到服务器后,客户端从服务器接收解密的解密密钥,该解密的解密密钥由服务器用对称密钥进行解密。最后,客户端使用从服务器接收到的解密的解密密钥对数据集群进行解密。
在服务器端,服务器从客户端系统接收唯一密钥ID和解密密钥。它使用所存储的对称密钥对解密密钥进行加密,并且将加密的解密密钥发送到客户端系统进行存储。服务器将对称密钥和唯一密钥ID存储在密钥ID数据库中。当用户需要访问加密的数据时,服务器从客户端系统接收通信请求,并将通信响应发送到客户端系统。然后,服务器从加密的数据集群的元数据中取回唯一密钥ID和加密的解密密钥。在一个实施例中,可以通过启动引导管理器、将引导代码发送到客户端系统来实现取回唯一密钥ID和加密的解密密钥。通过引导管理器和执行引导代码,服务器接收唯一密钥ID和加密的解密密钥,该唯一密钥ID和加密的解密密钥被存储在客户端系统正请求访问的加密的数据集群的元数据中。在另一实施例中,可以通过启动嵌入在客户端系统的固件中的引导代码来实现取回唯一密钥ID和加密的解密密钥。在接收到唯一密钥ID和加密的解密密钥之后,服务器在密钥ID数据库中搜索匹配。响应于找到匹配,服务器获取与唯一密钥ID相关联的对称密钥,使用对称密钥来对加密的解密密钥进行解密,并且将解密的解密密钥发送到客户端系统。
通过将访问密钥存储在远离所存储的客户端数据的服务器上,并且通过实现用于客户端获得访问密钥的某些协议,可以改进所存储的客户端数据的安全性,如本文所述。
附加特征和优点将在下面的描述中被阐述,并且将部分地从描述中变得明显,或者可以通过本文的教导的实践来获悉。实施例的特征和优点可以借助于所附权利要求中特别指出的工具和组合来实现和获得。根据以下描述和所附权利要求书,实施例的特征将变得更加明显,或者可以通过以下所述的实施例的实践来获悉。
附图说明
为了描述可以获得上述和其他优点和特征的方式,将通过参考在附图中所示的特定实施例来呈现对以上简要描述的主题内容的更具体的描述。理解到这些附图仅描绘了典型的实施例,因此不应视为对本发明范围的限制,将通过使用附图以附加的特征和细节来描述和解释实施例,其中:
图1图示了客户端-服务器环境,其中客户端数据被加密,并且解密密钥被存储在数据服务器上。
图2图示了图1的客户端-服务器环境,其中数据服务器进一步将解密密钥备份到冗余存储装置中。
图3图示了客户端-服务器环境的一个实施例,其中每个加密的数据集群与密钥标识符(ID)相关联,并且密钥ID和解密密钥被存储在服务器可访问的密钥ID数据库中。
图4图示了图3所示的客户端-服务器环境的客户端系统视角。
图5图示了图3所示的客户端-服务器环境的服务器视角。
图6图示了客户端-服务器环境的另一实施例,其中解密密钥经由非对称密钥被进一步加密。
图7图示了图6所示的客户端-服务器环境的客户端系统视角。
图8图示了图6所示的客户端-服务器环境的服务器视角。
图9图示了客户端-服务器环境的另一实施例,其中解密密钥经由对称密码系统被进一步加密。
图10图示了图9中所示的客户端-服务器环境的客户端系统视角。
图11图示了图9中所示的客户端-服务器环境的服务器视角。
具体实施方式
所公开的实施例涉及用于通过帮助保持加密的客户端数据防篡改、通过对数据进行加密并且还通过将用于解密/访问加密的数据的密钥与加密的数据分离地维持来改进所存储数据的安全性的系统和方法。
在一些实施例中,用户使用加密密钥对数据集(在本文中有时称为数据集群)进行加密,并将加密的数据与唯一密钥标识符相关联。客户端将唯一密钥标识符和对应的解密密钥发送到服务器进行存储。客户端不会在客户端分离地保持解密密钥的副本。然后,当用户需要访问加密的数据时,客户端系统通过遵循某些协议从服务器获得解密密钥。例如,客户端向服务器发送通信请求,并从服务器接收通信响应。然后,客户端系统发送对引导代码的请求,并从服务器接收引导代码。客户端还将唯一密钥标识符提供给服务器,该标识符有时会在引导代码执行期间发生。响应于向服务器提供唯一密钥标识符,客户端系统从服务器接收解密密钥,并使用解密密钥对加密的数据集群进行解密。
在另一实施例中,在客户端系统对数据进行加密之后,客户端创建加密的数据的唯一密钥ID。唯一密钥ID可以包括证书印章。解密密钥使用公共密钥进一步被加密。被配置为对加密的解密密钥进行解密的对应私有密钥被发送到服务器,而无需在客户端被维持/存储。客户端系统将加密的解密密钥和唯一密钥ID存储为元数据。私有密钥和唯一密钥ID被发送到服务器或服务器可访问的系统并由其存储。当用户需要再次访问加密的数据时,客户端系统将通信请求发送到服务器,并从服务器接收准许该请求的响应。然后,客户端发送对引导代码的请求。在从服务器接收到引导代码后,客户端将唯一密钥ID和加密的解密密钥发送到服务器。这触发服务器将解密的解密密钥发送到客户端,使得客户端能够使用解密的解密密钥对加密的数据集群进行解密。
在又一实施例中,客户端将解密密钥与加密的数据一起存储,但是不以客户端可以使用的格式存储。特别地,解密密钥被加密直到它被需要为止,并且该解密密钥仅响应于对该解密密钥进行解密的客户端遵循与服务器的某些安全性协议而被解密。在该实施例中,客户端系统创建加密的数据的唯一密钥ID,并将用于对数据进行解密的、要被加密的对应解密密钥发送到服务器。唯一密钥ID也可以是证书印章。服务器使用被存储在服务器上的对称密钥对解密密钥进行加密。客户端系统从服务器接收加密的解密密钥,并将加密的解密密钥和唯一密钥ID一起存储在客户端维持的数据集群中作为元数据。当用户需要访问数据集群时,客户端系统将通信请求发送到服务器,并从服务器接收准许该请求的响应。然后,客户端系统发送对引导代码的请求。在执行引导代码期间,客户端将唯一密钥ID和加密的解密密钥发送到服务器。接下来,客户端从服务器接收解密的解密密钥,该解密的解密密钥由服务器用对称密钥进行解密,并且用新接收/解密的解密密钥对加密的数据进行解密。
如以下公开内容中所描述的,可以通过一种包括一个或多个客户端和/或服务器系统的计算系统来实现所公开的用于帮助保持加密的客户端数据防篡改的实施例。
图1图示了可以用于实现本发明的某些方面的客户端-服务器环境100的一个示例。在此环境中,客户端数据集(104、108、112、114、116、118、120和122)由各种客户端系统102、106、110加密和维持。用于对数据集进行解密的对应解密密钥被维持在密钥数据库126中,该密钥数据库被存储在远程服务器124上和/或由远程服务器124可访问。
客户端系统102、106和110以及服务器124使用有线和/或无线组件和协议通过一个或多个网络连接128进行通信。在一些实例中,服务器124使用普通文件传输协议(TFTP)和/或网络密钥保护器解锁协议(NKPU)与(多个)客户端系统102、106和110通信。
客户端数据可以以被耦合到(多个)客户端系统或由其可访问的一个或多个存储位置的任何组合的形式被本地存储。例如,客户端系统102包括存储装置104,客户端系统106包括存储装置108,并且客户端系统110包括多个存储容器/位置112、114和116。客户端数据也可以被存储在远程网络和/或分布式存储装置中。例如,用于客户端系统100的一些数据被存储在网络存储器118、120和122中。可能有一个或多个客户端系统与一台或多台服务器通信。110处的省略号表示客户端-服务器环境100中可以有一个或多个客户端系统。在一个或多个云存储装置或被耦合到服务器或在服务器附近的存储装置中还可能存在一个或多个数据集群。每个数据集群可以由一个或多个客户端可访问。116处的省略号表示每个客户端系统可以包括一个或多个数据存储装置。122处的省略号表示每个客户端系统可以访问一个或多个用于存储客户端数据的网络存储装置。
客户端数据在本文中可以被称为“数据”,一个或多个“数据集群”和/或一个或多个“数据集”。
如前所述,一些数据被存储在易受盗窃和/或损坏的存储设备中。例如,恶意内部人员(例如看门人)可以影响或从客户端系统中移除存储设备。在另一示例中,停用的存储设备(在其生命周期结束时)有时会与敏感数据一起被丢弃。这些存储设备可能被恶意人员回收、转售或获得。
本发明的实施例可以用于通过对数据(例如104、108、112、114、116、118、120或122)进行加密和存储用于与客户端分离地访问数据的密钥来帮助改进客户端数据的安全性和保护。在一些实例中,加密的数据还与唯一ID相关联。该唯一ID可以包括定义创建、修改或访问数据的日期的数据。唯一ID也可以是随机生成的标识符。客户端和服务器将唯一ID与被加密的数据集群相关联。与数据集群相关联的唯一ID和解密密钥被存储在服务器124可以访问的密钥ID数据库126中。解密密钥不由客户端存储(至少不以客户端可以使用的格式存储)。当恶意人员获得对包含加密的数据的客户端存储装置的访问权限时,他们将不能获得/使用解密密钥,因为它们被维持在服务器上和/或是以以下格式(加密的格式)被存储:在没有从服务器首先访问另一密钥的情况下,不能使用该解密密钥。因此,它们将不能访问加密的数据。
一组加密/解密密钥可以被用于对特定的数据集群进行加密。可以以许多不同的方式对每个数据集群进行分类,包括但不限于基于客户端的ID、客户端的系统的ID、客户端的地理位置、数据存储装置的地理位置、数据的类型以及数据的敏感性。
还有许多方法对每个数据集群进行加密。加密是将普通信息(明文)转换为难以理解的文本(密文)的过程。解密就是相反的过程,换言之,从难以理解的密文回到明文。密码(cipher)是一对创建加密和反向解密的算法。密码的详细操作既受算法控制,又在每个实例中受“密钥”控制。密钥是一个秘密(理想情况下仅对通信者是已知的),通常是一串短字符串,其是对密文进行解密所需的。密码可以直接被用于加密或解密,而无需附加过程,诸如认证或完整性检查。它们还可以被用于包括发送者/接收者身份认证、数字签名、交互式证明和安全计算等。
存在两种常用的密码系统:对称的和非对称的。在对称系统中,相同的密钥被用来对消息进行加密和解密。对称系统中的数据操纵比非对称系统更快,因为它们通常使用更短的密钥长度。非对称系统使用公共密钥对消息进行加密,并使用私有密钥对消息进行解密。非对称系统的使用增强了通信的安全性。非对称系统的示例包括但不限于RSA(Rivest-Shamir-Adleman)和EEC(椭圆曲线密码术)。对称模型包括但不限于常用的AES(高级加密标准)。
对称密钥密码被实现为块密码或流密码。块密码对输入的明文块(而不是单独字符)进行加密。相比之下,流密码创建任意长的密钥材料流,其与逐位或逐字符的明文结合在一起,有些像一次性填充。当使用对称算法时,相同的密钥同时被用于加密和解密。典型地,在对称密码系统中,加密密钥被随机生成。当使用非对称算法时,不同的密钥被用于加密和解密,以便使用公共密钥对数据进行加密,并使用私有密钥对数据进行解密。
非对称密码系统也被称为公共密钥系统。如此构造公共密钥系统以使得根据另一密钥(“公共密钥”)来进行一个密钥(“私有密钥”)的计算在计算上是不可行的,即使它们必然相关。相反,两个密钥是作为相关联的一对而被秘密生成的。在公钥密码系统中,公共密钥可以自由分发,而其成对的私有密钥必须保密。在公共密钥密码系统中,公共密钥被用于加密,而私有或秘密密钥被用于解密。
密码哈希函数是密码算法的第三种类型。它们将任何长度的消息作为输入,并输出一个短的、固定长度的哈希,其可以被用作(例如)数字签名或唯一标识符。对于良好的哈希函数,攻击者不能找到产生相同哈希的两条消息。
此外,公共密钥密码系统可以是混合密码系统,其中对称密钥加密算法或非对称密钥加密算法被用于数据本身,而相关的对称密钥或私有密钥使用公共密钥算法或对称密钥算法被进一步加密。类似地,可以使用混合签名方案,其中密码哈希函数被计算为与解密密钥相关联的唯一标识符,该解密密钥被用于对数据进行解密或被用于对加密的解密密钥进行解密。客户端-服务器系统还可以包括另一层,该另一层进一步经由客户端系统或服务器来认证用户的身份。
在所公开的实施例中,前述对称、非对称和哈希系统的各种组合被用于改进客户端数据的安全性和保护性。
图2图示了可以在其上实现本发明的客户端-服务器系统环境200的示例。计算系统环境200仅是合适的计算环境的一个示例,并且不旨在建议对本发明的使用范围或功能性的任何限制。计算环境200也不应被解释为具有与示例性操作环境200中所示的任何一个组件或组件的组合相关的任何依赖性或要求。
本发明用许多其他通用或专用计算系统环境或配置可操作。可能适用于本发明的众所周知的计算系统、环境和/或配置的示例包括但不限于:个人计算机、服务器计算机、手持式或膝上型设备、平板设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型计算机、大型计算机、计算机控制的机器人和制造机器、包括上述任何系统或设备的分布式计算环境等。
本发明可以在由计算机执行的诸如程序模块之类的计算机可执行指令的一般上下文中被描述。通常地,程序模块包括例程、程序、对象、组件、数据结构等,它们执行特定的任务或实现特定的抽象数据类型。本发明还可以在分布式计算环境中被实践,其中任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于包括存储器存储设备的本地和/或远程计算机存储介质中。
参考图2,用于实现本发明的示例性系统包括客户端系统202,客户端系统202可以是个人计算机202形式的通用计算设备(类似于图1中的客户端系统),并且可以被配置为通过网络连接214(类似于图1的网络连接)与服务器216(类似于图1的服务器)通信。
计算机202的组件可以包括但不限于一个或多个处理器204、系统存储器210、输入/输出(I/O)接口206和通信模块208。I/O接口206可以包括但不限于键盘、计算机鼠标、触摸屏、监视器和打印机。通信模块208可以包括但不限于调制解调器、网卡、通信接口等。
系统存储器210存储客户端数据(通常是加密的),并且还包括易失性和/或非易失性存储器形式的计算机存储介质,诸如只读存储器(ROM)和随机存取存储器(RAM)。基本输入/输出系统(BIOS)通常被存储在ROM中,该基本输入/输出系统(BIOS)包含诸如在启动期间帮助在计算机210内的元件之间传递信息的基本例程。RAM通常包含数据和/或程序模块,这些数据和/或程序模块可立即由处理器或处理单元204访问和/或当前由它们操作。
存储设备210还包括用于实现所公开的方法的计算机可读指令,针对客户端系统202的对应数据结构和其他数据。
用户可以通过I/O接口206向客户端系统202录入命令和信息,该I/O接口206可以包括诸如触摸屏、麦克风、键盘、鼠标、轨迹球和/或触摸板之类的输入设备。其他输入设备可以包括操纵杆、游戏板、碟形卫星天线、扫描仪、运动传感器等。这些输入设备和其他输入设备通常通过通用串行总线(USB)被连接到处理单元(包括一个或多个处理器204)。
I/O接口206还可以包括输出接口,诸如监视器或其他类型的显示设备、扬声器、触觉反馈设备等。
在一个实施例中,当客户端系统202的用户创建数据212的集群时,使用预定的密码或密钥对数据212进行加密,然后将加密的数据存储在存储装置210中。解密密钥被发送到服务器216以存储在服务器可以访问的密钥数据库218中。在这些实施例中,客户端不存储解密密钥。备选地,客户端系统202可以进一步对解密密钥(其在客户端以加密格式被存储)进行加密,然后将用于对解密密钥进行加密的解密密钥发送到服务器216以存储在密钥数据库220中,使得在不首先从服务器获得用于在客户端对加密的解密密钥进行解密的解密密钥的情况下,不可访问客户端的解密密钥。
存储装置210可以是被包括在客户端系统202中的本地存储装置。该存储装置还可以是客户端系统202能够访问的远程和/或分布式网络存储装置,如以上关于图1所描述的。密钥数据库220可以被存储在服务器216的内部存储装置218中。密钥数据库220也可以被存储在服务器可访问的外部存储设备216中,或者被存储在服务器可以通过网络连接访问的网络存储装置中(图中未示出)。
密钥数据库220也可以被备份在冗余存储装置222中。冗余存储装置222可以是仅服务器可访问的本地存储装置。备选地,它可以是一个或多个服务器可访问的网络存储装置。
图3图示了客户端-服务器环境300的一个实施例,其中加密的数据312的每个集群与分离的密钥标识符(ID)314相关联。密钥ID 314和被配置用于对加密的数据312进行解密的对应解密密钥334被存储在服务器328可以访问的密钥ID数据库330中。
在一些实施例中,服务器328是预引导执行环境(PXE)服务器。例如,在现代数据中心中,PXE服务器是操作系统引导、安装和部署的常见选择。PXE是标准化的客户端-服务器环境,其在支持PXE的客户端系统上引导从网络获取的软件程序集。在客户端系统端,需要具有PXE能力的网络接口控制器(NIC),并使用一组行业标准的网络协议,诸如“普通文件传输协议”(TFTP)。
TFTP是一种锁步文件传输协议,其允许客户端从远程主机得到文件或将文件放置到远程主机上。其主要用途之一是从局域网引导节点的早期阶段。在TFTP中,传输是由客户端发出请求以读取或写入服务器上的特定文件来启动的。该请求可以可选地包括由客户端系统提出的一组经协商的传输参数。如果服务器准许该请求,则默认情况下发送文件,或以在块大小协商选项中指定的数字来发送文件。传输中涉及的两个设备(客户端和服务器)都可以被视为发送者和接收者。例如,一个系统发送数据并接收确认,另一系统也发送确认并接收数据。
启动客户端系统可以将服务请求发送到服务器。服务器以确认答复。客户端系统将数据分组发送到服务器,并且目的地服务器用针对数据分组的确认分组进行回复。尽管TFTP通常可能不包括登录或访问控制机制,但是一些所公开的实施例包括:在TFTP运行的层之上或之下的分层认证、访问控制、机密性和/或完整性检查。
在一些实例中,当客户端向PXE服务器发送一般请求即PXE发现请求时,启动客户端系统引导的PXE引导(316)。PXE服务器用确认来响应PXE发现(318)。然后,客户端系统经由TFTP发送对引导代码的请求(320)。响应于对引导代码的请求,服务器启动包括引导代码的引导管理器(322),其可以包括客户端系统使用TFTP将引导代码从服务器下载到客户端系统的RAM。然后,在客户端执行引导管理器以取回唯一密钥ID(324)。最后,在服务器接收到唯一密钥ID并将其与服务器处的对应解密密钥334进行匹配之后,服务器将解密密钥提供给客户端(326)。
现在将注意力转向图4和图5,它们图示了用于帮助保持加密的客户端数据防篡改的对应方法,如由客户端视角(图4)和服务器视角(图5)所呈现的,并且诸如可以由图3的客户端-服务器环境300中的客户端302实现。
当客户端系统302的用户创建待保护的数据集群时,客户端系统将数据集群与唯一密钥ID相关联(动作402),并将唯一密钥ID作为元数据存储在数据集群中(动作404)。然后,客户端系统使用预定的密码对数据集群进行加密(动作406)。用于对数据进行加密的密码系统可以是对称系统或非对称系统。当使用对称系统时,加密密钥与解密密钥相同,即对称密钥。当使用非对称系统时,将使用一对不同的密钥来对数据进行加密或解密。通常地,被用于对数据进行加密的密钥是自由分发的,并且被称为公共密钥。用于对数据进行解密的密钥被保密,并且被称为私有密钥。
在加密之后,客户端系统将唯一密钥ID和解密密钥发送到服务器进行存储(动作408)。服务器328从客户端系统302接收密钥ID和解密密钥(动作502),并将其存储在密钥ID数据库中(动作504)。服务器328还可以将密钥ID数据库备份在冗余存储装置中(动作506)。
当客户端系统302需要访问加密的数据时,它启动系统引导过程(动作410),并且向服务器发送通信请求(动作412)。服务器328从客户端系统302接收通信请求(动作508),并且将通信响应发送到客户端系统302作为确认(动作510)。
接下来,客户端系统302从服务器328接收通信响应(动作414),并发送对引导代码的请求(动作416)。服务器328从客户端系统302接收对引导代码的请求(动作512)并且启动引导管理器(动作514)。引导代码由客户端系统接收和/或在客户端系统处被执行(动作418)。当被执行时,引导代码在客户端系统处读取与加密的数据相关联的唯一密钥ID,并将唯一密钥ID发送到服务器328(动作420)。
当服务器302接收到唯一密钥ID时(动作516),它在密钥ID数据库中搜索匹配(动作518)。在找到匹配的唯一密钥ID时(动作522),服务器获取与匹配的唯一密钥ID相关联的解密密钥(动作524),并将解密密钥发送给客户端系统302(动作526)。作为响应,客户端系统302从服务器328接收解密密钥(动作422),并且使用解密密钥对数据集群进行解密(动作424)。
如果没有找到匹配(动作528),则服务器328到达远程/冗余存储装置以搜索匹配(动作530)。然后,如果在远程/冗余存储装置处找到匹配(动作534),则服务器获得/恢复匹配的密钥ID并将解密密钥存储在密钥ID数据库中(动作536)。当服务器意外丢失/无法访问密钥时,这可能是有益的。例如,在一些实施例中,有时可能会错误地删除或破坏密钥ID和/或其(多个)相关联的密钥和/或存储密钥ID的服务器存储组件崩溃。在这种情况下,服务器可以访问备份密钥ID数据库并获取丢失的密钥ID及其(多个)密钥,然后将它们恢复回密钥ID数据库。
为了利于前述内容,一些实施例利用与(多个)服务器分离的远程密钥ID数据库。许多备份密钥ID数据库还可以被存储在不同的冗余存储器中,这些不同的冗余存储器由(多个)服务器可访问。每个服务器可以分离地与客户端系统通信。或者每个服务器可以访问被耦合到服务器的相同密钥ID数据库以用于更快的通信。在这种情况下,当一台服务器更新其密钥ID数据库时,其余服务器也将相应地更新密钥ID数据库。每个服务器的数据库也可以被视为针对其他服务器的冗余密钥ID存储。
所公开的实施例还提供了用于解决异常的技术。比如,在如上所述的通信协议的每个步骤期间,服务器328可以检测资产管理异常(动作540)。响应于某些异常,服务器可以删除密钥ID和/或其相关联的解密密钥(动作542)。例如,响应于引导管理器由于例如被标记为丢失或停用的存储设备而未能成功读取与唯一密钥ID相关联的密钥,异常可以被检测/确定。在另一示例中,可能存在阈值数目的访问加密的数据集群的失败尝试,使得从密钥ID数据库和/或备份存储装置中不能找到匹配的密钥ID。这也将触发异常的确定/检测。
具体关注于参考图3-图5所描述的方法,无论数据是本地存储还是被存储在云存储装置上,客户端的数据都是经过加密的,并且解密密钥被分离地存储(即,不与数据集群一起被本地存储或被存储在客户端系统中)。因此,即使恶意人员访问包含加密的数据的存储设备或计算机,该数据也不可访问,这是因为解密密钥被存储在远程服务器上并且不可由恶意人员确定。
然而,利用上述协议/方法,黑客可能会嗅出在客户端系统和服务器之间来回传输的数据。因此,为了添加另一层安全性,一些所公开的实施例包括进一步通过随机本地密钥对解密密钥进行加密,将加密的解密密钥发送到服务器,以及将随机本地密钥作为元数据存储在加密的数据集群中。这样,当客户端系统需要访问加密的数据集群时,服务器将发送出加密的解密密钥,并且在接收到加密的解密密钥之后,客户端系统会使用随机本地密钥对加密的解密密钥进行解密,然后使用解密的解密密钥来对数据集群进行解密。在这种情况下,黑客可能试图经由侵入网络来获得加密的解密密钥,仅此一项无法使他访问密钥或加密的数据。
现在将注意力转向图6-图8,其图示了从客户端视角(图7)和服务器视角(图8)呈现的用于帮助保持加密的客户端数据防篡改的附加/备选系统和方法,并且诸如可以由图6的客户端-服务器环境600中的客户端602实现。
如图6所示,客户端系统602类似于图3的客户端系统302,至少包括处理器604、通信模块608、I/O接口606以及存储设备610,该存储设备610存储证书/印章612、加密的解密密钥614和加密的数据616,该加密的解密密钥(614,一旦被解密)被配置为对加密的数据616进行解密。服务器630存储或访问密钥ID数据库636,该密钥ID数据库636存储用于对加密的解密密钥进行解密的解密密钥。
类似于图3中的服务器328,服务器630也可以是PXE服务器。在该环境中,客户端发送初始发现请求(618),该请求触发服务器响应(620)。然后,客户端发送对引导代码的请求(622),该请求触发启动引导管理器(624)。然后,客户端将印章和加密的解密密钥发送到服务器(626)。在服务器对加密的解密密钥进行解密(利用服务器上的密钥或服务器可访问的密钥)之后,服务器发送回匹配的解密密钥(628)。
在该实施例中,加密的数据的唯一密钥标识符可以是证书印章612。证书印章612是唯一标识数据集群的字符串。印章可以是使用印章算法根据数据集群的内容计算出的哈希。哈希可以基于加密的数据、加密密钥、唯一ID、客户端标识符和/或被存储在客户端系统处或与客户端系统相关联的任何其他信息的任何组合。每个加密的数据集群经由唯一的证书印章被分离地标识。在一些实例中,客户端上的所有数据被组合到单个集群中。在其他实施例中,客户端存储各自与不同的唯一ID和/或印章相关联的分离的数据集群。
在一些实施例中,如图7和图8所示,客户端系统602使用预定密码术对数据进行加密(动作702),并创建加密的数据集群的证书印章(动作704)。客户端还经由非对称密码系统对解密密钥进行加密(动作706)。如上所述,在非对称密码系统中,会生成一对不同的密钥。公共密钥用于对数据进行加密,并且私有密钥用于对数据进行解密。这里,解密密钥进一步由公共密钥加密,并且与公共密钥相关的私有密钥用于对加密的解密密钥进行解密。
然后,客户端系统602将加密的解密密钥和证书印章存储在加密的数据集群中作为元数据(动作708)。然后,客户端将证书印章和与公共密钥配对的私有密钥发送到服务器630(动作710)。
服务器630接收证书印章和私有密钥(动作802),并将它们存储在密钥ID数据库中(动作804)。与前一个实施例(图3-5)相比,该实施例的一个区别是服务器不存储用于对数据集群进行解密的解密密钥,而是存储私有密钥(其被存储在密钥ID数据库中,或可以通过其他方式对服务器可访问),该私有密钥被用于对加密的解密密钥(其被存储在客户端)进行解密。
在一些实施例中,服务器在冗余/远程存储装置中创建/存储私有密钥(其被存储在服务器密钥ID数据库中)的备份(动作806)。
而且,在一些实例中,由于引导管理器重复发送和接收私有密钥和加密的/解密的解密密钥,因此它可以使用与先前在图3-图6中使用的协议不同的协议。
引导管理器可以使用的协议之一是网络密钥保护器解锁协议(NKPU)。NKPU使客户端系统能够将密钥材料连同会话密钥作为加密包发送到服务器,并接收受到会话密钥保护的解密的密钥材料。会话密钥是短暂的对称密钥,其被用于加密或认证以NKPU协议发送的数据。例如,当在客户端系统和服务器之间传递私有密钥或加密的/解密的解密密钥时,NKPU协议将利用会话密钥进一步保护这些密钥。因此,即使是成功的黑客也只能获得由会话密钥加密的加密的私有密钥或加密的解密密钥,这不足以提供对数据的访问。
当客户端系统602需要访问数据集群时,客户端系统602启动引导过程(动作712),并且向服务器发送通信请求(动作712)。服务器630从客户端系统602接收通信请求(动作808),并且将通信响应发送到客户端系统602(动作810)。客户端系统602从服务器接收通信响应(动作716),并发送对引导代码的请求(动作718)。
服务器630从客户端系统接收对引导代码的请求(动作812),并且启动加载引导代码的引导管理器(动作814)。客户端系统602从服务器630接收引导代码(动作720),并且将证书和加密的密钥发送到服务器630(动作722)。服务器630接收证书印章和客户端系统602请求访问的数据集群的加密的密钥(动作816),并且在密钥ID数据库中搜索匹配的证书印章(动作818)。
当服务器630找到匹配的证书印章时(动作822),它获取与证书印章相关联的私有密钥(动作824),并对加密的密钥进行解密(动作826),并将解密的密钥发送回客户端系统(动作828)。客户端系统从服务器接收解密的密钥(动作724),并使用解密的密钥对数据集群进行解密(动作726)。
如果在证书印章和密钥ID数据库中的密钥之间没有找到匹配(动作830),则服务器630到达远程/冗余存储装置以搜索匹配(动作832)。然后,如果在远程/冗余存储装置中找到匹配(动作836),则服务器630获得匹配的证书印章和私有密钥/将其存储/恢复到密钥ID数据库(动作838)。
在该过程的每个步骤中,服务器可以检测到资产管理异常(动作840),如先前参考图5所描述的。因此,响应于检测到异常,服务器可以删除证书印章和与其相关联的密钥(动作842)。
如前所述,可能有许多服务器可以访问密钥ID数据库。在不同的冗余存储装置中可能还存储有许多备份密钥ID数据库。
在该实施例中,由于解密密钥被进一步加密,因此这可以帮助解决恶意内部人员和窥探黑客的问题。如前所述,在非对称密码系统中,当创建密钥对时,私有密钥被私密保存,并且公共密钥可以被任何人访问以向密钥创建者发送加密的消息。因此,该实施例的附加益处是,当数据被创建和加密时,客户端系统不必在与服务器通信的网络中,因为在非对称密码系统中,在对数据集群进行加密之前,可能已经将公共密钥分发给了客户端系统,并且客户端系统只需要公共密钥来对数据进行加密。
图9-图11图示了用于向客户端数据提供篡改保护的其他实施例。在这些实施例中,客户端系统902在客户端-服务器环境900中与服务器930通信。在该实施例中,每个加密的数据集群的唯一密钥ID可以包括证书印章。然而,与图6-图8所示的实施例不同,解密密钥经由对称密码系统被进一步加密。图10图示了流程图1000,其描述了从客户端系统视角实现的方法。图11图示了流程图1100,其描述了从服务器系统视角实现的方法。
如图9所示,客户端系统902类似于图3的客户端系统302,其至少包括处理器904、通信模块908、(多个)I/O接口906和存储设备910,该存储设备910存储证书/印章912、加密的解密密钥914和加密的数据916,加密的解密密钥(914,一旦被解密)被配置为对加密的数据916进行解密。服务器930存储或访问密钥ID数据库936,密钥ID数据库936存储用于对加密的解密密钥进行解密的解密密钥。
类似于图3中的服务器328,服务器930可以是PXE服务器。在该环境中,客户端发送初始发现请求(918),其触发服务器响应(920)。然后,客户端发送对引导代码的请求(922),该请求触发引导管理器的启动(924)。然后,客户端将印章和加密的解密密钥发送到服务器(926)。在服务器对加密的解密密钥进行解密(利用服务器上的密钥或服务器可访问的密钥)之后,服务器发送回匹配的解密密钥(928)。
该实施例类似于先前的实施例(在图6-图8中描述)。然而,不是使用非对称密钥,而是本实施例使用对称密钥。服务器通常随机生成被用于对解密密钥进行加密的对称密钥。并且服务器对解密密钥进行加密,然后将加密的解密密钥发送回客户端系统。使用对称密码系统的益处是它需要较少的计算,因此,加密和解密将花费较少的时间和计算能力。然而,由于对称密钥是由服务器随机生成的,并且服务器最初(而非客户端)对解密密钥进行加密。因此,当发生加密时,客户端系统必须和服务器系统处于通信状态,即,当数据被加密时,客户端系统必须被连接到网络以用于与服务器进行通信。
现在,参考图10-图11,注意到当客户端系统的用户创建数据集群时,客户端系统902对数据集群进行加密(动作1002),并生成加密的数据集群的证书印章(动作1004)。客户端系统902将证书印章和解密密钥发送到服务器930(动作1006)。
服务器930从客户端系统902接收加密的数据集群的证书印章和解密密钥(动作1102),并利用随机生成的对称密钥对解密密钥进行加密(动作1104)。服务器将加密的解密密钥发送回客户端系统902(动作1006),其被客户端系统902接收(动作1008)并与证书印章和加密的数据集群一起被存储为元数据(动作1010)。同时,服务器930将证书印章和对称密钥存储在密钥ID数据库中(动作1108)。
在一些实例中,服务器930还可以将密钥ID数据备份在远程/冗余存储装置中(动作1110)。
当客户端系统902需要访问加密的数据集群时,其启动引导过程(动作1012),并且向服务器发送通信请求(动作1014)。服务器930接收通信请求(动作1112),并且将通信响应发送到客户端系统(动作1114)。客户端系统902从服务器930接收通信响应(动作1016),并且发送对引导代码的请求(动作1018)。
服务器930接收对引导代码的请求(动作1116),并启动加载引导代码的引导管理器(动作1118)。当引导管理器执行时,客户端系统902从服务器930接收引导代码(动作1020),并且通过引导管理器将证书印章和加密的解密密钥发送到服务器930(动作1022)。
服务器930从客户端系统902接收证书印章和加密的解密密钥(动作1020),并且在密钥ID数据库中搜索匹配的证书印章(动作1122)。
当匹配被找到时(动作1126),服务器930获取与证书印章相关联的对称密钥(动作1128),并使用对称密钥来对加密的密钥进行解密(动作1130)。然后,服务器930将解密的密钥发送回客户端系统902(动作1132)。当客户端从服务器930接收到解密的密钥时(动作1024),其使用解密的密钥来对加密的数据集群进行解密(动作1026)。
如果在密钥ID数据库中没有找到匹配证书印章的匹配(动作1134),则服务器930到达远程/冗余存储装置,搜索匹配(动作1136)。然后,如果在远程/冗余存储装置中找到匹配(动作1140),则服务器902将匹配的证书印章和用于对对称密钥进行加密的密钥存储/恢复到密钥ID数据库(动作1142)。
类似于图5和图8,在该过程的每个步骤期间,服务器可以检测资产管理异常(动作1146)。响应于某些异常,服务器可以删除密钥ID和/或其相关联的加密和/或解密密钥(动作1148)。
与前述实施例类似,在该实施例中,由于解密密钥也被进一步加密,因此也解决了恶意内部人和网络黑客的问题。从理论上讲,该实施例相对于前述实施例的一个益处是,如果硬件的计算能力相同,则该实施例可以比先前实施例更快地操作,因为对称密码算法通常需要比非对称密码算法更少的计算。例如,当停电后具有大量服务器的数据中心需要重新启动时,与使用非对称密码系统加密的数据相比,使用对称密码系统加密的数据可以更快地被访问,并且支持此操作所需的服务器处理时间更少。
在本公开中描述的所有实施例中,服务器可以基于预定分类为不同的数据集群分配不同的密钥,该预定分类包括但不限于数据的地理位置、用户ID和数据的类型。
而且,在本公开中描述的所有实施例中,用于对数据集群进行加密的密码系统可以是对称密码系统或非对称密码系统。为了更快的计算,对称密码系统可以被首选。为了增强的安全性保护,非对称密码系统可以被首选。
此外,可以在每个所公开的实施例之前或之后将附加的认证实现为附加层,以实现更高级别的安全性。附加的认证可以包括但不限于:要求服务器基于与密钥ID绑定的可配置策略或元数据,经由短消息服务(SMS)、电子邮件等触发批准请求。
而且,在本公开中描述的所有实施例中,唯一密钥ID可以是被随机生成的,和/或可以包括证书印章。也可以使用能够生成唯一证明或签名的任何数字证明或签名功能来生成唯一密钥ID。
另外,在本公开中描述的所有实施例中,可以经由不同的实现来实现在客户端系统和服务器之间发送和取回唯一密钥ID和/或加密的解密密钥,不同的实现包括但不限于在服务器上启动的引导管理器、和/或嵌入在客户端系统的BIOS或其他固件中的引导代码。
此外,除非特征被描述为需要与之组合的另一特征,否则本文的任何特征可以与本文所公开的相同或不同实施例的任何其他特征组合。此外,为了避免使示例实施例的各方面不清楚,这里没有特别详细地描述说明性系统、方法、装置等的各个众所周知的方面。然而,本文也考虑了这些方面。
在不脱离本发明的精神或特性的情况下,本发明可以以其他具体形式实施。所描述的实施例在所有方面仅应被认为是说明性的而非限制性的。因此,本发明的范围由所附权利要求书而不是前面的描述指示。落入权利要求等同含义和范围内的所有改变均应包含在其范围之内。

Claims (15)

1.一种用于保持加密的数据防篡改的客户端计算系统,包括:
一个或多个处理器;以及
一个或多个存储介质,具有存储的计算机可执行指令,所述计算机可执行指令由所述一个或多个处理器可执行以用于实现用于保持加密的数据防篡改的方法,所述方法包括:
将数据集群与唯一密钥标识符相关联;
使用加密密钥对所述数据集群进行加密;
将所述唯一密钥标识符和解密密钥发送到有权访问密钥ID数据库的服务器,所述密钥ID数据库存储所述唯一密钥标识符和所述解密密钥,其中所述解密密钥与所述加密密钥相关,并且所述解密密钥被配置为对使用所述加密密钥而被加密的所述数据集群进行解密;
将所述唯一密钥标识符作为元数据存储在加密的所述数据集群中,而不需要存储所述加密密钥;
启动客户端系统的引导;
向有权访问所述密钥ID数据库的服务器发送通信请求;
从所述服务器接收通信响应;
向所述服务器发送所述唯一密钥标识符;
从所述服务器接收解密密钥;以及
使用所述解密密钥对加密的所述数据集群进行解密。
2.根据权利要求1所述的计算系统,其中所述加密密钥和所述解密密钥是对称密钥。
3.根据权利要求1所述的计算系统,其中所述服务器是预引导执行环境(PXE)服务器,其中所述通信请求是PXE发现,并且其中所述通信响应是对所述PXE发现的响应。
4.根据权利要求1所述的计算系统,其中对引导代码的所述请求是经由普通文件传输协议(TFTP)的对引导代码的请求。
5.一种由客户端系统实现的用于保持加密的数据防篡改的方法,包括:
将数据集群与唯一密钥标识符相关联;
使用加密密钥对所述数据集群进行加密;
将所述唯一密钥标识符和解密密钥发送到有权访问密钥ID数据库的服务器,所述密钥ID数据库存储所述唯一密钥标识符和所述解密密钥,其中所述解密密钥与所述加密密钥相关,并且所述解密密钥被配置为对使用所述加密密钥而被加密的所述数据集群进行解密;
将所述唯一密钥标识符作为元数据存储在加密的所述数据集群中,而不需要存储所述加密密钥;
启动客户端系统的引导;
向有权访问所述密钥ID数据库的服务器发送通信请求;
从所述服务器接收通信响应;
向所述服务器发送所述唯一密钥标识符;
从所述服务器接收解密密钥;以及
使用所述解密密钥对加密的所述数据集群进行解密。
6.根据权利要求5所述的方法,其中所述加密密钥和所述解密密钥是对称密钥。
7.根据权利要求5所述的方法,其中所述服务器是预引导执行环境(PXE)服务器,其中所述通信请求是PXE发现,并且其中所述通信响应是对所述PXE发现的响应。
8.根据权利要求5所述的方法,其中对引导代码的所述请求是经由普通文件传输协议(TFTP)的对引导代码的请求。
9.一种由服务器实现的用于管理在客户端系统处对加密的数据的访问的方法,包括:
从有权访问数据集群的客户端系统接收唯一密钥标识符和解密密钥,所述解密密钥被配置为用于对所述数据集群进行解密;
将所述数据集群的所述唯一密钥标识符和所述解密密钥存储在被耦合到服务器的密钥ID数据库中;
从客户端系统接收通信请求;
向所述客户端系统发送通信响应;
获得被存储在客户端系统请求访问的加密的数据集群中的所述唯一密钥标识符,并且在所述密钥ID数据库中搜索匹配;
响应于找到匹配,获取与所述密钥标识符相关联的解密密钥;以及
向所述客户端系统发送所述解密密钥,其中所述解密密钥被配置为用于对所述加密的数据集群进行解密。
10.根据权利要求9所述的方法,其中所述加密密钥和所述解密密钥是相同的对称密钥。
11.根据权利要求9所述的方法,其中所述服务器是PXE服务器,其中所述通信请求是PXE发现,并且其中所述通信响应是对所述PXE发现的响应。
12.根据权利要求9所述的方法,其中对引导代码的所述请求是经由TFTP的对引导代码的请求。
13.根据权利要求9所述的方法,还包括:
检测资产管理异常;以及
响应于资产管理异常,从所述密钥ID数据库中删除所述解密密钥。
14.根据权利要求9所述的方法,还包括将所述密钥ID数据库备份到冗余存储装置中。
15.根据权利要求14所述的方法,还包括:
响应于在所述密钥ID数据库中无法找到匹配,访问所述冗余存储装置中的备份的所述密钥ID数据库以寻找匹配的唯一密钥标识符;以及
响应于在所述冗余存储装置中的备份的所述密钥ID数据库中找到匹配,将所述匹配的唯一密钥标识符和所述解密密钥恢复到所述服务器的所述密钥ID数据库。
CN201880043202.0A 2017-06-30 2018-05-31 防盗和防篡改的数据保护 Active CN110799941B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311001658.XA CN117040840A (zh) 2017-06-30 2018-05-31 防盗和防篡改的数据保护

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US15/639,613 US10204241B2 (en) 2017-06-30 2017-06-30 Theft and tamper resistant data protection
US15/639,613 2017-06-30
US15/639,698 US10200194B2 (en) 2017-06-30 2017-06-30 Theft and tamper resistant data protection
US15/639,698 2017-06-30
PCT/US2018/035442 WO2019005417A1 (en) 2017-06-30 2018-05-31 ANTI-THEFT AND INVIOLABLE DATA PROTECTION

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202311001658.XA Division CN117040840A (zh) 2017-06-30 2018-05-31 防盗和防篡改的数据保护

Publications (2)

Publication Number Publication Date
CN110799941A true CN110799941A (zh) 2020-02-14
CN110799941B CN110799941B (zh) 2023-08-22

Family

ID=64738088

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201880043202.0A Active CN110799941B (zh) 2017-06-30 2018-05-31 防盗和防篡改的数据保护
CN202311001658.XA Pending CN117040840A (zh) 2017-06-30 2018-05-31 防盗和防篡改的数据保护

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202311001658.XA Pending CN117040840A (zh) 2017-06-30 2018-05-31 防盗和防篡改的数据保护

Country Status (4)

Country Link
US (2) US10204241B2 (zh)
EP (1) EP3646173B1 (zh)
CN (2) CN110799941B (zh)
WO (1) WO2019005417A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111711619A (zh) * 2020-06-04 2020-09-25 江苏荣泽信息科技股份有限公司 一种基于区块链的网络安全连接系统
CN112165381A (zh) * 2020-08-18 2021-01-01 远景智能国际私人投资有限公司 密钥管理系统和方法
CN113360923A (zh) * 2021-06-03 2021-09-07 北京融数联智科技有限公司 一种数据交互方法、装置、系统及电子设备
CN113785546A (zh) * 2020-04-01 2021-12-10 谷歌有限责任公司 用于内容请求数据的加密的系统和方法
CN116233767A (zh) * 2023-03-20 2023-06-06 中国联合网络通信集团有限公司 集群对讲通信方法、装置、设备及存储介质

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9954837B2 (en) * 2015-01-07 2018-04-24 Cyph, Inc. Method of multi-factor authenication during encrypted communications
US10728026B2 (en) * 2016-11-24 2020-07-28 Samsung Electronics Co., Ltd. Data management method
JPWO2019065599A1 (ja) * 2017-09-28 2020-11-05 京セラ株式会社 設備管理システム及び設備管理方法
US10972445B2 (en) * 2017-11-01 2021-04-06 Citrix Systems, Inc. Dynamic crypto key management for mobility in a cloud environment
US11120137B2 (en) 2018-06-19 2021-09-14 Netgear, Inc. Secure transfer of registered network access devices
CN109873801B (zh) * 2018-12-12 2020-07-24 阿里巴巴集团控股有限公司 在用户和可信计算集群之间建立可信通道的方法、装置、存储介质及计算设备
CN109861980B (zh) 2018-12-29 2020-08-04 阿里巴巴集团控股有限公司 一种建立可信计算集群的方法、装置、存储介质及计算设备
US11095628B2 (en) 2019-01-24 2021-08-17 Dell Products L.P. Device locking key management system
KR20210107386A (ko) * 2020-02-24 2021-09-01 삼성전자주식회사 전자 장치 및 그 제어 방법
US11843692B2 (en) * 2020-03-02 2023-12-12 Seagate Technology Llc On-cartridge encryption key storage for cartridge-based library
US11354398B2 (en) 2020-03-02 2022-06-07 Seagate Technology Llc Off-cartridge encryption key storage for cartridge-based library
CN111769939B (zh) * 2020-06-29 2021-02-09 北京海泰方圆科技股份有限公司 业务系统的访问方法、装置、存储介质及电子设备
WO2022029340A1 (en) 2020-08-07 2022-02-10 Softiron Limited Current monitor for security
US11777938B2 (en) 2020-09-24 2023-10-03 Microsoft Technology Licensing, Llc Gatekeeper resource to protect cloud resources against rogue insider attacks
US11588848B2 (en) * 2021-01-05 2023-02-21 Bank Of America Corporation System and method for suspending a computing device suspected of being infected by a malicious code using a kill switch button
CN113162974B (zh) * 2021-03-03 2023-04-07 北京中安星云软件技术有限公司 一种基于tcp代理的数据库动态加解密的实现方法及系统
CN113010914A (zh) * 2021-03-05 2021-06-22 华洋通信科技股份有限公司 一种面向浏览器Cookie的分布式隐私保护方法
US11907375B2 (en) * 2021-04-13 2024-02-20 Hewlett Packard Enterprise Development Lp System and method for signing and interlocking a boot information file to a host computing system
US20220360439A1 (en) * 2021-05-05 2022-11-10 Verizon Patent And Licensing Inc. Systems and methods for backing up a hardware key
US11425152B2 (en) * 2021-05-11 2022-08-23 Asna Suhail Zaman Physical and network security system and mehtods
WO2022253693A1 (en) * 2021-06-04 2022-12-08 Softiron Limited Detection and remediation of unauthorized boot of storage media
CN116305194B (zh) * 2023-02-15 2023-11-17 中国科学院空天信息创新研究院 一种可持续信息披露数据非对称加解密方法和系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130145447A1 (en) * 2011-12-01 2013-06-06 Dashlane SAS Cloud-based data backup and sync with secure local storage of access keys
US20140258725A1 (en) * 2011-03-23 2014-09-11 CipherPoint Software, Inc. Systems and methods for implementing transparent encryption

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7581118B2 (en) 2004-12-14 2009-08-25 Netapp, Inc. Disk sanitization using encryption
US20070237325A1 (en) 2006-02-01 2007-10-11 Gershowitz Michael N Method and apparatus to improve security of cryptographic systems
US9002018B2 (en) * 2006-05-09 2015-04-07 Sync Up Technologies Corporation Encryption key exchange system and method
US20080082680A1 (en) * 2006-09-29 2008-04-03 Karanvir Grewal Method for provisioning of credentials and software images in secure network environments
US8548956B2 (en) * 2008-02-28 2013-10-01 Mcafee, Inc. Automated computing appliance cloning or migration
GB2477774A (en) 2010-02-12 2011-08-17 Icera Inc Overriding production processor authentication restrictions through remote security unit for development code testing
US8639928B2 (en) 2011-12-05 2014-01-28 Certicom Corp. System and method for mounting encrypted data based on availability of a key on a network
US20140281545A1 (en) * 2013-03-12 2014-09-18 Commvault Systems, Inc. Multi-layer embedded encryption
US9871653B2 (en) * 2013-07-18 2018-01-16 Cisco Technology, Inc. System for cryptographic key sharing among networked key servers
US9178699B2 (en) * 2013-11-06 2015-11-03 Blackberry Limited Public key encryption algorithms for hard lock file encryption
GB2533098B (en) 2014-12-09 2016-12-14 Ibm Automated management of confidential data in cloud environments
WO2016100095A1 (en) * 2014-12-15 2016-06-23 Good Technology Corporation Secure storage
US9558374B2 (en) 2015-01-14 2017-01-31 Netapp, Inc. Methods and systems for securing stored information
US9762548B2 (en) * 2015-03-13 2017-09-12 Western Digital Technologies, Inc. Controlling encrypted data stored on a remote storage device
US10389693B2 (en) * 2016-08-23 2019-08-20 Hewlett Packard Enterprise Development Lp Keys for encrypted disk partitions
US9646172B1 (en) 2016-11-15 2017-05-09 Envieta Systems LLC Data storage system for securely storing data records
US10855464B2 (en) * 2016-11-23 2020-12-01 Vmware, Inc. Methods and apparatus to manage credentials in hyper-converged infrastructures

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140258725A1 (en) * 2011-03-23 2014-09-11 CipherPoint Software, Inc. Systems and methods for implementing transparent encryption
US20130145447A1 (en) * 2011-12-01 2013-06-06 Dashlane SAS Cloud-based data backup and sync with secure local storage of access keys

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113785546A (zh) * 2020-04-01 2021-12-10 谷歌有限责任公司 用于内容请求数据的加密的系统和方法
CN113785546B (zh) * 2020-04-01 2022-09-27 谷歌有限责任公司 用于内容请求数据的加密的系统和方法
CN111711619A (zh) * 2020-06-04 2020-09-25 江苏荣泽信息科技股份有限公司 一种基于区块链的网络安全连接系统
CN112165381A (zh) * 2020-08-18 2021-01-01 远景智能国际私人投资有限公司 密钥管理系统和方法
CN112165381B (zh) * 2020-08-18 2023-12-05 远景智能国际私人投资有限公司 密钥管理系统和方法
CN113360923A (zh) * 2021-06-03 2021-09-07 北京融数联智科技有限公司 一种数据交互方法、装置、系统及电子设备
CN116233767A (zh) * 2023-03-20 2023-06-06 中国联合网络通信集团有限公司 集群对讲通信方法、装置、设备及存储介质
CN116233767B (zh) * 2023-03-20 2024-04-30 中国联合网络通信集团有限公司 集群对讲通信方法、装置、设备及存储介质

Also Published As

Publication number Publication date
US10204241B2 (en) 2019-02-12
US10200194B2 (en) 2019-02-05
US20190007204A1 (en) 2019-01-03
US20190005274A1 (en) 2019-01-03
WO2019005417A1 (en) 2019-01-03
EP3646173A1 (en) 2020-05-06
CN110799941B (zh) 2023-08-22
CN117040840A (zh) 2023-11-10
EP3646173B1 (en) 2023-05-10

Similar Documents

Publication Publication Date Title
CN110799941B (zh) 防盗和防篡改的数据保护
US10721080B2 (en) Key-attestation-contingent certificate issuance
US20200099674A1 (en) Key export techniques
US6173402B1 (en) Technique for localizing keyphrase-based data encryption and decryption
US10423791B2 (en) Enabling offline restart of shielded virtual machines using key caching
JP4219965B2 (ja) ワンタイムidによる認証
WO2002005475A2 (en) Generation and use of digital signatures
US8667278B2 (en) Information processing apparatus and data transmission method of information processing apparatus
US20230396612A1 (en) Authentication system for a multiuser device
US11811915B1 (en) Stateless system to protect data
US11848945B1 (en) Stateless system to enable data breach
US20240070294A1 (en) Secure synchronization of data
US20240064131A1 (en) Secure synchronization of data
US20240072998A1 (en) Stateless system to restore access
CN117494104A (zh) 基于3des的密码管理方法、系统、设备及介质
Boström Transparent and secure remote network storage system using an untrusted server
JP2006202121A (ja) 耐障害性サービス提供システム、サーバ装置およびクライアント装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant