WO2014183392A1 - 分布式环境下的安全通信认证方法及系统 - Google Patents

分布式环境下的安全通信认证方法及系统 Download PDF

Info

Publication number
WO2014183392A1
WO2014183392A1 PCT/CN2013/086753 CN2013086753W WO2014183392A1 WO 2014183392 A1 WO2014183392 A1 WO 2014183392A1 CN 2013086753 W CN2013086753 W CN 2013086753W WO 2014183392 A1 WO2014183392 A1 WO 2014183392A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
server
tgs
ticket
message
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.)
Ceased
Application number
PCT/CN2013/086753
Other languages
English (en)
French (fr)
Inventor
荆艳影
杨建武
于晓明
张丹
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.)
Peking University
Peking University Founder Group Co Ltd
Beijing Founder Electronics Co Ltd
Original Assignee
Peking University
Peking University Founder Group Co Ltd
Beijing Founder Electronics Co Ltd
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 Peking University, Peking University Founder Group Co Ltd, Beijing Founder Electronics Co Ltd filed Critical Peking University
Priority to EP13884396.6A priority Critical patent/EP2999158A4/en
Priority to JP2016513199A priority patent/JP2016519540A/ja
Priority to US14/890,952 priority patent/US20160119141A1/en
Publication of WO2014183392A1 publication Critical patent/WO2014183392A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

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/3218—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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • H04L9/3221—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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31—User authentication
    • G06F21/33—User authentication using certificates
    • G06F21/335—User authentication using certificates for accessing specific resources, e.g. using Kerberos tickets
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • 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/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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/0884—Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • 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/321—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 a third party or a trusted authority
    • H04L9/3213—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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • 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/3234—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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • 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
    • H04L9/3268—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 using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]

Definitions

  • the present invention relates to the field of computer information security technologies, and in particular, to a secure communication authentication method and system in a distributed environment. Background technique
  • the security considerations of the operating system of the terminal platform are not many.
  • the terminal platform is not considered to meet the requirements of the terminal platform when starting and loading the operating system, and it is generally assumed to be secure. Without a reliable terminal platform, it is impossible to talk about trusted networks and trusted network connections.
  • TCG Trusted Computing Group
  • TCPA focused on enhancing its security from the computing platform architecture and in January 2001 released the Trusted Computing Platform standard specification. In March 2003, TCPA was reorganized into TCG (Trusted Computing Group), which aims to improve the overall security by using a trusted computing platform supported by hardware security modules in computing and communication systems.
  • TCG Trusted Computing Group
  • the TCG organization has developed the TPM (Trusted Platform Moudle) standard, and many security chips currently comply with this specification. And because of its hardware security, it is becoming the standard configuration for PCs, especially portable PCs.
  • Zero knowledge proof, - zero-knowledge proof was proposed by Goldwasser et al. in the early 1980s. It refers to the prover's ability to provide no useful letter to the verifier. In the case of interest, the verifier is believed to be correct.
  • a zero-knowledge proof is essentially an agreement involving two or more parties, a series of steps required by two or more parties to complete a task. The prover proves to the verifier and believes that he knows or owns a message, but the attestation process cannot disclose any information about the proved message to the verifier.
  • a lot of facts prove that zero-knowledge proof is very useful in cryptography. If you can use zero-knowledge proof for verification, you will be able to solve many problems effectively.
  • Kerberos is a network authentication protocol designed to provide powerful authentication services for client I server applications through a key system.
  • the implementation of the authentication process does not depend on the authentication of the host operating system, does not require trust based on the host address, does not require physical security of all hosts on the network, and assumes that packets transmitted on the network can be arbitrarily read, modified, and inserted. .
  • Kerberos as a trusted third-party authentication service, performs authentication services through traditional cryptographic techniques (such as shared keys).
  • the authentication process is as follows: The client sends a request to the authentication server (AS) requesting the certificate of a server, and then the response of the AS contains the certificates encrypted with the client key.
  • AS authentication server
  • the certificate consists of: 1) the server "ticket”; 2) a temporary encryption key (also known as the session key "session key”).
  • the client transmits the ticket (including the client identity encrypted with the server key and a copy of the session key) to the server.
  • the session key can (usually shared via the client and server) used to authenticate the client or authentication server, or to provide cryptographic services for future communications between the communicating parties, or to provide further communication to the communicating parties by exchanging independent subsession keys. Communication encryption service.
  • an object of the present invention is to provide a secure communication authentication method and system in a distributed environment.
  • the method and system improve various aspects of the platform in the process of TCG remote proofing, expand the platform method, combine zero knowledge, Kerberos framework and virtual technology to design a new Certification method.
  • the method mainly improves the platform information exposure, the trusted third party bottleneck and the avoidance complexity in the above methods.
  • the technical solution adopted by the present invention is: A secure communication authentication method in a distributed environment, where the user uses the zero-knowledge proof method for identity authentication, including the following steps:
  • the user sends an identity certificate request to the authentication server AS in the Kerberos server.
  • the AS After the user identity verification is passed, the AS sends a ticket and an authentication code corresponding to the identity of the user to the user, and the ticket includes an AIK certificate generated by a combination of the Kerberos server and the zero-knowledge certificate;
  • a secure communication authentication system in a distributed environment including the following devices:
  • a user platform where the user platform refers to a client that needs to perform AIK certificate authentication
  • the Kerberos server includes an authentication server AS and a ticket granting server TGS, and the authentication server AS is configured to check whether the attribute information provided by the user platform is in the security valve, and issue and associate the TGS ticket with the user platform in the security valve.
  • the AIK certificate, the ticket granting server TGS detects whether the TGS ticket held by the user platform expires, and issues a communicable application service ticket to the legal user platform;
  • the remote attestation server is configured to check the AIK certificate and the application service ticket when the user platform holding the application service ticket communicates with the remote attestation server, and then apply the service after being legalized;
  • the user platform, the Kerberos server, and the remote attestation server are connected to each other through the Internet.
  • the effect of the present invention is that: the method and system of the present invention can solve the privacy exposure and efficiency problems faced by remote servers in mutual authentication in existing distributed systems.
  • This method combines zero-knowledge proof, Kerberos technology and virtual TPM technology.
  • the platform applies for AIK certificate, it uses zero-knowledge proof, uses Kerberos as TTP, Kerberos is divided into AS and TGS, AS performs AIK authentication, then A TPM only needs Perform an AS authentication.
  • Figure 1 is a structural view of the system of the present invention
  • FIG. 2 is a schematic diagram showing the structure of a certificate system in a remote proof process of the method of the present invention
  • FIG. 3 is a flow chart of the method of the present invention
  • a secure communication authentication system in a distributed environment includes the following devices: a user platform, where the user platform refers to a client that needs to perform certificate authentication;
  • a Kerberos server including an authentication server AS and a ticket granting server TGS, wherein the authentication server AS is configured to check whether the attribute information provided by the user platform is in a security valve, and The TGS ticket and the associated AIK certificate are issued to the user platform in the security valve, and the ticket granting server TGS detects whether the TGS ticket held by the user platform expires, and issues a communicable application service ticket to the legal user platform;
  • the remote attestation server is configured to check the AIK certificate and the application service ticket when the user platform holding the application service ticket communicates with the remote attestation server, and then apply the application service after being legal.
  • the user platform, the Kerberos server, and the remote attestation server are connected to each other via the Internet.
  • the user platform includes the following modules:
  • the security chip TPM/TCM is used to record the metric value of the system attribute information of the user platform; the XEN virtual machine is used to provide a secure and reliable implementation platform for the certification process. Sharing workloads on the same platform often needs to be independent for a variety of reasons. Different interests determine that the websites of competitive businesses need to access each other's data, and there are many unsafe factors. In addition, malware disrupts the shared hardware environment in which these software functions. Virtualization is increasingly used for production, making software security more demanding integrity and workload isolation. As shown in Figure 2, Figure 2 is a schematic diagram of the architecture of the user platform. The vTPM architecture is built. The user platform is required to be equipped with a security chip TPM/TCM. This document uses TPM as an example. The CPU must have Intel-VT or AMD-V virtual technology. BIOS supports TCG specification and Advanced Configuration and Power Management Interface (ACPI); also requires Linux system boot loader with IMA metrics
  • the XEN virtual machine mainly includes three virtual domains.
  • the TPM After the user platform is powered on, the TPM starts with its own trusted metric root. First, it performs integrity measurement on other parts of the BIOS, and stores the metrics in the PCR of the trusted cryptographic module. According to the selected judgment mechanism to judge the integrity of the BIOS, if the integrity is not destroyed, run the BIOS; and measure the integrity of the Initial Program Loader-IPL/Master Boot Record-MBR. Determine the IPL/MBR integrity based on the judgment mechanism. If the IPL/MBR integrity is not destroyed, run the MBR; then measure the operating system (OS) kernel degree by IPL/MBR. Volume and load component GRUB-IMA (GNU GRand Unified Bootloader-IMA,
  • OS operating system
  • the integrity of the OS kernel is measured by the component if the integrity of the component is not corrupted. If not changed, the OS kernel is run. After the OS kernel starts, it enters Domain 0. Based on the same mechanism, it detects the integrity of the OS service and passes the trust relationship to form a trusted root, which ensures that the system being started is trusted.
  • Domain U is a paravirtualized virtual domain. It mainly involves the following parts: The function module vTPM in XEN. Because the XEN virtual domain itself cannot interact with the TPM, vTPM is used to interact with the TPM Emulator.
  • the TPM Emulator calls the data of the underlying TPM hardware and acts as the TPM hardware for external data interaction.
  • the communication driver between XEN and the TPM Emulator is xen-tpmu. This driver needs to be added when compiling the kernel; IAIK jTSS is Developed in Java using the Institut fuer Angewandtelnformations technik und Medunikation (IAIK), the implementation of the TCG Software Stack (TSS) provides access to upper-level applications.
  • the vTPM is located in the XEN virtual machine, that is, in Domain 0, but functionally, the Domain U program interacts with the TPM Emulator in Domain 0, which is the key to the execution of the functional modules in Domain U, so the dotted line is used in Figure 2. Go to the area of Domain U.
  • HVM-Domain is a fully virtualized virtual domain, which mainly involves the following parts: BIOS supporting TCG specification; OS loader with measurement function, forming trusted root; vTPM component for data interaction between virtual domain and TPM Emulator; When compiling the kernel, compile the IMA component invented by IBM into the kernel (Linux- ⁇ ), view the measurement results of the entire system and measure the software running in the OS; Linux-IMA needs to interact with the TPM hardware to view the TPM data.
  • the OS needs to load the TPM driver tpm-tis; the user interface programming software TIM and TPM Emulator IAIK jTSS; Open Platform Trust Services (OpenPTS) is proposed by TCG, the concept ⁇ (Proof-of-Concept, PoC) and platform Trusted Trust Services (PTS) implementations, working with other trusted computing-related open source software for trusted computing with remote challengers.
  • OpenPTS Open Platform Trust Services
  • Domain 0 is responsible for coordinating the management of communication between computing domains. After starting the TPM Emulator, it is in a wait state, waiting for the other party to communicate with itself. Start vTPMManager to manage communication between TPM Emulator and vTPM.
  • ID card is required, in the Domain U, the user publishes the TPM command by using the IAIK jTSS to prepare the TPM identity related data required for the identity authentication.
  • the vTPM communicates with the vTPMManager in the Domain 0. Inform them to try to pass the TPM Emulator for data interaction.
  • the vTPMManager will send the command to the TPM Emulator. After receiving the command, the TPM Emulator will adjust the underlying.
  • IAIK jTSS will send an identity authentication request to the AS after receiving all the required data.
  • the AS will send the AIK certificate to IAIK jTSS.
  • IAIK jTSS will transfer it to Domain 0 for saving.
  • HVM-Domain will extract the AIK certificate from Domain 0, then apply for the application ticket at TCG.
  • it After receiving the ticket, it will send a remote certificate request to the remote attestation server, and send the AIK certificate and metric list to the remote attestation server for remote certification.
  • This method of implementation requires each virtual domain to perform its duties and isolate each other, improving security.
  • a secure communication authentication method in a distributed environment where the user uses the zero-knowledge authentication method for identity authentication, including the following steps:
  • Step S1 The user sends an identity certificate request to the authentication server AS in the Kerberos server, KRB_AS_REQ, and after receiving the request, the AS verifies the identity of the user;
  • Step S2 After the user identity verification is passed, the AS sends a ticket and an authentication code corresponding to the identity of the user to the user, where the ticket includes an AIK certificate generated by the Kerberos server and the zero-knowledge certificate;
  • step S3 when the user needs to perform remote authentication with the remote attestation server, the ticket and the authentication code are held in a session with the ticket granting server TGS to obtain a ticket for communication with the application server; and in step S4, the user and the remote attestation server complete the remote attestation.
  • the process of generating an AIK certificate by combining Kerberos with zero-knowledge proof is shown in FIG. 4, and the certificate generation process is as follows:
  • the user encapsulates the KRB_AS_REQ message like the original Kerberos protocol, except that the predefined block is replaced by the following message: E(PUAS, KC, AS)
  • Key using the AS's public key PUAS encryption, message format:
  • the AS After the AS receives the KRB-AS-REQ message, the AS must authenticate the user before issuing the TGS ticket.
  • the trusted platform and the trusted third party perform zero-knowledge protocol authentication.
  • the same algorithm as the user is used to generate el, e2, ..., ek;
  • the AS extracts the corresponding user's authentication information vl, v2, ..., vk in its own database;
  • the ciphertext portion of the Kerberos generated KRB_AS_REP message is encrypted using the session key KC, AS obtained by decrypting the ciphertext portion of the KRB-AS-REQ message instead of using the user's password.
  • AIK E(pk, AIKcert).
  • the user can send a message to the TGS, namely KRB_TGS-REQ.
  • the message contains the TGS ticket applied for and the identification ID of the service requested.
  • the user also sends an authentication Authenticatorc, which contains the user's identification ID, network address and timestamp, and is encrypted with the TCS session key, which is the obtained Kc of the AS information exchange phase. , t g s.
  • This certificate has a short lifetime and can only be used once compared to the lifetime of the TGS ticket. Nounce2, Options, and Times work on the same message.
  • the TGS After successfully verifying the validity of the message KRB_TGS_REQ, the TGS starts assembling the message KRB_TGS_REP.
  • the format of this message is the same as the message (Equation 2) KRB_AS_REP.
  • the Kerberos server determines the nature of the application server ticket sent to the user according to the message (formula 3) and the received TGS ticket, and then extracts the corresponding application server key from the user password database, encrypts the ticket, and generates an application server. Bills.
  • the ciphertext portion of the KRB_TGS-REP message uses the session key Kc,t g s.
  • the session key Kc,v used in the exchange of messages with the application server is also distributed in the TGS information exchange phase, and both the user and the application server can obtain the session key from the corresponding domain.
  • the format of the message is as follows:
  • the RA server checks the validity of the ticket and authentication code, whether it is issued by trusted Kerberos.
  • the present disclosure also provides one or more computer readable media having computer executable instructions that, when executed by a computer, perform a secure communication authentication method in a distributed environment, the user employing a zero knowledge proof method for identity authentication, The method includes the following steps: (1) The user sends an identity certificate request KRB_AS_REQ to the authentication server AS in the Kerberos server, and the AS checks the identity of the user after receiving the request; (2) after the user identity is passed, the AS Will be to the user Sending a ticket and an authentication code that match the identity of the user, the ticket containing the AIK certificate generated by the Kerberos server combined with the zero-knowledge certificate; (3) when the user needs to perform remote authentication with the remote attestation server, holding the ticket And the authentication code and the ticket granting server TGS are in a session to obtain a ticket for communicating with the application server; (4) the user and the remote attestation server complete the remote attestation.
  • the present disclosure also provides a computer including one or more computer readable media with computer executable instructions that, when executed by a computer, perform a secure communication authentication method in the distributed environment described above.
  • a computing device such as that described herein has hardware, including one or more processors or processing units, system memory, and some form of computer-readable media.
  • computer readable media includes computer storage media and communication media.
  • Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storing information such as computer readable instructions, data structures, program modules or other data.
  • the computer can be used in one or more remote computers, such as logical connections of remote computers operating in a networked environment.
  • remote computers such as logical connections of remote computers operating in a networked environment.
  • embodiments of the invention are applicable to numerous other general purpose or special purpose computing system environments or configurations.
  • the computing system environment is not intended to suggest any limitation as to the scope of use or functionality of any aspect of the invention.
  • the computer environment should not be interpreted as having any dependency or requirement relating to any of the components or combinations shown in the exemplary operating environments.
  • Examples of well-known computing systems, environments, and/or configurations suitable for use in aspects of the present invention include, but are not limited to: personal computers, server computers, handheld or laptop devices, multiprocessor systems, microprocessor based System, set top box, programmable consumer electronics, mobile phone, network PC, small computer, mainframe computer, distributed computing environment including any of the above systems or devices, and the like.
  • Embodiments of the invention may be described in the general context of computer-executable instructions, such as program modules, being executed by one or more computing devices.
  • Computer executable instructions can be organized as software into one or more computer executable components or modules.
  • the program Modules include, but are not limited to, routines, programs, objects, components, and data structures that perform specific tasks or implement specific abstract data types. Any number of such components or modules and their organization may be utilized to implement aspects of the present invention.
  • aspects of the invention are not limited to the specific computer-executable instructions or specific components or modules illustrated in the figures and described herein.
  • Other embodiments of the invention may include different computer-executable instructions or components having more or less functionality than those illustrated and described herein.
  • aspects of the invention may also be implemented in a distributed computing environment where tasks are performed by remote processing devices that are linked through a communication network.
  • program modules can be located in both local and remote computer storage media including memory storage devices.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种分布式环境下的安全通信认证方法及系统。本发明所述的方法及系统改进了TCG远程证明中平台身份证明过程中的各方面不足之处,扩展了平台身份证明方法,将零知识证明、Kerberos框架和虚拟TPM三种技术结合起来,设计了一种新的认证方法,主要针对现有方法中平台信息暴露、可信第三方瓶颈和避免复杂度等方面进行改进。采用本发明所述的方法及系统,解决了现有分布式系统中远程服务器之间相互证明时所面临的隐私暴露与效率问题。

Description

分布式环境下的安全通信认证方法及系统 技术领域
本发明涉及计算机信息安全技术领域, 具体涉及一种分布式环境下的 安全通信认证方法及系统。 背景技术
随着大数据时代的到来, 单个服务器的处理速度与功能已经无法满足 人们对信息处理的时效性的要求, 分布式并行运算势在必行。 但当我们使 用未知服务器提供的服务和资源, 并且无法得知其安全状态时, 将不能与 其进行安全的通信互联。 所以两个服务器之间通信前进行有效的安全认证 对全面保证分布式系统的安全稳定运行具有重要意义。
在现有的安全协议中,对终端平台操作系统的安全性考虑都不是很多, 一般都没有考虑终端平台在启动和加载操作系统时是否满足终端平台的要 求, 通常都假设其是安全的。 如果没有可靠的终端平台, 就不可能谈到可 信网络和可信网络连接。
TCG ( Trusted Computing Group, 可信计算組织)提出的远程证明 过程中的身份认证技术为这个问题提供了技术支持。 TCG是 1999年由 Compaq、HP、IBM、 Intel和 Microsoft牵头組织 TCPA( Trusted Computing Platform Alliance), 目前已发展成员 190家, 遍布全球各大洲主力厂商。
TCPA专注于从计算平台体系结构上增强其安全性,并于 2001年 1月发布 了可信计算平台标准规范。 2003 年 3 月 TCPA 改組为 TCG(Trusted Computing Group),其目的是在计算和通信系统中广泛使用基于硬件安全 模块支持下的可信计算平台, 以提高整体的安全性。
TCG組织制定了 TPM ( Trusted Platform Moudle )的标准, 目前艮 多安全芯片都是符合这个规范的。 而且由于其硬件实现安全防护, 正逐渐 成为 PC, 尤其是便携式 PC的标准配置。
"零知识证明,,― zero-knowledge proof,是由 Goldwasser等人在 20世 纪 80年代初提出的。它指的是证明者能够在不向验证者提供任何有用的信 息的情况下, 使验证者相信某个论断是正确的。 零知识证明实质上是一种 涉及两方或更多方的协议, 即两方或更多方完成一项任务所需采取的一系 列步骤。 证明者向验证者证明并使其相信自己知道或拥有某一消息, 但证 明过程不能向验证者泄漏任何关于被证明消息的信息。 大量事实证明, 零 知识证明在密码学中非常有用。 如果能够将零知识证明用于验证, 将可以 有效解决许多问题。
Kerberos 是一种网络认证协议, 其设计目标是通过密钥系统为客户 机 I服务器应用程序提供强大的认证服务。该认证过程的实现不依赖于主 机操作系统的认证, 无需基于主机地址的信任, 不要求网络上所有主机的 物理安全, 并假定网络上传送的数据包可以被任意地读取、 修改和插入数 据。 在以上情况下, Kerberos作为一种可信任的第三方认证服务, 是通 过传统的密码技术(如: 共享密钥)执行认证服务的。认证过程具体如下: 客户机向认证服务器( AS )发送请求,要求得到某服务器的证书,然后 AS 的响应包含这些用客户端密钥加密的证书。 证书的构成为: 1)服务器 "ticket" ; 2)一个临时加密密钥 (又称为会话密钥 "session key" ) 。 客 户机将 ticket (包括用服务器密钥加密的客户机身份和一份会话密钥的拷 贝 )传送到服务器上。 会话密钥可以 (现已经由客户机和服务器共享)用 来认证客户机或认证服务器, 也可用来为通信双方以后的通讯提供加密服 务, 或通过交换独立子会话密钥为通信双方提供进一步的通信加密服务。
本说明书中对于任何现有技术的描述不应被看做是承认或者暗示: 其 领域的公知常识。 发明内容
针对现有技术中存在的一个或多个缺陷, 本发明的目的是提供一种分 布式环境下的安全通信认证方法及系统。 该方法及系统改进了 TCG远程 证明中平台身 明过程中的各方面不足之处,扩展了平台身 明方法, 将零知识证明、 Kerberos框架和虚拟 ΤΡΜ三种技术结合起来, 设计了一 种新的认证方法。 该方法主要针对以上方法中平台信息暴露、 可信第三方 瓶颈和避免复杂度等方面进行改进。 为达到以上目的, 本发明采用的技术方案是: 一种分布式环境下的安 全通信认证方法,用户采用零知识证明方法进行身份认证, 包括以下步骤:
(1)用户向 Kerberos服务器中的认证服务器 AS发送身份证明请求
KRB_AS_REQ, AS接收到请求后, 验证用户身份;
(2)用户身份验证通过后, AS会向用户发送与用户身份相符合的的票 据和认证码,所述票据中包含了由 Kerberos服务器与零知识证明结合生成 的 AIK证书;
(3)当用户需要与远程证明服务器进行远程证明时, 拿着票据和认证码 与票据授予服务器 TGS进行会话, 获得与应用服务器通信的票据;
(4)用户与远程证明服务器完成远程证明。 一种分布式环境下的安全通信认证系统, 包括以下装置:
用户平台, 所述用户平台是指需要进行 AIK证书认证的客户端;
Kerberos服务器, 包括认证服务器 AS和票据授予服务器 TGS, 所述 的认证服务器 AS用于检验用户平台提供的属性信息是否在安全阀中, 并 对处于安全阀中的用户平台签发 TGS票据和与之关联的 AIK证书, 所述 的票据授予服务器 TGS检测用户平台所持的 TGS票据是否过期, 对合法 的用户平台发放可通信的应用服务票据;
远程证明服务器, 用于当持有应用服务票据的用户平台与远程证明服 务器进行通信时,对 AIK证书和应用服务票据进行检查,合法后再与之进 行应用服务;
所述的用户平台、 Kerberos服务器和远程证明服务器通过互联网互相 连接。 本发明的效果在于: 采用本发明所述的方法和系统, 可以解决了现 有分布式系统中远程服务器之间相互证明时所面临的隐私暴露与效率问 题。 本方法将零知识证明、 Kerberos技术和虚拟 TPM技^ 目结合, 在平 台申请 AIK证书时, 使用零知识的证明方式, 使用 Kerberos作为 TTP, Kerberos中分为 AS和 TGS, AS进行 AIK认证, 那么一个 TPM只需要 进行一次 AS认证, 当需要接入网络时, 到 TGS处申请应用服务器票据, 即可进行远程证明,分工合作减少 TTP的负载, vTPM架构作为平台的体 系结构, 虚拟技术实现按功能模块的安全隔离, 形成新的身 ϋ明模式, 达到防止平台信息暴露、 避免可信第三方瓶颈和降低远程证明复杂度的目 的。 附图说明
图 1是本发明所述系统的结构图;
图 2是本发明所述方法远程证明过程中 ΑΙΚ证书体系结构示意图; 图 3是本发明所述方法的流程图;
图 4是本发明所述方法 ΑΙΚ证书生成协议的流程图。 具体实施方式
下面结合附图和具体实施方式对本发明作进一步描述。 应注意到: 除 非另外具体说明, 否则在这些实施例中阐述的部件和步骤的相对布置、 数 字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的, 决不作 为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、 方法和设备可能不作详细讨 论, 但在适当情况下, 所述技术、 方法和设备应当被视为授权说明书的一 部分。
在这里示出和讨论的所有示例中, 任何具体值应被解释为仅仅是示例 性的, 而不是作为限制。 因此, 示例性实施例的其它示例可以具有不同的 值。 如图 1所示,一种分布式环境下的安全通信认证系统, 包括以下装置: 用户平台, 所述用户平台是指需要进行 ΑΙΚ证书认证的客户端;
Kerberos服务器, 包括认证服务器 AS和票据授予服务器 TGS, 所述 的认证服务器 AS用于检验用户平台提供的属性信息是否在安全阀中, 并 对处于安全阀中的用户平台签发 TGS票据和与之关联的 AIK证书, 所述 的票据授予服务器 TGS检测用户平台所持的 TGS票据是否过期, 对合法 的用户平台发放可通信的应用服务票据;
远程证明服务器, 用于当持有应用服务票据的用户平台与远程证明服 务器进行通信时,对 AIK证书和应用服务票据进行检查,合法后再与之进 行应用服务。
所述的用户平台、 Kerberos服务器和远程证明服务器通过互联网互相 连接。
本实施例中, 所述的用户平台包括以下模块:
安全芯片 TPM/TCM,用于记录所在用户平台系统属性信息的度量值; XEN虚拟机,用于为证明过程提供安全可靠的实施平台。 共享同一平 台上的工作负载因多种原因经常需要保持独立。 利益不同决定了竟争性业 务的网站需要访问彼此的数据, 会存在很多不安全的因素存在。 此外, 恶 意软件破坏了正常运作这些软件的共享硬件环境。 虚拟化越来越多地用于 生产, 使得在软件方面的安全, 就更加的需要严格要求完整性和工作量隔 离性。 如图 2所示, 图 2为用户平台的体系结构示意图, 构建 vTPM体系结 构, 需要用户平台配有安全芯片 TPM/TCM,本文以 TPM为例; CPU要具 有 Intel- VT或者 AMD-V虚拟技术; BIOS支持 TCG规范和高级配置和电 源管理接口 ( Advanced Configuration and Power Management Interface , ACPI ); 同时需要具有 IMA度量功能的 Linux系统启动加载器
(GRUB-IMA)来加载操作系统。
XEN虚拟机上主要包括三个虚拟域, 用户平台开机后 TPM以自身的 可信度量根为起点, 首先对 BIOS的其它部件进行完整性度量, 并将度量 值存储于可信密码模块的 PCR中,按照选择的判断机制判断 BIOS的完整 性, 若完整性未破坏, 则运行 BIOS; 并度量初始化程序加载器 (Initial Program Loader-IPL)/主引导分区(Master Boot Record-MBR)的完整性, 基于判断机制判断 IPL/MBR完整性,若 IPL/MBR完整性没有破坏,则运 行 MBR; 然后由 IPL/MBR度量操作系统 (Operation System, OS)内核度 量与加载部件 GRUB-IMA(GNU GRand Unified Bootloader-IMA,
GRUB-IMA)的完整性,若该部件完整性未被破坏则由该部件度量 OS内核 的完整性, 若未 ^改, 则运行 OS内核。 OS内核启动后进入 Domain 0, 基于同样的机制检测 OS服务完整性, 通过信任关系传递, 形成可信根, 可以确保所启动的系统是可信的。
Domain 0中涉及到四部分内容: 安装了 XEN补丁 (XEN patch)的 Linux操作系统; OS和 TPM进行通信的驱动程序 tpm— tis; TPM模拟器; XEN中的 vTPM管理功能模块 vTPMManager, 负责 XEN中 vTPM功能 模块与 TPM Emulator的通信。
Domain U是半虚拟化虚拟域, 它中主要涉及到以下几个部分: XEN 中的功能模块 vTPM, 由于 XEN虚拟域本身无法与 TPM进行交互, 所以 采用 vTPM的方式, vTPM与 TPM Emulator进行交互, TPM Emulator 调用底层 TPM硬件的数据,并充当 TPM硬件的角色,对外进行数据交互; XEN与 TPM Emulator之间的通信驱动程序 xen— tpmu, 此驱动是在编译 内核时需要额外添加的; IAIK jTSS是由格拉茨工业大学应用信息过程和 计算机研究所 (Institut fuer Angewandtelnformationsverarbeitung und Kommunikation, IAIK)使用 Java语言开发的, 是对 TCG软件栈 (TCG Software Stack, TSS)的实现,为上层的应用程序提供了访问 TPM和 TPM Emulator的接口。 vTPM位于 XEN虚拟机中,即在 Domain 0中, 但在功 能上是 Domain U程序与 Domain 0中 TPM Emulator进行信息交互接口, 是 Domain U中功能模块执行的关键,所以在图 2中用虚线團到了 Domain U的区域下。
HVM-Domain是全虚拟化的虚拟域,主要涉及到以下部分:支持 TCG 规范的 BIOS; 具有度量功能的 OS加载器, 形成可信根; 虚拟域与 TPM Emulator进行数据交互的 vTPM部件; 同时 OS在内核编译时要将 IBM 发明的 IMA部件编译到内核 (Linux-ΙΜΑ), 用于查看整个系统的度量结果 和对 OS中运行的软件进行度量; Linux-IMA查看 TPM数据需要与 TPM 硬件进行交互, 需要 OS加载 TPM驱动 tpm— tis; 用户对 TPM和 TPM Emulator进行编程的接口软件 IAIK jTSS; 开源平台可信服务 (Open Platform Trust Services, OpenPTS)是由 TCG提出的, 对概念 ϋ (Proof-of-Concept, PoC)和平台可信 Jl艮务 (Platform Trust Services , PTS) 的相关实现, 与其它可信计算相关开源软件一起工作, 用于与远程挑战者 进行可信计算。
Domain 0负责协调管理各个计算域间的通信。 启动 TPM Emulator 后, 处于等待状态, 等待对方与自身进行通信。 启动 vTPMManager管理 TPM Emulator与 vTPM间的通信。当需要进行身 ^人证时,在 Domain U 中,用户通过使用 IAIK jTSS发布 TPM命令,准备身份认证所需要的 TPM 身份相关数据, vTPM接到命令后, 会与 Domain 0中的 vTPMManager 进行通信, 通知其想通 TPM Emulator进行数据交互, vTPMManager会 将命令发送给 TPM Emulator, TPM Emulator接到命令后会调底层的
TPM数据, 准备好数据后会将数据再按照相反的顺序反馈给 IAIK jTSS. IAIK jTSS接收到所有所需数据后会给 AS发送身份认证请求, 认证结束 后 AS会给 IAIK jTSS发送 AIK证书。 IAIK jTSS收到证书后, IAIK jTSS 会将其传送到 Domain 0处保存。 HVM-Domain会到 Domain 0处提取 AIK 证书, 然后到 TCG处申请应用程序票据, 拿到票据后会向远程证明服务 器发送远程证明请求,将 AIK证书和度量列表同时发送给远程证明服务器 进行远程证明。 这种执行方法要求各个虚拟域各司其职, 相互隔离, 提高 了安全性。 如图 3所示, 一种分布式环境下的安全通信认证方法, 用户采用零知 识证明方法进行身份认证, 包括以下步骤:
步骤 S1,用户向 Kerberos服务器中的认证服务器 AS发送身份证明请 求 KRB— AS— REQ, AS接收到请求后, 验证用户身份;
步骤 S2, 用户身份验证通过后, AS会向用户发送与用户身份相符合 的的票据和认证码,所述票据中包含了由 Kerberos服务器与零知识证明结 合生成的 AIK证书;
步骤 S3, 当用户需要与远程证明服务器进行远程证明时, 拿着票据和 认证码与票据授予服务器 TGS进行会话, 获得与应用服务器通信的票据; 步骤 S4, 用户与远程证明服务器完成远程证明。 本实施例中, Kerberos与零知识证明结合生成 AIK证书过程如图 4 所示, 证书生成过程如下:
( 1 )用户封装 KRB_AS_REQ消息
用户像原 Kerberos协议那样封装 KRB— AS— REQ消息,只是预定义块由 以下消息代替: E(PUAS,KC,AS)||pk||vk, KC,AS是由用户产生的和 AS的 会话密钥, 使用 AS的公钥 PUAS加密, 消息格式:
Option| |IDC| |Realmc| |IDTGS| |Times| |Nouncel | |E(PUAS,KC,AS)||pk| |vk 其中, pk=E(AIKpub, EKpub),el,e2,...,ek是由系统选择的一个哈希函 数的输出, 其输入为:
Option| |IDC| |Realmc| |IDTGS| |Times| |Nouncel | |E(PUAS,KC,AS)||pk 这样可以有效的防止中间人攻击。
( 2 ) Kerberos接收到 KRB_AS_REQ消息
AS收到 KRB— AS— REQ消息后, 在发放 TGS票据前, AS必须要对用户 的身份进行认证。 可信平台与可信第三方进行零知识协议认证。 首先, 使 用和用户同样的算法产生 el,e2,...,ek; 其次, AS在自己的数据库中提取 相应的用户的身份验证信息 vl,v2,...,vk; 第三, AS检查发送来的
KRB_AS_REQ的消息是否满足下式:
pk =士 v :2 Vj (mod ή)
e =\ 认证通过后, 可信平台使用 zk= E(AIKpub, ω)来表示证书, 其中 ω是 背书证书、 平台证书、 确认证书和验 ϋ£证书的集合, 且背书证书中不包含 背书公钥。 并把 zk||vk,发送给 Kerberos, 其中 vk,是输入为:
Option| |IDC| |Realmc| |IDTGS| |Times| |Nouncel | |E(PUAS,KC,AS)| |zk (公式 1)的输出结果,即第二次使用 Feige-Fiat-Shamir协议。如果证明证书有效, 那么解密 KRB— AS— REQ消息,获得会话密钥 KC,AS,用 KC,AS加密 AIK 公钥, 产生 AIK证书 AIKcert, 使用 pk加密证书, 生成 KRB— AS— REP 发送给可信平台。 Kerberos产生 KRB— AS— REP消息消息的密文部分使用 解密 KRB— AS— REQ消息的密文部分获得的会话密钥 KC,AS来加密, 而 不是使用用户的口令加密。 消息格式:
RealmC | |IDC 1 1 TicketTGS | |E(KC,AS, [AIK| | KC,TGS 1 1 Times| |IDTGS]) (公 式 2)
将其发送给用户。 其中, AIK=E(pk,AIKcert)。
(3)用户收到 AS的消息后,就可以向 TGS发送消息即 KRB— TGS— REQ。 消息中包含申请到的 TGS票据和所申请服务的标识 ID。 另外, 用户还发 送一条认证吗 Authenticatorc, 此消息包含有用户的标识 ID、 网络地址和 时间戳, 并且用和 TGS的会话密钥来加密, 此会话密钥即 AS信息交换阶 段的所得到的 Kc,tgs。和 TGS票据的生命期相比,此认证码的生命期很短, 并且只能使用一次。 Nounce2、 Options和 Times的作用同消息上。将消息 按如下格式发送给 Kerberos服务器的 TGS模块:
Options| |IDv| |Times| |Nounce2| |Tickettgs| I Authenticatorc (公式 3) 其中, Authenticatorc=E(Kc,tgs,[IDc||Realmc||TSl】)
(4)成功地验证了消息 KRB_TGS_REQ的合法性后, TGS开始組装消息 KRB_TGS_REP。 这个消息的格式同消息(公式 2 ) KRB_AS_REP。 首先 Kerberos服务器根据消息(公式 3 )和收到的 TGS票据来决定发送给用户 的应用服务器票据的性质, 然后从用户口令数据库中提取出相应的应用服 务器密钥, 将该票据加密, 产生应用服务器的票据。 KRB— TGS— REP消息 的密文部分用会话密钥 Kc,tgs。 同 AS消息交换一样, 和应用服务器的消 息交换时使用的会话密钥 Kc,v也在 TGS信息交换阶段分发, 用户和应用 服务器均可从相应的域中获得此会话密钥。 消息的格式如下:
realmc||IDc||Ticketv| |E(Kc,tgs,[Kc,v| |Times| |Nounce2| |Realmv| |IDv]) (公 式 4)其中, Ticketv=E(Kv,[Flags||Kc,v||Realmc||IDc||ADc||Times】) 使用得到的 Ticket和认证码,就能连接到 Remote Attestation (RA)服务器, 客户机发送 IMA度量列表和当前使用 AIK签名的 PCR10值给服务器。
RA服务器检查 Ticket和认证码的有效性, 是否由可信的 Kerberos颁发。 本公开还提供一种或多种具有计算机可执行指令的计算机可读介质, 所述指令在由计算机执行时, 执行分布式环境下的安全通信认证方法, 用 户采用零知识证明方法进行身份认证, 该方法包括以下步骤: (1)用户向 Kerberos服务器中的认证服务器 AS发送身份证明请求 KRB— AS— REQ, AS接收到请求后, 验 ϋ用户身份; (2)用户身份验 ϋ通过后, AS会向用户 发送与用户身份相符合的的票据和认证码,所述票据中包含了由 Kerberos 服务器与零知识证明结合生成的 AIK证书; (3)当用户需要与远程证明服 务器进行远程证明时, 拿着票据和认证码与票据授予服务器 TGS进行会 话, 获得与应用服务器通信的票据; (4)用户与远程证明服务器完成远程证 明。
本公开还提供一台包括带有计算机可执行指令的一个或多个计算机可 读介质的计算机, 所述指令在由计算机执行时执行上述分布式环境下的安 全通信认证方法。
示例性操作环境
诸如此处所描述的计算设备具有硬件, 包括一个或多个处理器或处理 单元、 系统存储器和某种形式的计算机可读介廣。 作为示例而非限制, 计 算机可读介质包括计算机存储介廣和通信介质。 计算机存储介廣包括以用 于存储诸如计算机可读指令、 数据结构、 程序模块或其它数据的信息的任 何方法或技术实现的易失性与非易失性、 可移动与不可移动介廣。 通信介 令、 数据结构、 程 模块或其它数据, 并且包括 何信息传递介质: 以上 的任一种的組合也包括在计算机可读介质的范围之内。
计算机可使用至一个或多个远程计算机, 如远程计算机的逻辑连接在 网络化环境中操作。 尽管结合示例性计算系统环境进行了描述, 但本发明 的各实施例可用于众多其它通用或专用计算系统环境或配置。 计算系统环 境并非旨在对本发明的任何方面的使用范围或功能提出任何限制。 此外, 计算机环境也不应被解释成对于示例性操作环境中所示出的任一組件或其 組合有任何依赖或要求。 适用于本发明的各方面的公知的计算系统、 环境 和 /或配置的示例包括, 但不仅限于: 个人计算机、 服务器计算机、 手持 式或膝上型设备、 多处理器系统、 基于微处理器的系统、 机顶盒、 可编程 消费电子产品、 移动电话、 网络 PC、 小型计算机、 大型计算机、 包括上 面的系统或设备的中的任何一种的分布式计算环境等等。
可以在由一台或多台计算设备执行的诸如程序模块之类的计算机可执 行的指令的一般上下文中来描述本发明的各实施例。 计算机可执行指令可 作为软件被組织成一个或多个计算机可执行組件或模块。 一般而言, 程序 模块包括, 但不限于, 执行特定任务或实现特定抽象数据类型的例程、 程 序、 对象、 組件, 以及数据结构。 可以利用任何数量的这样的組件或模块 及其組织来实现本发明的各方面。 例如, 本发明的各方面不仅限于附图中 所示出并且在此处所描述的特定计算机可执行指令或特定組件或模块。 本 发明的其他实施例可以包括具有比此处所示出和描述的功能更多或更少功 能的不同的计算机可执行指令或組件。 本发明的各方面也可以在其中任务 由通过通信网络链接的远程处理设备执行的分布式计算环境中实现。 在分 布式计算环境中, 程序模块可以位于包括存储器存储设备在内的本地和远 程计算机存储介廣中。
本领域技术人员应该明白, 本发明所述的方法和系统并不限于具体实 施方式中所述的实施例, 上面的具体描述只是为了解释本发明的目的, 并 非用于限制本发明。 本领域技术人员根据本发明的技术方案得出其他的实 施方式, 同样属于本发明的技术创新范围, 本发明的保护范围由权利要求 及其等同物限定。

Claims

1.一种分布式环境下的安全通信认证方法, 用户采用零知识证明方法 进行身份认证, 包括以下步骤:
(1)用户向 Kerberos服务器中的认证服务器 AS发送身份证明请求
KRB_AS_REQ, AS接收到请求后, 验证用户身份;
(2)用户身份验证通过后, AS会向用户发送与用户身份相符合的的票 据和认证码,所述票据中包含了由 Kerberos服务器与零知识证明结合生成 的 AIK证书;
(3)当用户需要与远程证明服务器进行远程证明时, 拿着票据和认证码 与票据授予服务器 TGS进行会话, 获得与应用服务器通信的票据;
(4)用户与远程证明服务器完成远程证明。
2.如权利要求 1所述的一种分布式环境下的安全通信认证方法, 其特 征是, 步骤 (2)中, 由 Kerberos服务器与零知识证明结合生成 AIK证书 的方法包括以下步骤:
1 ) 用户封装 KRB— AS— REQ消息;
2 ) Kerberos服务器中的 AS收到 KRB— AS— REQ消息后, 在发放
TGS票据前, AS对用户的身份进行认证, 可信平台与可信第三 方进行零知识协议认证;
3 ) 用户收到 AS的消息后, 向 TGS发送消息 KRB— TGS— REQ; 4 ) 成功地验证了消息 KRB— TGS— REQ的合法性后, TGS开始組装 消息 KRB TGS— REP。
3.如权利要求 2所述的一种分布式环境下的安全通信认证方法, 其特 征是: 步骤 1)中, 用户封装 KRB— AS— REQ消息过程中, 预定义块由以下 消息代替: E(PUAS,KC,AS)||pk||vk ,其中, KC, AS是由用户产生的和 AS 的会话密钥, 使用 AS的公钥 PUAS加密, 消息格式:
Option| |IDC| |Realmc| |IDTGS| |Times| |Nouncel | |E(PUAS,KC,AS)||pk| |vk 其中, pk=E(AIKpub, EKpub),el,e2,...,ek是由系统选择的一个哈希函 数的输出, 其输入为:
Option| |IDC| |Realmc| |IDTGS| |Times| |Nouncel | |E(PUAS,KC,AS)| |pk。
4.如权利要求 2所述的一种分布式环境下的安全通信认证方法, 其特 征是, 步骤 2)中, AS对用户的身份进行认证的方法是: 首先, 使用和用 户同样的算法产生 el,e2,...,ek; 其次, AS在自己的数据库中提取相应的 用户的身份验证信息 vl,v2,...,vk; 第三, AS检查发送来的 KRB— AS— REQ 的消息是否满足下式:
pk =士 v 2 Vj (mod ή) 用户的身 ^人证通过后, 可信平台使用 zk= E(AIKpub, ω)来表示证 书, 其中 ω是背书证书、 平台证书、 确认证书和^ Ε证书的集合, 且背书 证书中不包含背书公钥 。
5.如权利要求 2或 3或 4所述的一种分布式环境下的安全通信认证方 法, 其特征是, 步骤 3)中, 用户还发送一条认证码 Authenticatorc, 此消 息包含有用户的标识 ID、 网络地址和时间戳, 并且用和 TGS的会话密钥 来加密,此会话密钥即 AS信息交换阶段的所得到的 Kc,tgs和 TGS票据的 生命期相比, 此认证码的生命期很短, 并且只能使用一次。
6.如权利要求 5所述的一种分布式环境下的安全通信认证方法, 其特 征是, 步骤 4)中, TGS組装消息 KRB— TGS— REP的方法包括:
首先, Kerberos服务器根据消息和收到的 TGS票据来决定发送给用 户的应用服务器票据的性质;
然后, 从用户口令数据库中提取出相应的应用服务器密钥, 将该票据 加密, 产生应用服务器的票据;
KRB_TGS_REP消息的密文部分用会话密钥 Kc,tgs同 AS消息交换一 样, 和应用服务器的消息交换时使用的会话密钥 Kc,v也在 TGS信息交换 阶段分发, 用户和应用服务器均可从相应的域中获得此会话密钥;
KRB TGS REP消息的格式如下: realmc||IDc||Ticketv||E(Kc,tgs,[Kc,v||Times||Nounce2||Realmv||IDv]) 其中, Ticketv=E(Kv,[Flags||Kc,v||Realmc||IDc||ADc||Times】)。
7.—种分布式环境下的安全通信认证系统, 包括以下装置: 用户平台, 所述用户平台是指需要进行 AIK证书认证的客户端;
Kerberos服务器, 包括认证服务器 AS和票据授予服务器 TGS, 所述 的认证服务器 AS用于检验用户平台提供的属性信息是否在安全阀中, 并 对处于安全阀中的用户平台签发 TGS票据和与之关联的 AIK证书, 所述 的票据授予服务器 TGS检测用户平台所持的 TGS票据是否过期, 对合法 的用户平台发放可通信的应用服务票据;
远程证明服务器, 用于当持有应用服务票据的用户平台与远程证明服 务器进行通信时,对 AIK证书和应用服务票据进行检查,合法后再与之进 行应用服务;
所述的用户平台、 Kerberos服务器和远程证明服务器通过互联网互相 连接。
8.如权利要求 7所述的一种分布式环境下的安全通信认证系统, 其特 征在于, 所述的用户平台包括以下模块:
安全芯片 TPM/TCM,用于记录所在用户平台系统属性信息的度量值; XEN虚拟机,用于为证明过程提供安全可靠的实施平台。
9.如权利要求 8所述的一种分布式环境下的安全通信认证系统, 其特 征在于: 所述安全芯片 TPM的 CPU要具有 Intel- VT或者 AMD-V虚拟 技术; BIOS支持 TCG规范和高级配置和电源管理接口; 同时需要具有 IMA度量功能的 Linux系统启动加载器 (GRUB-IMA)来加载操作系统。
10.如权利要求 7或 8或 9所述的一种分布式环境下的安全通信认证系 统, 其特征在于: 所述的 XEN虚拟机包括 Domain 0、 Domain U和
HVM-Domain三个虚拟域, 用户平台开机后 TPM以自身的可信度量根为 起点, 首先对 BIOS的其它部件进行完整性度量, 并将度量值存储于可信 密码模块的 PCR中,按照选择的判断机制判断 BIOS的完整性,若完整性 未破坏, 则运行 BIOS; 并度量 IPL/MBR的完整性, 基于判断机制判断 IPL/MBR完整性, 若 IPL/MBR完整性没有破坏, 则运行 MBR; 然后由 IPL/MBR度量操作系统内核度量与加载部件 GRUB-IMA的完整性,若该 部件完整性未被破坏则由该部件度量 OS内核的完整性, 若未被裏改, 则 运行 OS内核; OS内核启动后进入 Domain 0, 基于同样的机制检测 OS 服务完整性, 通过信任关系传递, 形成可信根, 可以确保所启动的系统是 可信的。
PCT/CN2013/086753 2013-05-14 2013-11-08 分布式环境下的安全通信认证方法及系统 Ceased WO2014183392A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP13884396.6A EP2999158A4 (en) 2013-05-14 2013-11-08 Secure communication authentication method and system in distributed environment
JP2016513199A JP2016519540A (ja) 2013-05-14 2013-11-08 分散環境の安全通信認証方法及びシステム
US14/890,952 US20160119141A1 (en) 2013-05-14 2013-11-08 Secure communication authentication method and system in distributed environment

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310177428.9A CN104158791A (zh) 2013-05-14 2013-05-14 一种分布式环境下的安全通信认证方法及系统
CN201310177428.9 2013-05-14

Publications (1)

Publication Number Publication Date
WO2014183392A1 true WO2014183392A1 (zh) 2014-11-20

Family

ID=51884197

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/086753 Ceased WO2014183392A1 (zh) 2013-05-14 2013-11-08 分布式环境下的安全通信认证方法及系统

Country Status (5)

Country Link
US (1) US20160119141A1 (zh)
EP (1) EP2999158A4 (zh)
JP (1) JP2016519540A (zh)
CN (1) CN104158791A (zh)
WO (1) WO2014183392A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111460429A (zh) * 2020-03-30 2020-07-28 北京百度网讯科技有限公司 基于可信执行环境的任务处理方法、装置、设备和介质

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9749294B1 (en) * 2015-09-08 2017-08-29 Sprint Communications Company L.P. System and method of establishing trusted operability between networks in a network functions virtualization environment
US10542115B1 (en) 2015-10-01 2020-01-21 Sprint Communications Company L.P. Securing communications in a network function virtualization (NFV) core network
US9781016B1 (en) 2015-11-02 2017-10-03 Sprint Communications Company L.P. Dynamic addition of network function services
WO2018016713A2 (ko) * 2016-07-18 2018-01-25 엘지전자(주) 무선 통신 시스템에서의 단말의 접속 식별자 보안 방법 및 이를 위한 장치
CN106254070B (zh) * 2016-09-18 2019-04-09 华南理工大学 一种在dnp系统中基于设备id和时间的加密方法
US10250498B1 (en) 2016-10-03 2019-04-02 Sprint Communications Company L.P. Session aggregator brokering of data stream communication
US10447668B1 (en) * 2016-11-14 2019-10-15 Amazon Technologies, Inc. Virtual cryptographic module with load balancer and cryptographic module fleet
US10461943B1 (en) 2016-11-14 2019-10-29 Amazon Technologies, Inc. Transparently scalable virtual hardware security module
CN111294155B (zh) * 2016-11-17 2021-12-31 华为技术有限公司 一种适配器、数据传输系统及方法
CN106656514B (zh) * 2017-03-02 2019-05-31 北京搜狐新媒体信息技术有限公司 kerberos认证集群访问方法、SparkStandalone集群及其驱动节点
CN107196755A (zh) * 2017-03-28 2017-09-22 山东超越数控电子有限公司 一种vpn设备安全启动方法及系统
US10361858B2 (en) * 2017-04-07 2019-07-23 Hushmesh Inc. Residence-based digital identity and strong authentication system
US10587411B2 (en) * 2017-04-11 2020-03-10 International Business Machines Corporation Zero-knowledge verifiably attestable transaction containers using secure processors
CN108737093B (zh) * 2017-04-13 2022-07-12 山东量子科学技术研究院有限公司 一种加密的方法、装置及系统
US10348488B1 (en) 2017-08-25 2019-07-09 Sprint Communications Company L.P. Tiered distributed ledger technology (DLT) in a network function virtualization (NFV) core network
US10511575B2 (en) * 2017-09-18 2019-12-17 Huawei Technologies Co., Ltd. Securing delegated credentials in third-party networks
US11233647B1 (en) 2018-04-13 2022-01-25 Hushmesh Inc. Digital identity authentication system
CN109067705B (zh) * 2018-06-28 2020-12-01 如般量子科技有限公司 基于群组通信的改进型Kerberos身份认证系统和方法
CN110677250B (zh) 2018-07-02 2022-09-02 阿里巴巴集团控股有限公司 密钥和证书分发方法、身份信息处理方法、设备、介质
CN110795742B (zh) 2018-08-02 2023-05-02 阿里巴巴集团控股有限公司 高速密码运算的度量处理方法、装置、存储介质及处理器
CN110795774B (zh) 2018-08-02 2023-04-11 阿里巴巴集团控股有限公司 基于可信高速加密卡的度量方法、设备和系统
CN110874478B (zh) 2018-08-29 2023-05-02 阿里巴巴集团控股有限公司 密钥处理方法及装置、存储介质和处理器
CN110110279A (zh) * 2019-04-17 2019-08-09 重庆第二师范学院 基于可信计算安全可信度量分数阶微积分求解系统及方法
CN112449323B (zh) * 2019-08-14 2022-04-05 华为技术有限公司 一种通信方法、装置和系统
CN110740041B (zh) * 2019-10-16 2022-04-15 北京仁信证科技有限公司 基于可信计算模块的嵌入式系统安全启动与可信度量的方法
US11544096B2 (en) * 2020-02-27 2023-01-03 Hewlett Packard Enterprise Development Lp Virtual trusted platform modules
CN111651740B (zh) * 2020-05-26 2023-04-07 西安电子科技大学 一种面向分布式智能嵌入式系统的可信平台共享系统
CN112035820B (zh) * 2020-07-22 2024-02-02 北京中安星云软件技术有限公司 一种用于Kerberos加密环境下的数据解析方法
CN111861714B (zh) * 2020-07-23 2025-02-14 浙江永旗区块链科技有限公司 企业票据拆分方法及系统
CN111948998B (zh) * 2020-08-24 2025-05-06 西安热工研究院有限公司 一种基于双缓冲区的分布式控制器数据库下装结构及方法
WO2023000248A1 (en) * 2021-07-22 2023-01-26 Huawei Technologies Co., Ltd. Authentication methods using zero-knowledge proof algorithms for user equipments and nodes implementing the authentication methods
CN113704733B (zh) * 2021-08-31 2024-03-08 上海万向区块链股份公司 隐私可验证的动态did认证方法及系统
CN113986470B (zh) * 2021-11-09 2023-08-11 四川大学 一种用户无感知的虚拟机批量远程证明方法
CA3243343A1 (en) * 2022-01-28 2023-08-03 Lauren PITTS A method for semantically transposing text into an unrelated semantic domain, intended for secure, refuse-proof, and stealthy encryption.
CN114826614B (zh) * 2022-04-22 2024-02-23 安天科技集团股份有限公司 一种可认证密码库文件分布式存储方法、装置和电子设备
US12101301B1 (en) * 2023-07-17 2024-09-24 Mysten Labs, Inc. Zero-knowledge proofs for login
CN118260774B (zh) * 2024-05-31 2024-09-17 苏州元脑智能科技有限公司 服务器的启动方法及装置、存储介质及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1625105A (zh) * 2003-12-02 2005-06-08 国际商业机器公司 信息处理装置、服务器装置、信息处理装置的方法及服务器装置的方法
CN101051898A (zh) * 2006-04-05 2007-10-10 华为技术有限公司 无线网络端到端通信认证方法及其装置
CN101479987A (zh) * 2006-06-27 2009-07-08 微软公司 生物测定凭证验证框架

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2571607B2 (ja) * 1988-06-25 1997-01-16 日本電信電話株式会社 認証方式
JP3314900B2 (ja) * 1994-03-07 2002-08-19 日本電信電話株式会社 ゼロ知識証明プロトコルを利用した情報配送方法およびシステム
JP3595109B2 (ja) * 1997-05-28 2004-12-02 日本ユニシス株式会社 認証装置、端末装置、および、それら装置における認証方法、並びに、記憶媒体
US8037314B2 (en) * 2003-12-22 2011-10-11 Intel Corporation Replacing blinded authentication authority
EP1617587A1 (en) * 2004-07-12 2006-01-18 International Business Machines Corporation Method, system and computer program product for privacy-protecting integrity attestation of computing platform
US7363492B2 (en) * 2005-02-25 2008-04-22 Motorola, Inc. Method for zero-knowledge authentication of a prover by a verifier providing a user-selectable confidence level and associated application devices
US8522018B2 (en) * 2006-08-18 2013-08-27 Fujitsu Limited Method and system for implementing a mobile trusted platform module
US9055107B2 (en) * 2006-12-01 2015-06-09 Microsoft Technology Licensing, Llc Authentication delegation based on re-verification of cryptographic evidence
US8127292B1 (en) * 2007-06-22 2012-02-28 Parallels Holdings, Ltd. Virtualization system with hypervisor embedded in bios or using extensible firmware interface
GB2450869B (en) * 2007-07-09 2012-04-25 Hewlett Packard Development Co Establishing a trust relationship between computing entities
US20090204964A1 (en) * 2007-10-12 2009-08-13 Foley Peter F Distributed trusted virtualization platform
US7996891B2 (en) * 2008-01-30 2011-08-09 International Business Machines Corporation Systems, methods and computer program products for generating anonymous assertions
US9559842B2 (en) * 2008-09-30 2017-01-31 Hewlett Packard Enterprise Development Lp Trusted key management for virtualized platforms
US9762583B2 (en) * 2009-10-23 2017-09-12 Interdigital Patent Holdings, Inc. Protection against unsolicited communication
CN102763111B (zh) * 2010-01-22 2015-08-05 交互数字专利控股公司 用于可信联合身份管理和数据接入授权的方法和设备
US8677115B2 (en) * 2010-12-09 2014-03-18 Red Hat, Inc. Methods for verifying system integrity

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1625105A (zh) * 2003-12-02 2005-06-08 国际商业机器公司 信息处理装置、服务器装置、信息处理装置的方法及服务器装置的方法
CN101051898A (zh) * 2006-04-05 2007-10-10 华为技术有限公司 无线网络端到端通信认证方法及其装置
CN101479987A (zh) * 2006-06-27 2009-07-08 微软公司 生物测定凭证验证框架

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111460429A (zh) * 2020-03-30 2020-07-28 北京百度网讯科技有限公司 基于可信执行环境的任务处理方法、装置、设备和介质
CN111460429B (zh) * 2020-03-30 2024-01-02 北京百度网讯科技有限公司 基于可信执行环境的任务处理方法、装置、设备和介质

Also Published As

Publication number Publication date
CN104158791A (zh) 2014-11-19
US20160119141A1 (en) 2016-04-28
JP2016519540A (ja) 2016-06-30
EP2999158A4 (en) 2017-01-11
EP2999158A1 (en) 2016-03-23

Similar Documents

Publication Publication Date Title
JP2016519540A (ja) 分散環境の安全通信認証方法及びシステム
CN111541785A (zh) 基于云计算的区块链数据处理方法及装置
CN103888251B (zh) 一种云环境中虚拟机可信保障的方法
CA3117713C (en) Authorization with a preloaded certificate
US8176336B1 (en) Software trusted computing base
EP2702724B1 (en) Secure virtual machine provisioning
CN103139221B (zh) 一种可信虚拟平台及其构建方法、平台之间数据迁移方法
CN103501303B (zh) 一种针对云平台虚拟机度量的主动远程证明方法
Danev et al. Enabling secure VM-vTPM migration in private clouds
CN101834860B (zh) 一种远程动态验证客户端软件完整性的方法
US20160028551A1 (en) Systems and methods for hardware security module as certificate authority for network-enabled devices
CN107667347A (zh) 用于虚拟化访问由融合式可管理性和安全引擎提供的安全服务的技术
Stumpf et al. An approach to a trustworthy system architecture using virtualization
TW201635180A (zh) 與網路服務主機通訊之安全硬體安全模組系統與方法
WO2016107394A1 (zh) 虚拟机的深度证明方法、计算设备和计算机系统
Ott et al. Universal remote attestation for cloud and edge platforms
CN111008094B (zh) 一种数据恢复方法、设备和系统
CN111901285A (zh) 一种可信验证方法、系统、设备及存储介质
WO2014117648A1 (zh) 应用访问方法和设备
CN111147233B (zh) Abe属性加密可信实现方法及节点
CN118432826B (zh) 群组设备的注册与身份认证方法、系统、设备及存储介质
CN118214562A (zh) 一种基于tee和tpm机密计算节点的证明服务方法
Nepal et al. Trust extension device: providing mobility and portability of trust in cooperative information systems
CN118523905A (zh) 用于获取证书或凭证的方法、装置、设备和存储介质
CN115549948A (zh) 一种基于可信计算的去中心信任链认证方法、系统及介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13884396

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2013884396

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2016513199

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14890952

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE