CN111181729B - Explicit certificate key expansion method and device - Google Patents

Explicit certificate key expansion method and device Download PDF

Info

Publication number
CN111181729B
CN111181729B CN201911367097.9A CN201911367097A CN111181729B CN 111181729 B CN111181729 B CN 111181729B CN 201911367097 A CN201911367097 A CN 201911367097A CN 111181729 B CN111181729 B CN 111181729B
Authority
CN
China
Prior art keywords
certificate
index
key
public key
explicit
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
Application number
CN201911367097.9A
Other languages
Chinese (zh)
Other versions
CN111181729A (en
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.)
Shengan Information Technology Co ltd
Original Assignee
Shengan Information Technology 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 Shengan Information Technology Co ltd filed Critical Shengan Information Technology Co ltd
Priority to CN201911367097.9A priority Critical patent/CN111181729B/en
Publication of CN111181729A publication Critical patent/CN111181729A/en
Application granted granted Critical
Publication of CN111181729B publication Critical patent/CN111181729B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic 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]

Abstract

The application provides an explicit certificate key expansion method and device, wherein the method comprises the following steps: the first user terminal generates a first symmetric key, a second symmetric key, a first key pair and a second key pair, and sends a certificate application request to a certificate application registration center; the certificate application registry expands the first public key according to the first symmetric key and expands the second public key according to the second symmetric key to obtain a third public key and a fourth public key corresponding to each certificate index, and sends a certificate issuing request to the certificate authority aiming at each certificate index; and the certificate authority generates a corresponding explicit certificate according to the third public key corresponding to each certificate index, encrypts the corresponding explicit certificate according to the fourth public key corresponding to each certificate index, and sends the encrypted explicit certificate corresponding to each certificate index to the certificate application registration center. According to the scheme, the multiple explicit certificates can be obtained by sending the certificate application request once based on key expansion, and the certificate generation efficiency is effectively improved.

Description

