CN1669265A - 在计算机系统中使用的隐藏的链接动态密钥管理器 - Google Patents

在计算机系统中使用的隐藏的链接动态密钥管理器 Download PDF

Info

Publication number
CN1669265A
CN1669265A CNA03816860XA CN03816860A CN1669265A CN 1669265 A CN1669265 A CN 1669265A CN A03816860X A CNA03816860X A CN A03816860XA CN 03816860 A CN03816860 A CN 03816860A CN 1669265 A CN1669265 A CN 1669265A
Authority
CN
China
Prior art keywords
key
cipher
computer system
session key
information
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.)
Pending
Application number
CNA03816860XA
Other languages
English (en)
Inventor
O·瓦西克
S·安沙里
甘平
J·胡
B·库路西
A·马多克
A·泰西莱克
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.)
ERUCES Inc
Original Assignee
ERUCES Inc
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 ERUCES Inc filed Critical ERUCES Inc
Publication of CN1669265A publication Critical patent/CN1669265A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • 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
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • 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
    • 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/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • 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/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
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • 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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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/3271Cryptographic 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 challenge-response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2115Third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2151Time stamp
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2153Using hardware token as a secondary aspect
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • 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

Abstract

揭示一计算机系统(1000),包含密码密钥和密码密钥标识符(1640)。系统(1600)具有一存储库密码引擎(1622),它安全地与远程密码引擎(1642)通信,并且存储库密码引擎(1622)与一用户数据存储器(1722)相关联。用户数据存储器(1722)包括一隐藏的链接,它包括用保护密钥加密的会话密钥标识符。隐藏的链接与远程数据实体相关联。与存储库服务器(1620)相关联的密钥数据存储器(1640)包括用会话密钥保护密钥加密的会话密钥。使用会话密钥加密和解密远程数据实体。系统(1600)也包括一存储库密钥交换模块(1634),用于与远程密钥交换模块(1630)交换会话密钥。

Description

