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 PDFInfo
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
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
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.
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)
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)
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 |
-
2017
- 2017-07-24 CN CN201710606031.5A patent/CN109302369B/en active Active
Patent Citations (6)
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)
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 |