Explicit certificate key expansion method and device
Technical Field
The present application relates to the field of information security technologies, and in particular, to an explicit certificate key expansion method and apparatus.
Background
With the increasing popularization of network information technology application, network information security becomes an increasingly concerned subject. The use of digital certificates can ensure that public keys are not spoofed. The digital certificate is a public key authenticated by an authority, and by looking at the digital certificate, the digital certificate is issued by the authority, the certificate uses the information of the user, and the user uses the public key.
Currently, in order to obtain multiple digital certificates, a terminal device may send multiple requests, each request carrying a public key. In this case, a plurality of interactions are required, and the generation efficiency of the digital certificate is low. Furthermore, the terminal device may also send a request, and the request includes a plurality of public keys. In this case, the amount of data of the request to be transmitted is large, and the transmission efficiency is low, which leads to a decrease in the digital certificate generation efficiency.
In view of the above problems, no effective solution has been proposed.
Disclosure of Invention
The embodiment of the application provides an explicit certificate key expansion method and device, and aims to solve the problem of low certificate generation efficiency in the prior art.
The embodiment of the application provides an explicit certificate key expansion method, which comprises the following steps: the method comprises the steps that a first user terminal generates a first symmetric key, a second symmetric key, a first key pair and a second key pair, and sends a certificate application request to a certificate application registry, wherein the first key pair comprises a first public key, the second key pair comprises a second public key, and the certificate application request carries the first symmetric key, the second symmetric key, the first public key and the second public key; responding to a certificate application request, a certificate application registry obtains a plurality of certificate indexes, expands a first public key according to a first symmetric key to obtain a third public key corresponding to each certificate index in the plurality of certificate indexes, expands a second public key according to a second symmetric key to obtain a fourth public key corresponding to each certificate index, and sends a certificate issuance request to a certificate authorization center aiming at each certificate index, wherein the third public key and the fourth public key corresponding to each certificate index are carried in the certificate issuance request corresponding to each certificate index; responding to the certificate issuing request corresponding to each certificate index, generating an explicit certificate corresponding to each certificate index by the certificate authority according to the third public key corresponding to each certificate index, encrypting the explicit certificate corresponding to each certificate index according to the fourth public key corresponding to each certificate index, and sending the encrypted explicit certificate corresponding to each certificate index to the certificate application registration center; and the certificate application registration center sends the encrypted explicit certificate corresponding to each received certificate index to the first user terminal.
The embodiment of the present application further provides an explicit certificate key expansion method, which is applied to a first user side, and includes: generating a first symmetric key, a second symmetric key, a first key pair and a second key pair, wherein the first key pair comprises a first public key and the second key pair comprises a second public key; sending a certificate application request to a certificate application registry, wherein the certificate application request carries a first symmetric key, a second symmetric key, a first public key and a second public key, the certificate application request is used for indicating the certificate application registry to expand the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in a plurality of certificate indexes, expand the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index, and is also used for indicating the certificate application registry to send a certificate issuance request to the certificate authority aiming at each certificate index, wherein the certificate issuance request corresponding to each certificate index carries the third public key and the fourth public key corresponding to each certificate index; and receiving the encrypted explicit certificate corresponding to each certificate index returned by the certificate application registry in response to the certificate application request, wherein the encrypted explicit certificate corresponding to each certificate index is returned to the certificate application registry by the certificate authority in response to the certificate issuance request corresponding to each certificate index, the encrypted explicit certificate corresponding to each certificate index is obtained by encrypting the explicit certificate corresponding to each certificate index by the certificate authority according to the fourth public key corresponding to each certificate index, and the explicit certificate corresponding to each certificate index is generated by the certificate authority according to the third public key corresponding to each certificate index.
The embodiment of the present application further provides an explicit certificate key expansion method, which is applied to a certificate application registry, and includes: receiving a certificate application request sent by a first user end, wherein the certificate application request carries a first symmetric key, a second symmetric key, a first public key and a second public key, and the first symmetric key, the second symmetric key, the first public key and the second public key are generated by the first user end; responding to the certificate application request, acquiring a plurality of certificate indexes, expanding the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in the plurality of certificate indexes, and expanding the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index;
sending a certificate issuing request to a certificate authority aiming at each certificate index, wherein the certificate issuing request corresponding to each certificate index carries a third public key and a fourth public key corresponding to each certificate index; receiving an encrypted explicit certificate corresponding to each certificate index returned by the certificate authority in response to the certificate issuance request corresponding to each certificate index, wherein the encrypted explicit certificate corresponding to each certificate index is obtained by encrypting the explicit certificate corresponding to each certificate index by the certificate authority according to a fourth public key corresponding to each certificate index, and the explicit certificate corresponding to each certificate index is generated by the certificate authority according to a third public key corresponding to each certificate index; and sending the encrypted explicit certificate corresponding to each received certificate index to the first user terminal.
The embodiment of the present application further provides an explicit certificate key expansion apparatus, located in a certificate application registry, including: the first receiving module is used for receiving a certificate application request sent by a first user terminal, wherein the certificate application request carries a first symmetric key, a second symmetric key, a first public key and a second public key, and the first symmetric key, the second symmetric key, the first public key and the second public key are generated by the first user terminal; the expansion module is used for responding to the certificate application request, acquiring a plurality of certificate indexes, expanding the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in the plurality of certificate indexes, and expanding the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index; the request module is used for sending a certificate issuing request to the certificate authority aiming at each certificate index, wherein the certificate issuing request corresponding to each certificate index carries a third public key and a fourth public key corresponding to each certificate index; the second receiving module is used for receiving the encrypted explicit certificate corresponding to each certificate index returned by the certificate authority in response to the certificate issuance request corresponding to each certificate index, wherein the encrypted explicit certificate corresponding to each certificate index is obtained by encrypting the explicit certificate corresponding to each certificate index by the certificate authority according to the fourth public key corresponding to each certificate index, and the explicit certificate corresponding to each certificate index is generated by the certificate authority according to the third public key corresponding to each certificate index; and the sending module is used for sending the encrypted explicit certificate corresponding to each received certificate index to the first user terminal.
The present application further provides a computer device, including a processor and a memory for storing processor-executable instructions, where the processor executes the instructions to implement the steps of the explicit certificate key expansion method described in any of the above embodiments.
Embodiments of the present application further provide a computer-readable storage medium, on which computer instructions are stored, where the instructions, when executed, implement the steps of the explicit certificate key expansion method described in any of the above embodiments.
In an embodiment of the present application, a certificate application request carrying a first symmetric key, a second symmetric key, a first public key and a second public key is sent to a certificate application registry by a first user, so that the certificate application registry can expand the first public key according to the first symmetric key and expand the second public key according to the second symmetric key to obtain a third public key and a fourth public key corresponding to each certificate index in a plurality of certificate indexes, the certificate registration registry can send a certificate issuance request carrying the third public key and the fourth public key corresponding to each certificate index to a certificate authority for each certificate index, the certificate authority responds to the certificate issuance request corresponding to each certificate index, constructs an explicit certificate corresponding to each certificate index according to the corresponding third public key, encrypts the explicit certificate corresponding to each certificate index according to the corresponding fourth public key, and sends the encrypted explicit certificate corresponding to each certificate index to the certificate application center, and the application center sends the received encrypted certificate to a corresponding certificate of each certificate index to a first user. Through the scheme, the user side can obtain a plurality of explicit certificates only by sending the certificate application request once based on key expansion, so that the certificate generation efficiency can be effectively improved, the interaction times are reduced, the network resources are saved, and meanwhile, the generation speed of the explicit certificates is higher than that of the implicit certificates, so that the certificate generation efficiency can be further improved.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application, are incorporated in and constitute a part of this application, and are not intended to limit the application. In the drawings:
fig. 1 is a schematic diagram illustrating an application scenario of an explicit certificate key expansion method in an embodiment of the present application;
FIG. 2 shows a flow diagram of an explicit certificate key expansion method in an embodiment of the present application;
FIG. 3 shows a flow diagram of an explicit certificate key expansion method in an embodiment of the present application;
FIG. 4 shows a flow diagram of an explicit certificate key expansion method in an embodiment of the present application;
FIG. 5 shows a sequence diagram of an explicit certificate key expansion method in an embodiment of the present application;
FIG. 6 shows a sequence diagram of an explicit certificate key expansion method in an embodiment of the present application;
fig. 7 is a schematic diagram showing an explicit certificate key expansion apparatus in an embodiment of the present application;
FIG. 8 shows a schematic diagram of an explicit certificate Key expansion apparatus in an embodiment of the present application;
fig. 9 shows a schematic diagram of a computer device in an embodiment of the application.
Detailed Description
The principles and spirit of the present application will be described with reference to a number of exemplary embodiments. It should be understood that these embodiments are given solely for the purpose of enabling those skilled in the art to better understand and to practice the present application, and are not intended to limit the scope of the present application in any way. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
As will be appreciated by one skilled in the art, embodiments of the present application may be embodied as a system, apparatus, device, method or computer program product. Accordingly, the present disclosure may be embodied in the form of: entirely hardware, entirely software (including firmware, resident software, micro-code, etc.), or a combination of hardware and software.
The embodiment of the application provides an explicit certificate key expansion method. Fig. 1 is a schematic diagram illustrating an application scenario of an explicit certificate key expansion method in an embodiment of the present application. As shown in fig. 1, the first user terminal may generate a first symmetric key, a second symmetric key, a first key pair, and a second key pair. The first key pair comprises a first public key and a first private key, and the second key pair comprises a second public key and a second private key. Then, the first user end may send a certificate application request carrying the first symmetric key, the second symmetric key, the first public key, and the second public key to the certificate application registry. In response to the received certificate application request, the certificate application registry may expand the first public key according to the first symmetric key and expand the second public key according to the second symmetric key to obtain a third public key and a fourth public key corresponding to each of the plurality of certificate indexes. Then, the certificate registration application center may send a certificate issuance request carrying the third public key and the fourth public key corresponding to each certificate index to the certificate authority center for each certificate index. In response to the certificate issuance request corresponding to each certificate index, the certificate authority may construct an explicit certificate corresponding to each certificate index according to the corresponding third public key, encrypt the explicit certificate corresponding to each certificate index according to the corresponding fourth public key, and send the encrypted explicit certificate corresponding to each certificate index to the certificate application registration center. The certificate application registry may send the received encrypted explicit certificates corresponding to the respective certificate indexes to the first user side. After receiving the encrypted explicit certificates corresponding to the certificate indexes, the first user side may generate a complete private key corresponding to each certificate index according to the first symmetric key, the second symmetric key, the first private key, the second private key, and the explicit certificate corresponding to each certificate index. The first user side can obtain target data, one private key is selected from complete private keys corresponding to all certificate indexes to serve as a target private key, and the target data are signed according to the target private key to obtain a target signature. The first user sends the target data, the target signature and the target explicit certificate to the second user. And the target explicit certificate is an explicit certificate corresponding to the certificate index corresponding to the target private key. The second user end can verify the validity of the target signature according to the target explicit certificate and returns a verification result to the first user end.
The certificate application registry and the certificate authority may be a single server, a server cluster, or a cloud server, and the specific composition forms the present application without limitation. The first user end and the second user end may be a desktop computer, a notebook, a mobile phone terminal, a PDA, etc., as long as the devices can send requests and receive data, and the present formation of the user ends is not limited in the present application.
Fig. 2 shows a flowchart of an explicit certificate key expansion method in an embodiment of the present application. Although the present application provides method operational steps or apparatus configurations as illustrated in the following examples or figures, more or fewer operational steps or modular units may be included in the methods or apparatus based on conventional or non-inventive efforts. In the case of steps or structures which do not logically have the necessary cause and effect relationship, the execution sequence of the steps or the module structure of the apparatus is not limited to the execution sequence or the module structure described in the embodiments and shown in the drawings of the present application. When the described methods or modular structures are applied in a practical device or end product, they can be executed sequentially or in parallel according to the embodiments or the methods or modular structures shown in the figures (for example, in the environment of parallel processors or multi-thread processing, or even in the environment of distributed processing).
Specifically, as shown in fig. 2, an explicit certificate key expansion method provided by an embodiment of the present application may include the following steps:
step S201, a first user generates a first symmetric key, a second symmetric key, a first key pair and a second key pair, and sends a certificate application request to a certificate application registry, where the first key pair includes a first public key, the second key pair includes a second public key, and the certificate application request carries the first symmetric key, the second symmetric key, the first public key and the second public key.
In particular, the first user terminal may generate a first symmetric key, a second symmetric key, a first key pair and a second key pair. Wherein the first symmetric key may be used to extend the first key pair. The second symmetric key may be used to expand the second key pair. Wherein the first key pair may include a first public key and the second key pair may include a second public key. Illustratively, the first symmetric key and the second symmetric key may be SM4 symmetric keys. Illustratively, the first key pair and the second key pair may be an SM2 key pair. After generating the first symmetric key, the second symmetric key, the first key pair, and the second key pair, the first client may send a certificate application request to the certificate application registry.
Step S202, in response to the certificate application request, the certificate application registry acquires a plurality of certificate indexes, expands the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in the plurality of certificate indexes, expands the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index, and sends a certificate issuance request to the certificate authority for each certificate index, wherein the certificate issuance request corresponding to each certificate index carries the third public key and the fourth public key corresponding to each certificate index.
The certificate index corresponds to one or more certificate cycle serial numbers and a plurality of certificate serial numbers in the one or more cycles. For example, the certificate index is l, l = (i, J), where i may be the current certificate cycle number, which is an integer greater than or equal to 0, J represents the certificate number within one certificate cycle, J =0,1, \8230j-1, where J is the total number of certificates within one certificate cycle. For example, if i =1,j =10, the obtained plurality of certificate indexes correspond to 10 certificate serial numbers in the second period, that is, the plurality of certificate indexes may include (1, 0), (1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 7), (1, 8), (1, 9). In other embodiments, i may include the current certificate cycle number and the cycle number following the current certificate cycle number. For example, i =1, the certificate authority may generate a third public key and a fourth public key corresponding to each certificate serial number in the 2 nd certificate cycle, and send a certificate issuance request to the certificate authority for each certificate serial number in the 2 nd certificate cycle, so as to generate an explicit certificate corresponding to each certificate serial number in the 2 nd certificate cycle; and then, when detecting that the time reaches the next certificate period, the certificate application registry generates a third public key and a fourth public key corresponding to each certificate serial number in the 3 rd certificate period, and sends a certificate issuing request to the certificate authority aiming at each certificate serial number in the 3 rd certificate period, so that an explicit certificate corresponding to each certificate serial number in the 3 rd certificate period is generated, and so on.
After receiving the certificate application request, the certificate application registry may obtain a plurality of certificate indexes. The certificate application registry may expand the first public key according to each certificate index of the plurality of certificate indexes and the first symmetric key, to obtain a third public key corresponding to each certificate index. The certificate application registry may expand the second public key according to each certificate index of the plurality of certificate indexes and the second symmetric key, to obtain a fourth public key corresponding to each certificate index. Thereafter, for each of the plurality of certificate indexes, the certificate application registry may send a certificate issuance request to the certificate authority. The certificate issuance request corresponding to each certificate index may carry the third public key and the fourth public key corresponding to each certificate index.
Step S203, in response to the certificate issuance request corresponding to each certificate index, the certificate authority generates an explicit certificate corresponding to each certificate index according to the third public key corresponding to each certificate index, encrypts the explicit certificate corresponding to each certificate index according to the fourth public key corresponding to each certificate index, and sends the encrypted explicit certificate corresponding to each certificate index to the certificate application registry.
Specifically, after receiving the certificate issuance request corresponding to each certificate index, the certificate authority generates, in response to each certificate issuance request, the explicit certificate corresponding to each certificate index according to the third public key corresponding to each certificate index. Then, the certificate authority may encrypt the explicit certificate corresponding to each certificate index according to the fourth public key corresponding to each certificate index. And then sending the encrypted explicit certificate corresponding to each certificate index to a certificate application registration center. The encrypted explicit certificates corresponding to the certificate indexes may be transmitted one by one, or a plurality of explicit certificates may be transmitted at a time.
Step S204, the certificate application registration center sends the encrypted explicit certificate corresponding to each received certificate index to the first user terminal.
After receiving the encrypted explicit certificates corresponding to the respective certificate indexes, the certificate application registry may send the received encrypted explicit certificates corresponding to the respective certificate indexes to the first user side. For example, the certificate application registry may package the encrypted explicit certificates corresponding to the received certificate indexes and send the packaged explicit certificates to the first user side, or send the explicit certificates one by one.
The explicit certificate key expansion method in the above embodiment can achieve that the user side can obtain a plurality of explicit certificates only by sending a certificate application request once based on key expansion, thereby effectively improving certificate generation efficiency, reducing interaction times, and saving network resources.
In some embodiments of the present application, the generating, by the certificate authority, the explicit certificate corresponding to each certificate index according to the third public key corresponding to each certificate index, encrypting, according to the fourth public key corresponding to each certificate index, the explicit certificate corresponding to each certificate index, and sending the encrypted explicit certificate corresponding to each certificate index to the certificate application registration center may include: the certificate authority generates a temporary key pair corresponding to each certificate index, wherein the temporary key pair comprises a temporary public key and a temporary private key; the certificate authority generates a certificate public key corresponding to each certificate index according to the third public key corresponding to each certificate index and the temporary public key corresponding to each certificate index; the certificate authority constructs an explicit certificate corresponding to each certificate index according to the certificate public key corresponding to each certificate index; the certificate authority determines the temporary private key corresponding to each certificate index as a part of private keys corresponding to each certificate index; the certificate authority encrypts the explicit certificate and the part of the private key corresponding to each certificate index according to the fourth public key corresponding to each certificate index, and signs the encrypted explicit certificate and the part of the private key corresponding to each certificate index according to the system private key to obtain the signatures of the encrypted explicit certificate and the part of the private key corresponding to each certificate index; and the certificate authority sends the encrypted explicit certificate and the part of private key corresponding to each certificate index and the encrypted signatures of the explicit certificate and the part of private key corresponding to each certificate index to the certificate application registry.
Specifically, in response to a received certificate issuance request corresponding to each certificate index, the certificate authority generates a temporary key pair corresponding to each certificate index. Wherein the ephemeral key pair may include an ephemeral private key and an ephemeral public key. Illustratively, the temporary key pair may be an SM2 key pair. The certificate authority may generate the certificate public key corresponding to each certificate index according to the third public key corresponding to each certificate index and the temporary public key corresponding to each certificate index. Then, the certificate authority may construct an explicit certificate corresponding to each certificate index according to the certificate public key corresponding to each certificate index. The certificate authority may determine the temporary private key corresponding to each certificate index as a portion of the private key corresponding to each certificate index. Then, the certificate authority may encrypt the explicit certificate and the partial private key corresponding to each certificate index according to the fourth public key corresponding to each certificate index, and sign the encrypted explicit certificate and the partial private key corresponding to each certificate index according to the system private key. The certificate authority can send the encrypted explicit certificate and the part of the private key corresponding to each certificate index and the encrypted signatures of the explicit certificate and the part of the private key corresponding to each certificate index to the certificate application registry. Through the above manner, the certificate authority can generate the explicit certificate corresponding to each certificate index according to the third public key corresponding to each certificate index, encrypt the explicit certificate corresponding to each certificate index according to the fourth public key corresponding to each certificate index, and send the encrypted explicit certificate corresponding to each certificate index to the certificate application registration center.
In some embodiments of the present application, the first key pair may further include a first private key, and the second key pair may further include a second private key; correspondingly, after the certificate application registration center sends the encrypted explicit certificate corresponding to each received certificate index to the first user side, the method may further include: the first user terminal expands the first private key according to the first symmetric key to obtain a third private key corresponding to each certificate index, and expands the second private key according to the second symmetric key to obtain a fourth private key corresponding to each certificate index; the first user side verifies whether the signatures of the encrypted explicit certificate and the partial private key corresponding to each received certificate index are valid according to the system certificate, and decrypts the encrypted explicit certificate and the partial private key corresponding to each certificate index according to the fourth private key corresponding to each certificate index under the condition that the signatures of the encrypted explicit certificate and the partial private key corresponding to each certificate index are valid, so that the explicit certificate and the partial private key corresponding to each certificate index are obtained; and the first user terminal generates a complete private key corresponding to each certificate index according to the partial private key corresponding to each certificate index and the third private key corresponding to each certificate index.
After receiving the encrypted explicit certificate and the part of the private key corresponding to each certificate index and the signature of the encrypted explicit certificate and the part of the private key corresponding to each certificate index, the first user end may expand the first private key according to each certificate index and the first symmetric key to obtain a third private key corresponding to each certificate index, and expand the second private key according to each certificate index and the second symmetric key to obtain a fourth private key corresponding to each certificate index. The first client may obtain a system certificate. The system Certificate is a Certificate stored in a Certificate Authority, and may also be referred to as a CA (Certificate Authority) Certificate. The first user terminal can verify whether the encrypted explicit certificate and the signature of part of the private key corresponding to each certificate index are valid according to the system certificate. Under the condition that the signatures of the encrypted explicit certificate and the part of the private keys corresponding to each certificate index are verified to be valid, the first user side can decrypt the encrypted explicit certificate and the part of the private keys corresponding to each certificate index according to the fourth private key corresponding to each certificate index to obtain the explicit certificate and the part of the private keys corresponding to each certificate index. Then, the first user end can generate a complete private key corresponding to each certificate index according to the partial private key corresponding to each certificate index and the third private key corresponding to each certificate index. The complete private key corresponding to each certificate index can be used for signing data. Through the above manner, the first user side can generate the complete private key corresponding to each certificate index according to the explicit certificate corresponding to each certificate index and the partial private key.
In some embodiments of the present application, after the first user terminal generates a complete private key corresponding to each certificate index according to the partial private key corresponding to each certificate index and the third private key corresponding to each certificate index, the method may further include: the first user side selects one complete private key from the complete private keys corresponding to the certificate indexes as a target private key; the first user side obtains target data and signs the target data according to a target private key to obtain a target signature; the first user terminal sends the target data, the target signature and the target explicit certificate to the second user terminal, wherein the target explicit certificate is an explicit certificate corresponding to a certificate index corresponding to the target private key.
In order to sign the target data, the first user terminal may select one of the complete private keys corresponding to each certificate index as the target private key according to a preset rule. The first user side can obtain the target data and sign the target data according to the target private key to obtain the target signature. The first client may then send the target data, target signature, and target explicit certificate to the second client. And the target explicit certificate is an explicit certificate corresponding to the certificate index corresponding to the target private key. By the method, the target data can be signed, and the explicit certificate and the signed data are sent to the second user terminal.
In some embodiments of the present application, after the first user sends the target data, the target signature, and the target explicit certificate to the second user, the method may further include: the second user terminal obtains the system certificate and verifies the validity of the target explicit certificate according to the system certificate; under the condition that the target explicit certificate is verified to be valid, the second user side extracts a target certificate public key from the target explicit certificate; and the second user terminal verifies the validity of the target signature according to the target certificate public key.
After the second user receives the target data, the target signature and the target explicit certificate, it can verify whether the target signature is valid. Specifically, the second user side may acquire a system certificate, i.e., a CA certificate. The second client may verify the validity of the target explicit certificate based on the system certificate. In the case where the target explicit certificate is verified to be valid, the second user side may extract the target certificate public key from the target explicit certificate. Wherein, the target certificate public key can be extracted from the target explicit certificate because the explicit certificate is constructed according to the certificate public key. The second user can then verify the validity of the target signature based on the target certificate public key. The second user end can also return the verification result to the first user end. Through the method, the second user terminal can verify whether the target signature is valid according to the target explicit certificate.
In some embodiments of the present application, the expanding, by the certificate application registry, the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in the multiple certificate indexes may include expanding the first public key according to the following formula:
Cl=A+f1(s1,l)·G;
wherein, a is a first public key, where l is a certificate index, and l = (i, J), where i may be a current certificate cycle number, which is an integer greater than or equal to 0, J represents a certificate number in one certificate cycle, J =0,1, \ 8230; (J-1), where J is a total number of certificates in one certificate cycle, and f is a certificate index, and J-11(s1L) is a first spreading function corresponding to the certificate index l, ClA third public key corresponding to certificate index l, where f1(s1,l)=f1 int(s1,l)modq,f1 int(s1,l)=(SM4(s1,x+1)XOR(x+1)||SM4(s1,x+2)XOR(x+2)||SM4(s1,x+3)XOR(x+3)),s1As the first symmetric key, x = (0)32||i||j||032) SM4 (-) is SM4 encryption algorithm, XOR (-) is exclusive-or operation, G is the base point on the elliptic curve, q is the order of G, mod is modulo operation. Through the above manner, the certificate application registry can expand the first public key for each certificate index according to the first symmetric key, so as to obtain the third public key corresponding to each certificate index.
In some embodiments of the present application, the expanding, by the certificate application registry, the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index may include expanding the second public key according to the following formula:
Dl=B+f2(s2,l)·G;
wherein, B is the second public key, l is the certificate index, l = (i, J), where i may be the current certificate cycle number, and is an integer greater than or equal to 0, J represents the certificate number in one certificate cycle, J =0,1, \8230j-1, where J is the total number of certificates in one certificate cycle, D is the total number of certificates in one certificate cycle, and J =lFor the fourth public key corresponding to the certificate index l, f2(s2And l) is a second expansion function corresponding to the certificate index l, wherein f2(s2,l)=f2 int(s2,l)modq,f2 int(s2,l)=(SM4(s2,x+1)XOR(x+1)||SM4(s2,x+2)XOR(x+2)||SM4(s2,x+3)XOR(x+3)),s2For the second symmetric key, x = (1)32||i||j||032) SM4 (-) is an SM4 encryption algorithm, XOR (-) is an XOR operation, G is a base point on an elliptic curve, q is the order of G, and mod is a modular operation. Through the above manner, the certificate application registry can expand the second public key for each certificate index according to the second symmetric key, so as to obtain the fourth public key corresponding to each certificate index.
In some embodiments of the present application, the generating, by the certificate authority, the certificate public key corresponding to each certificate index according to the third public key corresponding to each certificate index and the temporary public key corresponding to each certificate index may include generating the certificate public key corresponding to each certificate index according to the following formula:
Pl=Wl+Cl
wherein l is a certificate index, l = (i, J), wherein i is a current certificate period serial number and is an integer greater than or equal to 0, J represents a certificate serial number in one certificate period, J =0,1, \8230J-1, wherein J is the total number of certificates in one certificate period, and P is the number of certificates in one certificate periodlFor the certificate index l corresponding to the certificate public key, WlFor the temporary public key corresponding to the certificate index l, ClAnd a third public key corresponding to the certificate index l. By the above manner, the certificate public key corresponding to each certificate index can be generated according to the temporary public key and the third public key corresponding to each certificate index, so that the explicit certificate corresponding to each certificate index can be constructed according to the certificate public key corresponding to each certificate index.
In some embodiments of the present application, the expanding, by the first user end, the first private key according to the first symmetric key to obtain a third private key corresponding to each certificate index may include expanding the first private key according to the following formula:
cl=(a+f1(s1,l))modq;
wherein a is a first private key, wherein l is a certificate index, and l = (i, J), wherein i may be a current certificate cycle number, which is an integer greater than or equal to 0, J represents a certificate number within one certificate cycle, J =0,1, \ 8230j-1, wherein J is a total number of certificates within one certificate cycle, f1(s1L) a first expansion function corresponding to the certificate index l, c)lA third private key corresponding to the certificate index l, where f1(s1,l)=f1 int(s1,l)modq,f1 int(s1,l)=(SM4(s1,x+1)XOR(x+1)||SM4(s1,x+2)XOR(x+2)||SM4(s1,x+3)XOR(x+3)),s1As the first symmetric key, x = (0)32||i||j||032) SM4 (-) is SM4 encryption algorithm, XOR (-) is exclusive-or operation, G is the base point on the elliptic curve, q is the order of G, mod is modulo operation. In this way, the first user side can expand the first private key according to the first symmetric key to obtain each certificate index pairThe corresponding third private key.
In some embodiments of the present application, the expanding, by the first user end, the second private key according to the second symmetric key to obtain a fourth private key corresponding to each certificate index may include expanding the second private key according to the following formula:
dl=(b+f2(s2,l))modq;
wherein b is the second private key, l is the certificate index, l = (i, J), where i may be the current certificate period serial number and is an integer greater than or equal to 0, J represents the certificate serial number in one certificate period, J =0,1, \ 8230, J-1, where J is the total number of certificates in one certificate period, d is the total number of certificates in one certificate period, J =lFor the fourth private key corresponding to the certificate index l, f2(s2L) is a second spreading function corresponding to the certificate index l, where f2(s2,l)=f2 int(s2,l)modq,f2 int(s2,l)=(SM4(s2,x+1)XOR(x+1)||SM4(s2,x+2)XOR(x+2)||SM4(s2,x+3)XOR(x+3)),s2For the second symmetric key, x = (1)32||i||j||032) SM4 (-) is an SM4 encryption algorithm, XOR (-) is an XOR operation, G is a base point on an elliptic curve, q is the order of G, and mod is a modular operation. Through the above manner, the first user side can expand the second private key according to the second symmetric key to obtain the fourth private key corresponding to each certificate index.
In some embodiments of the present application, the generating, by the first user end, a complete private key corresponding to each certificate index according to the partial private key corresponding to each certificate index and the third private key corresponding to each certificate index may include generating a complete private key corresponding to each certificate index according to the following formula:
rpl=(pl+cl)modq;
wherein l is the certificate index, l = (i, J), wherein i represents a certificate cycle number, J represents a certificate number in one certificate cycle, i is a current certificate cycle number, and is an integer greater than or equal to 0, J =0,1, \ 8230, J-1, wherein J is the total number of certificates in one certificate cycle, rplIndexing for certificatesl corresponding to the complete private key, plA partial private key corresponding to the certificate index l, clAnd a third private key corresponding to the certificate index l, q is the order of G, G is a base point on an elliptic curve, and mod is modular operation.
In some embodiments of the present application, the explicit certificate key expansion method may be applied to the internet of things or the internet of vehicles. Due to the fact that the computing capacity, the storage space and the network bandwidth of the internet of things and the internet of vehicles are limited, the fact that a certificate application request is sent once to obtain a plurality of explicit certificates can be achieved through the method, interaction times can be reduced, the network bandwidth is saved, and the method is particularly suitable for the internet of things and the internet of vehicles. In some embodiments of the present application, the first user end and/or the second user end may include various devices in the internet of things. In some embodiments of the present application, the first user end and/or the second user end may comprise at least one of: the system comprises a vehicle networking service platform, vehicle-mounted equipment in the vehicle networking and a road communication system in the vehicle networking.
The application also provides an explicit certificate key expansion method, which is applied to the first user terminal. Specifically, as shown in fig. 3, an explicit certificate key expansion method provided by an embodiment of the present application may include the following steps:
step S301, a first symmetric key, a second symmetric key, a first key pair and a second key pair are generated, where the first key pair includes a first public key and the second key pair includes a second public key.
Step S302, a certificate application request is sent to a certificate application registry, where the certificate application request carries a first symmetric key, a second symmetric key, a first public key and a second public key, and the certificate application request is used to instruct the certificate application registry to expand the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in a plurality of certificate indexes, and to expand the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index, and is further used to instruct the certificate application registry to send a certificate issuance request to the certificate authority for each certificate index, where the certificate issuance request corresponding to each certificate index carries the third public key and the fourth public key corresponding to each certificate index.
Step S303, receiving an encrypted explicit certificate corresponding to each certificate index returned by the certificate application registry in response to the certificate application request, where the encrypted explicit certificate corresponding to each certificate index is returned to the certificate application registry by the certificate authority in response to the certificate issuance request corresponding to each certificate index, the encrypted explicit certificate corresponding to each certificate index is obtained by the certificate authority encrypting the explicit certificate corresponding to each certificate index according to the fourth public key corresponding to each certificate index, and the explicit certificate corresponding to each certificate index is generated by the certificate authority according to the third public key corresponding to each certificate index.
The application also provides an explicit certificate key expansion method, which is applied to a certificate application registry. Specifically, as shown in fig. 4, an explicit certificate key expansion method provided by an embodiment of the present application may include the following steps:
step S401, receiving a certificate application request sent by a first user end, wherein the certificate application request carries a first symmetric key, a second symmetric key, a first public key and a second public key, and the first symmetric key, the second symmetric key, the first public key and the second public key are generated by the first user end;
step S402, responding to the certificate application request, acquiring a plurality of certificate indexes, expanding the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in the plurality of certificate indexes, and expanding the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index;
step S403, sending a certificate issuing request to a certificate authority for each certificate index, wherein the certificate issuing request corresponding to each certificate index carries a third public key and a fourth public key corresponding to each certificate index;
step S403, receiving an encrypted explicit certificate corresponding to each certificate index returned by the certificate authority in response to the certificate issuance request corresponding to each certificate index, wherein the encrypted explicit certificate corresponding to each certificate index is obtained by encrypting the explicit certificate corresponding to each certificate index by the certificate authority according to a fourth public key corresponding to each certificate index, and the explicit certificate corresponding to each certificate index is generated by the certificate authority according to a third public key corresponding to each certificate index;
step S405, sending the encrypted explicit certificate corresponding to each received certificate index to the first user.
The above method is described below with reference to a specific example, however, it should be noted that the specific example is only for better describing the present application and is not to be construed as limiting the present application.
Referring to fig. 5 and 6, sequence diagrams of an explicit certificate key expansion method in this embodiment are shown. As shown in fig. 5 and fig. 6, in this specific embodiment, the explicit certificate key expansion method may include the following steps:
step 1, a first user terminal generates a first symmetric key s1Second symmetric key s2A first key pair (a, A) and a second key pair (B, B), wherein s1And s2For SM4 symmetric keys, (a, A) and (B, B) are SM2 key pairs, specifically, a e [1, q-1 ] can be randomly generated]Calculating A = a.G, and randomly generating b e [1, q-1 ∈]Calculating B = B · G, wherein A is a first public key, a is a first private key, B is a second public key, and B is a second private key, wherein G is a base point on an elliptic curve, and q is the order of G.
Step 2, the first user terminal sends a certificate application request to the certificate application registration center, wherein the certificate application request carries(s)1,s2,A,B)。
Step 3, responding to the certificate application request, the certificate application registration center obtains a plurality of certificate indexes l, and aiming at each certificate index l, according to the first symmetric key s1Expanding the first public key A to obtain a third public key C corresponding to each certificate index in a plurality of certificate indexeslAccording to a second symmetric key s2Expanding the second public key B to obtain a fourth public key D corresponding to each certificate indexlSpecifically, the first public key a and the second public key B are extended according to the following formula:
Cl=A+f1(s1,l)·G;
Dl=B+f2(s2,l)·G;
wherein l = (i, J), i is the serial number of the current certificate period and is an integer greater than or equal to 0, J represents the certificate serial number in one certificate period, J =0,1, \8230, J-1, wherein J is the total number of certificates in one certificate period, f1(s1L) a first spreading function corresponding to the certificate index l for spreading the first public key A, wherein f1(s1,l)=f1 int(s1,l)modq,f1 int(s1,l)=(SM4(s1,x+1)XOR(x+1)||SM4(s1,x+2)XOR(x+2)||SM4(s1,x+3)XOR(x+3)),x=(032||i||j||032) SM4 (-) is an SM4 encryption algorithm and XOR (-) is an XOR operation, where f2(s2L) is a second expansion function corresponding to the certificate index l for expanding the second public key B, f2(s2,l)=f2 int(s2,l)modq,f2 int(s2,l)=(SM4(s2,x+1)XOR(x+1)||SM4(s2,x+2)XOR(x+2)||SM4(s2,x+3)XOR(x+3)),x=(132||i||j||032) Where G is the base point on the elliptic curve, q is the order of G, and mod is the modulo operation.
Step 4, the certificate application registry sends a certificate issuance request to the certificate authority aiming at each certificate index l, wherein the certificate issuance request corresponding to each certificate index carries a third public key C corresponding to each certificate indexlAnd a fourth public key Dl
Step 5, responding to the certificate issuing request corresponding to each certificate index, the certificate authority generates a temporary key pair (w) corresponding to each certificate indexl,Wl) Wherein the temporary key pair (w)l,Wl) Including a temporary public key WlAnd a temporary private key wlSpecifically, w may be randomly generatedl∈[1,q-1]Calculating Wl=wl·G。
In the step 6, the step of,the certificate authority indexes a corresponding third public key C according to each certificatelTemporary public key W corresponding to each certificate indexlGenerating a certificate public key P corresponding to each certificate index llSpecifically, the certificate public key corresponding to each certificate index may be generated according to the following formula:
Pl=Wl+Cl
step 7, the certificate authority according to the certificate public key P corresponding to each certificate index llConstructing explicit certificate Cert corresponding to each certificate indexl
Step 8, the certificate authority indexes the corresponding temporary private keys w of each certificatelDetermining a partial private key p corresponding to each certificate index llI.e. pl=wl
Step 9, the certificate authority indexes the corresponding fourth public key D according to each certificatelExplicit certificate Cert corresponding to each certificate indexlAnd part of the private key plEncrypting, and indexing the corresponding encrypted explicit certificate Cert according to the system private key mlAnd part of the private key plSigning is carried out to obtain the encrypted explicit certificate Cert corresponding to each certificate indexlAnd part of private key plThe signature of (2).
Step 10, the certificate authority center makes the encrypted explicit certificate Cert corresponding to each certificate indexlAnd part of the private key plAnd the encrypted explicit certificate Cert corresponding to each certificate indexlAnd part of the private key plThe signature of which is sent to the certificate application registry.
Step 11, the certificate application registration center makes the encrypted explicit certificate Cert corresponding to each certificate indexlAnd part of private key plAnd encrypted explicit certificate Cert corresponding to each certificate indexlAnd part of the private key plThe signature of (2) is sent to the first user terminal.
Step 12, the first user end according to the first symmetric key s1Expanding the first private key a to obtain a third private key c corresponding to each certificate indexlAccording to a second symmetric key s2For the second private key bLine expansion is carried out to obtain a fourth private key d corresponding to each certificate indexlSpecifically, the first private key a and the second private key b may be extended according to the following formula:
cl=(a+f1(s1,l))modq;
dl=(b+f2(s2,l))modq。
step 13, the first user end verifies the encrypted explicit certificate Cert corresponding to each received certificate index l according to the system certificate CaCertlAnd part of the private key plIf the signature of (2) is valid, verifying the encrypted explicit certificate Cert corresponding to each certificate index llAnd part of the private key plAccording to the fourth private key d corresponding to each certificate index l under the condition that the signature of (2) is validlEncrypted explicit certificate Cert corresponding to each certificate index llAnd part of private key plDecrypting to obtain the explicit certificate Cert corresponding to each certificate index llAnd part of the private key pl
Step 14, the first user end indexes a part of private keys p corresponding to the I according to each certificatelThird private key c corresponding to each certificate index llGenerating a complete private key rp corresponding to each certificate index llSpecifically, the complete private key rp corresponding to each certificate index l may be generated according to the following formulal
rpl=(pl+cl)modq。
Step 15, the first user terminal selects the complete private key rp corresponding to each certificate index llAs a target private key rpk
Step 16, the first user terminal obtains the target data and according to the target private key rpkSigning the target data to obtain a target signature sigk
Step 17, the first user terminal sends the target data and the target signature sigkAnd target explicit certificate CertkSending to the second user end, wherein the target explicit certificate is CertkWith the target private key rpkThe corresponding certificate index k corresponds to the explicit certificate.
Step 18, the second user end obtains the system certificate CaCert, and verifies the target explicit certificate CaCert according to the system certificate CaCertkWhether it is valid.
Step 19, at the verification target explicit certificate CertkIn case of validity, the second client explicitly certs from the targetkExtracts the public key P of the target certificatek
Step 20, the second user end according to the target certificate public key PkVerifying target signatures sigkThe effectiveness of (c).
And step 21, the second user end returns the verification result to the first user end.
In the method in the foregoing embodiment, a certificate application request carrying a first symmetric key, a second symmetric key, a first public key and a second public key is sent to a certificate application registry by a first user, so that the certificate application registry can expand the first public key according to the first symmetric key and expand the second public key according to the second symmetric key to obtain a third public key and a fourth public key corresponding to each certificate index in a plurality of certificate indexes, and then the certificate registration registry can send a certificate issuance request carrying the third public key and the fourth public key corresponding to each certificate index to the certificate authority for each certificate index, the certificate authority responds to the certificate issuance request corresponding to each certificate index, constructs an explicit certificate corresponding to each certificate index according to the corresponding third public key, encrypts the explicit certificate corresponding to each certificate index according to the corresponding fourth public key, and sends the encrypted explicit certificate corresponding to each certificate index to the certificate application registry, and then sends the received encrypted explicit certificate corresponding to each certificate index to the first user. In addition, after the first user side receives the decrypted explicit certificates corresponding to the certificate indexes, the first private key and the second private key can be expanded to obtain third private keys and fourth private keys corresponding to the certificate indexes, the decrypted explicit certificates corresponding to the certificate indexes are decrypted according to the fourth private keys corresponding to the certificate indexes to obtain the explicit certificates corresponding to the certificate indexes, and complete private keys corresponding to the certificate indexes are generated according to the third private keys corresponding to the certificate indexes. And then, the first user end can sign the target data according to the complete private key corresponding to each certificate index, and send the signed target data and the corresponding explicit certificate to the second user end, so that the second user end can verify the validity of the signature according to the corresponding explicit certificate. Through the scheme, the user side can obtain a plurality of explicit certificates only by sending the certificate application request once based on key expansion, so that the certificate generation efficiency can be effectively improved, the interaction times are reduced, the network resources are saved, and meanwhile, the generation speed of the explicit certificates is higher than that of the implicit certificates, so that the certificate generation efficiency can be further improved.
Based on the same inventive concept, the embodiment of the present application further provides an explicit certificate key expansion apparatus, which is located in a certificate application registry, as described in the following embodiments. The principle of solving the problem of the explicit certificate key expansion apparatus is similar to that of the explicit certificate key expansion method, so the implementation of the explicit certificate key expansion apparatus can refer to the implementation of the explicit certificate key expansion method, and repeated parts are not described again. As used hereinafter, the term "unit" or "module" may be a combination of software and/or hardware that implements a predetermined function. Although the means described in the embodiments below are preferably implemented in software, an implementation in hardware or a combination of software and hardware is also possible and contemplated. Fig. 7 is a block diagram of a structure of an explicit certificate key expansion apparatus according to an embodiment of the present application, and as shown in fig. 7, the explicit certificate key expansion apparatus includes: the first receiving module 701, the expanding module 702, the requesting module 703, the second receiving module 704, and the sending module 705, and the structure will be described below.
The first receiving module 701 is configured to receive a certificate application request sent by a first user, where the certificate application request carries a first symmetric key, a second symmetric key, a first public key, and a second public key, and the first symmetric key, the second symmetric key, the first public key, and the second public key are generated by the first user.
The expansion module 702 is configured to, in response to the certificate application request, obtain a plurality of certificate indexes, expand the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in the plurality of certificate indexes, and expand the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index.
The requesting module 703 is configured to send a certificate issuance request to the certificate authority for each certificate index, where the certificate issuance request corresponding to each certificate index carries the third public key and the fourth public key corresponding to each certificate index.
The second receiving module 704 is configured to receive an encrypted explicit certificate corresponding to each certificate index, which is returned by the certificate authority in response to the certificate issuance request corresponding to each certificate index, where the encrypted explicit certificate corresponding to each certificate index is obtained by encrypting, by the certificate authority, the explicit certificate corresponding to each certificate index according to the fourth public key corresponding to each certificate index, and the explicit certificate corresponding to each certificate index is generated by the certificate authority according to the third public key corresponding to each certificate index.
The sending module 705 is configured to send the encrypted explicit certificate corresponding to each received certificate index to the first user side.
Based on the same inventive concept, an explicit certificate key expansion apparatus is further provided in the embodiment of the present application, and the apparatus is located in the first user side, as described in the following embodiments. The principle of the explicit certificate key expansion apparatus for solving the problem is similar to that of the explicit certificate key expansion method, so the implementation of the explicit certificate key expansion apparatus can refer to the implementation of the explicit certificate key expansion method, and repeated details are not repeated. As used hereinafter, the term "unit" or "module" may be a combination of software and/or hardware that implements a predetermined function. Although the means described in the embodiments below are preferably implemented in software, an implementation in hardware, or a combination of software and hardware is also possible and contemplated. Fig. 8 is a block diagram of a structure of an explicit certificate key expansion apparatus according to an embodiment of the present application, and as shown in fig. 8, the explicit certificate key expansion apparatus includes: the generation module 801, the transmission module 802, and the reception module 803 will be described below.
The generating module 801 is configured to generate a first symmetric key, a second symmetric key, a first key pair and a second key pair, where the first key pair includes a first public key and the second key pair includes a second public key.
The sending module 802 is configured to send a certificate application request to a certificate application registry, where the certificate application request carries a first symmetric key, a second symmetric key, a first public key, and a second public key, where the certificate application request is used to instruct the certificate application registry to expand the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in a plurality of certificate indexes, and to expand the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index, and is further used to instruct the certificate application registry to send a certificate issuance request to the certificate authority for each certificate index, where the certificate issuance request corresponding to each certificate index carries the third public key and the fourth public key corresponding to each certificate index.
The receiving module 803 is configured to receive the encrypted explicit certificate corresponding to each certificate index returned by the certificate application registry in response to the certificate application request, where the encrypted explicit certificate corresponding to each certificate index is returned to the certificate application registry in response to the certificate issuance request corresponding to each certificate index by the certificate authority, the encrypted explicit certificate corresponding to each certificate index is obtained by encrypting, by the certificate authority, the explicit certificate corresponding to each certificate index according to the fourth public key corresponding to each certificate index, and the explicit certificate corresponding to each certificate index is generated by the certificate authority according to the third public key corresponding to each certificate index.
From the above description, it can be seen that the embodiments of the present application achieve the following technical effects: the method comprises the steps that a first user side sends a certificate application request carrying a first symmetric key, a second symmetric key, a first public key and a second public key to a certificate application registry, so that the certificate application registry can expand the first public key according to the first symmetric key and expand the second public key according to the second symmetric key to obtain a third public key and a fourth public key corresponding to each certificate index in a plurality of certificate indexes, then the certificate application registry can send a certificate issuance request carrying the third public key and the fourth public key corresponding to each certificate index to the certificate authorization center aiming at each certificate index, the certificate authorization center responds to the certificate issuance request corresponding to each certificate index, an explicit certificate corresponding to each certificate index is constructed according to the corresponding third public key, the explicit certificate corresponding to each certificate index is encrypted according to the corresponding fourth public key, the encrypted explicit certificate corresponding to each certificate index is sent to the certificate application registry, and then the received encrypted certificate corresponding to each certificate index is sent to the first user side by the certificate application registry. Through the scheme, the user side can obtain a plurality of explicit certificates only by sending the certificate application request once based on key expansion, so that the certificate generation efficiency can be effectively improved, the interaction times are reduced, the network resources are saved, and meanwhile, the generation speed of the explicit certificates is higher than that of the implicit certificates, so that the certificate generation efficiency can be further improved.
The embodiment of the present application further provides a computer device, which may specifically refer to fig. 9, where the computer device based on the explicit certificate key expansion method provided in the embodiment of the present application includes an input device 91, a processor 92, and a memory 93. Wherein the memory 93 is configured to store processor-executable instructions. The processor 92, when executing the instructions, performs the steps of the explicit certificate key expansion method described in any of the embodiments above.
In this embodiment, the input device may be one of the main apparatuses for information exchange between a user and a computer system. The input device may include a keyboard, a mouse, a camera, a scanner, a light pen, a handwriting input board, a voice input device, etc.; the input device is used to input raw data and a program for processing these numbers into the computer. The input device can also acquire and receive data transmitted by other modules, units and devices. The processor may be implemented in any suitable way. For example, the processor may take the form of, for example, a microprocessor or processor and a computer-readable medium that stores computer-readable program code (e.g., software or firmware) executable by the (micro) processor, logic gates, switches, an Application Specific Integrated Circuit (ASIC), a programmable logic controller and embedded microcontroller, and so forth. The memory may in particular be a memory device used in modern information technology for storing information. The memory may include multiple levels, and in a digital system, the memory may be any memory as long as it can store binary data; in an integrated circuit, a circuit without a real form and with a storage function is also called a memory, such as a RAM, a FIFO and the like; in the system, the storage device in physical form is also called a memory, such as a memory bank, a TF card and the like.
In this embodiment, the functions and effects of the specific implementation of the computer device can be explained in comparison with other embodiments, and are not described herein again.
The present application further provides a computer storage medium based on the explicit certificate key expansion method, where the computer storage medium stores computer program instructions, and when the computer program instructions are executed, the steps of the explicit certificate key expansion method in any of the above embodiments are implemented.
In the present embodiment, the storage medium includes, but is not limited to, a Random Access Memory (RAM), a Read-Only Memory (ROM), a Cache (Cache), a Hard Disk Drive (HDD), or a Memory Card (Memory Card). The memory may be used to store computer program instructions. The network communication unit may be an interface for performing network connection communication, which is set in accordance with a standard prescribed by a communication protocol.
In this embodiment, the functions and effects specifically realized by the program instructions stored in the computer storage medium can be explained by comparing with other embodiments, and are not described herein again.
It will be apparent to those skilled in the art that the modules or steps of the embodiments of the present application described above may be implemented by a general purpose computing device, they may be centralized on a single computing device or distributed across a network of multiple computing devices, and alternatively, they may be implemented by program code executable by a computing device, such that they may be stored in a storage device and executed by a computing device, and in some cases, the steps shown or described may be performed in an order different from that described herein, or they may be separately fabricated into individual integrated circuit modules, or multiple ones of them may be fabricated into a single integrated circuit module. Thus, embodiments of the present application are not limited to any specific combination of hardware and software.
It is to be understood that the above description is intended to be illustrative, and not restrictive. Many embodiments and many applications other than the examples provided would be apparent to those of skill in the art upon reading the above description. The scope of the application should, therefore, be determined not with reference to the above description, but instead should be determined with reference to the pending claims along with the full scope of equivalents to which such claims are entitled.
The above description is only a preferred embodiment of the present application and is not intended to limit the present application, and it will be apparent to those skilled in the art that various modifications and variations can be made in the embodiment of the present application. Any modification, equivalent replacement, improvement and the like made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (15)

1. An explicit certificate key expansion method, comprising:
a first user terminal generates a first symmetric key, a second symmetric key, a first key pair and a second key pair, and sends a certificate application request to a certificate application registry, wherein the first key pair comprises a first public key, the second key pair comprises a second public key, and the certificate application request carries the first symmetric key, the second symmetric key, the first public key and the second public key;
responding to the certificate application request, the certificate application registry acquiring a plurality of certificate indexes, expanding the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in the plurality of certificate indexes, expanding the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index, and sending a certificate issuance request to the certificate authority aiming at each certificate index, wherein the certificate issuance request corresponding to each certificate index carries the third public key and the fourth public key corresponding to each certificate index;
responding to the certificate issuing request corresponding to each certificate index, the certificate authority generates an explicit certificate corresponding to each certificate index according to a third public key corresponding to each certificate index, encrypts the explicit certificate corresponding to each certificate index according to a fourth public key corresponding to each certificate index, and sends the encrypted explicit certificate corresponding to each certificate index to the certificate application registration center;
and the certificate application registration center sends the received encrypted explicit certificate corresponding to each certificate index to the first user terminal.
2. The method according to claim 1, wherein the certificate authority generates the explicit certificate corresponding to each certificate index according to a third public key corresponding to each certificate index, encrypts the explicit certificate corresponding to each certificate index according to a fourth public key corresponding to each certificate index, and sends the encrypted explicit certificate corresponding to each certificate index to the certificate application registry, including:
the certificate authority generates a temporary key pair corresponding to each certificate index, wherein the temporary key pair comprises a temporary public key and a temporary private key;
the certificate authority generates a certificate public key corresponding to each certificate index according to the third public key corresponding to each certificate index and the temporary public key corresponding to each certificate index;
the certificate authority constructs an explicit certificate corresponding to each certificate index according to the certificate public key corresponding to each certificate index;
the certificate authority determines the temporary private key corresponding to each certificate index as a part of private keys corresponding to each certificate index;
the certificate authority encrypts the explicit certificate and the partial private key corresponding to each certificate index according to the fourth public key corresponding to each certificate index, and signs the encrypted explicit certificate and the partial private key corresponding to each certificate index according to a system private key to obtain the signatures of the encrypted explicit certificate and the partial private key corresponding to each certificate index;
and the certificate authorization center sends the encrypted explicit certificate and the part of the private key corresponding to each certificate index and the signature of the encrypted explicit certificate and the part of the private key corresponding to each certificate index to the certificate application registration center.
3. The method of claim 2, wherein the first key pair further comprises a first private key, and wherein the second key pair further comprises a second private key;
correspondingly, after the certificate application registration center sends the received encrypted explicit certificate corresponding to each certificate index to the first user side, the method further includes:
the first user terminal expands the first private key according to the first symmetric key to obtain a third private key corresponding to each certificate index, and expands the second private key according to the second symmetric key to obtain a fourth private key corresponding to each certificate index;
the first user side verifies whether the received encrypted explicit certificate and partial private key signature corresponding to each certificate index is valid according to a system certificate, and decrypts the encrypted explicit certificate and partial private key corresponding to each certificate index according to a fourth private key corresponding to each certificate index under the condition of verifying that the encrypted explicit certificate and partial private key signature corresponding to each certificate index is valid, so as to obtain the explicit certificate and partial private key corresponding to each certificate index;
and the first user terminal generates a complete private key corresponding to each certificate index according to the partial private key corresponding to each certificate index and the third private key corresponding to each certificate index.
4. The method according to claim 3, wherein after the first user terminal generates a complete private key corresponding to each certificate index according to the partial private key corresponding to each certificate index and the third private key corresponding to each certificate index, the method further comprises:
the first user terminal selects one complete private key from the complete private keys corresponding to the certificate indexes as a target private key;
the first user side obtains target data and signs the target data according to the target private key to obtain a target signature;
and the first user terminal sends the target data, the target signature and a target explicit certificate to a second user terminal, wherein the target explicit certificate is an explicit certificate corresponding to a certificate index corresponding to the target private key.
5. The method of claim 4, wherein after the first client sends the target data, the target signature, and the target explicit certificate to the second client, further comprising:
the second user terminal obtains a system certificate and verifies the validity of the target explicit certificate according to the system certificate;
under the condition that the target explicit certificate is verified to be valid, the second user side extracts a target certificate public key from the target explicit certificate;
and the second user terminal verifies the validity of the target signature according to the target certificate public key.
6. The method of claim 1, wherein the certificate application registry expanding the first public key according to the first symmetric key to obtain a third public key corresponding to each of the plurality of certificate indexes, comprising expanding the first public key according to the following formula:
Cl=A+f1(s1,l)·G;
wherein, a is the first public key, where l is the certificate index, and l = (i, J), where i is the current certificate cycle number, and is an integer greater than or equal to 0, J represents the certificate number in one certificate cycle, J =0,1, \ 8230; (J-1), where J is the total number of certificates in one certificate cycle, and f is the total number of certificates in one certificate cycle1(s1L) is a first spreading function corresponding to the certificate index l, ClA third public key corresponding to certificate index l, where f1(s1,l)=f1 int(s1,l)modq,f1 int(s1,l)=(SM4(s1,x+1)XOR(x+1)||SM4(s1,x+2)XOR(x+2)||SM4(s1,x+3)XOR(x+3)),s1For the first symmetric key, x = (0)32||i||j||032) SM4 (-) is an SM4 encryption algorithm, XOR (-) is an XOR operation, G is a base point on an elliptic curve, q is the order of G, and mod is a modular operation.
7. The method according to claim 1, wherein the certificate application registry expands the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index, and includes expanding the second public key according to the following formula:
Dl=B+f2(s2,l)·G;
wherein B is the second public key, l is the certificate index, l = (i, J), where i is the current certificate cycle number, is an integer greater than or equal to 0, J represents the certificate number in one certificate cycle, J =0,1, \ 8230, J-1, where J is the total number of certificates in one certificate cycle, D is the total number of certificates in one certificate cycle, and J =lFor the fourth public key corresponding to the certificate index l, f2(s2And l) is a second spreading function corresponding to the certificate index l, wherein,
Figure FDA0002338706630000041
Figure FDA0002338706630000042
s2for the second symmetric key, x = (1)32||i||j||032) SM4 (-) is SM4 encryption algorithm, XOR (-) is exclusive-or operation, G is the base point on the elliptic curve, q is the order of G, mod is modulo operation.
8. The method according to claim 2, wherein the certificate authority generates the certificate public key corresponding to each certificate index according to the third public key corresponding to each certificate index and the temporary public key corresponding to each certificate index, and includes generating the certificate public key corresponding to each certificate index according to the following formula:
Pl=Wl+Cl
wherein l is the certificate index, l = (i, J), wherein i is the current certificate cycle number and is an integer greater than or equal to 0, J represents the certificate number in one certificate cycle, J =0,1, \8230, J-1, wherein J is the total number of certificates in one certificate cycle, PlFor the certificate index l corresponding to the certificate public key, WlTemporary public key corresponding to certificate index l, ClAnd indexing a third public key corresponding to the certificate.
9. The method according to claim 3, wherein the first user terminal obtains a third private key corresponding to each certificate index by expanding the first private key according to the first symmetric key, and includes expanding the first private key according to the following formula:
cl=(a+f1(s1,l))modq;
wherein a is the first private key, where l is the certificate index, and l = (i, J), where i is the current certificate cycle number, and is an integer greater than or equal to 0, and J represents the certificate number in one certificate cycle, and J =0,1, \ 8230; (J-1), where J is the total number of certificates in one certificate cycle, and f is the total number of certificates in one certificate cycle1(s1L) a first expansion function corresponding to the certificate index l, c)lIndexing a third private key corresponding to l for the certificate, wherein,f1(s1,l)=f1 int(s1,l)modq,f1 int(s1,l)=(SM4(s1,x+1)XOR(x+1)||SM4(s1,x+2)XOR(x+2)||SM4(s1,x+3)XOR(x+3)),s1For the first symmetric key, x = (0)32||i||j||032) SM4 (-) is SM4 encryption algorithm, XOR (-) is exclusive-or operation, G is the base point on the elliptic curve, q is the order of G, mod is modulo operation.
10. The method of claim 3, wherein the first user side expands the second private key according to the second symmetric key to obtain a fourth private key corresponding to each certificate index, and the expanding the second private key according to the following formula comprises:
dl=(b+f2(s2,l))modq;
wherein b is the second private key, l is the certificate index, and l = (i, J), where i is the current certificate cycle number and is an integer greater than or equal to 0, J represents the certificate number in one certificate cycle, J =0,1, \ 8230, J-1, where J is the total number of certificates in one certificate cycle, d is the total number of certificates in one certificate cycle, and J =lFor the fourth private key corresponding to the certificate index l, f2(s2L) is a second spreading function corresponding to the certificate index l, wherein,
Figure FDA0002338706630000051
Figure FDA0002338706630000052
s2for the second symmetric key, x = (1)32||i||j||032) SM4 (-) is SM4 encryption algorithm, XOR (-) is exclusive-or operation, G is the base point on the elliptic curve, q is the order of G, mod is modulo operation.
11. The method according to claim 3, wherein the first user side generates a complete private key corresponding to each certificate index according to the partial private key corresponding to each certificate index and the third private key corresponding to each certificate index, and includes generating the complete private key corresponding to each certificate index according to the following formula:
rpl=(pl+cl)modq;
wherein l is the certificate index, l = (i, J), wherein i represents a certificate period serial number, J represents a certificate serial number in one certificate period, i is a current certificate period serial number and is an integer greater than or equal to 0, J =0,1, \8230J-1, wherein J is the total number of certificates in one certificate period, rplFor the complete private key corresponding to the certificate index l, plA partial private key corresponding to the certificate index l, clAnd q is a third private key corresponding to the certificate index l, the order of G is the q, G is a base point on the elliptic curve, and mod is modular operation.
12. The method of claim 1, wherein the first user end comprises at least one of: the system comprises a vehicle networking service platform, vehicle-mounted equipment in the vehicle networking and a road communication system in the vehicle networking.
13. An explicit certificate key expansion method applied to a first user side, comprising:
generating a first symmetric key, a second symmetric key, a first key pair and a second key pair, wherein the first key pair comprises a first public key and the second key pair comprises a second public key;
sending a certificate application request to a certificate application registry, wherein the certificate application request carries the first symmetric key, the second symmetric key, the first public key and the second public key, the certificate application request is used for indicating the certificate application registry to expand the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in a plurality of certificate indexes, and to expand the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index, and is also used for indicating the certificate application registry to send a certificate issuance request to the certificate authority for each certificate index, wherein the public key issuance request corresponding to each certificate index carries the third public key and the fourth public key corresponding to each certificate index;
and receiving the encrypted explicit certificate corresponding to each certificate index returned by the certificate application registry in response to the certificate application request, wherein the encrypted explicit certificate corresponding to each certificate index is returned to the certificate application registry by the certificate authority in response to the certificate issuance request corresponding to each certificate index, the encrypted explicit certificate corresponding to each certificate index is obtained by encrypting the explicit certificate corresponding to each certificate index by the certificate authority according to the fourth public key corresponding to each certificate index, and the explicit certificate corresponding to each certificate index is generated by the certificate authority according to the third public key corresponding to each certificate index.
14. An explicit certificate key expansion method, applied to a certificate application registry, includes:
receiving a certificate application request sent by a first user side, wherein the certificate application request carries a first symmetric key, a second symmetric key, a first public key and a second public key, and the first symmetric key, the second symmetric key, the first public key and the second public key are generated by the first user side;
responding to the certificate application request, acquiring a plurality of certificate indexes, expanding the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in the plurality of certificate indexes, and expanding the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index;
sending a certificate issuing request to a certificate authority aiming at each certificate index, wherein the certificate issuing request corresponding to each certificate index carries a third public key and a fourth public key corresponding to each certificate index;
receiving an encrypted explicit certificate corresponding to each certificate index returned by the certificate authority in response to the certificate issuance request corresponding to each certificate index, wherein the encrypted explicit certificate corresponding to each certificate index is obtained by encrypting the explicit certificate corresponding to each certificate index by the certificate authority according to a fourth public key corresponding to each certificate index, and the explicit certificate corresponding to each certificate index is generated by the certificate authority according to a third public key corresponding to each certificate index;
and sending the received encrypted explicit certificate corresponding to each certificate index to the first user side.
15. An explicit certificate key expansion apparatus, located in a certificate application registry, comprising:
a first receiving module, configured to receive a certificate application request sent by a first user, where the certificate application request carries a first symmetric key, a second symmetric key, a first public key, and a second public key, and the first symmetric key, the second symmetric key, the first public key, and the second public key are generated by the first user;
the expansion module is used for responding to the certificate application request, acquiring a plurality of certificate indexes, expanding the first public key according to the first symmetric key to obtain a third public key corresponding to each certificate index in the plurality of certificate indexes, and expanding the second public key according to the second symmetric key to obtain a fourth public key corresponding to each certificate index;
a request module, configured to send a certificate issuance request to a certificate authority for each certificate index, where the certificate issuance request corresponding to each certificate index carries a third public key and a fourth public key corresponding to each certificate index;
a second receiving module, configured to receive an encrypted explicit certificate corresponding to each certificate index, where the encrypted explicit certificate corresponding to each certificate index is returned by the certificate authority in response to the certificate issuance request corresponding to each certificate index, where the encrypted explicit certificate corresponding to each certificate index is obtained by encrypting, by the certificate authority, the explicit certificate corresponding to each certificate index according to a fourth public key corresponding to each certificate index, and the explicit certificate corresponding to each certificate index is generated by the certificate authority according to a third public key corresponding to each certificate index;
and the sending module is used for sending the encrypted explicit certificate corresponding to each received certificate index to the first user terminal.
CN201911367097.9A 2019-12-26 2019-12-26 Explicit certificate key expansion method and device Active CN111181729B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911367097.9A CN111181729B (en) 2019-12-26 2019-12-26 Explicit certificate key expansion method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911367097.9A CN111181729B (en) 2019-12-26 2019-12-26 Explicit certificate key expansion method and device