在计算机系统中使用的隐藏的链接动态密钥管理器
技术领域
本发明是于2000年十月20日提交的美国专利申请No.09/693,605的继续部分。
背景技术
对于各种理由,许多组织经常需要通过网络交换机密信息。有时许多组织为此目的通过专用租用线路建立专用网络而避免使用公共网络。租用线路是在用于如路由正规的电话呼叫等的电话网络上的专用的点对点连接。例如,使用租用线路提供地区性办公室与公司总部之间的专用网络连接,只传送要在地区性办公室与总部之间的要发送的信息。
也可使用租用线路将一个组织连接到因特网服务供应者(ISP)。ISP将其顾客连接到公共网络,诸如因特网。通过与公共网络的连接,顾客可与也连接到公共网络的任何其它一方发送和接收消息。相对于专用的私有租用线路,这具有便利与低成本的优点,因为只有与ISP的单一连接必须维护。然而,与在私有租用线路上发送的数据的用户相比,在公共网络上发送和接收信息的网络用户,对数据信息具有少得多的控制。明确地说,在公共网络中,在任意发送者与接收者之间路由信息的网络设备的操作员可截取信息并检查它或者甚至在途中修改它。而且,在公共网络上,发送者和接收者没有便利的方法监管中间的网络提供者的行为。
因此,常规的明智行为是,专用租用线路提供对信息的私密性和完整性的更好控制,因为尽管私有租用线路的供应者有可能检查或更改专用网络上的信息,私有租用线路的用户知道供应者是谁并且能够建立合理的程序来审计供应者的行为以确保合理级别的数据私密性和完整性。在像因特网这样的公共网络中,要保证网络操作员不会检查或者更改在公共网络上的任意消息是不切实际的。
因此,在数据的私密性和数据完整性方面,在租用线路上的专用网络更胜于常规的公共网络连接。然而常常是,由于必需的专用连接的绝对数字和租用线路的巨大费用,对于全部网络使用专用租用线路变得不切实际。因而,已经形成了建立数据私密性和完整性的其它装置。
这些装置之一是虚拟专用网络(VPN),它使用密码学,在节点(包括计算机)之间使用公共网络,诸如因特网的互联网协议(IP)网络来创建虚拟点对点连接。与专用网络相似,VPN包括点对点连接,然而,因为它在公共网络上使用加密的信息来建立“虚拟”连接,因此VPN不要求专用的租用线路。
硬件和软件可广泛地用于实现VPN。然而,硬件和软件且尤其是适合操作VPN的工作人员是相当昂贵的。
因为在点对点链路的两端在网络层上加密和解密信息,因此如果攻击者在损害一终端节点或计算机的操作系统时成功,则攻击者就具有对在VPN中交换的全部信息的完全访问。因此,保证安全的、不受损害的VPN的操作的关键是,确保攻击者和侵入者不能损害或者获得对VPN终端节点的未经授权的访问。
要防止未经授权的访问,各组织使用防火墙和健全的系统管理技术。防火墙过滤或者限制允许在外部公共网络与内部网络之间通信的包。然而,防火墙必须允许至少一些包与公共网络交换,以便无论如何与公共网络连接。
因此,只要与公共网络交换包,则攻击者就有机会获得未经授权的访问。下一层次的防御是要保持操作系统级的安全层安全。系统级安全层包括软件段,它们要求用户姓名和口令以允许连接等。
攻击者获得未经授权访问的普通技术是利用操作系统安全层中的已知缺陷。这些缺陷通常是由人在设计和实现系统软件中的错误引起的。因此,当对于这些缺陷的修补变成可用时,应用这些修补或补丁是绝对必要的。监控和及时地应用修补和补丁是健全的系统管理的重要方面。如果不应用补丁,则侵入者可以容易地获得对终端节点的访问。
除了VPN(它要求在点对点链路的终端之间配置)之外,存在用于建立加密的信道的其它方法,通过这些信道在公共网络上交换私有信息。这些信道保护包括象安全套接字协议层(SSL)和安全命令解释程序(SSH)这样的协议。
密码学包括对消息进行编码和转换,以向除所希望的消息接收者之外的任何人提供不可理解的消息。在保护数据私密性的环境中,提供不可理解的消息的过程称为加密,而由所希望的接收者将消息破译以提供可理解的消息的过程称为解密。经常使用除消息本身之外的附加信息来解密加密的消息。由于加密象锁定消息而解密象为所希望的接收者解除锁定该消息,因此用于加密和解密的信息常常称为密钥。
除了保护信息的私密性,保证信息的完整性是有用的,数据完整性指数据是可靠的并且没有被授权更改过。一种保证信息可靠性的方法是计算信息上的消息摘要并且以数字方式签署消息摘要。消息摘要常常是诸如MD5或SHA-1单向散列函数的输出,它们从任意长度的消息不可逆地产生定长输出摘要。在接收后,接收者可以重新计算所收到消息上的消息摘要并且验证签名。通过验证签名并将所计算的消息摘要与经签名的消息摘要相比较,接收者验证他或她已经接收到未被更改的由发送者先签名的同一消息。
提供数据完整性的验证的其它方法包括用于消息标识(HMAC)的加密钥散列(Keyed-Hashing)。HMAC是一种机制,可以标识消息源及其完整性。HMAC利用诸如MD5或者SHA-1的任意单向散列函数,连同共享的秘密或者密钥,提供消息标识码。HMAC也可以结合询问应答协议使用,在该协议中,应答是由秘密码密钥和询问消息的函数计算的。当接收者对收到的消息进行HMAC计算并将它与结合该消息发送的消息标识码相比较时,信息的真实性被验证。接收者还可以验证该消息来自拥有秘密码密钥的源。此外,在RFC 2104中描述HMAC。
密钥可以是在公式中使用的数字,以对消息进行运算,或者加密或者解密该消息。其它类型的密钥包括一次密码密钥加密(one time pad),它们是应用于消息以便加密和解密它们的密钥列表,其中密钥列表的每一元素只使用一次。当然,要保持加密的消息不被除所希望的消息接收者之外的其它人解密,至关紧要的是不要让密钥落在非所希望的接收者的手里。因此,密钥必须以安全方式在加密通信的各方之间交换。进行这种操作的一种不方便的方法是,通过可信的信使以物理方式在锁定的公文包中将密钥递送给各方,从而依靠可验证的物理安全性来保证实际的安全。然而,密钥交换的物理信使方法一般太麻烦、太慢并且太昂贵。
因此,密码学中主要挑战之一是密钥交换的过程。用于交换密钥的流行方法是使用公开密钥密码学来交换对称密钥。公开密钥密码学使用两种密钥来加密和解密信息,即旨在广泛地分发并与特定实体相关联的公开密钥,以及旨在以高度机密和安全的方式保存的私有密钥。相反,对称密码学使用同一密钥来加密和解密信息。
公开密钥密码学通过以公开密钥加密消息工作。一旦以公开密钥加密,只能使用相应的私有密钥解密消息。同样,签名者可通过将他或她的私有密钥应用于消息,或者通常应用于消息的摘要,来创建数字签名,消息摘要是唯一地标识该消息的定长信息段。通过将所声称的数字签名的公开密钥应用于该签名,来确定该签名是否有效。
简化地使用公开密钥密码学以交换对称密钥是按以下面的方法完成的。一方产生新的对称密钥,例如,使用随机数产生器。接着,该方使用所希望的接收者的公开密钥加密对称密钥,并将加密的消息发送给所希望的接收者。接收者使用他或她的私有密钥解密消息,从而安全地接收对称密钥,可以使用该对称密钥来保护用于进一步通信的信道。
在公开密钥密码学的任何应用中一个重要问题是,公开密钥密码学的用户(例如加密消息的发送者)使用其它方的可靠的公开密钥。如果发送者错误地使用攻击者的公开密钥,则攻击者将能够解密该消息,并且将具有允许攻击者访问该安全信道的对称密钥。而且,如果攻击者能够将他或她自己以这种方式插进信道中,则攻击者可以伪造消息给接收者并安装称为“中间人(man-in-the-middle)”攻击,其中发送者和接收者两者都相信它们正通过安全信道直接通信,但实际上正通过攻击者通信,攻击者在消息在发送者和接收者之间传输时有能力检查和更改消息。因此,有效地使用公开密钥密码学要求用户能够验证,特定的公开密钥是他们想要与其通信的人的真的公开密钥。保证公开密钥是正确的公开密钥,这是公开密钥确认的问题。
一种解决公开密钥确认问题的方法是,在主要报纸上发布公开密钥,并且公开密钥的用户人工地将他们使用的公开密钥与所公布的数字相比较。这个系统相当有效并且偶尔在实际中使用。然而,它有点不方便并且不便于自动化。已经使用了其它公开密钥确认程序。在“信任环(trust of ring)”环境中,诸如在相当好私密性(Pretty Good Privacy)(PGP)TM系统中使用的,用户可人工地输入或自动地导入来自可信源的公开密钥。验证公开密钥的另一个解决方案是数字证书,其中以数字方式签署公开密钥,并且按照哪些公开密钥密码系统的用户可以通过确认在证书上的数字签名,来验证证书及其相应的公开密钥的可靠性。使用证书机构(Certication Authority)(CA)的预建立的可信的公开密钥来确认签名。
SSL协议使用数字证书。在SSL中,网站服务器具有X.509格式的数字证书,它由可信的CA使用CA的私有密钥以数字方式签署。在SSL环境中,CA的签名可以在客户机使用CA的公开密钥的可信版本来验证。在流行的浏览器中,流行的CA的公开密钥预加载到浏览器中。SSH需要服务器的公开密钥的初始可信交换,使得在后续的事务中,服务器的身份可以由用户使用常规的公开密钥技术来验证。
因此,诸如SSH和SSL的VPN和信道保护器在数据在潜在的不安全的网络上从一安全节点交换到另一个安全节点时,保护该数据。然而,这些信道保护器只在传输过程中保护数据。一旦在目的节点上解密后,信道保护技术不能再保护数据。并且防火墙和健全的系统管理技术已经证明,在保持不让侵入者获得对网络连接的计算机系统未经授权的访问时并不完全有效。因而,在快速地从例如各种网站偷窃数以千计的信用卡号码和其它机密信息时,高度公开的攻击已经成功。
在某些情况下,一组织试图通过将其服务器放置在配备了锁定的门和监视摄像机的房间里,保护固定的加密码密钥和其它敏感数据。然而,远程侵入者不需要物理地访问服务器房间以便访问存储在公司的服务器上的数据。侵入者而只需要以某种方式远程访问该公司的网络。甚至在使用防火墙的情况下,可以通过已知的利用,结合那样一些技术,例如包括IP欺骗(其中侵入者伪造具有虚假IP地址的包),来获得这种访问。其它技术包括网络扫描,这有助于识别具有可利用的缺陷的系统。
一旦侵入者获得对在内部网络上的一个系统的访问,它就变成可能利用内部网络中的其它弱点,诸如截取未加密的网络通信量,并且使用从该通信量获得的信息,访问内部网络上的其它系统。例如,许多通用的电子邮件程序传输用户名和口令消息,它们是未加密的或者使用其实际值的易于破解的防护。
一旦获得对关键系统资源的访问,即,对常规的数据库服务器的根访问,侵入者具有对组织的信息的完全访问,包括例如信用卡号码,可识别的医疗记录,并且其它关于组织的疾病患者、顾客和/或职员的敏感机密信息。可以通过未授权的访问获得的机密信息的其它例子包括信用卡号码,银行帐号,社会保障号,生日和高度个人和私有的医疗记录。
结合对信息的访问,包括对加密和解密信息的密钥的访问,验证信息的用户的身份和授权和用户为访问该信息所使用的软件的身份和授权是有用的。因此,已经设计出用户授权和软件或代码、授权方案来进行用户和代码的授权。用户的身份验证可以通过例如接收口令并将该口令与所存储的口令相比较,或者通过不可逆地将所收到的口令转换成另一个形式并将转换后的口令与以同一形式存储的口令相比较来进行。同样,软件组件可以通过使用例如数字签名来进行身份验证。然而,使用经签署的组件提供软件组件身份验证的已知方法,然而,依赖于策略文件和PKI信任链。可惜,还存在破坏安全的已知方法,它依赖于普通策略文件的完整性。而且,结合用企业级签署的私有密钥的组件,获得对企业级签署的私有密钥的访问的侵入者可以将签名放在欺骗软件组件上。因此,在本领域中,对软件组件授权的方法和系统的领域中有一种需求,它们不同已知方法和系统的缺陷而受到损害。
从疾病患者的角度,对个人医疗记录的未经授权的访问的结果可以是毁灭性的。对于一个典型的顾客,取消和代替信用卡,与敏感医疗信息的损害和潜在公布相比是相对微小的不方便。而且,篡改医疗信息是潜在的生命威胁,侵害私密性和数据完整性。因此,机密信息的保护,尤其是医疗记录,要求更强地保证顾客或疾病患者的机密信息是安全的。只在传输时保护数据的已知方法不能满足这一需求。
发明内容
提供一种计算机系统,它包含密码密钥和密码密钥标识符。系统具有一储存库密码引擎,它安全地与远程密码引擎通信,并且储存库密码引擎与一用户数据存储器相关联。该数据存储器包括一隐藏的链接,它包括用保护密钥加密的会话密钥标识符。隐藏的链接与远程数据实体相关联。与存储库服务器相关联的密钥数据存储器包括用会话密钥保护密钥(Session-Key-Protection)加密的会话密钥。使用会话密钥加密和解密远程数据实体。该系统也包括一存储库密钥交换模块,用于与远程密钥交换模块交换会话密钥。
会话密钥标识符可选地可操作,用于识别相应于远程数据实体的会话密钥。计算机系统可选地还包括控制对操作的访问的授权模块。授权模块可选地还与用户数据存储器相耦合,并且基于用户数据存储器进一步提供对会话密钥的访问。保护密钥最好是对称的密码密钥。
在一个实施例中,会话密钥保护密钥是对称密码密钥。在另一个实施例中,会话密钥保护密钥和保护密钥是等价的。对称密码密钥可选地是三重数据加密标准(Data Encryption Standard)或者高级加密标准(Advanced EncryptionStandard)。
提供一种分布式网络,它包括一包含密码密钥的存储库服务器。该网络包括储存库密码引擎,用于与远程密码引擎安全地通信。该网络还包括远程密码代理,用于与远程密码引擎安全地通信。而且,该网络还包括一与远程密码代理相耦合的商业代理,其中,商业代理的可靠性由远程密码引擎通过将所存储的商业代理的指纹与远程密码代理的计算出的指纹相比较来验证。
提供一种密码方法,用于促进信息的安全存储。首先,从远程计算机系统处的请求密钥交换模块接收一对会话密钥的密钥请求。该密钥请求包括一隐藏的链接。接着,基于隐藏的链接使用保护密钥访问和加密会话密钥。然后,对应于请求密钥交换模块接收交换公开密钥。以交换公开密钥中加密该会话密钥,产生加密的会话密钥。而且,将加密的会话密钥传输到请求密钥交换模块。然后,在与请求者相关联的计算机上,用与交换公开密钥相应的交换私有密钥接收加密的会话密钥。用会话密钥加密数据实体,并将隐藏的链接连接于数据实体。接着,存储该数据实体。
从结合附图的下面详述可明白本发明的这些和其他发明的特征和优点,在诸附图中,类似的参考字符标记类似的单元。附图说:
附图说明
图1是实现按照本发明的隐藏的链接动态密钥管理器的计算机系统的示意图;
图2是图1的计算机系统的示意框图,它示出计算机系统的软件组件;
图3是按照本发明并由图1的计算机系统使用的数据库结构的示意图;
图4是图3的数据库结构的安全密钥标识属性的示意图;
图5是一监视器显示的示意图,例示按照本发明的可修改的显示参数,并且只有公共信息和字段被显示;
图6是一监视器显示的示意图,例示按照本发明的可修改的显示参数,并具有公共和私有两者信息和字段被显示;
图7是示意框图,例示确定如何修改在图5和6中示出的显示参数的步骤;
图8是会话加密码密钥数据实体的示意图;
图9是系统密钥普通名数据实体的示意图;
图10是示意框图,例示在添加事务期间数据实体的加密和存储;
图11是示意框图,例示在更新和观看事务期间数据实体的检索和解密;
图12是示意框图,例示在更新和观看事务期间数据实体的检索和解密的替换实施例;
图13是示意框图,例示会话加密码密钥的撤消;
图14是示意框图,例示会话加密码密钥的撤消的替换实施例;
图15是例示一系统的示意框图,在该系统中,例示提供与本发明一致的数据库保护;
图16是例示一系统的示意框图,在该系统中,远程计算机系统通过网络访问密钥存储库;
图17是例示一系统的示意框图,该系统包括一文件服务器,一存储库服务器和远程计算机系统;
图18A是示意框图,例示与本发明相一致的部门际的数据保护;
图18B是示意框图,例示与本发明相一致的部门际的数据保护;
图18C是示意框图,例示结合企业内部网或外部网基于密钥存储库的数据保护;
图18D是例示移动数据保护的示意框图;
图18E是例示在多企业环境中的数据保护的示意框图;
图19是示意框图,例示相应于密钥、访问控制和用户数据库的表的实施例;
图20是示意框图,例示按照本发明加密文件的过程;
图21是示意框图,例示维护访问控制列表的过程;
图22是示意框图,例示访问加密文件的过程;
图23是示意框图,例示响应于一密钥变成被损害,阻止与该密钥相关联的访问的过程;
图24是例示一系统的示意框图,在该系统中,对可信的组件进行授权;
图25是例示创建智能卡的过程的示意框图;
图26是例示注册组件的过程的示意框图;以及
图27是示意框图,例示执行对组件的运行时间授权的过程。
具体实施方式
更详细地参考附图,图1和2示出按照本发明的较佳实施例构造的计算机系统20,用于存储信息。本发明提供加密和解密数据的改进方法,最好是静止的(at rest)数据,即处于其原来的形式,例如在文件系统中或者在数据库服务器中。计算机系统20大致包括一安全域22,它具有加密码密钥管理器(EKM)24、系统密钥管理器(SKM)84、密钥生存期管理器(KLM)88、密钥审计管理器(KAM)90和数据库适配器(DBAD)86。在一替换的实施例中,在安全域22中包括其它企业安全组件。
计算机系统20还包括多个具有信息数据库28的客户机商业域26。计算机系统20实现按照本发明的一种方法。该方法大致包括数据实体30的加密、解密和存储(图3),如在图10的流程图中例示的,并且该方法还包括用于数据操作的数据的检索和解密。检索和解密方法的一个实施例在图11的流程图中例示。计算机系统20使用图3中例示的数据结构。该数据结构大致包括具有安全密钥标识属性32的多个数据实体30,安全密钥标识属性包含如图4例示安全密钥信息。
参考图1,除安全域22和客户机商业域26之外,计算机系统还包括多个客户机终端34。客户机终端34具备与商业域26通信的远程通信能力。然而,本发明还考虑使用替换的通信机制,诸如例如企业内部网,局域网(LAN)和广域网(WAN)。可利用企业内部网、LAN和WAN于其中数据安全很重要的任何类型的设备或组织,,诸如例如银行、医院或法律事务所。客户机终端34只有在通过诸如防火墙的安全装置之后获得对客户机商业域26的访问,并且在客户机商业域26与安全域22之间通信最好通过因特网协议安全的虚拟专用网络隧道(IPSEC,VPN隧道)38进行。
安全域22包括一主密钥服务器40、次级密钥服务器42、一安全密钥数据库44和一证书机构服务器46。每个密钥服务器是通用计算机,具有各种组件,包括例如,一个或多个处理器,快速主存储器和持久存储器。证书服务器46也是通用计算机。
主密钥服务器40和次级密钥服务器42是镜象组件。因而,主和次级密钥服务器实质上是相同的。如果主密钥服务器40故障,则次级密钥服务器42立即开始操作而不中断整个系统操作,因此提供故障容错。在操作中的转换是通过,例如,主与次级服务器40、42之间的心博故障在线恢复信道(heart beatfailover channel)来完成的。主和次级服务器40、42各自可选地包括磁带备份48、50,分别用于在KEYDB 44不可检索或者密钥完整性检查失败时检索密钥。主服务器40具备在附图中指定为阅读器#1的主系统密钥阅读器52,在附图中指定为阅读器#2的主加密码密钥阅读器54。最好,主服务器40的每个主阅读器52、54存储相同的信息。因而,主阅读器52、54是镜象硬件组件,用于高级故障容错。次级数据库42还包括在附图中指定为阅读器#1的次级系统密钥阅读器56,在附图中指定为阅读器#2的次级加密码密钥阅读器58。最好,次级服务器42的每个次级阅读器56、58存储相同的信息。因而,次级阅读器56、58也是镜象的,并且总共有四个阅读器,可以从它们检索密钥信息。阅读器52-58包括安全权标(token)阅读器用于接收安全权标。最好,阅读器包括智能卡阅读器,用于接收智能卡。硬件随机数发生器(HRNG)59也是在安全域中可选地提供的,以产生随机数,用作密钥的标识符。
在一个实施例中,密钥服务器40和42包含多个保护密钥,用于加密和解密会话密钥和会话密钥标识符。保护密钥本身存储在保护存储器中,例如ASCII平面文件,并且以主密钥加密。在一个实施例中,可以基于M中的K个范例提供主密钥,在其之下有M个,例如七个独立的子密钥,由例如七个不同的人保存。在这个实施例中,要解锁保护密钥存储器,七人中的K个,如三个人必须提供他们的子密钥。在一替换的实施例中,使用M中加权K的方案,在其之下M个子密钥中的某些比其它加权更高。在M中加权K的方案中,例如,一公司的CEO可以配备一具有足够的权重的子密钥来由其自己解锁保护存储器,而下级基于下级的责任级别具有各自较低权重的子密钥。
在一个实施例中,KEYDB 44包括具有故障容错系统的外部盘阵列用于镜象操作。在一个替换的实施例中,KEYDB 44是关系数据库平台,诸如MicrosoftTMSQL Server,OracleTM,DB2TM,mySQLTM,PostgreSQLTM或Jet EngineTM。外部盘阵列或者数据库服务器可选地包括冗余独立磁盘阵列(redundant array ofindependent disks)(RAID)。每个密钥服务器40、42用于与KEYDB 44通信。在一个实施例中,密钥服务器使用ADO、ODBC或本地数据库接口,诸如与OracleTM数据库服务器有关提供的接口,与数据库服务器KEYDB 44通信。
客户机商业域26最好包括多个应用服务器60、61和主信息数据库62,它与KEYDB 44隔离,并且是一个数据库平台,诸如结合KEYDB 44或者另外的InterSystems CacheTM列举的那些平台。最好,还提供备份信息数据库64。备份信息数据库64镜象主信息数据库62中的信息,提供冗余并防止数据丢失。因而,为客户机商业域26提供高级故障容错。为了附加的安全,在一个实施例中,客户机商业域服务器60、61只能通过防火墙66访问。每个应用服务器60、61可包含多个商业逻辑组件,诸如商业逻辑组件一号(BLC1)68。BLC包含指令和规则,用于由用户和/或用户软件应用的开发者设置的计算机系统20的操作。
通常,每一客户机终端34包括一中央处理器(CPU)70,诸如键盘72的数据输入机构和显示器或监视器74。CPU 70用于控制监视器74,从键盘72接收输入,并通过因特网36,利用调制解调器、双向卫星、数字用户线(DSL)或其它通信装置(未示出)如以太网适配器,建立和维护通信。CPU 70还用于控制其它计算机系统设备诸如打印机或盘驱动器。最好,每一客户机终端也装备用户安全权标阅读器,用于接收安全权标。在一个较佳实施例中,安全权标阅读器包括智能卡78,用于接收智能卡80。智能卡可选地具备专用和受保护的文件系统。每一用户可选地具备他或她自己的智能卡80,它包括用于标识和授权用户的密码。其它已知的解决方案,诸如用户标识和口令,可以用于控制访问和用户授权。在一个实施例中,用户具有一个或多个授权的角色。角色标识可以包括助理员级、接待员级、管理员级和其它。角色标识表示由在这些级别中各人执行的职责,以及对于他们正确地执行这些职责所需信息的范围。如下结合图7描述,使用用户和角色标识以限制对信息的访问。
参考图2,计算机系统20的安全域22包括若干软件组件,它们驻留在图1所例示的硬件组件上。主和次级密钥服务器40、42包括实质上相同的软件组件,并且都将参考主密钥服务器40来描述。主密钥服务器40包括若干软件组件:通用安全管理器(GSM)82,加密码密钥管理器(EKM)24,系统密钥管理器(SKM)84,数据库适配器(DBAD)86,密钥生存期管理器(KLM)88和密钥审计管理器(KAM)90。在专用证书机构(CA)服务器46上提供证书管理器(CM)92。
通用安全管理器(GSM)82用作到位于安全域22中的计算机系统20的部分的网关。为此,每个安全域22组件EKM 24、SKM 84、DBAD 86、KLM 88、KAM 90、CM 92最好不用于直接与计算机系统20的安全域22之外的任何组件通信。在一个实施例中,它们只用于通过GSM 82与外界的组件通信。最好,组件相互授权在位于安全域中的GSM 82与外界商业域组件68之间发生。COM+、CORBA或Java安全可以用于控制相互授权。因而,在这个实施例中,客户机用户和客户机商业域26中的任何组件都不能通过可信授权过程接触除GSM 82之外的任何部分。
GSM 82也用于加密数据实体30(图3),例如使用三密钥(three-key),三重数据加密标准(3DES),RC4或任何强密码算法于数据实体30C、30D的被选择的属性,如由BLC和计算机系统20的其它组件指向和请求的。因而,当DES使用对称56位密钥加密时,GSM最好使用三密钥3DES,这是对称168位密码系统,具有大约110位的有效密钥强度。可以使用其它强密码系统算法,诸如128位IDEA或AES。使用扩展的长度的密钥使这些密钥比56位DES密钥更难以被破译,后者已经在实验上使用并行处理系统被破译过。
当计算机系统20的其它组件要求解密时,GSM 82还执行数据实体30的解密。而且,GSM 82用于使用消息摘要5(MD5)、SHA-1或其它强散列算法执行散列操作,如由其它组件指示的。在单向散列过程中产生的散列值或完整性值一般作为数据实体中的属性存储,用于完整性检验的目的。最好,GSM 82散列数据实体的所有数据属性,并作为一个属性存储该数据散列值。在已经解密了数据之后,它再次被散列并且比较之前和其后的散列值。如果两个散列值相同,则确认了数据实体中数据的完整性。如果两个散列值不同,则发出警报并从备份信息数据库64检索数据。
加密码密钥管理器(EKM)24,如其名称所表示的,通常管理加密码密钥,如下所述用于加密和解密数据实体30C、30D。因而,EKM 24用于产生多重会话加密码密钥(SEK),例如或者3DES或者DES,并且为SEK产生会话加密码密钥标识(SEKID)。SEKID是可选地用HRNG 59(硬件随机数产生器)产生的随机数。可替换地,使用软件随机数产生器产生SEKID。EKM用于使用SEK的散列值在SEK上执行完整性检验。EKM还用于将SEKID发送给SKM 84用于解密,并且EKM24也用于将SEK和相应的SEKID以加密的形式发送给GSM 82,后者接着使用SEK加密数据实体30C、30D。
系统密钥管理器(SKM)84通常管理系统密钥,如下所述用于加密SEKID。因此,SKM 84能用于加密SEKID。在一个实施例中,使用若干保护密钥加密SEK和SEKID。要理解,所使用的保护密钥的数量是一个操作员可选择的参数。在一个实施例中,使用大约20个保护密钥。在另一个实施例中,使用超过大约1000个保护密钥。保护密钥可选地是3DES或AES密钥,并且将指向保护密钥的指针与SEK一起存储。在本实施例中,与加密的数据一起发送的隐藏的链接包含若干数据结构,包括一个指向保护密钥的指针,以及唯一地相应于产生SEKID的密码引擎的密码引擎标识符。
在一个实施例中,使用单独的加密码密钥加密SEK和SEKID。在这个实施例中,使用加密码密钥公开密钥加密用于加密SEK的加密码密钥。而且,使用系统密钥公开密钥加密用于加密SEKID的对称密钥。在这个实施例中,SKM还产生系统密钥普通名称(SKCN),用于非对称加密码密钥对和系统密钥对。在这个实施例中,当产生系统公开密钥的数字证书时,产生SKCN,因此对于每一系统密钥对有一个唯一的SKCN。在一个可替换的实施例中,SEKID是用对称密钥加密的,而对称密钥是由系统密钥公开密钥加密的。在另一个可替换实施例中,SEKID用称为保护密钥的,如SEK的,对称密钥加密的。
在从EKM 24请求时,SKM 84也用于使用合适的密钥解密SEKID。如果需要,SKM 84和EKM 24可以组合成单一组件并且可以驻留在同一服务器或计算机系统上。
在一个实施例中,Microsoft Crypto API(应用编程接口)用于提供密码功能。在一个可替换的实施例中,OpenSSLTM用于执行密码功能。
在一个实施例中,密钥生存期管理器(KLM)88根据相应的到期日期和时间标记监控SEK的生存期。在这个实施例中,KLM 88用一个期满标志来标志期满的SEK,因此在下一个请求中,EKM将在运行时间操作中可选地检查SEK的期满状态,并且用一个新密钥代替期满的密钥。
与一个特定的数据对象一起使用一个特定的SEK。因此,在一个实施例中,通过与存储该数据实体的请求一起重新发送隐藏的链接,应用可以与同一SEK一起保存数据实体。隐藏的链接是一个数据结构,它包括加密的SEKID、指向用于加密SEKID的指针和密码引擎标识符。另外,应用可以通过发送不包括隐藏的链接的保存数据请求使得产生新SEK。在一个实施例中,KLM 88设置与SEK有关的密钥期满标志,因此可以警告应用,这是使得产生新SEK的合适时间。
在一个实施例中,密钥审计管理器(KAM)90用于维护活动的审计日志,它包括所有涉及SEK和用于加密SEK的密钥的事务。通常,KAM 90利用智能模式、规则和策略监控用于警报事件的日志。KAM 90在系统密钥或SEK已经被损害时还提供发生警报事件的通知。在一个可替换的实施例中,操作员可选择的新密钥产生数量的阈限是可设置的。在这个实施例中,操作员可以在正常操作下观察密码系统,注意在一特定的时段上产生新密钥的通常数量,并相应地设置阈限。一旦设置,如果超过阈限,则发送有关超过的阈限的通知。
证书管理器(CM)92用于执行与系统密钥PKI有关的所有操作。对于每个系统密钥,CM 92产生一个X.509数字证书。最好,数字证书包括临界V3扩展,使得只有专用证书机构(CA)可以验证该密钥。每次SKM 84接收由用系统密钥解密的请求时,CM与在安全域本地的专用证书机构(CA)通信,以验证该系统密钥。
在一个实施例中,数据库适配器(DBAD)86用于从安全域22隐藏数据库专用的应用编程接口(API),并且因此控制和增强密钥管理器24、84与安全密钥数据库44之间的通信。因而,通过使用不同的DBAD,安全域组件可以与不同类型的数据库接口。DBAD 86也允许安全域组件与安全域22内的多个数据库接口,诸如Microsoft SQL Server、Sybase、Informix、Oracle和IBM DB2。可以理解,已知的数据库使用故障容错。尽管已经详细地描述了各组件的较佳操作和位置,但可以理解,在不脱离本发明的精神的情况下,可以在组件之间交换特定任务并且可以组合、分离或者交换组件的位置。
参考图3,数据库结构最好包括面向对象的数据库结构,它具有多个数据实体30,它们最好是数据对象。然而,本发明考虑其它类型的数据库。例如可以使用关系数据库,诸如Microsoft SQL Server、Oracle、Sybase、Informix和IBM DB2。因而,当使用术语对象时,也考虑其配对物,例如记录,并且当使用术语类时,也考虑其配对物,例如表。
详细地示出一个数据实体30A,明确地说是一个持久数据实体。Added属性100记录时间标记,包含添加该对象的日期和时间,而Added By属性102记录添加该记录或数据实体的用户的数字签名。数字签名是从客户机用户的智能卡80的数字证书或者客户机的当前会话和用户标识获得的。Modified和Modified By属性合为104,记录对数据实体30A的修改的相同信息。组合起来,这些认可属性100、102、104阻止客户机用户声称该用户没有采取某个动作。安全状态(SecStatus)属性108表示数据对象是否包含纯文本或密文以及它是公开的还是私有的。
另外参考图4,安全密钥标识属性32也是数据实体30A的一个属性,并且包含安全密钥信息。安全密钥信息包括加密的SEKID 112和SKCN散列值114,如下所述用于寻找用于加密相关联的数据实体30C、30D的SEK并寻找用于加密SEKID 112的系统密钥。尽管最好将SKCN散列值存储在安全密钥属性32中,但可将SKCN存储在这个位置而不进行散列。
再次参考图3,数据实体30A还包括安全完整性属性(SecIntegrity)116,它包含数据实体散列值。数据实体散列值是通过散列在数据实体内所有或选择的属性而获得的。这是由商业需求和策略控制的,最好由客户机确定并记录在BLC中。当检索一个数据实体时,使用例如SHA-1对它进行散列操作,并且将数据实体散列值与在安全完整性属性116中存储的散列值相比较。如果散列值相同,则检索的数据实体的完整性被确认为正确并且未被改变。如果散列值不相同,则发出警报,使得数据能可选地由人工来确认,并且如上所述,从备份信息数据库62检索。
另外参考图5、6和7,安全私密性属性118控制对相关联的数据实体30C、30D中的信息的访问。当客户机用户,例如医生,将其信息标记为私有,特殊访问列表(SAL),数据实体一类30B自动地创建,并且将该医生自动地添加到特殊访问列表。该医生此后可以从特殊访问列表中增加或者删除用户标识属性120和/或角色标识122。用户属性120是基于来自智能卡或者任何其它身份验证方法的特定用户标识。角色属性122是基于用户的不同安全级别。例如,该医生可批准其它医生观看私有数据的许可但不允许护士观看私有数据。角色可以包括任何安全级别:例如,秘书、股东、保管员和行政人员。以这种方式,该医生控制谁可以观看什么信息和谁可以编辑什么信息。对于疾病患者记录也是如此;在什么地方护士和医生可具有完全访问,事务员可具有对姓名、地址、支付和预约信息的有限访问。这种私密性可以应用于任何顶层市场,诸如银行、知识产权系统、电子商务、律师事务所以及所有处理高度敏感或分等级信息的应用。
当经身份验证的客户机用户在图7的步骤124请求信息时,计算机系统在步骤126检索该信息,这将在后面更详细地描述。在检索该信息之后,在步骤128系统检查安全隐私属性118。如果信息没有被标记为私有,则在监视器130上全部显示,如在图6中例示的。如果信息被标记为私有,则在步骤132系统检查客户机用户的安全级别。在检查用户的安全级别时,系统查看用户标识和角色标识两者,以确定两者之一是否在特殊访问列表中,并且确定用户对该信息具有什么权限,诸如仅观看或者编辑。如果客户机用户具有全部观看权限,则再次示出图6的显示。如果客户机用户没有被授权观看私有信息,则在步骤134中调整显示参数。在步骤134中,将不显示的私有信息的显示字段,与其相关的标号从显示参数中一起被排除,使得当在步骤135中在图5的监视器136上显示许可的信息时,不显示私有信息的字段。
此外,设想可修改公开信息的字段,因此完全屏蔽私有信息的存在。在所示的例子中,为具有对私有信息的访问权限的用户,显示个人信息138,诸如生日和子女数量。然而,对于没有观看私有信息授权的用户,生日和子女数量字段从图5的显示中移除。此外,为具有观看私有信息授权的用户显示家庭地址信息140和工作地址信息142,并且这些字段明确地表示哪个地址是工作地址和哪个地址是家庭地址。相反,没有对私有信息的访问权限的用户不仅看不到家庭地址,而且图5中的工作地址字段144被修改成消除了它是一个工作地址的指示。
再次专门地参考图3,持久数据实体30A还包括若干关联属性,由数据库模式用于将相关的数据实体30B、30C、30D与持久数据实体30A相关联或链接。为此,持久对象30A包括类标识属性146和至少两个搜索属性148。对于更快速和安全的搜索,可搜索属性148最好是诸如病人姓名的用户信息的散列值。数据库使用这些属性146、148和其它属性将相关的持久对象30A和相关的类对象30B、30C、30D与包含合适的安全密钥标识32的持久对象相关联,安全密钥标识32用于加密类对象中的数据属性。在图3中示出两个示例性类对象:个人类对象30C和姓名类对象30D。其它未例示的类对象/实体包括地址实体,职员实体,付款实体,保险实体和其它。
数据库还具备查找地图或笔记150。所例示的查找地图150用于个人类的性别。这节省数据库资源,因为在数据库中的每个人仅具有0,1或2,分别相应于未公开,男性或女性。因而,查找地图150节省了数据库资源,因为每个个人类具有单个数字的整数,代替了长的文字条目。查找地图最好用于安全状态属性108,安全私密性属性118和其它。
参考图8和9,数据结构还包括保存在KEKDB 44中的SEK对象151和SKCN对象152,后者或者保存在KEKDB 44中,或者在另一个实施例中,保存在单独的系统密钥数据库(未示出)中。因而,为增加的安全,将若干数据实体存储在分开的数据库中。在一个实施例中,将公开密钥对存储在硬件安全模块(HSM)设备中。
SEK对象/实体包括作为属性的正常/加密格式的SEKID 153、加密的SEK154、SEK完整性检验155(它是SEK的散列值)、和可选的SKCN散列值156。SEK数据实体151最好不包括加密的SEKID。这创建在加密的数据与用于加密它的SEK之间的隐藏的链接,因为SEKID是加密的,而SEK存储在分别的数据库中。在一个实施例中,提供HMAC用于数据记录完整性,也与每个记录一起存储在密钥数据库中。与HMAC相关联的秘密包含在主安全容件中,后者可选地用M中的K加密方案来保护。SEK对象最好还包括Created On属性159,它记录创建SEK的时间标记,并且可选地包括Last Usage Date属性161,它记录最后一次使用SEK的时间标记。另外,SEK对象可选地具有Usage Counter属性163,它记录已经使用了SEK多少次。Created On 159,Last Usage Date 161和UsageCounter 163属性为客户机提供可选的特征选择。明确地说,客户机可以选择让密钥在创建之后经过某个数量的月后期满,例如两个月。客户机最好也可以决定,当SEK在一段选择的时间内未使用时或者在已经使用它们超过选择的次数时,SEK为期满。客户机还可以选择让SEK随机地期满或者根本不期满。SKCN对象/实体包括SKCN散列值157和SKCN 158作为属性,并且最好存储在与数据实体30分开的数据库中。
图15是示意框图,例示按照本发明提供数据库保护的系统。分布式应用1500通常通过应用服务器1510提供一个接口给数据库服务器1520中的信息。依靠由密码服务器1530提供的SEK保护在数据库服务器1520中的静止信息。当分布式应用1500的请求用户与商业应用1542交互时,商业应用1542从数据库服务器1520接收任何必要的信息。加密数据库存储器1522中的敏感数据。因此,为了使用加密的信息,商业应用1542必须解密经加密的信息。
商业应用1542通过为密码代理1544提供要加密和解密的数据和可选的隐藏的链接,利用密码服务器1530,可选的隐藏的链接与加密的信息一起存储在数据存储器1522中。此外,请求的用户将身份验证信息提供给商业应用1542。在一个实施例中,身份验证信息是请求用户的用户标识符和口令,用它们执行询问应答协议。在可替换的实施例,身份验证信息是基于生物测量学或智能卡。可以理解,在不脱离本发明的范围的情况下,可以使用其它用户身份验证机制。
在实现来自请求用户的请求时,商业应用1542将用户的身份验证信息提供给密码代理。密码代理1544经过可选的安全信道,例如SSL链路,连接到与密码服务器1530相关联的核心引擎。密码服务器1530结合用户数据库1526确认用户身份验证信息。在一个实施例中,用户身份验证信息的确认包括在代理与核心引擎之间的询问应答协议,其中使用用户的口令计算对询问的应答。
如果用户身份验证信息有效,则核心引擎1554从商业应用1542接收信息和指令以执行诸如加密数据或者解密数据的操作。密码服务器1530可选地通过查询访问控制列表数据库1524来确定,该用户是否被授权执行那些操作。如果请求用户被授权执行与特定会话密钥相关的指令,则核心引擎1554确定,哪一个保护密钥与被请求的会话密钥相关联并用其保护密钥解密该会话密钥。
如果商业应用1510需要解密存储在数据库服务器1520中加密的信息块,则商业应用从数据库服务器1520接收该块及其相关联的隐藏的链接,并且将该块及其相关联的隐藏的链接提供给密码代理1544。密码代理1544将加密的块和隐藏的链接转接给核心引擎1554。通过检查隐藏的链接,核心引擎1554可以确定隐藏的链接是否是本地产生的,或者通过检查与隐藏的链接相关联的密码服务器标识符可以确定,它是否来自外来的密码服务器(未示出)。此外,核心引擎可以通过检查包含在隐藏的链接中的保护密钥指针来识别用于解密隐藏的链接中加密的SEKID的保护密钥。核心引擎解密经加密的SEKID并且使用解密的SEKID来访问来自密钥数据库1540的加密的会话密钥。
在一个实施例中,通过查询令SEKID作为主关系数据库密钥的SEK表来完成查找加密的SEK。核心引擎用相应的保护密钥解密经加密的SEK。在一个实施例中,使用相同的保护密钥加密SEKID和SEK。因此,一旦识别了SEKID保护密钥,则可用于解密SEK。接着,核心引擎1554解密从数据库服务器1520提供的商业应用1542的信息,并通过密码代理1544将解密的信息发送回给商业应用1542。在一个实施例中,使用未加密的TCP会话执行密码代理1544与核心引擎1554之间的通信。在一个可替换的实施例中,使用无SSL客户机身份认证的SSL执行通信。在又另一个实施例中,使用具有客户机身份认证的SSL执行代理与核心引擎之间的通信。可以理解,在不脱离本发明的范围的情况下,可以使用保护代理与核心引擎之间信道的其它方法,诸如在IPSec VPN上未加密的TCP会话。
当用户使商业应用在数据库服务器存储信息时,密码代理在商业应用将信息提供给数据库服务器之前,促进信息的加密。如果商业应用正在存储新的信息或者如果商业应用已确定应当产生新的SEK,则商业应用提供不具有相关联的隐藏的链接的未加密的信息。当核心引擎接收要加密的无相关联的隐藏的链接的数据时,核心引擎产生新的SEK和SEKID,加密所提供的信息和SEKID,将保护密钥指针与核心引擎标识符组合起来以形成隐藏的链接,并通过密码代理将加密的信息和隐藏的链接返回给商业应用。此外,商业应用在数据库服务器存储加密的信息和相关联的隐藏的链接。当必需访问加密的信息时,将加密的信息和相关联的隐藏的链接提供给核心引擎,并且如果用户具有足够的权限,则核心引擎为商业应用解密该信息。
在存储具有相关联的隐藏的链接的信息时,例如在修改数据库中一个字段时,商业应用可以选择不产生新的密钥。为达到这个结果,商业应用连同现有的隐藏的链接一起提供要加密的信息。当核心引擎接收要加密的信息和现有的隐藏的链接时,引擎用相应于现有隐藏的链接的SEK加密所提供的信息。在这点上,商业应用推动为现有数据产生新的会话密钥的过程。
图16是例示系统1600的示意框图,在该系统中,远程计算机系统通过网络访问密钥存储库。一个实施例包括存储库服务器1620,它包括储存库核心引擎1622。储存库密码引擎1622包括密钥数据库1640,它具有包含在密钥数据库1640内的密码密钥。储存库核心引擎1622提供密钥产生、存储和检索的功能。
此外,存储库服务器1620包括访问控制列表(ACL)数据库1624和用户数据库1626。ACL数据库1624包含有关所允许的访问或权限的类型的信息,它们是特定的用户对与存储在密钥数据库1640中的密码密钥相关联的特定数据实体所具有的。存储库服务器1620还可选地具有智能卡阅读器1632,它用于从智能卡,诸如可从Gem Plus得到的GEM-139,读取信息。而且,存储库服务器1620包含存储库密钥交换模块1634和身份验证/授权(A/A)模块1636。存储库密钥交换模块1634使得两个分别的密码引擎能够共享密钥。A/A模块1636通过例如有关与用户相关联的智能卡或用户姓名/口令组合的询问应答协议识别用户和/或对用户进行身份验证。此外,A/A模块结合ACL数据库1624提供用户注册功能,ACL数据库1624包含有关特定用户关于特定密钥的信息。
远程计算机系统1610通过网络1630连接到密钥存储库1620。网络1630最好是数据网络,诸如因特网,但要理解,网络1630可以是其它类型的网络,诸如电话网络,无线网络,诸如802.11b、BluetoothTM或其它无线网络,局域网,广域网或光纤网络。在一个实施例中,计算机系统1610包含智能卡阅读器1632,用于使用户能够向储存库核心引擎1620对他或她自己进行身份验证。此外,远程计算机系统1610包含远程密钥交换模块1630,用于与密钥存储库1620的密钥交换模块交换密钥。在一个实施例中,远程计算机系统1610还包含无存储的远程核心引擎1642,用于在远程计算机系统1610上执行远程加密和解密功能。无存储的远程引擎没有内部密钥数据库并且必须与存储库服务器通信以获得密钥来加密或解密数据。
商业应用1612最好还与远程计算机系统1610相关联。商业应用1612通常是消费和产生由按照本发明的密码方法和系统保护的信息的软件。
图17是例示系统1700的示意框图,该系统包括在一组远程计算机系统中的文件服务器1720、存储库服务器1620和远程计算机系统1610。文件服务器1720包括数据存储器1722,它包含用按照本发明的密码方法和系统保护的信息。结合远程计算机系统1610,使用远程核心引擎1642加密和解密包含在数据存储器1722中的信息,远程核心引擎1642使用来自在存储库服务器1620的密钥执行加密或解密的功能,存储库服务器1620可选地包含智能卡阅读器1622,存储库密钥交换模块1634和身份验证/授权(A/A)模块1636。存储库服务器1620还包含用户数据库1626和ACL数据库1624。远程计算机系统1610可选地使用智能卡阅读器1632和远程密钥交换模块1630,来与存储库服务器1620的A/A模块1636一起验证以获得适合的密钥,来加密和解密媒体存储器1620中的信息。远程核心引擎1622执行加密和解密功能。
结合图16和17的密码系统执行若干操作,包括:(i)添加用户到密码系统;(ii)为用户提供登录界面以便让密码系统对他或她自己进行身份验证;(iii)加密新文件;(iv)维护,即访问或修改与密钥相关联的ACL;(v)阻止对已经被损害的密钥的访问;重新分配密码密钥的所有权;以及(vi)为结合软件应用使用访问和解密现有信息。
添加新用户的过程可选地包括为用户产生交换和签名密钥对。在一个实施例中,将密钥对写到智能卡。交换密钥用于在存储库服务器1620与远程计算机系统1610之间传输会话密钥。签名密钥用于通过A/A模块1636对用户进行身份验证。
在一个实施例中,与新产生的用户密钥对相关联的公开密钥存储在用户数据库1626中。可选地,其它信息,诸如用户的姓名和联系信息可以存储在用户数据库1626中。此外,用户拥有包含密钥对的智能卡,因此用户可以结合加密的信息的使用,执行身份验证和密钥交换操作。
结合智能卡,用户通过向存储库服务器1620的A/A模块1636进行身份验证登录到密码系统中。首先,用户将他或她的智能卡放在智能卡阅读器1632中,并且远程核心引擎1642从智能卡阅读密钥。智能卡最好是受保护的口令。
一旦远程核心引擎1642有权访问签名密钥对的私有密钥,则它通过A/A模块1636向存储库服务器1620对它自己进行身份验证。在一个实施例中,A/A模块1636和远程计算机系统1610结合用户的签名密钥对执行询问应答协议。在这个实施例中,A/A模块通过使用存储在用户数据库1626中的公开密钥来验证由远程计算机系统1610所作的签名,该公开密钥是在与创建用户帐户时与用户的私有密钥同时产生的。接着,远程计算机系统可选地结合询问应答协议接收会话级访问权标,例如一个大随机数。在一个可替换的实施例中,用户使用其用户标识符和例如口令进行身份验证。在一个实施例中,基于与分配给用户和代理的角色相关联的权限,赋予用户和代理权限。此外,如果用户或代理具有足够的权限,则检查相应于特定密钥的ACL,以确定用户或代理是否具有足够的权限使该密钥用于加密或解密数据。
图18A是示意框图,例示按照本发明的部门际的数据保护。在这个实施例中,结合Kansas,Lenexa的ERUCES有限公司的TRICRYPTION商标表示密码引擎。该环境大致包括数据存储器1802,计算机系统1804和1808和存储库服务器1806。数据存储器1802包含,例如,由计算机系统1804、1808操纵的加密的文件。远程计算机系统1804、1808以与结合图15所说明的相似方式读写数据存储器1802中的加密的数据。然而,在这个实施例中,在操纵信息的同一计算机系统即系统1804、1808上执行加密和解密。为实现这一点,远程计算机系统1804使用其远程密钥交换模块,从如结合图16和17所说明的存储库服务器1806获得密钥。明确地说,远程计算机系统1804、1808使用从存储库服务器1806获得的会话密钥操纵在数据存储器1802中的加密数据。
图18B是示意框图,例示按照本发明的部门际数据保护。在这个实施例中,包含在数据存储器1802中的信息由在分别的部门或企业中的远程计算机系统1804、1808访问。因此,与远程计算机系统1804和1808的特定用户相关联的用户身份验证和授权信息驻留在用户部门的相应存储库服务器1806或1807中。
对于远程计算机系统1804的用户访问该远程计算机系统1808的用户为其密钥所有者的信息是有用的。如果用户需要访问由包含在位于另一个部门的存储库服务器中的密钥所保护的信息,则使用部门际密钥交换。为完成部门际密钥交换,存储库服务器1806和存储库服务器1807使用结合图16和17所述的机制交换密钥。一旦用户的部门存储库服务器已经从对等部门的存储库服务器收到合适的会话密钥,则本地存储库服务器可以或者将密钥提供给诸如计算机系统1804的无存储的密码引擎,或者在有存储的存储库服务器的核心引擎中直接为代理执行加密和解密。
图18C是示意框图,例示结合基于密钥存储库的企业内部网或外部网的数据保护。在这个实施例中,存储库服务器1806与远程计算机1804和1808被公共网络1810和可选的防火墙1812分开。因为存储库服务器1806与远程计算机系统1804和1808之间密钥交换的安全性质,通过公共网络交换密钥是安全的,并且这些密钥可以用于操纵数据存储器1802中加密的数据。
图18D是示意框图,例示移动数据保护。在这个实施例中,移动计算机1816通过远程接入点1814连接。移动计算机1816,诸如个人数字助理,包含无存储的密码引擎版本,能够与存储库服务器1806执行密钥交换。由于用于数据存储器1802中存储信息的强密码,移动计算机系统1816可以安全地通过公共网络1810经可选的防火墙1812从数据存储器1802检索加密的数据,并且移动计算机可以安全地使用上述密钥交换方法从存储库服务器1806接收会话密钥。
图18E是示意框图,例示在多个企业环境中的数据保护。在这个实施例中,信息可以安全地通过公共网络1810在企业之间共享。数据存储器1802包含加密的信息,可以通过应用服务器1820提供给内部用户,并通过其应用服务器,例如应用服务器1830提供给对等企业的用户。通过公共网络1810经可选的防火墙1812在企业之间的信息的安全和颗粒状共享是有可能的,这是由于在驻留在不同企业中的存储库服务器1806和1816之间的安全密钥交换。通过来自诸如加利福尼亚,Mountain View的VeriSign有限公司的证书机构1832签署的证书,在存储库服务器1806和1816之间可选地建立信任。
图19是示意框图,例示相应于密钥管理、访问控制和用户数据库的表的实施例。保护密钥信息表1902具有保护密钥标识符的主关键字(protectionkeyid)。保护密钥信息表1902包含“created”列(时间标记),“keyblob”(该保护密钥的加密的二进制表示),和签名(例如是HMAC数据鉴别码)。在一个实施例中,“keyblob”字段是由主密钥加密的,主密钥仍然由M中的K加密方案静止地保护。还提供会话密钥信息表1904。会话密钥信息表具有称为“SEKID”的主密钥,它相应于未加密的SEKID。因此,一旦核心引擎解密来自隐藏的链接的SEKID,则它可以识别并解密来自会话密钥信息表1904的“keyblob”。会话密钥“keyblob”最好是用与SEKID相同的保护密钥加密。在会话密钥信息表1904和图19例示的其它表中,“created”和“signature”字段与结合保护密钥信息表1902所述的“created”和“signature”字段相似。
负责人信息表1906具有“principal”的主数据库关键字,相应于按照本发明的密码系统的用户、代理或服务器的名称。“roles”字段相应于分配给特定负责人的角色。“flags”字段相应于与负责人相关联的状态指示器,例如,禁止的负责人或者非禁止的负责人。“subclassname”字段用于表示,例如负责人是否使用用户名称/口令身份验证或者X.509身份验证。
用户和口令信息表1908和X.509负责人信息表1910与负责人信息表1906相关。用户和口令信息表1908包含相应用户的用户标识符和口令信息。在一个实施例中,“password”字段包含由用户初始设置的口令的加密的SHA-1散列。在这个实施例中,“password”散列是用主密钥加密的,主密钥是由M中的K加密方案保护的。X.509负责人信息表1910包含相应于负责人的证书,例如与当前描述的核心引擎交换密钥的远程密码系统的证书。ACL信息表1912具有ACL标识符的主数据库关键字,用于将该表与ACL条目表1914相关联。ACL信息表为每个密钥包含一条记录,包括密钥的隐藏的链接,ACL的创建时间和密钥的期满标志。ACL条目表1914具有包括ACL标识符负责人标识符和系统标识符的主关键字,相应于唯一地识别产生该密钥的特定核心引擎的核心引擎标识符。
角色表1916具有角色标识符(roleid),角色名称,列表操作标识符和角色类型,它们识别和定义与特定角色相关联的权限。操作表1918包含操作标识符和操作名称,它们用于将操作的名称与授权用户结合特定的核心引擎执行的实际操作相关联。
审计日志表1920和事务日志表1922用于收集定义发生在核心引擎中的事件的记录。审计日志表1920,例如包含有关执行特定操作的负责人的信息。事务日志表1922包含有关例如由核心引擎执行的加密和解密的信息。
图20是示意框图,例示加密文件的过程。首先由用户在密码服务器作出对密钥的请求(步骤140)。接着,存储库核心引擎可选地创建并发送会话密钥到密钥交换模块(步骤142)。接着,存储库引擎接收用户的交换公开密钥(步骤144)。交换公开密钥是与用于在各密钥交换模块之间交换会话密钥的交换密钥对相关联的公开密钥。接着,密钥存储库用交换公开密钥加密会话(步骤146)。接着,密钥交换模块通知A/A模块,用户创建了新的会话密钥(步骤148)。可以创建一个新的会话密钥,例如,当应用选择通过保存新的数据对象或者保存现有数据对象而不提供相应的隐藏的链接的来使得产生新的密钥。接着,A/A模块将关于密钥所有权的信息添加到ACL数据库(步骤150)。在一个实施例中,密钥的所有者具有对由该密钥保护的信息的全部访问权限。此外,在这个实施例中,所有者可以向其它用户授予对由该密钥所保护的信息的权限。接着,服务器密钥交换模块1530发送会话密钥和隐藏的链接给远程计算机系统,以用户的交换公开密钥加密(步骤152)。接着,用户使用与交换密钥对相关联的私有密钥解密会话密钥(步骤154)。接着,远程核心引擎1540加密用户数据并且用户应用将隐藏的链接嵌入到与用户数据相关联的数据结构,诸如文件结构中(步骤156)。
图21是示意框图,例示维护密钥的访问控制列表(ACL)的过程。首先,用户向密钥存储库请求现有密钥的ACL,并且A/A模块接收ACL请求(步骤160)。接着,A/A模块查询该用户和ACL数据库,以确定该用户是否具有足够的权限观看与特定密钥相关联的ACL(步骤162)。在一个实施例中,从用户数据库获得有关具有与该密钥相关联的权限的其它用户的信息。接着,从用户数据库和ACL数据库获得用户信息,并且将ACL发送给用户(步骤164)。接着,由客户机可选地修改ACL,例如,增加或者删除对于特定用户的特定的密钥(步骤166)。接着,A/A模块例如通过参照原始ACL验证该用户具有足够的权限,以修改ACL(步骤168)。最后,密钥存储库对ACL数据库内的ACL作出适当的改变(步骤170)。
图22是示意框图,例示访问加密的文件的过程。首先,文件服务器通过远程计算机系统给用户提供加密的信息(步骤180)。接着,存储库服务器验证该用户具有访问该密钥的权限以解密由文件服务器提供的信息(步骤182)。接着,将该密钥发送给密钥交换管理器(步骤184)。存储库服务器随后从用户数据库检索用户的交换公开密钥(步骤186)。接着,存储库密钥交换管理器重新输出会话密钥(步骤188)。接着,存储库密钥交换模块发送加密的会话密钥给用户,以用户的交换公开密钥加密(步骤190)。接着,用户使用用户的交换私有密钥解密会话密钥(步骤192)。此外,远程计算机系统解密用户数据(步骤194)。
图23是示意框图,例示响应于密钥变成被损害的,阻止与该密钥相关联的访问的过程。首先,存储库服务器接收与远程计算机系统或智能卡的损害有关的信息(步骤196)。接着,存储库操作员接收来自经授权的用户代表的连接(步骤198)。此外,如果成功地对经授权的代表进行了身份验证,则例如通过从与受损害的密钥相关联的ACL中移除所有用户禁止这些密钥,(步骤200)。
在一个实施例中,按照本发明结合密码系统执行可信软件组件。结合密码系统使用可信组件的目的包括验证软件的身份和可靠性的能力。软件的验证是重要的,因为将欺诈软件引入到运行中的密码系统可以使密码系统失效。
确定软件可靠性的一种方法是验证其身份。通常,身份可以基于某物固有的特性来建立,基于已知一个秘密来建立,或者基于拥有某物例如证书或秘密来建立。然而,已知或者拥有一个秘密诸如嵌入的密钥已经证明是有问题的。例如,持久的计算机用户已经能够查找并提取软件内隐藏的密钥。因此,基于软件的固定特性建立身份是较佳的。但仅具有包含源代码的文件的名称是不足以建立身份的。唯一地识别文件的“指纹(fingerprint)”是较佳的。可以在运行时间在执行软件之前验证指纹,以验证软件的身份。
图24是例示一个系统的示意框图,在该系统中,对可信组件进行身份验证。提供应用服务器2410和注册服务器2430。可以理解,应用服务器2410和注册服务器2430可以作为分别的线程或进程在单个计算机系统上实现。可替换地,应用服务器2410和注册服务器2430在分开的计算机系统上实现。密码服务器2420结合应用服务器2410的注册服务器2430使用,以提供结合可信组件的验证的密码功能。
应用服务器2410可选地包括智能卡阅读器2412,它从智能卡读取密钥信息。权标分配器2414结合可信组件的验证提供密码权标。密码代理2418提供应用服务器2410所需的密码功能,以安全地与密码服务器2420通信并且对商业应用2416进行身份验证。注册服务器2430包括智能卡阅读器2412和可信组件管理器2434,后者用于收集和处理有关可信组件的信息。
密码服务器2420包括注册数据库2426和可选的智能卡阅读器2412。此外,密码服务器2420包括核心引擎2422,核心引擎2422还包括包含密码密钥的密钥数据库2424。可信组件身份验证系统结合图24-27进一步描述。
图25是示意框图,例示创建智能卡的过程。在一个实施例中,在安装或者配置密码服务器2420期间产生两个秘密密码密钥。首先,产生一个可操作的密钥(步骤202)。在一个实施例中,可操作的密钥用于保护密码代理与密码服务器之间的通信。在一个实施例中,将可操作的密钥从智能卡读到包含密码代理的分别的机器和密码服务器中。在这个实施例中,相应于密码代理的“指纹”也包含在智能卡中。使用所存储的密码代理的“指纹”,密码服务器可以验证密码代理的可靠性。接着,产生注册密钥(步骤203)。注册密钥由系统管理员在注册过程中用于注册可信组件。接着,将可操作的密钥放在可操作的智能卡中(步骤204),并且可选地由如可信的实体签署可操作的密钥,(步骤206)。在一个实施例中,用与密码服务器2420相关联的签署密钥来签署可操作的密钥。接着,将注册密钥放在注册智能卡中(步骤208)。此外,由可信签名人签署该注册密钥(步骤210)。
图26是示意框图,例示注册组件的过程。首先,可信组件管理器2434接收以与软件组件相关联的电子计算机代码形式的软件,诸如商业应用1542(步骤212)。接着,可信组件管理器2434例如通过执行操作系统调用确定组件的名称,以确定与该组件相关联的文件名(步骤214)。接着,可信组件管理器2434例如通过对该组件应用如MD5或SHA-1的散列函数计算可信组件的“指纹”,(步骤216)。接着,可信组件管理器2434从注册智能卡读取注册密钥(步骤218)。因此,没有对注册智能卡的访问权限的用户不能注册组件。接着,使用注册密钥,可信组件管理器2434使用注册密钥与密码服务器执行询问应答协议(步骤220),并且安全地发送组件的信息给密码服务器(步骤222)。而且,密码服务器签署新注册组件的注册信息,包括,例如“指纹”(步骤224),并且将注册信息存储在数据库中。
在重启应用服务器2410后,权标分配器2414通过智能卡阅读器2412从可操作的智能卡接收信息。在一个实施例中,在插入智能卡后,用户必须提供口令。
图27是示意框图,例示执行组件的运行时间身份验证的过程。首先,商业应用2416向密码代理2418提交请求,以作为可信组件运行。密码代理2418接收该请求(步骤226)。接着,密码代理确定应用的名称并计算它的数字“指纹”(步骤228)。接着,密码代理2418发送一个询问请求给与该应用有关的密码服务器2420(步骤230)。接着,密码服务器2120产生一个随机询问,并且基于可操作的密钥和该应用的“指纹”计算正确的应答(步骤232)。接着,密码服务器2420向密码代理2418提供该询问(步骤234),并且该代理使用应用的指纹,通过例如,将指纹与该询问组合起来执行应答计算的第一部分(步骤236)。接着,该代理命令权标分配器2414完成该询问的计算(步骤238)。接着,权标分配器,例如通过将所存储的指纹与在存储器正在执行的可运行的代理的实际指纹相比较来验证代理的完整性,并且权标分配,例如通过使用可操作的密钥作为HMAC计算中的密钥计算该询问和指纹的组合的HMAC来完成应答计算,(步骤240)。此外,密码服务器2420通过用可操作的密钥验证HMAC和将所计算的指纹与所存储的指纹相比较来验证对该询问的应答(步骤242),并且确认该应用为可信组件。
本发明具有重要的好处和优点。因为密码密钥不存储在软件组件中,不能使用已知技术来提取密钥并且使密码系统失效。受保护的数据项包含相关联的隐藏的链接,后者在密钥存储器中提供相关联的密码密钥的身份。此外,代替对于所有受保护的信息具有少量密钥,使用不同的密钥来保护离散的信息段,例如为文件服务器上每个受保护的文件或者为数据库中每条受保护的记录使用不同的密钥。在一个实施例中,密钥存储器位于集中式密钥存储库中,因而得到简化的备份和灾难恢复过程的优点。此外,密钥本身在密钥存储库中被加密并且这些密钥不能由它们相应的所保护数据项来识别。因此,在不知道受保护数据对象内的隐藏的链接的情况下,即使拥有密钥存储库也不会让侵入者实现对实际数据的访问。
本发明的其它好处和优点包括密码系统和方法的分布式性质,其中,尽管密钥集中在一个或多个密钥存储库中,但在接近于受保护数据的实际产生者与消费者的远程计算机系统上执行密码计算。因此,远程计算机系统的计算能力被充分利用,并且在集中地执行密码计算的系统上达到了计算的有效性。
在加密、存储、检索和解密数据的方法中利用了上述计算机系统和数据库结构。当客户机用户请求一个数据操作(包括添加、更新和观看请求)时,计算机系统将实现适当的步骤。对于每个事务,假定客户机用户已经使用诸如智能卡、双因素身份验证设备或者用户姓名和口令等可信的身份验证方法,获得了对商业域的访问权限。
术语表
非对称密钥密码学:使用不同的密钥进行加密和解密信息的密码学。例如,在公开密钥密码学中,使用公开密钥加密信息,但不能使用公开密钥解密信息。只有与公开密钥相关联的私有密钥可以解密经加密的信息。
属性/字段:保存在对象中的一类数据。
商业逻辑组件(BLC):可由客户机访问的计算机系统中的组件,用于建立和改变控制系统的操作的商业规则,并控制什么数据要加密和什么数据不要加密。
证书管理器(CM):控制与操作有关的系统密钥PKI,并且与负责发布和验证系统密钥的数字证书的私有证书机构通信。
密文:加密的数据。
类:按照面向对象编程,对象的类别。
数据库适配器(DBAD):软件组件,它允许安全域组件在各种类型的数据库和多个数据库上保存和检索数据。
数据加密标准(DES):由美国政府使用56位密钥建立的对称密钥算法。
解密:将数据从密文改变为明文。
数字证书:一种用于保证公开密钥的可靠性的数据结构。典型的数字证书包括证书持有者信息、公开密钥、证书发布者的标识和证书的序列号的经签署的集合。
加密:将数据转换成秘密代码。
加密码密钥管理器(EKM):计算机系统的软件组件,它管理会话加密码密钥,包括产生、替换和其它任务。
故障容错:一种在发生非预期的硬件或软件故障的情况下继续运行的系统能力。
通用安全管理器(GSM):一种软件组件,作为安全域的守门器运行,并执行散列、加密和解密功能。
硬件随机数产生器(HRNG):用于为SEKID产生随机数的设备。
散列:从一个文本串产生一个数字,它实质上比文本本身小。结合“单向”散列函数,不能有效地使用散列值来确定用于产生散列值的文本。散列值或完整性值用于搜索查询以识别合适的数据对象,并用于安全完整性检验。
互联网协议(IP):对于通过因特网的信息传输规定信息格式和寻址方案。
互联网协议安全(IPSEC):一组支持在因特网协议层信息安全交换的协议。
IP欺骗:试图产生一个消息,好象它来自授权的因特网协议地址。
密钥:解码经加密的数据所需的口令或表。
密钥审计管理器(KAM):维护有关所有EKM和SKM操作的活动审计日志,这些操作基于策略和规则具有发送警报和通知给接收者的能力。
密钥生存期管理器(KLM):监控SEK的期满并且撤消期满的SEK或者可替换地在下一次请求或调用中撤消的SEK标志。
存储器(RAM):随机存取存储器。
消息摘要5(MD5):一种单向散列功能,它取一消息并将它转换成特定大小的散列值或消息摘要。它称为单向散列函数是因为它几乎不可能逆转这个过程,即将散列值转换成原始消息。
对象:由数据和用于操纵该数据的过程或者方法两者组成的自包含实体。
面向对象:指一种特殊类型的编程,将数据结构与函数或方法结合起来以创建可重用和可扩展的称为对象的程序元素。
明文:未加密的数据。
公开密钥基础结构(PKI):硬件和软件系统的集合,以促进公开密钥密码学的可靠使用,包括证明数字证书的证书机构,以及使用公开密钥密码学验证和身份验证涉及签署或接收加密的消息的部门的有效性和身份的其它注册机构。
安全散列算法(SHA-1):另一种单向散列函数。
安全密钥数据库(KEYDB):一种在安全域内的数据库,其中保存SEK和SEKID。
安全套接字协议层(SSL):为通过公共因特网安全地传输信息而开发的协议。
会话加密码密钥(SEK):用于在会话过程中加密和解密数据的密钥,会话过程是访问数据的时段。
会话加密码密钥标识符(SEKID):对SEK随机产生的标识数。
智能卡:一种小电子设备,大约信用卡大小,它包含电子存储器。它可包括集成电路。
对称密钥加密:一种加密系统,其中使用同一密钥加密和解密数据。
系统密钥对:一种对称密钥对,用于加密和解密SEKID。
系统密钥通用名(SKCN):系统密钥数字证书序列号和从属的通用名。
系统密钥管理器(SKM):管理系统密钥,包括产生、验证和其它任务。
虚拟专用网络(VPN):通过公共网络的虚拟连接,用于使用密码技术进行专用的信息交换。
X_509:广泛使用的标准,用于定义数字证书。

Claims (21)

1.一种计算机系统,包含密码密钥和密码密钥标识符,其特征在于,所述计算机系统包括:
一存储库密码引擎,用于与一远程密码引擎安全地通信,所述存储库密码引擎与一用户数据存储器相关联,所述用户数据存储器具有至少一个隐藏的链接,所述隐藏的链接包括用至少一个保护密钥加密的会话密钥标识符,所述隐藏的链接与至少一个远程数据实体相关联;
至少一个用至少一个会话密钥保护密钥加密的会话密钥,所述会话密钥结合对远程数据实体的密码操作使用;以及
一存储库密钥交换模块,用于与远程密钥交换模块交换会话密钥。
2.如权利要求1所述的计算机系统,其特征在于,所述会话密钥标识符用于标识相应于远程数据实体的会话密钥。
3.如权利要求1所述的计算机系统,其特征在于,还包括:
一与至少一个访问控制列表相耦合的授权模块,其中,基于所述访问控制列表提供对基于会话密钥的操作的访问。
4.如权利要求3所述的计算机系统,其特征在于,所述授权模块还与一用户数据存储器相耦合,并且其中,还基于所述用户数据存储器提供对会话密钥的访问。
5.如权利要求1所述的计算机系统,其特征在于,所述保护密钥是对称密码密钥。
6.如权利要求1所述的计算机系统,其特征在于,所述会话密钥保护密钥是对称密码密钥。
7.如权利要求1所述的计算机系统,其特征在于,所述会话密钥保护密钥和所述保护密钥是等价的。
8.如权利要求6所述的计算机系统,其特征在于,结合三重数据加密标准使用对称密码密钥。
9.如权利要求6所述的计算机系统,其特征在于,结合高级加密标准使用所述对称的密码密钥。
10.如权利要求1所述的计算机系统,其特征在于,所述隐藏的链接与所述远程数据实体相关联。
11.如权利要求10所述的计算机系统,其特征在于,所述远程数据实体是一文件,并且所述隐藏的链接被嵌入在所述文件的首部中。
12.一种分布式网络,包括一包含密码密钥的存储库服务器,其特征在于,所述分布式网络包括:
一存储库密码引擎,用于与一远程密码引擎安全地通信;
一远程密码代理,用于与远程密码引擎安全地通信;以及
一与所述远程密码代理相耦合的商业应用,其中,所述商业应用的可靠性由所述远程密码引擎通过将存储的所述商业应用的指纹与所述远程密码代理的计算出的指纹相比较来验证。
13.如权利要求12所述的分布式网络,其特征在于,所述远程密码代理与所述远程密码引擎驻留在分开的计算机系统中。
14.如权利要求12所述的分布式网络,其特征在于,使用一共享的操作密钥来保护在所述远程密码代理与所述远程密码引擎之间的安全通信。
15.如权利要求14所述的分布式网络,其特征在于,所述共享的操作密钥由所述远程密码代理和所述远程密码引擎从一智能卡接收。
16.一计算机可读数据传输媒体,它包含用于促进安全交换和加密数据的使用的数据结构,其特征在于,所述数据结构包括:
至少一个由至少一个加密码密钥加密的数据实体;
至少一个密钥关联,它将所述数据实体与所述加密码密钥相关联;以及
指令,用于从一应用软件组件接收命令以产生一新的加密码密钥,以加密的形式存储所述数据实体,并且将所述数据实体的未加密形式传送给所述应用软件组件,所述命令通过一可信密码代理来代理。
17.一密码方法,用于促进信息的安全存储,其特征在于,所述方法包括:
从在一远程计算机系统上的请求密钥交换模块接收对一会话密钥的密钥请求,所述密钥请求包括一隐藏的链接;
基于所述隐藏的链接使用一保护密钥访问并解密所述会话密钥;
接收一相应于所述请求密钥交换模块的交换公开密钥;
以所述交换公开密钥加密所述会话密钥,产生一加密的会话密钥;
将所述加密的会话密钥传输给所述请求密钥交换模块;
在一与请求者相关联的计算机系统上,用一相应于所述交换公开密钥的交换私有密钥解密所述加密的会话密钥;
用所述会话密钥加密一数据实体,并且将所述隐藏的链接连接到所述数据实体;以及
存储所述数据实体。
18.一密码方法,用于促进信息的安全检索,其特征在于,所述方法包括:
提供至少一加密的数据实体给一请求者;
接收相应于所述请求者的访问控制信息;
确定所述请求者是否具有足够的访问权限来解密所述加密的数据实体;
将一会话密钥传输给一密钥交换模块,所述会话密钥相应于所述加密的数据实体;
从一用户数据库接收一交换公开密钥;
以所述交换公开密钥加密所述会话密钥,产生一加密的会话密钥;
将所述加密的会话密钥传输给所述请求者;
在一与所述请求者相关联的计算机系统上使用一相应于所述交换公开密钥的交换私有密钥解密所述加密的会话密钥;以及
用所述会话密钥解密所述加密的数据实体。
19.一密码方法,用于使用可信组件促进信息的安全处理,其特征在于,所述方法包括:
接收与一软件组件相关联的电子代码;
接收一与所述软件组件相关联的组件标识符;
计算一与所述电子代码相关的指纹;
从一注册密钥源读出一注册密钥;
使用所述注册密钥执行一注册询问应答协议,由此证明注册所述软件组件的权限;
连同所述软件组件的组件标识符,存储注册信息和所述指纹;
从在一密码代理处的所述软件组件接收请求,以执行一授权的密码操作;以及
发送一对询问的请求给有关所述软件组件的密码服务器;
提供一询问给代理;
接收对所述询问的应答;
验证对所述询问的所述应答,包括计算所述指纹并且验证一操作密钥。
20.如权利要求19所述的方法,其特征在于,所述注册密钥源是注册智能卡。
21.一密码系统,用于促进信息的安全处理,其特征在于,所述系统包括:
用于提供至少一个加密的数据实体给一请求者的装置;
用于接收相应于所述请求者的访问控制信息的装置;
用于确定所述请求者是否具有足够访问权限以访问所述加密的数据实体的装置;
用于将一会话密钥发送给一密钥交换模块的装置,所述会话密钥相应于所述加密的数据实体;
用于从一用户数据库接收一交换公开密钥的装置;
用于以所述交换公开密钥加密所述会话密钥,产生一加密的会话密钥的装置;
用于将所述加密的会话密钥发送给所述请求者的装置;
在一与所述请求者相关联的计算机系统上,使用一相应于所述交换公开密钥的交换私有密钥解密所述加密的会话密钥的装置;以及
用于用所述会话密钥解密所述加密的数据实体的装置。
CNA03816860XA 2002-05-15 2003-05-15 在计算机系统中使用的隐藏的链接动态密钥管理器 Pending CN1669265A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/146,782 US20030021417A1 (en) 2000-10-20 2002-05-15 Hidden link dynamic key manager for use in computer systems with database structure for storage of encrypted data and method for storage and retrieval of encrypted data
US10/146,782 2002-05-15

Publications (1)

Publication Number Publication Date
CN1669265A true CN1669265A (zh) 2005-09-14

Family

ID=29548293

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA03816860XA Pending CN1669265A (zh) 2002-05-15 2003-05-15 在计算机系统中使用的隐藏的链接动态密钥管理器

Country Status (5)

Country Link
US (2) US20030021417A1 (zh)
EP (1) EP1510030A4 (zh)
CN (1) CN1669265A (zh)
AU (1) AU2003233549A1 (zh)
WO (1) WO2003098864A1 (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101686123B (zh) * 2008-09-24 2012-01-25 中国移动通信集团公司 密钥管理方法和系统、密钥生成及认证方法和装置
CN101141461B (zh) * 2006-09-07 2013-02-27 国际商业机器公司 用于使用密钥服务器进行密钥生成和取回的方法和系统
CN103051446A (zh) * 2012-12-26 2013-04-17 公安部第一研究所 一种密钥加密存储方法
CN103095731A (zh) * 2013-02-22 2013-05-08 浪潮电子信息产业股份有限公司 一种基于签名机制的rest安全系统
CN103152321A (zh) * 2011-12-06 2013-06-12 索尼公司 流媒体内容和服务的数字权利管理
CN110199263A (zh) * 2017-01-19 2019-09-03 电子湾有限公司 基于密码的欺诈跟踪
CN110334503A (zh) * 2014-09-02 2019-10-15 苹果公司 利用一个设备解锁另一个设备的方法
CN110808829A (zh) * 2019-09-27 2020-02-18 国电南瑞科技股份有限公司 一种基于密钥分配中心的ssh认证方法
CN113557689A (zh) * 2020-01-09 2021-10-26 西部数据技术公司 用管理器设备初始化数据存储设备
CN114338010A (zh) * 2021-12-31 2022-04-12 深圳昂楷科技有限公司 一种不落盘的数据库局内加密密钥加密方法、装置及电子设备

Families Citing this family (153)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003510694A (ja) 1999-09-20 2003-03-18 クインタイルズ トランスナショナル コーポレイション 匿名化された健康管理情報を分析するためのシステム及び方法
US20040218762A1 (en) * 2003-04-29 2004-11-04 Eric Le Saint Universal secure messaging for cryptographic modules
DE10143754A1 (de) * 2001-09-06 2003-04-03 Siemens Ag Skalierbares Peer-to-Peer-Netzwerk mit einem Verzeichnisdienst
US20040086121A1 (en) * 2002-10-31 2004-05-06 Sensis Corporation Secure automatic dependant surveillance
US20040109567A1 (en) * 2002-12-05 2004-06-10 Canon Kabushiki Kaisha Encryption key generation in embedded devices
US20040158635A1 (en) * 2003-01-23 2004-08-12 Digi International Inc.. Secure terminal transmission system and method
US7210034B2 (en) * 2003-01-30 2007-04-24 Intel Corporation Distributed control of integrity measurement using a trusted fixed token
US7519591B2 (en) * 2003-03-12 2009-04-14 Siemens Medical Solutions Usa, Inc. Systems and methods for encryption-based de-identification of protected health information
US8245032B2 (en) * 2003-03-27 2012-08-14 Avaya Inc. Method to authenticate packet payloads
JP2004318552A (ja) * 2003-04-17 2004-11-11 Kddi Corp Idsログ分析支援装置、idsログ分析支援方法及びidsログ分析支援プログラム
US7676681B2 (en) 2003-06-17 2010-03-09 Veratad Technologies, Llc Method, system, and apparatus for identification number authentication
US20040268124A1 (en) * 2003-06-27 2004-12-30 Nokia Corporation, Espoo, Finland Systems and methods for creating and maintaining a centralized key store
CA2438357A1 (en) * 2003-08-26 2005-02-26 Ibm Canada Limited - Ibm Canada Limitee System and method for secure remote access
JP2005079912A (ja) * 2003-08-29 2005-03-24 Matsushita Electric Ind Co Ltd セキュアデータ管理装置
US7681046B1 (en) 2003-09-26 2010-03-16 Andrew Morgan System with secure cryptographic capabilities using a hardware specific digital secret
US7694151B1 (en) 2003-11-20 2010-04-06 Johnson Richard C Architecture, system, and method for operating on encrypted and/or hidden information
JP4313171B2 (ja) * 2003-12-09 2009-08-12 株式会社日立製作所 認証制御装置および認証制御方法
US20050172143A1 (en) * 2004-01-30 2005-08-04 Fearnley Daniel P. Method and apparatus for secure data storage
KR100585135B1 (ko) * 2004-02-28 2006-06-01 삼성전자주식회사 불법 복제 방지 기능을 갖는 aes 엔진 장치 및 이의암호화/복호화 방법
AU2004201058B1 (en) * 2004-03-15 2004-09-09 Lockstep Consulting Pty Ltd Means and method of issuing Anonymous Public Key Certificates for indexing electronic record systems
MXPA06010646A (es) * 2004-03-18 2007-01-17 Qualcomm Inc Transmision eficiente de informacion codificada en protocolo de tiempo real seguro.
AU2005241560A1 (en) * 2004-05-05 2005-11-17 Ims Software Services, Ltd. Data encryption applications for multi-source longitudinal patient-level data integration
US8275850B2 (en) * 2004-05-05 2012-09-25 Ims Software Services Ltd. Multi-source longitudinal patient-level data encryption process
AU2011218632B2 (en) * 2004-05-05 2015-01-22 Ims Software Services, Ltd Multi-source longitudinal patient-level data encryption process
US20050254653A1 (en) * 2004-05-14 2005-11-17 Proxim Corporation Pre-authentication of mobile clients by sharing a master key among secured authenticators
US20060030292A1 (en) * 2004-05-20 2006-02-09 Bea Systems, Inc. Client programming for mobile client
GB2415064B (en) * 2004-06-10 2008-01-09 Symbian Software Ltd Computing device with a process-based keystore and method for operating a computing device
US7681042B2 (en) * 2004-06-17 2010-03-16 Eruces, Inc. System and method for dis-identifying sensitive information and associated records
EP1643709B1 (en) * 2004-10-04 2007-04-18 Sap Ag Data processing system and method
US7496762B1 (en) * 2004-10-07 2009-02-24 Sprint Communications Company L.P. Security architecture for modified segregated environment for federal telecom services
JP4326443B2 (ja) * 2004-10-08 2009-09-09 フェリカネットワークス株式会社 情報処理装置および情報処理方法、並びにプログラム
JP4516399B2 (ja) * 2004-10-08 2010-08-04 フェリカネットワークス株式会社 情報処理装置および方法、並びにプログラム
US7899189B2 (en) * 2004-12-09 2011-03-01 International Business Machines Corporation Apparatus, system, and method for transparent end-to-end security of storage data in a client-server environment
US20060126520A1 (en) * 2004-12-15 2006-06-15 Cisco Technology, Inc. Tape acceleration
US8086853B2 (en) * 2005-03-18 2011-12-27 Microsoft Corporation Automatic centralized authentication challenge response generation
US7890634B2 (en) * 2005-03-18 2011-02-15 Microsoft Corporation Scalable session management
JP4709583B2 (ja) * 2005-05-31 2011-06-22 株式会社東芝 データ送信装置およびデータ送信方法
EP1911191B1 (en) 2005-08-05 2017-12-06 Hewlett-Packard Enterprise Development LP System, method and apparatus for cryptography key management for mobile devices
WO2007017884A1 (en) * 2005-08-05 2007-02-15 Hewlett-Packard Development Company L.P. System, method and apparatus to obtain a key for encryption/decryption/data recovery from an enterprise cryptography key management system
US8069270B1 (en) 2005-09-06 2011-11-29 Cisco Technology, Inc. Accelerated tape backup restoration
US20080046285A1 (en) * 2006-08-18 2008-02-21 Greischar Patrick J Method and system for real-time emergency resource management
US8428961B2 (en) * 2005-09-14 2013-04-23 Emsystem, Llc Method and system for data aggregation for real-time emergency resource management
US20070174093A1 (en) * 2005-09-14 2007-07-26 Dave Colwell Method and system for secure and protected electronic patient tracking
US7450946B2 (en) * 2005-10-03 2008-11-11 Kabushiki Kaisha Toshiba System and method for automatic wireless detection and identification of document processing service location
US7606769B2 (en) * 2005-10-12 2009-10-20 Kabushiki Kaisha Toshiba System and method for embedding user authentication information in encrypted data
US20070100830A1 (en) * 2005-10-20 2007-05-03 Ganesha Beedubail Method and apparatus for access control list (ACL) binding in a data processing system
US8266431B2 (en) * 2005-10-31 2012-09-11 Cisco Technology, Inc. Method and apparatus for performing encryption of data at rest at a port of a network device
US7527192B1 (en) * 2005-12-15 2009-05-05 At&T Corp. Network based method of providing access to information
JP2007249805A (ja) * 2006-03-17 2007-09-27 Internatl Business Mach Corp <Ibm> 電子認証方法及び電子認証システム
US7730307B2 (en) * 2006-04-07 2010-06-01 Sensis Corporation Secure ADS-B authentication system and method
CN101479984B (zh) * 2006-04-25 2011-06-08 斯蒂芬·L.·博伦 用于身份管理、验证服务器、数据安全和防止中间人攻击的动态分发密钥系统和方法
US8667273B1 (en) 2006-05-30 2014-03-04 Leif Olov Billstrom Intelligent file encryption and secure backup system
US8099605B1 (en) 2006-06-05 2012-01-17 InventSec AB Intelligent storage device for backup system
US8176319B2 (en) 2006-06-27 2012-05-08 Emc Corporation Identifying and enforcing strict file confidentiality in the presence of system and storage administrators in a NAS system
US7904732B2 (en) * 2006-09-27 2011-03-08 Rocket Software, Inc. Encrypting and decrypting database records
US8245050B1 (en) 2006-09-29 2012-08-14 Netapp, Inc. System and method for initial key establishment using a split knowledge protocol
US8495292B2 (en) 2006-12-06 2013-07-23 Fusion-Io, Inc. Apparatus, system, and method for an in-server storage area network
US9355273B2 (en) 2006-12-18 2016-05-31 Bank Of America, N.A., As Collateral Agent System and method for the protection and de-identification of health care data
US20080219449A1 (en) * 2007-03-09 2008-09-11 Ball Matthew V Cryptographic key management for stored data
US20080263645A1 (en) * 2007-04-23 2008-10-23 Telus Communications Company Privacy identifier remediation
US8611542B1 (en) 2007-04-26 2013-12-17 Netapp, Inc. Peer to peer key synchronization
US8824686B1 (en) 2007-04-27 2014-09-02 Netapp, Inc. Cluster key synchronization
US20080292105A1 (en) * 2007-05-22 2008-11-27 Chieh-Yih Wan Lightweight key distribution and management method for sensor networks
US8887297B2 (en) * 2007-07-13 2014-11-11 Microsoft Corporation Creating and validating cryptographically secured documents
US8196182B2 (en) 2007-08-24 2012-06-05 Netapp, Inc. Distributed management of crypto module white lists
US9774445B1 (en) 2007-09-04 2017-09-26 Netapp, Inc. Host based rekeying
US8532303B2 (en) * 2007-12-14 2013-09-10 Intel Corporation Symmetric key distribution framework for the internet
US8588425B1 (en) * 2007-12-27 2013-11-19 Emc Corporation Encryption key recovery in the event of storage management failure
US8799681B1 (en) 2007-12-27 2014-08-05 Emc Corporation Redundant array of encrypting disks
US8254577B2 (en) * 2008-02-20 2012-08-28 International Business Machines Corporation Validation of encryption key
US9830278B1 (en) 2008-03-06 2017-11-28 EMC IP Holding Company LLC Tracking replica data using key management
AU2009200922A1 (en) * 2008-03-10 2009-09-24 Fixed Stars Enterprises Pty Ltd Data Access and User Identity Verification
JP5175617B2 (ja) * 2008-05-27 2013-04-03 株式会社東芝 データ保護システム、データ保護方法、及びメモリカード
US8464074B1 (en) 2008-05-30 2013-06-11 Cisco Technology, Inc. Storage media encryption with write acceleration
US8504844B2 (en) * 2008-12-19 2013-08-06 Teradata Us, Inc. System, method, and computer-readable medium for cryptographic key rotation in a database system
US20100250939A1 (en) * 2009-02-26 2010-09-30 Research In Motion Limited System and method of handling encrypted backup data
US10148433B1 (en) 2009-10-14 2018-12-04 Digitalpersona, Inc. Private key/public key resource protection scheme
US9489523B2 (en) 2010-04-08 2016-11-08 University Of Washington Through Its Center For Commercialization Systems and methods for file access auditing
US8458346B2 (en) * 2010-07-30 2013-06-04 Sap Ag Multiplexer for multi-tenant architectures
DE102010041804A1 (de) * 2010-09-30 2012-04-05 Siemens Aktiengesellschaft Verfahren zur sicheren Datenübertragung mit einer VPN-Box
US9251337B2 (en) 2011-04-27 2016-02-02 International Business Machines Corporation Scalable, highly available, dynamically reconfigurable cryptographic provider with quality-of-service control built from commodity backend providers
US8799022B1 (en) 2011-05-04 2014-08-05 Strat ID GIC, Inc. Method and network for secure transactions
KR20130031435A (ko) * 2011-09-21 2013-03-29 주식회사 팬택 휴대용 단말의 암호화 키 생성 및 관리 방법 및 그 장치
WO2013053393A1 (en) * 2011-10-13 2013-04-18 Evolium Management, S. L. Multi-repository key storage and selection
US8774403B2 (en) 2011-12-08 2014-07-08 Dark Matter Labs, Inc. Key creation and rotation for data encryption
US8908868B1 (en) 2012-05-17 2014-12-09 Amazon Technologies, Inc. Key rotation with external workflows
US8964990B1 (en) * 2012-05-17 2015-02-24 Amazon Technologies, Inc. Automating key rotation in a distributed system
US9590959B2 (en) 2013-02-12 2017-03-07 Amazon Technologies, Inc. Data security service
US9286491B2 (en) 2012-06-07 2016-03-15 Amazon Technologies, Inc. Virtual service provider zones
US10075471B2 (en) 2012-06-07 2018-09-11 Amazon Technologies, Inc. Data loss prevention techniques
US10084818B1 (en) 2012-06-07 2018-09-25 Amazon Technologies, Inc. Flexibly configurable data modification services
US8712044B2 (en) * 2012-06-29 2014-04-29 Dark Matter Labs Inc. Key management system
EP2731040B1 (en) * 2012-11-08 2017-04-19 CompuGroup Medical SE Computer system for storing and retrieval of encrypted data items, client computer, computer program product and computer-implemented method
JP6076752B2 (ja) * 2013-01-22 2017-02-08 株式会社東芝 通信装置、通信システムおよびプログラム
US10210341B2 (en) 2013-02-12 2019-02-19 Amazon Technologies, Inc. Delayed data access
US9705674B2 (en) 2013-02-12 2017-07-11 Amazon Technologies, Inc. Federated key management
US9300464B1 (en) 2013-02-12 2016-03-29 Amazon Technologies, Inc. Probabilistic key rotation
US10211977B1 (en) 2013-02-12 2019-02-19 Amazon Technologies, Inc. Secure management of information using a security module
US10467422B1 (en) 2013-02-12 2019-11-05 Amazon Technologies, Inc. Automatic key rotation
US9367697B1 (en) 2013-02-12 2016-06-14 Amazon Technologies, Inc. Data security with a security module
US8949594B2 (en) * 2013-03-12 2015-02-03 Silver Spring Networks, Inc. System and method for enabling a scalable public-key infrastructure on a smart grid network
NL2010454C2 (en) * 2013-03-14 2014-09-16 Onlock B V A method and system for authenticating and preserving data within a secure data repository.
US9832171B1 (en) 2013-06-13 2017-11-28 Amazon Technologies, Inc. Negotiating a session with a cryptographic domain
EP2833572B1 (en) * 2013-07-29 2019-12-25 Alcatel Lucent Adaptive traffic encryption for optical networks
US9133012B2 (en) * 2013-11-18 2015-09-15 Wayne Fueling Systems Sweden Ab Systems and methods for fuel dispenser security
KR20150090437A (ko) * 2014-01-29 2015-08-06 한국전자통신연구원 자동 종속 감시 자료 보호 방법 및 그 시스템
US20150288659A1 (en) * 2014-04-03 2015-10-08 Bitdefender IPR Management Ltd. Systems and Methods for Mutual Integrity Attestation Between A Network Endpoint And A Network Appliance
US9397835B1 (en) 2014-05-21 2016-07-19 Amazon Technologies, Inc. Web of trust management in a distributed system
US9438421B1 (en) * 2014-06-27 2016-09-06 Amazon Technologies, Inc. Supporting a fixed transaction rate with a variably-backed logical cryptographic key
EP2959784B1 (en) * 2014-06-27 2019-04-03 Fontem Holdings 1 B.V. Electronic smoking device and capsule system
EP2963854A1 (en) * 2014-07-02 2016-01-06 SECVRE GmbH Device for secure peer-to-peer communication for voice and data
US20160036812A1 (en) * 2014-07-31 2016-02-04 International Business Machines Corporation Database Queries Integrity and External Security Mechanisms in Database Forensic Examinations
US9866392B1 (en) 2014-09-15 2018-01-09 Amazon Technologies, Inc. Distributed system web of trust provisioning
US9585013B2 (en) * 2014-10-29 2017-02-28 Alcatel Lucent Generation of multiple shared keys by user equipment and base station using key expansion multiplier
GB2532039B (en) * 2014-11-06 2016-09-21 Ibm Secure database backup and recovery
US9467435B1 (en) * 2015-09-15 2016-10-11 Mimecast North America, Inc. Electronic message threat protection system for authorized users
US11595417B2 (en) 2015-09-15 2023-02-28 Mimecast Services Ltd. Systems and methods for mediating access to resources
US10728239B2 (en) 2015-09-15 2020-07-28 Mimecast Services Ltd. Mediated access to resources
US10536449B2 (en) 2015-09-15 2020-01-14 Mimecast Services Ltd. User login credential warning system
US9654492B2 (en) 2015-09-15 2017-05-16 Mimecast North America, Inc. Malware detection system based on stored data
US10037436B2 (en) * 2015-12-11 2018-07-31 Visa International Service Association Device using secure storage and retrieval of data
US10412098B2 (en) 2015-12-11 2019-09-10 Amazon Technologies, Inc. Signed envelope encryption
US9705859B2 (en) * 2015-12-11 2017-07-11 Amazon Technologies, Inc. Key exchange through partially trusted third party
US10198595B2 (en) * 2015-12-22 2019-02-05 Walmart Apollo, Llc Data breach detection system
GB2547025A (en) * 2016-02-05 2017-08-09 Thales Holdings Uk Plc A method of data transfer, a method of controlling use of data and a cryptographic device
US10169602B2 (en) * 2016-02-22 2019-01-01 Dell Products, L.P. Method for local key management setup and recovery
CN108885670B (zh) * 2016-03-15 2022-04-08 维萨国际服务协会 用于交互的验证密码
US10846668B1 (en) 2016-04-12 2020-11-24 Wells Fargo Bank, N.A. Systems and methods for completing transactions via curbside service
CN109417475B (zh) * 2016-05-30 2022-06-28 意大利电信股份公司 无线电信网络中的隐私保护
US10263988B2 (en) * 2016-07-02 2019-04-16 Intel Corporation Protected container key management processors, methods, systems, and instructions
US10771261B1 (en) * 2016-09-29 2020-09-08 EMC IP Holding Company LLC Extensible unified multi-service certificate and certificate revocation list management
US10615970B1 (en) 2017-02-10 2020-04-07 Wells Fargo Bank, N.A. Secure key exchange electronic transactions
US10615969B1 (en) 2017-02-10 2020-04-07 Wells Fargo Bank, N.A. Database encryption key management
US10965474B1 (en) * 2017-02-27 2021-03-30 Apple Inc. Modifying security state with highly secured devices
EP3386146A1 (de) * 2017-04-05 2018-10-10 Siemens Aktiengesellschaft Verfahren zur sicherstellung einer authentizität mindestens eines wertes einer geräteeigenschaft, computerprogramm, computerlesbares speichermedium und vorrichtung
US10462140B2 (en) 2017-04-28 2019-10-29 Bank Of America Corporation Data transmission authentication and self-destruction
WO2018236420A1 (en) 2017-06-20 2018-12-27 Google Llc CLOUD EQUIPMENT SECURITY MODULES FOR CRYPTOGRAPHIC EXTERNALIZATION OPERATIONS
WO2019008158A1 (en) * 2017-07-06 2019-01-10 Chromaway Ab METHOD AND SYSTEM OF DISTRIBUTED COMPUTER SYSTEM
CN107784107B (zh) * 2017-10-31 2020-06-30 杭州安恒信息技术股份有限公司 基于逃逸行为分析的暗链检测方法及装置
CN110019994A (zh) 2017-11-13 2019-07-16 阿里巴巴集团控股有限公司 数据加密、解密及查询方法、数据加密解密及查询装置
US11151266B2 (en) 2017-12-06 2021-10-19 International Business Machines Corporation Secure data storage and access during transition operations
US11620671B2 (en) * 2018-04-10 2023-04-04 Medibloc Co., Ltd. Method and system for managing medical information platform by using blockchain, and non-transitory computer-readable recording medium
EP3582031A1 (de) * 2018-06-11 2019-12-18 Siemens Aktiengesellschaft Sichere verwaltung von zugangsdaten für steuereinrichtungen
GB2575166A (en) * 2018-06-29 2020-01-01 Social Crm Squad Ltd Apparatus and methods for retrieving lost property
US11641274B2 (en) 2019-03-22 2023-05-02 Jpmorgan Chase Bank, N.A. Systems and methods for manipulation of private information on untrusted environments
US11153758B2 (en) * 2019-09-19 2021-10-19 Tile, Inc. End-to-end encryption with distributed key management in a tracking device environment
EP4035048A1 (en) * 2019-09-25 2022-08-03 ARRIS Enterprises LLC Secure scalable link key distribution using bootsrapping
US11556665B2 (en) * 2019-12-08 2023-01-17 Western Digital Technologies, Inc. Unlocking a data storage device
CN111698087B (zh) * 2020-06-15 2023-09-08 北京数字认证股份有限公司 一种微型密码机及信息处理方法
US11682008B2 (en) * 2020-09-28 2023-06-20 Vadim Nikolaevich ALEKSANDROV Method of authenticating a customer, method of carrying out a payment transaction and payment system implementing the specified methods
AU2021372452A1 (en) * 2020-10-29 2023-06-08 Pacific Investment Management Company LLC Surrogate data generation of private data
US20230153209A1 (en) * 2021-11-17 2023-05-18 Coinbase Il Rd Ltd System and method for database recovery
CN115334073B (zh) * 2022-10-13 2023-01-24 中国电子科技集团公司第十五研究所 一种深度拉取远程文件的方法和系统

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4578530A (en) * 1981-06-26 1986-03-25 Visa U.S.A., Inc. End-to-end encryption system and method of operation
US4423287A (en) * 1981-06-26 1983-12-27 Visa U.S.A., Inc. End-to-end encryption system and method of operation
US4713753A (en) * 1985-02-21 1987-12-15 Honeywell Inc. Secure data processing system architecture with format control
EP0287720B1 (en) * 1987-04-22 1992-01-08 International Business Machines Corporation Management of cryptographic keys
US5301270A (en) * 1989-12-18 1994-04-05 Anderson Consulting Computer-assisted software engineering system for cooperative processing environments
JP2865827B2 (ja) * 1990-08-13 1999-03-08 株式会社日立製作所 会議システムにおけるデータ蓄積方法
DE69311581T2 (de) * 1993-07-27 1997-12-11 Ibm Verfahren und system zur authentifizierten sicheren schlüsselverteilung in einem kommunikationssystem
US5369702A (en) * 1993-10-18 1994-11-29 Tecsec Incorporated Distributed cryptographic object method
US5680452A (en) * 1993-10-18 1997-10-21 Tecsec Inc. Distributed cryptographic object method
UA41387C2 (uk) * 1994-01-13 2001-09-17 Сертко, Інк Спосіб установлення вірогідного перевірюваного зв'язку, спосіб захищеного зв'язку, спосіб оновлення мікропрограмного забезпечення, спосіб здійснення шифрованого зв'язку та спосіб надання перевіреному на справжність пристрою права на проведення електронної транзакції
CA2138830A1 (en) * 1994-03-03 1995-09-04 Jamie Joanne Marschner Real-time administration-translation arrangement
US5495533A (en) * 1994-04-29 1996-02-27 International Business Machines Corporation Personal key archive
US5533123A (en) * 1994-06-28 1996-07-02 National Semiconductor Corporation Programmable distributed personal security
US5748735A (en) * 1994-07-18 1998-05-05 Bell Atlantic Network Services, Inc. Securing E-mail communications and encrypted file storage using yaksha split private key asymmetric cryptography
US6044154A (en) * 1994-10-31 2000-03-28 Communications Devices, Inc. Remote generated, device identifier key for use with a dual-key reflexive encryption security system
CN1126377C (zh) * 1995-03-08 2003-10-29 皇家菲利浦电子有限公司 三维图象显示系统
US5682524A (en) * 1995-05-26 1997-10-28 Starfish Software, Inc. Databank system with methods for efficiently storing non-uniform data records
US5778072A (en) * 1995-07-07 1998-07-07 Sun Microsystems, Inc. System and method to transparently integrate private key operations from a smart card with host-based encryption services
US5625693A (en) 1995-07-07 1997-04-29 Thomson Consumer Electronics, Inc. Apparatus and method for authenticating transmitting applications in an interactive TV system
US6023506A (en) * 1995-10-26 2000-02-08 Hitachi, Ltd. Data encryption control apparatus and method
US5764772A (en) * 1995-12-15 1998-06-09 Lotus Development Coporation Differential work factor cryptography method and system
JP3627384B2 (ja) * 1996-01-17 2005-03-09 富士ゼロックス株式会社 ソフトウェアの保護機能付き情報処理装置及びソフトウェアの保護機能付き情報処理方法
US5815573A (en) * 1996-04-10 1998-09-29 International Business Machines Corporation Cryptographic key recovery system
SE506853C2 (sv) * 1996-06-20 1998-02-16 Anonymity Prot In Sweden Ab Metod för databearbetning
US5757925A (en) * 1996-07-23 1998-05-26 Faybishenko; Yaroslav Secure platform independent cross-platform remote execution computer system and method
US5796830A (en) * 1996-07-29 1998-08-18 International Business Machines Corporation Interoperable cryptographic key recovery system
US5937066A (en) * 1996-10-02 1999-08-10 International Business Machines Corporation Two-phase cryptographic key recovery system
US6061790A (en) * 1996-11-20 2000-05-09 Starfish Software, Inc. Network computer system with remote user data encipher methodology
US5949882A (en) * 1996-12-13 1999-09-07 Compaq Computer Corporation Method and apparatus for allowing access to secured computer resources by utilzing a password and an external encryption algorithm
US5907618A (en) * 1997-01-03 1999-05-25 International Business Machines Corporation Method and apparatus for verifiably providing key recovery information in a cryptographic system
US5881225A (en) * 1997-04-14 1999-03-09 Araxsys, Inc. Security monitor for controlling functional access to a computer system
US6289451B1 (en) * 1997-04-18 2001-09-11 Sun Microsystems, Inc. System and method for efficiently implementing an authenticated communications channel that facilitates tamper detection
DE69834218T2 (de) * 1997-05-13 2007-01-04 Kabushiki Kaisha Toshiba, Kawasaki Informationsaufzeichnungs- und -wiedergabegerät sowie Informationsverteilungssystem
GB9712459D0 (en) 1997-06-14 1997-08-20 Int Computers Ltd Secure database system
CA2295150A1 (en) * 1997-06-26 1999-01-07 Michael John Kenning Data communications
US6058188A (en) * 1997-07-24 2000-05-02 International Business Machines Corporation Method and apparatus for interoperable validation of key recovery information in a cryptographic system
JPH11143780A (ja) 1997-11-05 1999-05-28 Hitachi Ltd データベースにおける秘密情報管理方法およびデータベースの秘密情報管理装置
US6246771B1 (en) * 1997-11-26 2001-06-12 V-One Corporation Session key recovery system and method
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
US6430549B1 (en) 1998-07-17 2002-08-06 Electronic Data Systems Corporation System and method for selectivety defining access to application features
US6226618B1 (en) * 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
CN1127835C (zh) * 1999-04-09 2003-11-12 通用器材公司 有线电话适配器与相连信令控制器之间的密钥管理
SE9904094D0 (sv) 1999-11-12 1999-11-12 Protegrity Research & Dev Method for reencryption of a database
US7412462B2 (en) * 2000-02-18 2008-08-12 Burnside Acquisition, Llc Data repository and method for promoting network storage of data
FR2810434A1 (fr) * 2000-06-17 2001-12-21 Espace Cx Com Systeme de securite de traitement, de stockage, d'acces et de transfert de donnees confidentielles
US7203314B1 (en) * 2000-07-21 2007-04-10 The Directv Group, Inc. Super encrypted storage and retrieval of media programs with modified conditional access functionality
US20020031230A1 (en) * 2000-08-15 2002-03-14 Sweet William B. Method and apparatus for a web-based application service model for security management
US6947556B1 (en) * 2000-08-21 2005-09-20 International Business Machines Corporation Secure data storage and retrieval with key management and user authentication
US7111005B1 (en) 2000-10-06 2006-09-19 Oracle International Corporation Method and apparatus for automatic database encryption
US7362868B2 (en) * 2000-10-20 2008-04-22 Eruces, Inc. Hidden link dynamic key manager for use in computer systems with database structure for storage of encrypted data and method for storage and retrieval of encrypted data
US6986040B1 (en) * 2000-11-03 2006-01-10 Citrix Systems, Inc. System and method of exploiting the security of a secure communication channel to secure a non-secure communication channel
JP2005079912A (ja) * 2003-08-29 2005-03-24 Matsushita Electric Ind Co Ltd セキュアデータ管理装置

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141461B (zh) * 2006-09-07 2013-02-27 国际商业机器公司 用于使用密钥服务器进行密钥生成和取回的方法和系统
CN101686123B (zh) * 2008-09-24 2012-01-25 中国移动通信集团公司 密钥管理方法和系统、密钥生成及认证方法和装置
CN103152321A (zh) * 2011-12-06 2013-06-12 索尼公司 流媒体内容和服务的数字权利管理
CN103152321B (zh) * 2011-12-06 2016-06-29 索尼公司 流媒体内容和服务的数字权利管理的方法和系统
CN103051446A (zh) * 2012-12-26 2013-04-17 公安部第一研究所 一种密钥加密存储方法
CN103051446B (zh) * 2012-12-26 2016-04-27 公安部第一研究所 一种密钥加密存储方法
CN103095731A (zh) * 2013-02-22 2013-05-08 浪潮电子信息产业股份有限公司 一种基于签名机制的rest安全系统
CN110334503A (zh) * 2014-09-02 2019-10-15 苹果公司 利用一个设备解锁另一个设备的方法
CN110334498A (zh) * 2014-09-02 2019-10-15 苹果公司 利用一个设备解锁另一个设备的方法
CN110334498B (zh) * 2014-09-02 2023-08-29 苹果公司 利用一个设备解锁另一个设备的方法
CN110334503B (zh) * 2014-09-02 2024-03-19 苹果公司 利用一个设备解锁另一个设备的方法
CN110199263A (zh) * 2017-01-19 2019-09-03 电子湾有限公司 基于密码的欺诈跟踪
CN110199263B (zh) * 2017-01-19 2023-08-18 电子湾有限公司 基于密码的欺诈跟踪
CN110808829A (zh) * 2019-09-27 2020-02-18 国电南瑞科技股份有限公司 一种基于密钥分配中心的ssh认证方法
CN113557689A (zh) * 2020-01-09 2021-10-26 西部数据技术公司 用管理器设备初始化数据存储设备
CN114338010A (zh) * 2021-12-31 2022-04-12 深圳昂楷科技有限公司 一种不落盘的数据库局内加密密钥加密方法、装置及电子设备
CN114338010B (zh) * 2021-12-31 2024-02-20 深圳昂楷科技有限公司 一种数据库密钥交换方法、装置及电子设备

Also Published As

Publication number Publication date
AU2003233549A1 (en) 2003-12-02
US20080301445A1 (en) 2008-12-04
EP1510030A1 (en) 2005-03-02
US20030021417A1 (en) 2003-01-30
EP1510030A4 (en) 2011-08-24
US7885413B2 (en) 2011-02-08
WO2003098864A1 (en) 2003-11-27

Similar Documents

Publication Publication Date Title
CN1669265A (zh) 在计算机系统中使用的隐藏的链接动态密钥管理器
CN1291293C (zh) 储存及撷取加密数据的方法和系统
JP7295068B2 (ja) フェデレーテッドキー管理
US11470054B2 (en) Key rotation techniques
CN102932136B (zh) 用于管理加密密钥的系统和方法
CN103178965B (zh) 使用多因素或密钥式分散对数据进行保护的系统和方法
CN103270516B (zh) 用于安全保护虚拟机计算环境的系统和方法
US9390228B2 (en) System and method for securely storing and sharing information
CN1165849C (zh) 保护软件的计算机系统及一种保护软件的方法
US20160277374A1 (en) System and method for securely storing and sharing information
CN1158195A (zh) 密钥托管及数据托管加密系统和方法
KR101371608B1 (ko) Dbms 및 데이터베이스에서 암호화 방법
CN1647442A (zh) 为获得解密密钥请求密钥检索的安全电子消息系统
CN1833398A (zh) 安全数据解析器方法和系统
CN1299545A (zh) 使用虚拟专用密钥的用户鉴别
JP2006514478A5 (zh)
CN102428686A (zh) 用于安全保护云中的数据的系统和方法
CN103229450A (zh) 用于安全多租户数据存储的系统和方法
CN105027130A (zh) 延迟数据访问
CN106230872A (zh) 对移动中数据进行保护的系统和方法
US20090097769A1 (en) Systems and methods for securely processing form data
US20050015602A1 (en) Method and apparatus for passing data securely between parties
CN102057379A (zh) 保健数据处理的方法和系统
WO2016077219A1 (en) System and method for securely storing and sharing information
JP7325396B2 (ja) データファイル暗号化送受信システム及びデータファイル暗号化送受信方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20050914