CN117040758A - 一种基于泛容计算架构的容器身份可信密钥管理方法 - Google Patents
一种基于泛容计算架构的容器身份可信密钥管理方法 Download PDFInfo
- Publication number
- CN117040758A CN117040758A CN202311023771.8A CN202311023771A CN117040758A CN 117040758 A CN117040758 A CN 117040758A CN 202311023771 A CN202311023771 A CN 202311023771A CN 117040758 A CN117040758 A CN 117040758A
- Authority
- CN
- China
- Prior art keywords
- container
- kdc
- file
- client
- key
- 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
Links
- 238000007726 management method Methods 0.000 title claims abstract description 23
- 230000005540 biological transmission Effects 0.000 claims description 38
- 230000003993 interaction Effects 0.000 claims description 28
- 238000000034 method Methods 0.000 claims description 27
- 238000004891 communication Methods 0.000 claims description 20
- 238000005516 engineering process Methods 0.000 claims description 14
- 238000012795 verification Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 12
- 238000003860 storage Methods 0.000 claims description 10
- 238000010276 construction Methods 0.000 claims description 9
- 238000009826 distribution Methods 0.000 claims description 4
- 238000009434 installation Methods 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims 1
- 230000006870 function Effects 0.000 description 9
- 238000012790 confirmation Methods 0.000 description 2
- 238000005336 cracking Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 208000013407 communication difficulty Diseases 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
一种基于泛容计算架构的容器身份可信密钥管理方法,具体包括如下步骤:步骤1,在基础容器镜像的基础上,生成KDC管理容器和客户端容器;步骤2,在步骤1构建的KDC容器中进行操作,构建域和配置KDC容器并启动安全信道;步骤3,在KDC容器中生成相关非对称的公钥和私钥,并以私钥为基础进行证书的申请;步骤4,利用TPM硬件对证书进行签名生成签名文件,把签名文件传输给客户端容器;步骤5,客户端容器利用上层协议验证签名;步骤6,客户端容器对接收到的证书进行解析,并加密协商的会话密钥,将生成的加密文件再次传输回给KDC容器,步骤7,KDC容器用私钥解出会话密钥,步骤8,利用会话密钥传输相关内容。
Description
技术领域
本发明属于云计算技术密钥领域,具体涉及一种基于泛容计算架构的容器身份可信密钥管理方法。
背景技术
云计算技术是一种基于互联网的计算模型,通过网络提供计算资源、存储空间和应用程序服务。云计算基于虚拟化技术,将物理计算资源(如服务器、存储和网络)划分为多个虚拟资源。这使得多个用户可以共享同一组物理资源,提高硬件的利用率和资源的灵活性。云计算提供了高可靠性和安全性的措施,包括数据备份、容灾和安全访问控制等。
泛容计算架构是一种基于Docker的新型分布式云计算架构,它在传统云计算基础上进行改善。该架构以容器为中心,实现了细粒度的应用划分和松耦合的服务架构。与传统云计算架构相比,泛容计算架构通过多容器的协同工作,取代了多进程的协同工作方式。这种架构能够有效解耦不同功能容器之间的关联,提供了更细致的应用颗粒度划分。同时,它也保障数据信息的安全性,注重内生安全。
Docker容器是一项由Google公司推出的技术,使用GO语言开发,并基于Linux内核的cgroup和namespaces实现进程封装隔离。该技术极大地简化了创建和维护的成本,使得Docker相比虚拟机技术更加轻便和快捷。Docker具有以下几个主要优点:首先,它能更高效地利用***资源;其次,它具有更快速的启动时间;此外,Docker提供了一致的运行环境,并且更容易进行维护和扩展;最后,它支持持续交付和部署,并且易于迁移。
TPM(Trusted Platform Module,可信平台模块)是一种以芯片形式集成在计算机主板或其他设备中的硬件安全模块,旨在提供计算机***的安全和数据保护功能。它支持强大的加密算法和密钥管理功能,能够生成、存储和管理对称密钥和非对称密钥。这使得TPM能够对存储在计算机***中的数据进行加密和解密,从而确保数据的机密性。除了加密功能,TPM还提供数字签名和认证功能,用于验证软件的真实性和完整性。TPM能够生成和验证数字签名,以确保软件没有被篡改或被恶意软件替换。这一功能对于防止恶意软件的运行和保障***安全至关重要。通过使用TPM的数字签名和认证功能,可以有效防止恶意软件的执行和恶意代码的注入,从而确保***的完整性。这种硬件级别的安全性保护使得TPM比软件级别的安全性更为可靠,能够防止未经授权的访问和数据泄露。
Kerberos是一种网络认证协议,用于在计算机网络中实现安全身份验证和授权管理。Kerberos使用对称密钥密码技术来进行身份验证,称为票据(Ticket)交换。它使用预共享的密钥来对票据进行加密和解密,确保了身份验证过程的安全性。用户登录后,Kerberos服务器为其生成一个加密的票据,用于访问其他网络服务。Kerberos采用中心化的身份管理模型。它使用一个可信的第三方身份验证服务器来颁***据和验证用户的身份,称之为密钥分发中心(KeyDistributionCenter,KDC),而密钥分发中心包括两部分,一部分是票据授予服务器(Ticket Granting ticket,TGS),一部分是认证服务器(AuthenticationServer,AS),专门用来认证客户端的身份并发放客户用于访问TGS的票据授予票据(TicketGive Ticket,TGT)。这种集中式管理简化了身份管理的复杂性,并提供了一个可信任的实体来处理身份验证过程。
在泛容计算架构中,一个用户的业务会被拆分成多个独立的精细服务,每个服务都由一个独立的容器完成。因此,为了完成用户的业务需求,需要多个负责不同功能的容器协同工作。在容器之间进行可信交互成为必要条件,通常可以由会话密钥这一途径进行解决,但是Docker本身并不提供这种安全服务认证。容器和容器交互可能是高频率也可能是低频率的,如果在第一次容器交互过程中完成认证,其余容器高频率对某一容器进行访问时,该容器在仅能确定一开始和自己交互的容器是安全的情况下再次确定其他容器为安全容器会变得困难。在相隔时间过长的情况下,如何使双方容器确认对方容器是上一次沟通中确认过身份的容器是一个难题。该过程中的困难和问题主要根源在于Docker容器本身所处的执行环境安全级别低,容易遭受攻击者在传输过程中对Docker传输的文件进行文件窃取攻击,没有通过可信方式对传输过程中的文件提供安全保障。因此需要一种方法来对容器身份和容器密钥交互进行保护和可信加密。
发明内容
针对泛容计算架构中Docker容器之间进行密钥协商但协商过程中没有通过可信硬件对传输过程进行加密保障而导致的身份传输泄露、密钥沟通困难的问题,本发明的目的是提供一种基于泛容计算架构的容器身份可信密钥管理方法,解决了当泛容计算架构在一项业务中,如果某个容器或多个容器在进行初次交互因不安全环境导致的双方可信身份认证困难问题和对密钥证书传输提供安全保证。另外通过Kerberos技术对第三方身份验证管理容器进行设计,通过身份认证和相关认定凭证进行分发对容器进行可信认证,并认定在规定时间内该容器身份在泛容计算架构中属于可信容器,进一步提升泛容计算架构中容器的可靠性以及数据的安全性。
为实现上述目的,本发明采用以下技术方案:
一种基于泛容计算架构的容器身份可信密钥管理方法,包括至少一个负责进行账号生成、密钥分发、证书签名的KDC容器和至少一台用于存储该KDC容器数据的存储主机,KDC容器需要至少两个客户端容器完成Kerberos服务的票据交互,两个客户端容器都可以向KDC容器进行账号录入、身份认证、服务请求、交互认证操作,所述对客户端容器账号进行监控的KDC容器对整个泛容计算以Kerberos技术来进行交互请求的客户端容器起到监管作用,客户端容器账号录入到KDC容器的数据库中,存储主机对KDC容器进行数据的存贮;
具体包括以下步骤:
步骤1,在基础容器镜像的基础上,定义负责身份认证和Kerberos域构建的域镜像,包括建立整个Kerberos域和相关可信硬件TPM的调用和安全传输信道的工具安装,生成负责进行身份认证和域构建的KDC容器和生成需要在Kerberos域中运行的客户端容器;
步骤2,在步骤1构建的KDC容器中进行操作,安装Kerberos技术要求的工具,构建Kerberos技术域,在构建过程中设定自身Ip地址为整个域的管理员,启动安全信道服务;
步骤3,在KDC容器中生成相关非对称的公钥和私钥,并以私钥为基础进行证书的申请,KDC容器进行自签名操作生成证书的申请请求.csr文件,再利用.csr文件使用上层协议Openssl的操作命令操作生成.crt证书文件;
步骤4,利用TPM硬件对.crt证书文件进行签名并生成签名文件,通过常规文件传输框架进行签名文件和.crt证书文件的传输,把签名文件、.crt证书文件传输给需要进行密钥交互的客户端容器;
步骤5,客户端容器利用上层协议验证签名文件和.crt证书文件;
步骤6,对证书核验正确以后,客户端容器利用解析出来的公钥对约定的会话密钥进行加密,将生成的加密文件再次传输回给KDC容器;
步骤7,KDC容器在收到步骤6生成的加密文件以后,KDC容器利用在步骤3中生成的私钥来对以公钥进行加密的加密文件进行解密操作,得到客户端容器约定的会话密钥K;
步骤8,获得会话密钥K以后,客户端容器给KDC容器传输客户端容器用户名和密码给KDC容器,自身生成的后续需要交流的对话密钥也会存在KDC容器中方便进行后续Kerberos服务操作,KDC容器将传输过来的客户端容器用户名和密码存储在KDC容器的数据库中,在Kerberos域中创建客户端容器对应的账户并赋予权限,确定其加入Kerberos域,本次以可信TPM硬件基础的密钥交互操作结束。
进一步地,所述在步骤4中,KDC容器可以对传输的.crt证书文件进行基于TPM的可信加密,以硬件加密为基础对.crt证书文件进行可信签名操作,攻击者无法获取以物理机为基础进行加密的密钥则无法破解传输过程中的加密文件,确保获取方能够获得一个安全的文件。
进一步地,所述步骤5的具体做法为:
客户端容器通过轻量级传输框架获得传输过来的签名文件和.crt证书文件以后,则需要调用对应的上层协议Openssl接口对以TPM可信硬件为基础签名的签名文件和传输的.crt证书文件进行验证:如果.crt证书文件被篡改,验证不会通过,客户端容器可以选择重新发起请求,要求KDC容器重新提供对应的.crt证书文件和签名文件;如果.crt证书文件没有被篡改,在客户端容器中显示为签名核验正确,客户端容器和KDC容器完成了一次以TPM可信硬件为基础的加密证书传输。
进一步地,所述步骤6的具体做法:
对证书核验正确以后,客户端容器端对接收到的.crt证书文件进行解析,拿到.crt证书文件中KDC容器的公钥,客户端容器为本次会话设定一个会话密钥假定为K,以K为约定的会话密钥来为KDC容器和客户端容器的交互进行通信加密,客户端容器利用解析出来的公钥对约定的会话密钥进行加密,将生成的加密文件再次传输回给KDC容器。
与现有技术相比,本发明的有益效果是:
本发明一种基于泛容计算架构的容器身份可信密钥管理方法,是一种针对新的云计算体系架构泛容架构中进行密钥协商和交互的改进和优化,可以使泛容计算架构中密钥传输的安全由硬件进行保护,基于一个管理容器对集群中的容器进行身份验证和管理可以帮助操作人员对集群中的容器身份进行操作,解决了在大集群中容器因为身份验证不统一和身份管理不集中导致的可能存在的身份泄露问题;基于可信硬件为基础的密钥签名能够进一步保证管理容器的可信权威度,管理容器能够对不可信容器进行相关账号删除等操作,借由TPM服务对操作进行加密以后传输给其他容器,确保其他容器在以后过程中不会再对该容器的请求响应,增加容器交互的安全性。
主要解决的技术问题是相较于传统的云计算中,如果传统云计算需要使用Kerberos技术进行相关账户在管理容器中的录入,则需要确保整个传输过程中是安全的才能保证自己的账户传输不会被窃取,而攻击者在这一传输过程中可以攻击的方式会有很多种,例如攻击安全信道传输导致用户不能够使用安全的信道进行传输,或者攻击传输文件本身导致用户拿到的文件并不是原有文件,或者进行高频率的文件发送攻击导致用户无法确认自己收到的哪个文件是用户一开始想要接收的文件等。使用了TPM加密以后,因为是借由TPM多加密一次,则破解难度增大,加大了攻击者的破解难度,而且攻击者不能够复制出相同的签名文件,则用户接收到文件后只需要查看是否有签名文件即可;因为使用TPM加密,基于硬件基础进行加密,则容器交互可以在风险环境中构建第一次可信通信,在拿到交互密钥以后,就可以使用双方约定的账户密码进行基于安全信道的可信传输,从硬件方面解决了安全信道传输问题。
附图说明
图1是本发明一种基于泛容计算架构的容器身份可信密钥管理方法的实施流程图。
图2是一种基于泛容计算架构的一个利用Kerberos技术完成身份认证的实现架构图。
具体实施方式
下面结合附图和具体实施的方式,对本发明一种基于泛容计算架构的容器可信密钥管理的方法进行进一步详细的说明。
一种基于泛容计算架构的容器身份可信密钥管理方法,包括至少一个负责进行账号生成、密钥分发、证书签名的KDC容器和至少一台用于存储该KDC容器数据的存储主机,KDC容器需要至少两个客户端容器完成Kerberos服务的票据交互,两个客户端容器都可以向KDC容器进行账号录入、身份认证、服务请求、交互认证操作,所述对客户端容器账号进行监控的KDC容器对整个泛容计算以Kerberos技术来进行交互请求的客户端容器起到监管作用,客户端容器账号录入到KDC容器的数据库中,存储主机对KDC容器进行数据的存贮;
如图1所示,一种基于泛容计算架构的容器身份可信密钥管理方法,具体包括以下步骤:
步骤1,在基础容器镜像的基础上,定义负责身份认证和Kerberos域构建的域镜像,包括建立整个Kerberos域和相关可信硬件TPM的调用和安全传输信道的工具安装,生成负责进行身份认证和域构建的KDC容器和生成需要在Kerberos域中运行的客户端容器;
步骤2,在步骤1构建的KDC容器中进行操作,安装Kerberos技术要求的工具,构建Kerberos技术域,在构建过程中设定自身Ip地址为整个域的管理员,启动安全信道服务;
步骤3,在KDC容器中生成相关非对称的公钥和私钥,并以私钥为基础进行证书的申请,KDC容器进行自签名操作生成证书的申请请求.csr文件,再利用.csr文件使用上层协议Openssl的操作命令操作生成.crt证书文件;
步骤4,利用TPM硬件对.crt证书文件进行签名并生成签名文件,通过常规文件传输框架进行签名文件和.crt证书文件的传输,把签名文件、.crt证书文件传输给需要进行密钥交互的客户端容器,具体做法:
KDC容器可以对传输的.crt证书文件进行基于TPM的可信加密,以硬件加密为基础对.crt证书文件进行可信签名操作,攻击者无法获取以物理机为基础进行加密的密钥则无法破解传输过程中的加密文件,确保获取方能够获得一个安全的文件;
步骤5,客户端容器通过轻量级传输框架获得传输过来的签名文件和.crt证书文件以后,则需要调用对应的上层协议Openssl接口对以TPM可信硬件为基础签名的签名文件和传输的.crt证书文件进行验证:如果.crt证书文件被篡改,验证不会通过,客户端容器可以选择重新发起请求,要求KDC容器重新提供对应的.crt证书文件和签名文件;如果.crt证书文件没有被篡改,在客户端容器中显示为签名核验正确,客户端容器和KDC容器完成了一次以TPM可信硬件为基础的加密证书传输;
步骤6,对证书核验正确以后,客户端容器利用解析出来的公钥对约定的会话密钥进行加密,将生成的加密文件再次传输回给KDC容器,具体做法:
对证书核验正确以后,客户端容器端对接收到的.crt证书文件进行解析,拿到.crt证书文件中KDC容器的公钥,客户端容器为本次会话设定一个会话密钥假定为K,以K为约定的会话密钥来为KDC容器和客户端容器的交互进行通信加密,客户端容器利用解析出来的公钥对约定的会话密钥进行加密,将生成的加密文件再次传输回给KDC容器;
步骤7,KDC容器在收到步骤6生成的加密文件以后,KDC容器利用在步骤3中生成的私钥来对以公钥进行加密的加密文件进行解密操作,得到客户端容器约定的会话密钥K;
步骤8,获得会话密钥K以后,客户端容器给KDC容器传输客户端容器用户名和密码给KDC容器,自身生成的后续需要交流的对话密钥也会存在KDC容器中方便进行后续Kerberos服务操作,KDC容器将传输过来的客户端容器用户名和密码存储在KDC容器的数据库中,在Kerberos域中创建客户端容器对应的账户并赋予权限,确定其加入Kerberos域,本次以可信TPM硬件基础的密钥交互操作结束。
本发明提出通过使用主机可信硬件TPM来对密钥协商过程中的文件传输提供安全加密服务,这种方式主要解决了相比于传统的容器交互中仅依赖上层协议和传输信道进行数据交互和沟通而导致被潜在攻击者通过在传输过程中对传输密钥进行文件攻击导致身份泄露、密钥被窃取的问题和在泛容计算中因为需要多个容器间协同工作,所以出现的容器间的数据交互问题,以及当某个或多个容器受到攻击或存在恶意代码等,容器身份不再可信需要对该容器的身份进行修改删除的管理问题。
基于泛容计算架构的容器身份可信密钥管理的方法通过结合主机TPM硬件的方法,使用硬件对传输文件进行加密签名,结合Kerberos协议在KDC容器进行密钥存储和身份确认,能够解决在传统密钥协商过程中因为潜在传输文件被攻击导致的密钥泄露和身份确认问题,利用安全信道结合可信硬件能够加强泛容计算架构下容器之间的通信安全,确保所有密钥传输过程全部通过可信硬件进行传输,确保泛容计算架构下容器在使用TPM可信硬件对传输文件进行加密以后可以为容器提供以硬件为基础的可信传输,从而保证本次会话过程中文件不会被篡改。
如图2所示,是一个基于泛容计算架构的Kerberos域内KDC容器对客户端容器进行身份认证和客户端容器访问服务端签***据的架构图。在第一次服务申请中,客户端容器会向KDC容器中的认证服务器AS部分进行申请,这一部分以明文的形式进行发送,客户端容器明文发给AS自己的用户名、IP地址和时间戳。AS收到客户端容器的申请以后,迅速在数据库中搜索是否有该IP地址和用户名的账号存在,如果存在则用以该用户名存储在KDC容器中的密钥加密一个文件称为TGT,该文件中包括此时的时间戳、客户端容器和票据授予服务器TGS的会话密钥(Client-TGS_Session Key,CT_SK)、TGT有效时间,此为文件的一部分,另一部分则是KDC容器使用自己密钥加密的部分,该部分是KDC容器进行校验操作使用的部分。此时把该TGT文件传回给客户端容器。当客户端容器拿到该TGT文件后,可以通过自身的密钥解出该TGT文件的第一部分,即时间戳、客户端容器和TGS会话密钥CT_SK,另一部分无法解出则保持不变。
在第二次通信时,客户端容器已经拿到了和TGS会话需要的CT_SK密钥,利用该密钥加密客户端容器的用户名、IP、时间戳,明文写出客户端容器想要访问的服务端容器IP,并且把在第一次通信中无法解出的TGT部分一并传输给TGS。在这一步中,因为客户端容器可以解出本次AS给出的时间戳,如果时间戳和本次通信时间相距过长,那客户端容器可以认为该AS签发的TGT文件不可信,需要重新要求签发,客户端容器可以重新进行明文的申请。TGS拿到该加密文件后,先对明文部分进行分析,TGS先对明文的服务器容器进行分析,如果明文要求的服务端容器IP此时被其他用户端容器访问无法提供服务,本次通信以服务端容器无法提供服务而结束;若该服务端容器可以提供服务,TGS利用CT_SK会话密钥解析本次文件,再利用自身密钥解出第一次通信中客户端容器无法解出的TGT部分,对两部分中加密的用户名进行对照,若是同一个用户名,则TGS认为第一次通信和第二次通信交互的容器为同一个客户端容器,确保身份没有被窃取。此时因为服务端容器已经在服务端容器和KDC容器进行TPM加密的密钥交互中存放了自己的密钥在KDC容器中,则KDC容器可以用服务端容器的密钥加密一个票据(SeverTicket,ST)给客户端容器,该ST中包括客户端容器的名字、IP、访问服务器容器的IP、该ST有效时间、时间戳、客户端容器和服务端容器的会话密钥(Client-Sever Session Key,CS_SK)。此时KDC容器也要用第一次通信中的会话密钥CT_SK加密CS_SK、时间戳、ST有效时间,一并将文件发给客户端容器。
在第三次通信中,客户端容器收到了KDC容器发到的文件,利用第一次通信中的CT_SK解析第二次通信中传输过来的文件中的第二部分,此时客户端容器会得到CS_SK和时间戳、ST有效时间。在客户端容器验证了ST有效时间和时间戳符合通信要求以后,利用解析出来的CS_SK会话密钥加密客户端容器的用户名、IP、时间戳、ST有效时间,和第二次通信中收到的ST文件一并传输给服务端容器。服务端容器在收到了该票据以后,使用服务端容器自身持有的密钥解出ST中以服务端容器密钥加密的部分,拿到会话密钥CS_SK,利用CS_SK解密客户端容器发来的文件,两部分文件进行相关对照,如果两部分解析出的用户名和IP一致,则服务端容器认为向KDC容器申请身份认证和向服务端容器申请服务访问的用户端容器为同一用户,该身份认证完成,此时客户端容器和服务端容器在Kerberos域中完成可信认证,进行相关服务交互。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (4)
1.一种基于泛容计算架构的容器身份可信密钥管理方法,其特征在于,包括至少一个负责进行账号生成、密钥分发、证书签名的KDC容器和至少一台用于存储该KDC容器数据的存储主机,KDC容器需要至少两个客户端容器完成Kerberos服务的票据交互,两个客户端容器都可以向KDC容器进行账号录入、身份认证、服务请求、交互认证操作,所述对客户端容器账号进行监控的KDC容器对整个泛容计算以Kerberos技术来进行交互请求的客户端容器起到监管作用,客户端容器账号录入到KDC容器的数据库中,存储主机对KDC容器进行数据的存贮;
具体包括以下步骤:
步骤1,在基础容器镜像的基础上,定义负责身份认证和Kerberos域构建的域镜像,包括建立整个Kerberos域和相关可信硬件TPM的调用和安全传输信道的工具安装,生成负责进行身份认证和域构建的KDC容器和生成需要在Kerberos域中运行的客户端容器;
步骤2,在步骤1构建的KDC容器中进行操作,安装Kerberos技术要求的工具,构建Kerberos技术域,在构建过程中设定自身Ip地址为整个域的管理员,启动安全信道服务;
步骤3,在KDC容器中生成相关非对称的公钥和私钥,并以私钥为基础进行证书的申请,KDC容器进行自签名操作生成证书的申请请求.csr文件,再利用.csr文件使用上层协议Openssl的操作命令操作生成.crt证书文件;
步骤4,利用TPM硬件对.crt证书文件进行签名并生成签名文件,通过常规文件传输框架进行签名文件和.crt证书文件的传输,把签名文件、.crt证书文件传输给需要进行密钥交互的客户端容器;
步骤5,客户端容器利用上层协议验证签名文件和.crt证书文件;
步骤6,对证书核验正确以后,客户端容器利用解析出来的公钥对约定的会话密钥进行加密,将生成的加密文件再次传输回给KDC容器;
步骤7,KDC容器在收到步骤6生成的加密文件以后,KDC容器利用在步骤3中生成的私钥来对以公钥进行加密的加密文件进行解密操作,得到客户端容器约定的会话密钥K;
步骤8,获得会话密钥K以后,客户端容器给KDC容器传输客户端容器用户名和密码给KDC容器,自身生成的后续需要交流的对话密钥也会存在KDC容器中方便进行后续Kerberos服务操作,KDC容器将传输过来的客户端容器用户名和密码存储在KDC容器的数据库中,在Kerberos域中创建客户端容器对应的账户并赋予权限,确定其加入Kerberos域,本次以可信TPM硬件基础的密钥交互操作结束。
2.根据权利要求1所述的一种基于泛容计算架构的容器身份可信密钥管理方法,其特征在于,所述在步骤4中,KDC容器可以对传输的.crt证书文件进行基于TPM的可信加密,以硬件加密为基础对.crt证书文件进行可信签名操作,攻击者无法获取以物理机为基础进行加密的密钥则无法破解传输过程中的加密文件,确保获取方能够获得一个安全的文件。
3.根据权利要求1所述的一种基于泛容计算架构的容器身份可信密钥管理方法,其特征在于,所述步骤5的具体做法为:
客户端容器通过轻量级传输框架获得传输过来的签名文件和.crt证书文件以后,则需要调用对应的上层协议Openssl接口对以TPM可信硬件为基础签名的签名文件和传输的.crt证书文件进行验证:如果.crt证书文件被篡改,验证不会通过,客户端容器可以选择重新发起请求,要求KDC容器重新提供对应的.crt证书文件和签名文件;如果.crt证书文件没有被篡改,在客户端容器中显示为签名核验正确,客户端容器和KDC容器完成了一次以TPM可信硬件为基础的加密证书传输。
4.根据权利要求1所述的一种基于泛容计算架构的容器身份可信密钥管理方法,其特征在于,所述步骤6的具体做法:
对证书核验正确以后,客户端容器端对接收到的.crt证书文件进行解析,拿到.crt证书文件中KDC容器的公钥,客户端容器为本次会话设定一个会话密钥假定为K,以K为约定的会话密钥来为KDC容器和客户端容器的交互进行通信加密,客户端容器利用解析出来的公钥对约定的会话密钥进行加密,将生成的加密文件再次传输回给KDC容器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311023771.8A CN117040758A (zh) | 2023-08-14 | 2023-08-14 | 一种基于泛容计算架构的容器身份可信密钥管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311023771.8A CN117040758A (zh) | 2023-08-14 | 2023-08-14 | 一种基于泛容计算架构的容器身份可信密钥管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117040758A true CN117040758A (zh) | 2023-11-10 |
Family
ID=88640836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311023771.8A Pending CN117040758A (zh) | 2023-08-14 | 2023-08-14 | 一种基于泛容计算架构的容器身份可信密钥管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117040758A (zh) |
-
2023
- 2023-08-14 CN CN202311023771.8A patent/CN117040758A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102404314B (zh) | 远程资源单点登录 | |
EP1914658B1 (en) | Identity controlled data center | |
KR101130415B1 (ko) | 비밀 데이터의 노출 없이 통신 네트워크를 통해 패스워드 보호된 비밀 데이터를 복구하는 방법 및 시스템 | |
US20140270179A1 (en) | Method and system for key generation, backup, and migration based on trusted computing | |
CN109361668A (zh) | 一种数据可信传输方法 | |
US20050149722A1 (en) | Session key exchange | |
US8953805B2 (en) | Authentication information generating system, authentication information generating method, client apparatus, and authentication information generating program for implementing the method | |
KR101817152B1 (ko) | 신뢰된 권한 정보 제공 방법, 신뢰된 권한 정보를 포함하는 사용자 크리덴셜 발급 방법 및 사용자 크리덴셜 획득 방법 | |
CN106533693B (zh) | 轨道车辆监控检修***的接入方法和装置 | |
CN111245813B (zh) | 密码资源池***、加密方法、电子设备及存储介质 | |
CN111740824B (zh) | 可信应用管理方法及装置 | |
CN108521424B (zh) | 面向异构终端设备的分布式数据处理方法 | |
CN106911744B (zh) | 一种镜像文件的管理方法和管理装置 | |
CN113872992B (zh) | 一种在BMC***中实现远程Web访问强安全认证的方法 | |
KR20180087543A (ko) | 키 관리 방법 및 fido 소프트웨어 인증장치 | |
CN115277168A (zh) | 一种访问服务器的方法以及装置、*** | |
CN113271207A (zh) | 基于移动电子签名的托管密钥使用方法、***、计算机设备及存储介质 | |
CN115549930B (zh) | 登录操作***的验证方法 | |
CN115473655B (zh) | 接入网络的终端认证方法、装置及存储介质 | |
CN108616517B (zh) | 高可靠云平台服务提供方法 | |
JP2014022920A (ja) | 電子署名システム、電子署名方法および電子署名プログラム | |
CN117040758A (zh) | 一种基于泛容计算架构的容器身份可信密钥管理方法 | |
CN108449358B (zh) | 基于云的低延时安全计算方法 | |
JP2000261428A (ja) | 分散処理システムにおける認証装置 | |
CN114021094B (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 |