CN109302369A - A kind of data transmission method and device based on key authentication - Google Patents

A kind of data transmission method and device based on key authentication Download PDF

Info

Publication number
CN109302369A
CN109302369A CN201710606031.5A CN201710606031A CN109302369A CN 109302369 A CN109302369 A CN 109302369A CN 201710606031 A CN201710606031 A CN 201710606031A CN 109302369 A CN109302369 A CN 109302369A
Authority
CN
China
Prior art keywords
key
client
digital certificate
server end
certificate information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710606031.5A
Other languages
Chinese (zh)
Other versions
CN109302369B (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.)
Guizhou Baishan Cloud Polytron Technologies Inc
Original Assignee
Guizhou Baishan Cloud Polytron Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guizhou Baishan Cloud Polytron Technologies Inc filed Critical Guizhou Baishan Cloud Polytron Technologies Inc
Priority to CN201710606031.5A priority Critical patent/CN109302369B/en
Publication of CN109302369A publication Critical patent/CN109302369A/en
Application granted granted Critical
Publication of CN109302369B publication Critical patent/CN109302369B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • 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/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)

Abstract

The invention discloses a kind of method and devices based on key authentication, the method includes: that digital certificate information is sent to client by server end, and the summary info of digital certificate information and the merging unique identification value comprising handshaking information contextual information mark and digital certificate information mark are sent to key server;Key server according to summary info determine digital certificate information corresponding to private key, using this private key to merge unique identification value sign, signature value is sent to server end, signature value is sent to client by server end;After client uses public key verifications signature value corresponding to digital certificate information legal, client and server end carries out data interaction.The present invention solves the problems, such as the server that private key must be deployed to front end and client executing TLS 1.3 shakes hands, by private key and certificate deployment in distinct device, make server end that can not read private key content, reduces the probability of private key leakage, ensure that the safety of private key.

Description

A kind of data transmission method and device based on key authentication
Technical field
The present invention relates to Internet technical field more particularly to a kind of data transmission methods and dress based on key authentication It sets.
Background technique
Current Secure Socket Layer (Secure Socket Layer, SSL)/Transport Layer Security (Transport Layer Security, TLS) there is one in agreement (including following version: SSL3.0, TLS1.0, TLS1.1, TLS1.2) It shakes hands link.
More existing is in the related technology the TLS1.2 and SSL/ of version (SSL3.0, TLS1.0, TLS1.1) before Tls protocol and one kind " no private key " solution proposed, main thought are during above-mentioned protocol handshake, based on tool The process of body agreement is handled, to realize that server local does not need the purpose of deployment private key text.
It is existing other in the related technology, in link of shaking hands herein, the server end in the both sides that shake hands is needed using number Word certificate corresponding private key is completed to shake hands.Wherein, digital certificate private key corresponding with its is deployed to the service of the service of offer Above device, to complete handshake phase specified in SSL/TLS agreement.Server end is using the mode of private key according to specifically holding Hand computation method determines, mainly includes private key decryption and private key signature two ways.
Fig. 1 is the link flow diagram of shaking hands decrypted in the prior art using private key, this process includes:
Step 101, client sends client hello (ClientHello) message.
Step 102, server end sends server end to client and greets (ServerHello) message, certificate (Certificate), server end, which is greeted, completes (ServerHelloDone) message.
Step 103, the public key in client certificate is to PreMasterSecret message encryption;
Step 104, encrypted information is included in client key exchange (ClientKeyExchange) and disappeared by client Server end is sent in breath.
Step 105, server end solves the PreMasterSecret message encrypted using the corresponding private key of certificate It is close, obtain PreMasterSecret.
Step 106, server end and client use identical PreMasterSecret generation symmetric key.
Step 107, server end and client send ChangeCipherSpec and completion to other side respectively (Finished) message, and the message of other side is verified respectively.
Step 108, server end and client using the symmetric key encryption data negotiated and are transmitted.
Fig. 2 is another flow diagram for the link of shaking hands decrypted in the prior art using private key, this process includes:
Step 201, client sends client hello (ClientHello) message.
Step 202, server end sends server end to client and greets (ServerHello) message, certificate (Certificate), server end, which is greeted, completes (ServerHelloDone) message.
Step 203, the public key in client certificate is to PreMasterSecret message encryption.
Step 204, encrypted information is included in client key exchange (ClientKeyExchange) and disappeared by client Server end is sent in breath.
Step 205, server parsing client key exchange (ClientKeyExchange) message obtains encrypted PreMasterSecret is simultaneously sent to key server, and key server will be encrypted using the corresponding private key of certificate PreMasterSecret is decrypted, and PreMasterSecret is sent to server.
Step 206, server end and client use identical PreMasterSecret generation symmetric key.
Step 207, server end and client send ChangeCipherSpec and Finished message to other side respectively, And the message of other side is verified respectively.
Step 208, server end and client using the symmetric key encryption data negotiated and are transmitted.
Fig. 3 is that the link flow diagram of shaking hands using private key signature, this process include: in the prior art
Step 301, client sends client hello (ClientHello) message.
Step 302, server end sends server end to client and greets (ServerHello) message, certificate (Certificate)。
Step 303, the DH of selection or EC (elliptic curve) parameter signed by server end using private key Value.
Step 304, parameter and its signature value are placed in the exchange of server end key by server end (ServerKeyExchange) client is sent in message.
Step 305, server end sends server end to client and greets completion (ServerHelloDone) message.
Step 306, client sends client key exchange (ClientKeyExchange) message.
Step 307, server end and client are based on identical DH or EC parameter and generate symmetric key.
Step 308, server end and client send ChangeCipherSpec and completion to other side respectively (Finished) message, and the message of other side is verified respectively.
Step 309, server end and client using the symmetric key encryption data negotiated and are transmitted.
Fig. 4 is that another flow diagram of link of shaking hands using private key signature, this process include: in the prior art
Step 401, client sends client hello (ClientHello) message.
Step 402, server end sends server end to client and greets (ServerHello) message, certificate (Certificate)。
Step 403, signature parameter (DH or EC (elliptic curve)) is sent to key server by server end.
Step 404, key server is signed signature parameter using the corresponding private key of certificate;
Step 405, signature value is sent to server end by key server;
Step 406, signature parameter and signature value are set to the exchange of server end key by server end (ServerKeyExchange) in message, and it is sent to client.
Step 407, server end sends server end to client and greets completion (ServerHelloDone) message.
Step 408, client sends client key exchange (ClientKeyExchange) message.
Step 409, server end and client send ChangeCipherSpec and Finished message to other side respectively, And the message of other side is verified respectively.
Step 410, server end and client using the symmetric key encryption data negotiated and are transmitted.
Protocol version and TLS1.3 agreement difference are huge due to TLS1.2 and before, and agreement process can not be compatible with, therefore Existing method has no idea to reapply in TLS1.3 agreement.And the corresponding private key of certificate is deployed to and is directly connected to client Server on, there are following Railway Projects:
1) a possibility that copy of private key widely exists in multiple servers, causes private key to be revealed by attack increasing Greatly.
2) for CDN and other kinds of Internet Service Provider, since the service of SSL/TLS agreement is by these manufacturers It provides, private key is supplied to service provider and increases the possibility that private key is revealed by user.
There are this huge variations for the agreement of TLS1.3 agreement and before version, including but not limited to following several points:
1) RSA shakes hands whole no longer support Fig. 1, process shown in Fig. 2 sequentially
2) ClientKeyExchange and ServerKeyExchange message is eliminated
3) ServerHelloDone message is eliminated
4) ChangeCipherSpec message is eliminated
5) DHE/ECDHE, which shakes hands, does not use the method that relevant parameter is signed
6) server begin to use CertificateVerify message (this message before TLS1.2 only have client It can use)
In conclusion due to great variety existing for agreement itself, the long-range private key of above two (RSA and DH) type makes Method can not be suitable for TLS1.3, that is to say, that from the point of view of from server end and key server two, if client Shaking hands as TLS1.3 between server, then server end will be unable to and key server communication, or even can not correctly handle Its data that be sent to key server.Key server also can not correctly handle the data for receiving to come.
Although newest TLS1.3 agreement (draft stage) compared with the SSL/TLS agreement difference having had standardized compared with Greatly, above two key exchange process (and corresponding no private key dispositions method) has no longer been applicable in.
Fig. 5 is the schematic diagram for being applied to the data transmission stream journey of TLS1.3 agreement in the prior art;This process includes:
Step 501, client generates client shared key (key_share), determines signature algorithm (signature_ algorithm).Client initiates TLS1.3 and shakes hands, and sends client hello (ClientHello) message to server, herein Band client shares code key and signature algorithm (signature_algorithm) in message.
Step 502, received server-side client hello (ClientHello) message, parses client from this message Hold shared code key (key_share) and signature algorithm (signature_algorithm).It is shared that server end generates server end Code key, to client send server end greet (ServerHello) message, carried in this message this server end share it is secret Key.
Step 503, client and server is according to the shared key received from other side according to side as defined in TLS1.3 agreement Method generates key of shaking hands (Handshake Secret) and applies key (ApplicationSecret).
Step 504, signature algorithm (signature_algorithm) selection that server is supported according to client is suitable Digital certificate information (including digital certificate and its certificate chain) sends certificate (Certificate) message to client, disappears herein Digital certificate information is carried in breath, and is encrypted this using the key of shaking hands (Handshake Secret) generated in step 503 and disappeared Breath.
Step 505, server determines the cryptographic Hash and certificate for context (Handshake Context) of shaking hands (Certificate) the merging cryptographic Hash of the cryptographic Hash of message, is signed using private key corresponding to digital certificate, and will label Data (i.e. signature value) after name are carried on certificate validation (CertificateVerify) message and are sent to client.Wherein, it holds Hereafter (Handshake Context) includes from client hello (ClientHello) message until certificate on hand (Certificate) interaction message between message.
Step 506, the key of shaking hands (Handshake Secret) generated in server step 503 encrypts the merging Encrypted merging cryptographic Hash is carried in completion (Finished) message and is sent to client by cryptographic Hash.
Step 507, the certificate validation that client is received using the public key verifications in digital certificate from server end (CertificateVerify) legitimacy of the signature value carried in message, if the verification passes, client is identical with server-side Method generate complete (Finished) information and sending to server end.
Step 508, key (Application is applied using what is generated in step 503 in client and server end Secret it is transmitted after) being encrypted to subsequent application layer data.
The existing data transmission stream journey applied to TLS1.3 agreement has that private key is easy leakage, needs to existing Process improves the safety to ensure private key.
Summary of the invention
In order to solve the above-mentioned technical problems, the present invention provides a kind of method and devices based on key authentication.
Data transmission method provided by the invention based on key authentication includes:
Digital certificate information is sent to client by server end, by the summary info and packet of the digital certificate information The merging unique identification value of the mark of contextual information containing handshaking information and digital certificate information mark is sent to key server;
The key server according to the summary info determine the digital certificate information corresponding to private key, use this Private key signs to the merging unique identification value, and signature value is sent to the server end, and the server end is by institute It states signature value and is sent to the client;
After the client uses signature value described in public key verifications corresponding to the digital certificate information legal, the visitor Family end and the server end carry out data interaction.
The above-mentioned data transmission method based on key authentication also has the following characteristics that
The method also includes: client and server end generates key of shaking hands respectively;
It includes: key pair institute of shaking hands described in use that the digital certificate information is sent to the client by the server Digital certificate information encryption is stated, encrypted digital certificate information is sent to the client;Described in the client use Key of shaking hands decrypts the encrypted digital certificate information, obtains public key corresponding to digital certificate information;
It includes: label described in key pair of shaking hands described in use that the signature value is sent to the client by the server end Name value is encrypted, and encrypted signature value is sent to the client;The client is decrypted using the key of shaking hands The encrypted signature value.
The above-mentioned data transmission method based on key authentication also has the following characteristics that
The method also includes: client sends client hello message, the band client in this message Shared code key and signature algorithm, server end send server end hello messages to client, this service are carried in this message Share code key in device end;
It is described digital certificate information to be sent to client to include: server end select according to the signature algorithm that client is supported Digital certificate information is selected, certificate message is sent to key server, carries digital certificate information in this message;
The handshaking information contextual information includes the client hello message, the server end hello messages, institute State certificate message.
The above-mentioned data transmission method based on key authentication also has the following characteristics that
It includes: that client and server end is total to according to what is received from other side that client and server end, which generates key of shaking hands, Enjoy key of shaking hands described in key generation.
The above-mentioned data transmission method based on key authentication also has the following characteristics that
The handshaking information contextual information mark refers to the cryptographic Hash of handshaking information contextual information, the digital certificate Message identification refers to that the cryptographic Hash of digital certificate information, the merging unique identification value are cryptographic Hash.
The above-mentioned data transmission method based on key authentication also has the following characteristics that
Digital certificate information is sent to before client by the server end further include: the client and the service Device end, which generates, applies key;
It includes: that the client and the server end use that the client and the server end, which carry out data interaction, Processing is encrypted and decrypted in the application key pair interactive information.
The above-mentioned data transmission method based on key authentication also has the following characteristics that
The method also includes: key server default setting has the summary info of public key corresponding to digital certificate information And the corresponding private key of this summary info;Alternatively, key server obtains corresponding to digital certificate information from the server end Public key summary info and the corresponding private key of this summary info.
The present invention also provides a kind of data transmission devices based on key authentication, comprising: client, server end, close Key server;
The server end includes digital certificate information management module, the first interactive module, mark management module, the second friendship Mutual module;
The digital certificate information management module determines the abstract of digital certificate information for selecting digital certificate information Information;
First interactive module, for digital certificate information to be sent to the client;It is also used in the client End interacts after using signature value described in public key verifications corresponding to the digital certificate information legal with client data;
The mark management module, for determining comprising handshaking information contextual information mark and digital certificate information mark Merging unique identification value;
Second interactive module, for the merging unique identification value to be sent to key server;Being also used to will be from The signature value that key server receives is sent to client;
The key server includes signature blocks and communication module, and signature blocks are used to be determined according to the summary info Private key corresponding to the digital certificate information signs to the merging unique identification value using this private key;Communication module For signature value to be sent to the server end;
The client includes client interactive module, authentication module;
The client interactive module, for receiving the signature value;It is also used to verify the signature value in authentication module After legal, data interaction is carried out with server end;
The authentication module, for whether being closed using signature value described in public key verifications corresponding to the digital certificate information Method.
The above-mentioned data transmission device based on key authentication also has the following characteristics that
The server end further includes for generating the key production module for key of shaking hands, encrypting module;
The encrypting module is also used for described for the encryption of digital certificate information described in key pair of shaking hands described in use Key pair of shaking hands encrypts the signature value;
First interactive module, for encrypted digital certificate information to be sent to the client;Being also used to will Encrypted signature value is sent to the client;
The client further includes the key production module and deciphering module for generating key of shaking hands;
The deciphering module decrypts the encrypted digital certificate information for key of shaking hands described in use, obtains number Public key corresponding to certificate information is also used for the key of shaking hands and decrypts the encrypted digital certificate information and obtain Public key corresponding to digital certificate information.
The above-mentioned data transmission device based on key authentication also has the following characteristics that
The client interactive module is also used to send client hello message to server end, the band client in this message Hold shared code key and signature algorithm;
First interactive module is also used to send server end hello messages to client, carries this in this message Server end shares code key;
Second interactive module, is also used to send certificate message to key server, and number card is carried in this message Letter breath;
The mark management module is also used to the client hello message, the server end hello messages, described Certificate message generates handshaking information contextual information mark as handshaking information contextual information.
In order to solve this problem, the invention proposes one kind is deployed to key server for private key under TLS1.3 agreement (ability that front-end server does not read private key content) does not dispose private key on the server for providing service, so that it may complete The function that SSL/TLS shakes hands.
Private key is changed to be deployed on key server and by the cipher key service by being deployed on server end in this programme Device externally provides the mode of private key signature service, solves that private key must be deployed to front end and client executing TLS 1.3 shakes hands Server the problem of, by private key and certificate deployment in distinct device, make server end that can not read private key content, reduce The probability of private key leakage, ensure that the safety of private key.
Detailed description of the invention
The attached drawing for constituting a part of the invention is used to provide further understanding of the present invention, schematic reality of the invention It applies example and its explanation is used to explain the present invention, do not constitute improper limitations of the present invention.In the accompanying drawings:
Fig. 1 is the data transmission stream journey schematic diagram decrypted in the prior art using private key;
Fig. 2 is another schematic diagram for the data transmission stream journey decrypted in the prior art using private key;
Fig. 3 is the data transmission stream journey schematic diagram for using private key signature in the prior art;
Fig. 4 is in the prior art using another schematic diagram of the data transmission stream journey of private key signature;
Fig. 5 is the schematic diagram for being applied to the data transmission stream journey of TLS1.3 agreement in the prior art;
Fig. 6 is the flow chart of the data transmission method in the embodiment of the present invention based on key authentication;
Fig. 7 is the structure chart of the data transmission device in the embodiment of the present invention based on key authentication;
Fig. 8 is the flow chart of the data transmission method in specific embodiment based on key authentication.
Specific embodiment
In order to make the object, technical scheme and advantages of the embodiment of the invention clearer, below in conjunction with the embodiment of the present invention In attached drawing, technical scheme in the embodiment of the invention is clearly and completely described, it is clear that described embodiment is A part of the embodiment of the present invention, instead of all the embodiments.Based on the embodiments of the present invention, those of ordinary skill in the art Every other embodiment obtained without making creative work, shall fall within the protection scope of the present invention.It needs Illustrate, in the absence of conflict, the features in the embodiments and the embodiments of the present application can mutual any combination.
Fig. 6 is the flow chart of the data transmission method based on key authentication, and the method includes:
Step 601, digital certificate information is sent to client by server end, by the summary info of digital certificate information with And the merging unique identification value comprising handshaking information contextual information mark and digital certificate information mark is sent to cipher key service Device;
Step 602, key server according to summary info determine digital certificate information corresponding to private key, use this private key It signs to the merging unique identification value, signature value is sent to server end, server end sends the signature value To client;
Step 603, after client uses signature value described in public key verifications corresponding to the digital certificate information legal, visitor Family end and server end carry out data interaction.
Wherein,
Key server default setting has the summary info and this summary info of public key corresponding to digital certificate information Corresponding private key;Alternatively, key server obtains the abstract letter of public key corresponding to digital certificate information from the server end Breath and the corresponding private key of this summary info.
Before step 601 further include: client and server end generates key of shaking hands, and the key of shaking hands generated respectively It is identical.In step 601, it includes: key of shaking hands described in use that the digital certificate information is sent to the client by server Digital certificate information is encrypted, encrypted digital certificate information is sent to the client;Described in the client use Key of shaking hands decrypts the encrypted digital certificate information, obtains public key corresponding to digital certificate information.In step 602, It includes: that signature value described in key pair of shaking hands described in use is added that the signature value is sent to the client by server end It is close, encrypted signature value is sent to the client;After the client decrypts the encryption using the key of shaking hands Signature value.
It further include that client sends client hello message before step 601, the band client in this message Shared code key and signature algorithm are held, server end sends server end hello messages to client, this clothes is carried in this message Share code key in business device end.It includes: that server end is supported according to client that digital certificate information, which is sent to client, in step 601 Signature algorithm select digital certificate information, to key server send certificate message, in this message carry digital certificate letter Breath.Handshaking information contextual information in step 601 include the client hello message, the server end hello messages, The certificate message.Handshaking information contextual information identifies the cryptographic Hash for referring to handshaking information contextual information, digital certificate letter Breath mark refers to that the cryptographic Hash of digital certificate information, merging unique identification value are cryptographic Hash.Client and server end generates Key of shaking hands specifically includes: client and server end generates key of shaking hands according to the shared key received from other side.
Before step 601 further include: the client and the server end generate and apply key;Client in step 603 End and server end carry out data interaction include: client and server end using using key pair interactive information carry out encryption and Decryption processing.
Fig. 7 is the structure chart of the data transmission device based on key authentication, this device includes: client, server end, close Key server.Server end includes digital certificate information management module, the first interactive module, mark management module, the second interaction Module.Key server includes signature blocks and communication module.Client includes client interactive module and authentication module.
Digital certificate information management module determines the summary info of digital certificate information for selecting digital certificate information. First interactive module is used to digital certificate information being sent to the client;It is also used to use the number in the client It is interacted after signature value described in public key verifications corresponding to certificate information is legal with client data.Mark management module is for determining Merging unique identification value comprising handshaking information contextual information mark and digital certificate information mark.Second interactive module is used for The merging unique identification value is sent to key server;The signature value for being also used to receive from key server is sent to Client.
Signature blocks be used for according to the summary info determine the digital certificate information corresponding to private key, use this private Key signs to the merging unique identification value;Communication module is used to signature value being sent to the server end.
Client interactive module is for receiving the signature value;It is legal to be also used to verify the signature value in authentication module Afterwards, data interaction is carried out with server end.Authentication module is used for using public key verifications institute corresponding to the digital certificate information Whether legal state signature value.
Further, server end further includes for generating the key production module for key of shaking hands, encrypting module.Encrypt mould Block is also used for described shaking hands key pair to the label for the encryption of digital certificate information described in key pair of shaking hands described in use Name value is encrypted.First interactive module is used to encrypted digital certificate information being sent to the client;Being also used to will Encrypted signature value is sent to the client.Client further include key production module for generating key of shaking hands and Deciphering module.Deciphering module decrypts the encrypted digital certificate information for key of shaking hands described in use, obtains number card The corresponding public key of letter breath is also used for the key of shaking hands and decrypts the encrypted digital certificate information and obtain number Public key corresponding to word certificate information.
Client interactive module is also used to send client hello message to server end, and band client is total in this message Enjoy code key and signature algorithm.First interactive module is also used to send server end hello messages to client, takes in this message Code key is shared with this server end.Second interactive module is also used to send certificate message to key server, takes in this message Band digital certificate information.Mark management module is also used to make client hello message, server end hello messages, certificate message For handshaking information contextual information, and generate handshaking information contextual information mark.
Handshaking information contextual information identifies the cryptographic Hash for referring to handshaking information contextual information, the digital certificate information Mark refers to that the cryptographic Hash of digital certificate information, the merging unique identification value are cryptographic Hash.
When client and the server end carry out data interaction, client interactive module and the first interactive module are also used to Processing is encrypted and decrypted using pre-generated application key pair interactive information.
Key server in the present invention is also equipped at least one of following characteristics:
1) private key of all types as defined in TLS1.3 agreement is supported.
2) signature operation of the above-mentioned type private key is supported.
3) necessary security mechanism.Such as front-end server can be authenticated, prevent unwarranted private key service It calls.
4) externally encryption connection can be used in service to key server, encryption connection can also not be used, herein not to reality Border function causes to limit.
Private key is changed to be deployed on key server and by the cipher key service by being deployed on server end in this programme Device externally provides the mode of private key signature service, solves that private key must be deployed to front end and client executing TLS 1.3 shakes hands Server the problem of, by private key and certificate deployment in distinct device, make server end that can not read private key content, reduce The probability of private key leakage, ensure that the safety of private key.
Illustrate this method below by specific embodiment.
Specific embodiment:
As shown in figure 8, data transmission method in this specific embodiment based on key authentication the following steps are included:
Step 801, client generates client shared key (key_share), determines signature algorithm (signature_ algorithm).Client initiates TLS1.3 and shakes hands, and sends client hello (ClientHello) message to server end, Band client shares code key and signature algorithm (signature_algorithm) in this message.
Step 802, received server-side client hello (ClientHello) message, parses client from this message Hold shared code key (key_share) and signature algorithm (signature_algorithm).It is shared that server end generates server end Code key, to client send server end greet (ServerHello) message, carried in this message this server end share it is secret Key.
Step 803, client and server end is according to the shared key received from other side according to as defined in TLS1.3 agreement Method generates key of shaking hands (Handshake Secret) respectively and applies key (ApplicationSecret).
Step 804, signature algorithm (signature_algorithm) selection that server end is supported according to client is suitable Digital certificate information (including digital certificate and its certificate chain), to key server send certificate (Certificate) message, Digital certificate information is carried in this message, and is added using the key of shaking hands (Handshake Secret) generated in step 803 This close message.
Step 805, server end determines the cryptographic Hash and certificate for context (Handshake Context) of shaking hands (Certificate) this merging cryptographic Hash is sent to key server by the merging cryptographic Hash of the cryptographic Hash of message.It shakes hands up and down Literary (Handshake Context) includes from client hello (ClientHello) message until certificate (Certificate) disappears Interaction message between breath.
In step 805 or before step 801, server end is by the abstract of public key corresponding to digital certificate information Information is sent to key server.
Step 806, key server calculates private key using according to the summary info of public key, using this private key to receiving Merging cryptographic Hash carry out signature obtain signature value.
Step 807, signature value is sent to server end by key server.
Step 808, signature value is carried on certificate validation (CertificateVerify) message and is sent to visitor by server end Family end.
Step 809, server end determines cryptographic Hash, the cryptographic Hash of certificate (Certificate) message for context of shaking hands With the merging cryptographic Hash of the cryptographic Hash of certificate validation (CertificateVerify) message, the key of shaking hands in step 803 is used It encrypts this and merges cryptographic Hash, be carried on completion (Finished) message and be sent to client.
Step 810, client uses the certificate validation at the public-key cryptographic keys authentication server end in digital certificate (CertificateVerify) legitimacy of the signature value in message after being verified, uses side identical with server end Completion (Finished) message that method generates client is sent to server end.
Step 811, key (Application is applied using what is generated in step 803 in client and server end Secret it is transmitted after) being encrypted to subsequent application layer data.
Descriptions above can combine implementation individually or in various ways, and these variants all exist Within protection scope of the present invention.
Those of ordinary skill in the art will appreciate that all or part of the steps in the above method can be instructed by program Related hardware is completed, and described program can store in computer readable storage medium, such as read-only memory, disk or CD Deng.Optionally, one or more integrated circuits also can be used to realize, accordingly in all or part of the steps of above-described embodiment Ground, each module/unit in above-described embodiment can take the form of hardware realization, can also use the shape of software function module Formula is realized.The present invention is not limited to the combinations of the hardware and software of any particular form.
It should be noted that, in this document, the terms "include", "comprise" or its any other variant are intended to non-row His property includes, so that including the article of a series of elements or equipment not only includes those elements, but also including not having There is the other element being expressly recited, or further includes for this article or the intrinsic element of equipment.Do not limiting more In the case where system, the element that is limited by sentence " including ... ", it is not excluded that in the article or equipment for including the element There is also other identical elements.
The above examples are only used to illustrate the technical scheme of the present invention and are not limiting, reference only to preferred embodiment to this hair It is bright to be described in detail.Those skilled in the art should understand that can modify to technical solution of the present invention Or equivalent replacement should all cover in claim model of the invention without departing from the spirit and scope of the technical solution of the present invention In enclosing.

Claims (10)

1. a kind of data transmission method based on key authentication characterized by comprising
Digital certificate information is sent to client by server end, by the summary info of the digital certificate information and comprising holding The merging unique identification value of hand information context message identification and digital certificate information mark is sent to key server;
The key server according to the summary info determine the digital certificate information corresponding to private key, use this private key It signs to the merging unique identification value, signature value is sent to the server end, the server end is by the label Name value is sent to the client;
After the client uses signature value described in public key verifications corresponding to the digital certificate information legal, the client Data interaction is carried out with the server end.
2. as described in claim 1 based on the data transmission method of key authentication, which is characterized in that
The method also includes: client and server end generates key of shaking hands respectively;
It includes: number described in key pair of shaking hands described in use that the digital certificate information is sent to the client by the server The encryption of word certificate information, is sent to the client for encrypted digital certificate information;The client is shaken hands using described Key decrypts the encrypted digital certificate information, obtains public key corresponding to digital certificate information;
It includes: signature value described in key pair of shaking hands described in use that the signature value is sent to the client by the server end It is encrypted, encrypted signature value is sent to the client;The client is shaken hands described in key decryption using described Encrypted signature value.
3. as claimed in claim 2 based on the data transmission method of key authentication, which is characterized in that
The method also includes: client sends client hello message, and band client is shared in this message Code key and signature algorithm, server end send server end hello messages to client, this server end are carried in this message Shared code key;
It is described digital certificate information to be sent to client to include: server end select number according to the signature algorithm that client is supported Word certificate information sends certificate message to key server, carries digital certificate information in this message;
The handshaking information contextual information includes the client hello message, the server end hello messages, the card Book message.
4. as claimed in claim 3 based on the data transmission method of key authentication, which is characterized in that
Client and server end generates key of shaking hands, and to include: client and server end close according to sharing of receiving from other side Key is shaken hands key described in generating.
5. as described in claim 1 based on the data transmission method of key authentication, which is characterized in that
The handshaking information contextual information mark refers to the cryptographic Hash of handshaking information contextual information, the digital certificate information Mark refers to that the cryptographic Hash of digital certificate information, the merging unique identification value are cryptographic Hash.
6. as described in claim 1 based on the data transmission method of key authentication, which is characterized in that
Digital certificate information is sent to before client by the server end further include: the client and the server end It generates and applies key;
It includes: described in the client and the server end use that the client and the server end, which carry out data interaction, Processing is encrypted and decrypted using key pair interactive information.
7. as described in claim 1 based on the data transmission method of key authentication, which is characterized in that
The method also includes: key server default setting have public key corresponding to digital certificate information summary info and The corresponding private key of this summary info;Alternatively, key server obtains public affairs corresponding to digital certificate information from the server end The summary info of key and the corresponding private key of this summary info.
8. a kind of data transmission device based on key authentication characterized by comprising client, server end, cipher key service Device;
The server end includes digital certificate information management module, the first interactive module, mark management module, the second interaction mould Block;
The digital certificate information management module determines the summary info of digital certificate information for selecting digital certificate information;
First interactive module, for digital certificate information to be sent to the client;It is also used to make in the client It is interacted after signature value described in the public key verifications corresponding to the digital certificate information is legal with client data;
The mark management module, for determining the conjunction comprising handshaking information contextual information mark and digital certificate information mark And unique identification value;
Second interactive module, for the merging unique identification value to be sent to key server;Being also used to will be from key The signature value that server receives is sent to client;
The key server includes signature blocks and communication module, and signature blocks are used for according to summary info determination Private key corresponding to digital certificate information signs to the merging unique identification value using this private key;Communication module is used for Signature value is sent to the server end;
The client includes client interactive module, authentication module;
The client interactive module, for receiving the signature value;It is legal to be also used to verify the signature value in authentication module Afterwards, data interaction is carried out with server end;
The authentication module, for using signature value described in public key verifications corresponding to the digital certificate information whether legal.
9. as claimed in claim 8 based on the data transmission device of key authentication, which is characterized in that
The server end further includes for generating the key production module for key of shaking hands, encrypting module;
The encrypting module is also used for described shake hands for the encryption of digital certificate information described in key pair of shaking hands described in use Key pair encrypts the signature value;
First interactive module, for encrypted digital certificate information to be sent to the client;It is also used to encrypt Signature value afterwards is sent to the client;
The client further includes the key production module and deciphering module for generating key of shaking hands;
The deciphering module decrypts the encrypted digital certificate information for key of shaking hands described in use, obtains digital certificate Public key corresponding to information is also used for the key of shaking hands and decrypts the encrypted digital certificate information and obtain number Public key corresponding to certificate information.
10. as claimed in claim 9 based on the data transmission device of key authentication, which is characterized in that
The client interactive module is also used to send client hello message to server end, and band client is total in this message Enjoy code key and signature algorithm;
First interactive module is also used to send server end hello messages to client, this service is carried in this message Share code key in device end;
Second interactive module, is also used to send certificate message to key server, and digital certificate letter is carried in this message Breath;
The mark management module is also used to the client hello message, the server end hello messages, the certificate Message generates handshaking information contextual information mark as handshaking information contextual information.
CN201710606031.5A 2017-07-24 2017-07-24 Data transmission method and device based on key verification Active CN109302369B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710606031.5A CN109302369B (en) 2017-07-24 2017-07-24 Data transmission method and device based on key verification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710606031.5A CN109302369B (en) 2017-07-24 2017-07-24 Data transmission method and device based on key verification

Publications (2)

Publication Number Publication Date
CN109302369A true CN109302369A (en) 2019-02-01
CN109302369B CN109302369B (en) 2021-03-16

Family

ID=65167489

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710606031.5A Active CN109302369B (en) 2017-07-24 2017-07-24 Data transmission method and device based on key verification

Country Status (1)

Country Link
CN (1) CN109302369B (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111245786A (en) * 2019-12-31 2020-06-05 深圳前海智安信息科技有限公司 DDoS attack prevention method
CN112291774A (en) * 2020-12-31 2021-01-29 飞天诚信科技股份有限公司 Method and system for communicating with authenticator
CN112632585A (en) * 2020-12-31 2021-04-09 北京海泰方圆科技股份有限公司 Webpage data transmission system, method, device, medium and equipment
CN113381855A (en) * 2021-06-11 2021-09-10 上海哔哩哔哩科技有限公司 Communication method and system
CN113904773A (en) * 2021-10-11 2022-01-07 博雅中科(北京)信息技术有限公司 SSL connection establishment method and device, electronic equipment and computer readable storage medium
CN114039752A (en) * 2021-10-27 2022-02-11 贵州电网有限责任公司 Data information transmission method, relay protection device and master station
CN114124423A (en) * 2020-08-31 2022-03-01 Oppo广东移动通信有限公司 Authentication method, client, server and storage medium
WO2022105617A1 (en) * 2020-11-18 2022-05-27 International Business Machines Corporation Private key management
CN115150099A (en) * 2022-07-06 2022-10-04 渔翁信息技术股份有限公司 Data anti-repudiation transmission method, data sending end and data receiving end

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103338215A (en) * 2013-07-26 2013-10-02 中金金融认证中心有限公司 Method for establishing TLS (Transport Layer Security) channel based on state secret algorithm
US8644516B1 (en) * 2003-04-29 2014-02-04 Actividentity, Inc. Universal secure messaging for cryptographic modules
CN105871797A (en) * 2015-11-19 2016-08-17 乐视云计算有限公司 Handshake method, device and system of client and server
CN106060070A (en) * 2016-07-01 2016-10-26 中国人民解放军国防科学技术大学 TLS handshake protocol for identity-based cryptosystem
CN106533689A (en) * 2015-09-15 2017-03-22 阿里巴巴集团控股有限公司 Method and device for loading digital certificate in SSL/TLS communication
CN106790090A (en) * 2016-12-23 2017-05-31 北京奇虎科技有限公司 Communication means, apparatus and system based on SSL

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8644516B1 (en) * 2003-04-29 2014-02-04 Actividentity, Inc. Universal secure messaging for cryptographic modules
CN103338215A (en) * 2013-07-26 2013-10-02 中金金融认证中心有限公司 Method for establishing TLS (Transport Layer Security) channel based on state secret algorithm
CN106533689A (en) * 2015-09-15 2017-03-22 阿里巴巴集团控股有限公司 Method and device for loading digital certificate in SSL/TLS communication
CN105871797A (en) * 2015-11-19 2016-08-17 乐视云计算有限公司 Handshake method, device and system of client and server
CN106060070A (en) * 2016-07-01 2016-10-26 中国人民解放军国防科学技术大学 TLS handshake protocol for identity-based cryptosystem
CN106790090A (en) * 2016-12-23 2017-05-31 北京奇虎科技有限公司 Communication means, apparatus and system based on SSL

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111245786B (en) * 2019-12-31 2023-02-28 深圳前海智安信息科技有限公司 DDoS attack prevention method
CN111245786A (en) * 2019-12-31 2020-06-05 深圳前海智安信息科技有限公司 DDoS attack prevention method
CN114124423A (en) * 2020-08-31 2022-03-01 Oppo广东移动通信有限公司 Authentication method, client, server and storage medium
WO2022041473A1 (en) * 2020-08-31 2022-03-03 Oppo广东移动通信有限公司 Authentication method, electronic device, and storage medium
CN114124423B (en) * 2020-08-31 2023-04-07 Oppo广东移动通信有限公司 Authentication method, client, server and storage medium
US11968293B2 (en) 2020-11-18 2024-04-23 International Business Machines Corporation Private key management
GB2615676B (en) * 2020-11-18 2024-01-03 Ibm Private key management
WO2022105617A1 (en) * 2020-11-18 2022-05-27 International Business Machines Corporation Private key management
GB2615676A (en) * 2020-11-18 2023-08-16 Ibm Private key management
CN112291774A (en) * 2020-12-31 2021-01-29 飞天诚信科技股份有限公司 Method and system for communicating with authenticator
CN112291774B (en) * 2020-12-31 2021-03-16 飞天诚信科技股份有限公司 Method and system for communicating with authenticator
CN112632585A (en) * 2020-12-31 2021-04-09 北京海泰方圆科技股份有限公司 Webpage data transmission system, method, device, medium and equipment
CN113381855A (en) * 2021-06-11 2021-09-10 上海哔哩哔哩科技有限公司 Communication method and system
CN113381855B (en) * 2021-06-11 2022-12-27 上海哔哩哔哩科技有限公司 Communication method and system
CN113904773B (en) * 2021-10-11 2023-07-07 博雅中科(北京)信息技术有限公司 SSL connection establishment method, SSL connection establishment device, electronic equipment and computer readable storage medium
CN113904773A (en) * 2021-10-11 2022-01-07 博雅中科(北京)信息技术有限公司 SSL connection establishment method and device, electronic equipment and computer readable storage medium
CN114039752A (en) * 2021-10-27 2022-02-11 贵州电网有限责任公司 Data information transmission method, relay protection device and master station
CN115150099B (en) * 2022-07-06 2023-02-17 渔翁信息技术股份有限公司 Data anti-repudiation transmission method, data sending end and data receiving end
CN115150099A (en) * 2022-07-06 2022-10-04 渔翁信息技术股份有限公司 Data anti-repudiation transmission method, data sending end and data receiving end

Also Published As

Publication number Publication date
CN109302369B (en) 2021-03-16

Similar Documents

Publication Publication Date Title
CN109302369A (en) A kind of data transmission method and device based on key authentication
CN114651421B (en) Forward security in transport layer security using temporary keys
WO2018000886A1 (en) Application program communication processing system, apparatus, method, and client terminal, and server terminal
EP2792100B1 (en) Method and device for secure communications over a network using a hardware security engine
CN110326267B (en) Network security system, method and storage medium with substitute digital certificate
CN105007279B (en) Authentication method and Verification System
WO2016107320A1 (en) Website security information loading method, and browser device
WO2016107319A1 (en) Method for loading secure key storage hardware, and browser client device
CN108347419A (en) Data transmission method and device
CN103546289B (en) USB (universal serial bus) Key based secure data transmission method and system
US9559737B2 (en) Telecommunications chip card
FR2916592A1 (en) INFORMATION EXCHANGE SECURING METHOD, DEVICE, AND CORRESPONDING COMPUTER PROGRAM PRODUCT
CN107800675A (en) A kind of data transmission method, terminal and server
EP1403839A1 (en) Data originality validating method and system
CN107404469B (en) Session safety processing system, device, apparatus and method
CN108494811A (en) data transmission security authentication method and device
CN111131416A (en) Business service providing method and device, storage medium and electronic device
CN113868672B (en) Module wireless firmware upgrading method, security chip and wireless firmware upgrading platform
CN106972919B (en) Key negotiation method and device
CN114465803A (en) Object authorization method, device, system and storage medium
CN115834055A (en) Vehicle OTA (over the air) upgrading method, OTA upgrading packet encryption method and device
JP2012100206A (en) Cryptographic communication relay system, cryptographic communication relay method and cryptographic communication relay program
CN105471896B (en) Proxy Method, apparatus and system based on SSL
CN110611679A (en) Data transmission method, device, equipment and system
CN107276961B (en) Method and device for encrypting and decrypting data based on cryptographic algorithm

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant