CN109150517B - 基于sgx的密钥安全管理系统及方法 - Google Patents
基于sgx的密钥安全管理系统及方法 Download PDFInfo
- Publication number
- CN109150517B CN109150517B CN201811029803.4A CN201811029803A CN109150517B CN 109150517 B CN109150517 B CN 109150517B CN 201811029803 A CN201811029803 A CN 201811029803A CN 109150517 B CN109150517 B CN 109150517B
- Authority
- CN
- China
- Prior art keywords
- key
- client
- management server
- ciphertext
- primary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
- H04L9/0841—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
- H04L9/0844—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3273—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
Abstract
本发明提供一种基于SGX的密钥安全管理系统及方法,包括客户端与密钥管理服务器,基于SGX技术进行客户端与密钥管理服务器的双向身份验证,确保双方在运行环境及数据安全可信的条件下进行密钥的存储与处理,且密钥的存储、管理、加解密处理等过程均在enclave内存区中进行,可有效抵御内存攻击,保证密钥的安全性;进一步通过配置密钥分级管理策略和密钥访问控制策略,提高对多个客户端进行密钥管理的灵活性和有效性,增强密钥的保护强度。本发明利用SGX技术,可有效保证密钥的安全性和管理有效性。
Description
技术领域
本发明涉及一种基于SGX的密钥安全管理系统及方法,属于信息安全技术领域。
背景技术
随着移动互联网技术的快速发展,网络给人们的生活带来了极大的便利,为提高用户体验,同时保证数据安全性,数据安全一直是研究重点与热点。各种加密算法被应用于分布式系统以实现数据加密,各种密钥管理方案广泛应用于银行、O2O和B2C互联网电商等领域实现密钥管理。目前,如何有效管理密钥并保证其安全性成为各种分布式系统应用中普遍面临的问题。
传统的密钥管理方案一般分为两种,一种是利用软件加密算法对密钥进行加解密,并对密钥进行存储及管理,软件加密灵活性强,安全性相对较低,系统被攻破时,易受软件攻击,白盒加密的安全性较强,但是通常会损失系统性能;另一种是基于硬件安全模块对密钥进行加解密,并对密钥进行存储及管理,硬件加密安全性很强,但需要配置专门的硬件安全模块,成本高昂。
发明内容
鉴于上述原因,本发明的目的在于提供一种基于SGX的密钥安全管理系统及方法,在保证客户端与服务器二者身份可信的情况下,密钥管理相关处理均在enclave内存区中进行,既可保证密钥的数据安全性,又可保证密钥的集中有效管理。
为实现上述目的,本发明采用以下技术方案:
一种基于SGX的密钥安全管理系统,包括客户端与密钥管理服务器,
客户端包括enclave内存区、可信平台模块,
密钥管理服务器包括enclave内存区、密钥数据库,
客户端与密钥管理服务器在验证双方身份可信的情况下,客户端提供一级密钥,并由密钥管理服务器密封存储于该密封数据库中,客户端提供二级密钥,并由密钥管理服务器利用该一级密钥对该二级密钥加密处理后,保存于该密封数据库中,且一级密钥与二级密钥的处理均在enclave内存区中进行。
可选的,所述客户端与密钥管理服务器通过验证双方的enclave度量值进行双方身份的验证,该enclave度量值是于enclave内存区构建过程中,对所有活动日志数据进行数字签名生成的数字签名值。
可选的,所述客户端与密钥管理服务器验证双方身份可信后,通过协商密钥生成会话密钥。
可选的,所述客户端基于所述可信平台模块生成一级密钥,于其enclave内存区中,利用所述会话密钥对该一级密钥进行加密后,将密文一级密钥发送至所述密钥管理服务器,所述密钥管理服务器于其enclave内存区中,利用所述会话密钥对该密文一级密钥进行解密处理,将生成的一级密钥进行密封处理,将生成的密封一级密钥保存于所述密钥数据库。
可选的,所述客户端基于所述可信平台模块生成二级密钥,于其enclave内存区中,利用所述会话密钥对该二级密钥进行加密后,将密文二级密钥发送至所述密钥管理服务器,所述密钥管理服务器于其enclave内存区中,利用所述会话密钥对该密文二级密钥进行解密处理,生成二级密钥,读取所述密封一级密钥,经解密封处理后生成一级密钥,利用该一级密钥对该二级密钥进行加密处理,将生成的第二密文二级密钥保存于所述密钥数据库。
可选的,所述客户端与密钥管理服务器在验证双方身份可信的情况下,通过协商密钥生成会话密钥;所述客户端向所述密钥管理服务器发送密钥请求,所述密钥管理服务器根据该密钥请求,从所述密钥数据库中读取该客户端对应的密钥一级密钥及第二密文二级密钥,将该密封一级密钥及第二密文二级密钥读入enclave内存区中,对该密封一级密钥进行解密封处理,生成一级密钥,利用该一级密钥对第二密文二级密钥进行解密处理,生成二级密钥;所述密钥管理服务器于其enclave内存区,利用该会话密钥对该二级密钥进行加密处理,生成第三密文二级密钥,将该第三密文二级密钥发送至所述客户端;所述客户端接收该第三密文二级密钥,将该第三密文二级密钥读入其enclave内存区,于enclave内存区,利用该会话密钥对该第三密文二级密钥进行解密处理,生成该二级密钥。
可选的,所述客户端向所述密钥管理服务器发送允许访问所述二级密钥的客户端enclave度量值列表,所述密钥管理服务器根据该客户端enclave度量值列表判断所述客户端是否可获取相应的二级密钥。
本发明还提供一种基于所述密钥安全管理系统实现的密钥安全管理方法,包括:
客户端与密钥管理服务器进行双方身份验证;
双方身份验证通过,双方协商会话密钥;
客户端提供一级密钥,并由密钥管理服务器进行密封处理后存储密封一级密钥,客户端提供二级密钥,并由密钥管理服务器利用该一级密钥对该二级密钥加密处理后存储密文二级密钥,
该一级密钥与二级密钥的处理均在双方的enclave内存区中进行。
可选的,所述密钥安全管理方法,包括:
所述客户端与密钥管理服务器进行双方身份验证;
双方身份验证通过,双方协商会话密钥;
所述客户端向密钥管理服务器发送密钥请求,所述密钥管理服务器根据该密钥请求,查找获取相应的密封一级密钥与密文二级密钥,对密钥一级密钥进行解密封处理后,利用生成的一级密钥对密文二级密钥进行解密,将生成的二级密钥发送至客户端;
该密封一级密钥及密文二级密钥的处理均在双方的enclave内存区中进行。
可选的,配置访问所述二级密钥的客户端enclave度量值列表,根据该客户端enclave度量值列表判断是否可获取相应的二级密钥。
本发明的优点是:
1、本发明的系统及方法,基于SGX技术进行客户端与密钥管理服务器的双向身份验证,确保双方在运行环境及数据安全可信的条件下进行密钥管理;
2、本发明的系统及方法,在客户端与密钥管理服务器双方身份可信的条件下,密钥的存储、管理、加解密处理过程等均在enclave内存区中进行,能够有效抵御内存攻击,保证密钥的数据安全性,无需额外配置专门的硬件,成本较低;
3.本发明的系统及方法,对密钥进行分级管理,且可配置密钥管理策略,进一步提高密钥安全性,密钥管理灵活有效。
附图说明
图1是本发明的系统组成框图。
图2是本发明的生成及存储密钥的数据流向示意图。
图3是本发明的获取密钥的数据流向示意图。
具体实施方式
以下结合附图和实施例对本发明作进一步详细的描述。
如图1所示,本发明公开的基于SGX的密钥安全管理系统,包括客户端、密钥管理服务器。客户端配置有SGX模块,普通内存区与enclave内存区,可信平台模块(TPM:TrustedPlatform Module)。密钥管理服务器用于对密钥进行管理,并保证密钥安全性,密钥管理服务器配置有SGX模块,普通内存区与enclave内存区,密钥数据库。
基于上述密钥安全管理系统实现的密钥安全管理方法,客户端与密钥管理服务器通过验证双方的enclave度量值进行双方身份验证,在确认双方身份可信的情况下,密钥的存储、管理、加解密等相关处理过程均在enclave内存区中进行,可以有效防止密钥泄露,抵御内存攻击,保证密钥的安全性;同时,通过密钥管理服务器对密钥的集中管理,能够实现密钥的灵活、有效管理。具体的说:
如图2所示,利用本发明的系统及方法,生成、存储密钥的方法具体包括:
S10:客户端与密钥管理服务器进行双向身份验证;
客户端与密钥管理服务器通过验证双方的enclave度量值进行双方身份验证,具体包括:
1)客户端与密钥管理服务器生成各自的enclave度量值;
构建enclave内存区过程中,利用SGX SDK提供的sgx_sign函数接口对所有活动日志数据进行数字签名,生成enclave度量值。若enclave内存区中数据发生改变,enclave度量值也会发生变化。活动日志数据包括:enclave内存区中所有页的数据(代码、数据、堆、栈等);各个页之间的相对位置;各个页的安全属性。
利用SGX SDK提供的sgx_get_quote函数接口获取enclave内存区的引用信息,该引用信息包括enclave度量值、enclave安全版本号,enclave产品ID等信息。
enclave内存区构建完成后,利用SGX SDK的签名工具生成签名结构体信息,该签名结构体信息包括enclave度量值、enclave安全版本号,enclave产品ID、CPU版本号等信息。部署系统时,客户端与密钥管理服务器分别将各自的签名结构体信息发送至对方,由对方密封保存,用于后续身份验证使用。
2)客户端对密钥管理服务器进行身份验证;
具体过程是:
客户端和密钥管理服务器分别于各自的enclave内存区中生成公、私钥对(如,利用椭圆曲线加密算法生成密钥对),并将生成的公钥发送给对方;客户端和密钥管理服务器收到对方的公钥后,分别利用ECDH密钥交换算法计算生成共享密钥。
密钥管理服务器获取自身的enclave度量值,利用共享密钥对该enclave度量值进行加密处理,将生成的密文enclave度量值发送给客户端;客户端收到密文enclave度量值后,对密文enclave度量值进行解密处理,生成enclave度量值;然后对密钥管理服务器的签名结构体信息解密封处理,获取密钥管理服务器的enclave度量值作为预期值,将解密后的enclave度量值与该预期值进行比较,若二者不一致,则密钥管理服务器身份验证未通过,不进行后续密钥存储及管理流程;若二者一致,则密钥管理服务器的enclave度量值验证通过。
密钥管理服务器的enclave度量值验证通过,客户端生成随机数,计算自身的签名结构体信息的数字摘要值IDc,计算密钥管理服务器的签名结构体信息的数字摘要值IDs,将生成的随机数、IDc、IDs利用共享密钥进行加密处理后将密文随机数、IDc、IDs发送给密钥管理服务器。
密钥管理服务器接收密文随机数、IDc、IDs后,先利用共享密钥对密文随机数、IDc、IDs进行解密处理,生成随机数、IDc、IDs;然后计算自身的签名结构体信息的数字摘要值IDs`,计算客户端的签名结构体信息的数字摘要值IDc`,分别将IDc与IDc`、IDs与IDs`进行比较,若IDc=IDc`,IDs=IDs`,则密钥管理服务器身份验证通过,否则密钥管理服务器身份验证未通过;之后,将验证结果与随机数再发送给客户端,客户端收到验证结果与随机数,将收到的随机数与生成的随机数进行比较,若一致,则将密钥管理服务器返回的验证结果作为最终的密钥管理服务器身份验证结果。
3)密钥管理服务器对客户端进行身份验证
具体过程是:
客户端获取自身的enclave度量值,利用共享密钥对该enclave度量值进行加密处理,将生成的密文enclave度量值发送给密钥管理服务器。密钥管理服务器接收该密文enclave度量值,将其读入enclave内存区,利用共享密钥对密文enclave度量值进行解密处理,生成enclave度量值,然后对客户端的签名结构体信息解密封处理,获取客户端的enclave度量值作为预期值,将解密后的enclave度量值与该预期值进行比较,若二者不一致,则客户端身份验证未通过;若二者一致,则客户端的enclave度量值验证通过。
若客户端enclave度量值验证通过,密钥管理服务器计算客户端的签名结构体信息的数字摘要值IDc,计算自身的签名结构体信息的数字摘要值IDs,将IDc、IDs利用共享密钥进行加密处理后将密文IDc、IDs发送给客户端;
客户端接收密文IDc、IDs后,先利用共享密钥对密文IDc、IDs进行解密处理,生成IDc、IDs;然后计算自身的签名结构体信息的数字摘要值IDc`,计算密钥管理服务器的签名结构体信息的数字摘要值IDs`,分别将IDc与IDc`、IDs与IDs`进行比较,若IDc=IDc`,IDs=IDs`,则客户端身份验证通过,否则客户端身份验证未通过,不进行后续密钥存储及管理流程,同时记录相应的安全日志。
S11:客户端与密钥管理服务器的双向身份验证通过,客户端与密钥管理服务器通过协商密钥生成临时的会话密钥,并将会话密钥保存于各自的enclave内存区中;
客户端与密钥管理服务器的双向身份验证通过后,客户端与密钥管理服务器在各自的enclave内存区中,以共享密钥为输入数据,利用相同的密钥生成函数生成会话密钥。
S12:客户端基于可信平台模块生成一级密钥,并将该一级密钥读入其enclave内存区,于enclave内存区,利用会话密钥对一级密钥进行加密处理,生成密文一级密钥,将密文一级密钥发送给密钥管理服务器;
S13:密钥管理服务器接收密文一级密钥,将密文一级密钥读入其enclave内存区,于enclave内存区,利用会话密钥对密文一级密钥解密,生成一级密钥,并将一级密钥保存于其enclave内存区;
S14:密钥管理服务器于其enclave内存区,对一级密钥进行密封处理,将生成的密封一级密钥保存于密钥数据库;
数据密封基于AES加密算法,可以在enclave内存区内部生成和数据密封处理相关的加密密钥,并且在解封数据时会验证数据的完整性。利用SGX SDK提供的sgx_seal_data()函数接口对一级密钥进行密封处理可以将一级密钥安全的存储于密钥数据库中,保证数据安全性。
密钥管理服务器根据客户端的enclave度量值及存储时间生成客户端唯一标识,并将客户端唯一标识、该客户端对应的密封一级密钥存储于一级密钥数据表中,然后将生成的客户端唯一标识发送给相应的客户端。
S15:客户端基于可信平台模块生成二级密钥KEY,并将该二级密钥读入其enclave内存区,于enclave内存区,利用会话密钥对二级密钥进行加密处理,生成密文二级密钥,将密文二级密钥发送给密钥管理服务器;
S16:密钥管理服务器接收密文二级密钥,将密文二级密钥读入其enclave内存区,利用会话密钥对密文二级密钥进行解密处理,生成二级密钥,并将二级密钥保存于其enclave内存区;
S17:密钥管理服务器于其enclave内存区,先从一级密钥数据表中读取出密封一级密钥,对密封一级密钥进行解密封处理,利用一级密钥对二级密钥进行加密处理,生成第二密文二级密钥,将第二密文二级密钥保存于密钥数据库中。
密钥管理服务器将相应的客户端唯一标识、该客户端对应的第二密文二级密钥保存于二级密钥数据表中。
如图3所示,利用本发明的系统及方法,客户端获取密钥的方法具体包括:
S20:客户端与密钥管理服务器进行双向身份验证;
S21:客户端与密钥管理服务器双向身份验证通过,客户端与密钥管理服务器通过协商密钥生成临时的会话密钥,并将会话密钥保存于各自的enclave内存区中;
S22:客户端向密钥管理服务器发送包括客户端唯一标识的密钥请求,密钥管理服务器根据密钥请求中的客户端唯一标识,从一级密钥数据表中读取出该客户端对应的密封一级密钥,将该密封一级密钥读入enclave内存区中进行解密封处理,生成一级密钥;
S23:密钥管理服务器根据密钥请求中的客户端唯一标识,从二级密钥数据表中读取出该客户端对应的第二密文二级密钥,将第二密文二级密钥读入enclave内存区,利用一级密钥对第二密文二级密钥进行解密处理,生成二级密钥;
S24:密钥管理服务器于其enclave内存区,利用会话密钥对二级密钥进行加密处理,生成第三密文二级密钥,将第三密文二级密钥发送至客户端;
S25:客户端接收第三密文二级密钥,将第三密文二级密钥读入其enclave内存区,于enclave内存区,利用会话密钥对第三密文二级密钥进行解密处理,生成二级密钥,供后续数据加解密使用。
本发明中,密钥管理服务器对密钥进行分级管理,可以同时为多个客户端提供集中的密钥管理,其中,一级密钥由客户端提供,用于加密对应客户端的二级密钥,二级密钥是客户端进行实际业务逻辑使用的密钥,使用一级密钥可以实现各客户端的二级密钥的相互隔离。
进一步的,为提高密钥管理的灵活性和有效性,可配置密钥访问控制策略,即配置允许访问密钥的客户端enclave度量值列表。客户端向密钥管理服务器存储二级密钥时,同时提供允许访问该二级密钥的客户端enclave度量值列表,密钥管理服务器将客户端enclave度量值列表一并保存于二级密钥数据表中;客户端获取二级密钥时,若该客户端的enclave度量值在该二级密钥对应的客户端enclave度量值列表中,则该客户端可以获取该二级密钥,否则拒绝访问该二级密钥。
本发明提供的基于SGX的密钥安全管理系统及方法,包括客户端与密钥管理服务器,基于SGX技术进行客户端与密钥管理服务器的双向身份验证,确保双方在运行环境及数据安全可信的条件下进行密钥的存储与处理,且密钥的存储、管理、加解密处理等过程均在enclave内存区中进行,可有效抵御内存攻击,保证密钥的安全性;进一步通过配置密钥分级管理策略和密钥访问控制策略,提高对多个客户端进行密钥管理的灵活性和有效性,增强密钥的保护强度。本发明利用SGX技术,可有效保证密钥的安全性和管理有效性。
以上所述是本发明的较佳实施例及其所运用的技术原理,对于本领域的技术人员来说,在不背离本发明的精神和范围的情况下,任何基于本发明技术方案基础上的等效变换、简单替换等显而易见的改变,均属于本发明保护范围之内。
Claims (6)
1.基于SGX的密钥安全管理系统,其特征在于,包括客户端与密钥管理服务器,
客户端包括enclave内存区、可信平台模块,
密钥管理服务器包括enclave内存区、密钥数据库,
客户端与密钥管理服务器在验证双方身份可信后,通过协商密钥生成会话密钥;
客户端提供一级密钥,利用所述会话密钥对所述一级密钥进行加密后,将密文一级密钥发送至所述密钥管理服务器,所述密钥管理服务器利用所述会话密钥对所述密文一级密钥进行解密处理,将生成的一级密钥进行密封处理,将生成的密封一级密钥保存于所述密钥数据库;客户端提供二级密钥,利用所述会话密钥对所述二级密钥进行加密后,将密文二级密钥发送至所述密钥管理服务器,所述密钥管理服务器利用所述会话密钥对所述密文二级密钥进行解密处理,生成二级密钥,读取所述密封一级密钥,经解密封处理后生成所述一级密钥,利用所述一级密钥对所述二级密钥进行加密处理,将生成的第二密文二级密钥保存于所述密钥数据库;所述一级密钥与所述二级密钥的处理均在enclave内存区中进行;
所述客户端向所述密钥管理服务器发送密钥请求,所述密钥管理服务器根据该密钥请求,从所述密钥数据库中读取该客户端对应的密封一级密钥及第二密文二级密钥,将所述密封一级密钥及第二密文二级密钥读入enclave内存区中,对所述密封一级密钥进行解密封处理,生成所述一级密钥,利用所述一级密钥对所述第二密文二级密钥进行解密处理,生成所述二级密钥;所述密钥管理服务器于其enclave内存区,利用所述会话密钥对所述二级密钥进行加密处理,生成第三密文二级密钥,将所述第三密文二级密钥发送至所述客户端;所述客户端接收所述第三密文二级密钥,将所述第三密文二级密钥读入其enclave内存区,于enclave内存区,利用所述会话密钥对所述第三密文二级密钥进行解密处理,生成所述二级密钥。
2.根据权利要求1所述的密钥安全管理系统,其特征在于,所述客户端与密钥管理服务器通过验证双方的enclave度量值进行双方身份的验证,该enclave度量值是于enclave内存区构建过程中,对所有活动日志数据进行数字签名生成的数字签名值。
3.根据权利要求1所述的密钥安全管理系统,其特征在于,所述客户端基于所述可信平台模块生成所述一级密钥和所述二级密钥。
4.根据权利要求1所述的密钥安全管理系统,其特征在于,所述客户端向所述密钥管理服务器发送允许访问所述二级密钥的客户端enclave度量值列表,所述密钥管理服务器根据该客户端enclave度量值列表判断所述客户端是否可获取相应的二级密钥。
5.基于权利要求1所述的密钥安全管理系统实现的密钥安全管理方法,其特征在于,包括:
客户端与密钥管理服务器进行双方身份验证;
双方身份验证通过,双方协商会话密钥;
客户端提供一级密钥,利用所述会话密钥对所述一级密钥进行加密后,将密文一级密钥发送至所述密钥管理服务器,所述密钥管理服务器利用所述会话密钥对所述密文一级密钥进行解密处理,将生成的一级密钥进行密封处理,将生成的密封一级密钥保存于密钥数据库;
客户端提供二级密钥,利用所述会话密钥对所述二级密钥进行加密后,将密文二级密钥发送至所述密钥管理服务器,所述密钥管理服务器利用所述会话密钥对所述密文二级密钥进行解密处理,生成二级密钥,读取所述密封一级密钥,经解密封处理后生成所述一级密钥,利用所述一级密钥对所述二级密钥进行加密处理,将生成的第二密文二级密钥保存于所述密钥数据库;所述一级密钥与所述二级密钥的处理均在双方的enclave内存区中进行;
所述客户端向所述密钥管理服务器发送密钥请求,所述密钥管理服务器根据该密钥请求,从所述密钥数据库中读取该客户端对应的密封一级密钥及第二密文二级密钥,将所述密封一级密钥及第二密文二级密钥读入enclave内存区中,对所述密封一级密钥进行解密封处理,生成所述一级密钥,利用所述一级密钥对所述第二密文二级密钥进行解密处理,生成所述二级密钥;所述密钥管理服务器于其enclave内存区,利用所述会话密钥对所述二级密钥进行加密处理,生成第三密文二级密钥,将所述第三密文二级密钥发送至所述客户端;所述客户端接收所述第三密文二级密钥,将所述第三密文二级密钥读入其enclave内存区,于enclave内存区,利用所述会话密钥对所述第三密文二级密钥进行解密处理,生成所述二级密钥。
6.根据权利要求5所述的密钥安全管理方法,其特征在于,配置访问所述二级密钥的客户端enclave度量值列表,根据该客户端enclave度量值列表判断是否可获取相应的二级密钥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811029803.4A CN109150517B (zh) | 2018-09-04 | 2018-09-04 | 基于sgx的密钥安全管理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811029803.4A CN109150517B (zh) | 2018-09-04 | 2018-09-04 | 基于sgx的密钥安全管理系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109150517A CN109150517A (zh) | 2019-01-04 |
CN109150517B true CN109150517B (zh) | 2021-03-12 |
Family
ID=64826855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811029803.4A Active CN109150517B (zh) | 2018-09-04 | 2018-09-04 | 基于sgx的密钥安全管理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109150517B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109787762B (zh) * | 2019-02-28 | 2021-09-21 | 矩阵元技术(深圳)有限公司 | 服务器各自生成密钥分量的密钥管理方法、电子设备 |
CN110069935B (zh) * | 2019-03-20 | 2020-12-01 | 上海交通大学 | 基于标记内存的内部敏感数据保护方法及系统 |
CN110138799B (zh) * | 2019-05-30 | 2020-07-17 | 东北大学 | 一种基于sgx的安全云存储方法 |
CN110519054A (zh) * | 2019-08-29 | 2019-11-29 | 四川普思科创信息技术有限公司 | 一种基于可信计算技术进行物联网数据安全保护的方法 |
CN110889696A (zh) * | 2019-11-27 | 2020-03-17 | 杭州趣链科技有限公司 | 一种基于sgx技术的联盟区块链秘钥存储方法、装置、设备及介质 |
CN112231652B (zh) * | 2020-10-28 | 2022-02-22 | 百度在线网络技术(北京)有限公司 | 可信环境远程验证方法、装置、设备、系统及介质 |
CN115114631A (zh) * | 2021-03-18 | 2022-09-27 | 腾讯云计算(北京)有限责任公司 | 基于可信计算的本地密钥托管方法、装置、设备以及介质 |
CN113810382B (zh) * | 2021-08-24 | 2023-07-11 | 东北大学秦皇岛分校 | 一种用于抵御sgx侧信道攻击的密文加载方法 |
CN113691530B (zh) * | 2021-08-24 | 2023-04-07 | 上海瓶钵信息科技有限公司 | 一种基于sgx的对称秘钥生成管理系统、方法、设备及介质 |
CN115022093B (zh) * | 2022-08-05 | 2022-12-02 | 确信信息股份有限公司 | 基于多级密钥的可信cpu密钥计算方法及系统 |
CN115758396B (zh) * | 2022-08-31 | 2023-05-30 | 兰州大学 | 基于可信执行环境的数据库安全访问控制技术 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105389513B (zh) * | 2015-11-26 | 2018-10-12 | 华为技术有限公司 | 一种虚拟可信平台模块vTPM的可信执行方法和装置 |
US20180183578A1 (en) * | 2016-12-27 | 2018-06-28 | Intel Corporation | Provisioning keys for virtual machine scaling |
US10496841B2 (en) * | 2017-01-27 | 2019-12-03 | Intel Corporation | Dynamic and efficient protected file layout |
DE102018101307A1 (de) * | 2017-02-22 | 2018-08-23 | Intel Corporation | Techniken für SGX-Enklaven-Fernauthentifizierung |
CN107506652A (zh) * | 2017-07-13 | 2017-12-22 | 浙江大学 | CephFS分布式文件系统元数据访问保护机制的实现方法及系统 |
CN107506659B (zh) * | 2017-07-27 | 2020-04-07 | 西安电子科技大学 | 一种基于sgx的通用数据库的数据保护系统及方法 |
CN107919954B (zh) * | 2017-10-20 | 2019-05-14 | 浙江大学 | 一种基于sgx软件防护扩展指令的区块链用户密钥保护方法和装置 |
CN108418691B (zh) * | 2018-03-08 | 2020-10-27 | 湖南大学 | 基于sgx的动态网络身份认证方法 |
-
2018
- 2018-09-04 CN CN201811029803.4A patent/CN109150517B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109150517A (zh) | 2019-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109150517B (zh) | 基于sgx的密钥安全管理系统及方法 | |
Zhou et al. | TR-MABE: White-box traceable and revocable multi-authority attribute-based encryption and its applications to multi-level privacy-preserving e-healthcare cloud computing systems | |
CN111475796B (zh) | 基于秘密共享和量子通信服务站的抗量子计算身份认证方法及系统 | |
CN109510708B (zh) | 一种基于Intel SGX机制的公钥密码计算方法和系统 | |
CN101800738B (zh) | 一种移动设备安全访问与存储内网数据的实现系统及方法 | |
CN110519046B (zh) | 基于一次性非对称密钥对和qkd的量子通信服务站密钥协商方法和系统 | |
CN101515319B (zh) | 密钥处理方法、密钥密码学服务系统和密钥协商方法 | |
CN108347404B (zh) | 一种身份认证方法及装置 | |
CN109274502B (zh) | 公钥加密及密钥签名的创建方法、设备及可读存储介质 | |
US11444761B2 (en) | Data protection and recovery systems and methods | |
CN110535626B (zh) | 基于身份的量子通信服务站保密通信方法和系统 | |
Hahn et al. | Trustworthy delegation toward securing mobile healthcare cyber-physical systems | |
CN110493177B (zh) | 基于非对称密钥池对和序列号的量子通信服务站aka密钥协商方法和系统 | |
Gowtham et al. | Privacy enhanced data communication protocol for wireless body area network | |
US20230153445A1 (en) | Enhanced security systems and methods using a hybrid security solution | |
Hussien et al. | Scheme for ensuring data security on cloud data storage in a semi-trusted third party auditor | |
Kim et al. | Secure and efficient anonymous authentication scheme in global mobility networks | |
Chen et al. | Provable secure group key establishment scheme for fog computing | |
Senthil Kumari et al. | Key derivation policy for data security and data integrity in cloud computing | |
CN114866244A (zh) | 基于密文分组链接加密的可控匿名认证方法、系统及装置 | |
CN110535632B (zh) | 基于非对称密钥池对和dh协议的量子通信服务站aka密钥协商方法和系统 | |
Li et al. | Blockchain-Based Portable Authenticated Data Transmission for Mobile Edge Computing: A Universally Composable Secure Solution | |
Lewi et al. | Single-message credential-hiding login | |
CN114760026A (zh) | 一种身份鉴别方法和装置 | |
CN108429717B (zh) | 一种身份认证方法及装置 |
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 |