Publications (2)

Publication Number Publication Date
CN111181729A CN111181729A (en) 2020-05-19
CN111181729B true CN111181729B (en) 2022-11-01

Family

ID=70654024

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911367097.9A Active CN111181729B (en) 2019-12-26 2019-12-26 Explicit certificate key expansion method and device

Country Status (1)

Country Link
CN (1) CN111181729B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109639427A (en) * 2017-10-09 2019-04-16 华为技术有限公司 A kind of method and apparatus that data are sent
CN110380862A (en) * 2019-06-25 2019-10-25 济南晟安信息技术有限公司 Signature verification method, device, computer equipment and storage medium

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101261678B1 (en) * 2009-09-21 2013-05-09 한국전자통신연구원 Downloadable conditional access system by using distributed trusted authority and operating method of the same
EP3391681B1 (en) * 2015-12-17 2021-10-06 OnBoard Security, Inc. Secure vehicle communication system
JP7136903B2 (en) * 2017-10-22 2022-09-13 エルジー エレクトロニクス インコーポレイティド Encryption method and system for managing digital certificates

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109639427A (en) * 2017-10-09 2019-04-16 华为技术有限公司 A kind of method and apparatus that data are sent
CN110380862A (en) * 2019-06-25 2019-10-25 济南晟安信息技术有限公司 Signature verification method, device, computer equipment and storage medium

Also Published As

Publication number Publication date
CN111181729A (en) 2020-05-19

Similar Documents

Publication Publication Date Title
CN109559122B (en) Block chain data transmission method and block chain data transmission system
CN107483212B (en) Method for generating digital signature by cooperation of two parties
CN110336774B (en) Mixed encryption and decryption method, equipment and system
CN110380862B (en) Signature verification method and device based on implicit certificate and computer equipment
CN110677240B (en) Method, apparatus and medium for providing highly available computing services through certificate issuance
CN108683493B (en) Data aggregation method for providing privacy protection in smart power grid
US9268968B2 (en) Credential validation
CN109818730B (en) Blind signature acquisition method and device and server
CN110311776B (en) Range proving method, range proving device, computer equipment and storage medium
CN109905877B (en) Message verification method of communication network system, communication method and communication network system
KR100635280B1 (en) Security method using electronic signature
US20150358167A1 (en) Certificateless Multi-Proxy Signature Method and Apparatus
CN112600678B (en) Data processing method, device, equipment and storage medium
CN103490892A (en) Digital signing method and system, application server and cloud cipher server
CN110336664B (en) SM2 cryptographic algorithm-based cross-domain authentication method for information service entity
CN114726546B (en) Digital identity authentication method, device, equipment and storage medium
CN112417489B (en) Digital signature generation method and device and server
CN105049434A (en) Identity authentication method and encryption communication method under peer-to-peer network environment
CN108390866B (en) Trusted remote certification method and system based on double-agent bidirectional anonymous authentication
JP6780771B2 (en) Verification information granting device, verification device, information management system, method and program
CN107248997B (en) Authentication method based on intelligent card under multi-server environment
US8954728B1 (en) Generation of exfiltration-resilient cryptographic keys
CN111241492A (en) Product multi-tenant secure credit granting method, system and electronic equipment
CN111064580B (en) Implicit certificate key expansion method and device
CN111245611B (en) Anti-quantum computation identity authentication method and system based on secret sharing and wearable equipment

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 250101 2204, floor 22, building 3, Aosheng building, 1166 Xinluo street, high tech Zone, Jinan City, Shandong Province

Applicant after: Shengan Information Technology Co.,Ltd.

Address before: 250101 2208, floor 22, building 3, Aosheng building, 1166 Xinluo street, Jinan high tech Zone, Jinan City, Shandong Province

Applicant before: JINAN SHENGAN INFORMATION TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant