CN105406961B - Cryptographic key negotiation method, terminal and server - Google Patents

Cryptographic key negotiation method, terminal and server Download PDF

Info

Publication number
CN105406961B
CN105406961B CN201510738170.4A CN201510738170A CN105406961B CN 105406961 B CN105406961 B CN 105406961B CN 201510738170 A CN201510738170 A CN 201510738170A CN 105406961 B CN105406961 B CN 105406961B
Authority
CN
China
Prior art keywords
server
terminal
public key
key
coefficient
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.)
Expired - Fee Related
Application number
CN201510738170.4A
Other languages
Chinese (zh)
Other versions
CN105406961A (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.)
Gree Electric Appliances Inc of Zhuhai
Original Assignee
Gree Electric Appliances Inc of Zhuhai
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 Gree Electric Appliances Inc of Zhuhai filed Critical Gree Electric Appliances Inc of Zhuhai
Priority to CN201510738170.4A priority Critical patent/CN105406961B/en
Publication of CN105406961A publication Critical patent/CN105406961A/en
Application granted granted Critical
Publication of CN105406961B publication Critical patent/CN105406961B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these

Abstract

The embodiment of the invention discloses a kind of cryptographic key negotiation method, terminal and servers.The method includes:Host ID is sent to server;Obtain the open parameter and server identification code that the server is sent;According to the open parameter and the host ID computing terminal private key, according to the open parameter and server identification code calculation server public key, and encrypted server public key is sent to the server;Obtain the encrypted terminal public key that the server is sent;By bilinear map, according to the encrypted terminal public key and the terminal pseudo noise code computing terminal validation value;By comparing the terminal authentication value and server authentication value, the accuracy of key agreement is judged.The key information used during the generation encrypted transmission that cryptographic key negotiation method, terminal and server provided in an embodiment of the present invention can be instant.

Description

Cryptographic key negotiation method, terminal and server
Technical field
The present embodiments relate to a kind of field of information security technology more particularly to cryptographic key negotiation method, terminal and services Device.
Background technology
With stepping up for people's awareness of safety, more and more household electrical appliance need to provide booting when first powering on Password.In order to obtain accurate startup password, people often go to ask this password to password management services.But It is that startup password is very crucial data for household electrical appliance, once the communication data of request startup password is by criminal It intercepts and captures, consequence is hardly imaginable.
In order to ensure the information security of startup password acquisition process, using by encrypted ciphertext in password acquisition process It is communicated.Rivest, shamir, adelman, using different keys, improves information transmission when information is encrypted and information is decrypted Security level.Moreover, carrying out secret communication using rivest, shamir, adelman, communicating pair need not be realized and be handed over by cryptochannel Change key.But in traditional asymmetrical encrypted transmission mechanism, public key is generally specified by user.Moreover, public key information one It is designated, no longer change.This mean that user need to open up independent space to the key that is used during encrypted transmission into Row management, this will expend certain computing resource.
Invention content
In view of the above technical problems, a kind of cryptographic key negotiation method of proposition of the embodiment of the present invention, terminal and server, with instant Generate the key information used during encrypted transmission.
In a first aspect, an embodiment of the present invention provides a kind of cryptographic key negotiation method, it is applied to terminal, the method includes:
Host ID is sent to server;
Obtain the open parameter and server identification code that the server is sent, wherein the open parameter includes system Characteristic value;
According to the open parameter and the host ID computing terminal private key, according to the open parameter and server Identification code calculation server public key, and encrypted server public key is sent to the server, wherein the terminal secret key It is the product of second terminal coefficient and the system features value, the server public key is first server coefficient and the system The product of characteristic value, the encrypted server public key is the product of terminal pseudo noise code and the server public key, described Second terminal coefficient and the first server coefficient are included in the open parameter, or can pass through the open ginseng One or several in several, the described host ID, the server identification code are calculated, the second terminal coefficient and The product of one terminal coefficient is non-zero definite value;
Obtain the encrypted terminal public key that the server is sent, wherein terminal public key is the first terminal coefficient With the product of system features value, the encrypted terminal public key is the product of server pseudo noise code and the terminal public key;
By bilinear map, according to the encrypted terminal public key and the terminal pseudo noise code computing terminal Validation value, the terminal authentication value, which is equal to, obtains the encrypted terminal public key and terminal secret key progress bilinear map The product of the mapping value and the terminal pseudo noise code that arrive;
By comparing the terminal authentication value and server authentication value, the accuracy of key agreement is judged.
Second aspect, the embodiment of the present invention additionally provide a kind of cryptographic key negotiation method, are applied to server, the method packet It includes:
Obtain the host ID that terminal is sent;
The open parameter used in cipher key agreement process and server identification code are sent to the terminal, wherein institute It includes system features value to state open parameter;
Obtain the encrypted server public key that the terminal is sent, wherein server public key is first server coefficient With the product of the system features value, the encrypted server public key is terminal pseudo noise code and the server public key Product;
According to the open parameter and the server identification code calculation server private key, according to the open parameter and end Identification code computing terminal public key is held, and encrypted terminal public key is sent to the terminal, wherein the privacy key is The product of the second server coefficient and the system features value, the terminal public key be the first terminal coefficient with it is described The product of system features value, the encrypted terminal public key are the product of server pseudo noise code and the terminal public key, institute It states first terminal coefficient and the second server coefficient is included in the open parameter, or the open ginseng can be passed through One or several in several, the described host ID, the server identification code are calculated, the second server coefficient with The product of first server coefficient is non-zero definite value;
By bilinear map, calculated according to the encrypted server public key and the server pseudo noise code Server authentication value, the server authentication value, which is equal to, carries out the encrypted server public key and the privacy key The product of mapping value and the server pseudo noise code that bilinear map obtains;
By comparing terminal authentication value and the server authentication value, the accuracy of key agreement is judged.
The third aspect, the embodiment of the present invention additionally provide a kind of terminal, and the terminal includes:
First sending module, for host ID to be sent to server;
First acquisition module, for obtaining the open parameter and server identification code that the server is sent, wherein described Open parameter includes system features value;
First key computing module, for according to the open parameter and the host ID computing terminal private key, root According to the open parameter and server identification code calculation server public key, and encrypted server public key is sent to the clothes It is engaged in device, wherein the terminal secret key is the product of second terminal coefficient and the system features value, and the server public key is the The product of one server coefficient and the system features value, the encrypted server public key be terminal pseudo noise code with it is described The product of server public key, the second terminal coefficient and the first server coefficient are included in the open parameter, or Person can be calculated by one or several in the open parameter, the host ID, the server identification code, The product of the second terminal coefficient and first terminal coefficient is non-zero definite value;
First key acquisition module, the encrypted terminal public key sent for obtaining the server, wherein terminal is public Key is the product of the first terminal coefficient and system features value, the encrypted terminal public key be server pseudo noise code with The product of the terminal public key;
First validation value computing module, for passing through bilinear map, according to the encrypted terminal public key, Yi Jisuo Terminal pseudo noise code computing terminal validation value is stated, the terminal authentication value was equal to the encrypted terminal public key and the end End private key carries out the product of mapping value and the terminal pseudo noise code that bilinear map obtains;
First authentication module, for by comparing the terminal authentication value and server authentication value, judging key agreement Accuracy.
Fourth aspect, the embodiment of the present invention additionally provide a kind of server, and the server includes:
Second acquisition module, the host ID for obtaining terminal transmission;
Second sending module, for sending the open parameter used in cipher key agreement process and server identification code To the terminal, wherein the open parameter includes system features value;
Second Key Acquisition Module, the encrypted server public key sent for obtaining the terminal, wherein server Public key is the product of first server coefficient and the system features value, and the encrypted server public key is terminal pseudorandom The product of code and the server public key;
Second cipher key calculation module, for private according to the open parameter and the server identification code calculation server Encrypted terminal public key according to the open parameter and host ID computing terminal public key, and is sent to the end by key End, wherein the privacy key is the product of the second server coefficient and the system features value, the terminal public key It is the product of the first terminal coefficient and the system features value, the encrypted terminal public key is server pseudo noise code With the product of the terminal public key, the first terminal coefficient and the second server coefficient are included in the open parameter In, or one or several calculating in the open parameter, the host ID, the server identification code can be passed through It obtains, the product of the second server coefficient and first server coefficient is non-zero definite value;
Second validation value computing module, for passing through bilinear map, according to the encrypted server public key, and The server pseudo noise code calculation server validation value, the server authentication value are equal to public to the encrypted server Key and the privacy key carry out the product of mapping value and the server pseudo noise code that bilinear map obtains;
Second authentication module, for by comparing terminal authentication value and the server authentication value, judging key agreement Accuracy.
Cryptographic key negotiation method, terminal and server provided in an embodiment of the present invention, by before carrying out secret communication, leading to The instant computing for crossing key and verification immediately so that the key needed in secret communication can generate in real time, it is not necessary to individually open It wards off memory space to be managed, saves the memory space being managed to the key used in secret communication.
Description of the drawings
By reading a detailed description of non-restrictive embodiments in the light of the attached drawings below, of the invention other Feature, objects and advantages will become more apparent upon:
Fig. 1 is the flow chart for the cryptographic key negotiation method that first embodiment of the invention provides;
Fig. 2 is the flow chart for the cryptographic key negotiation method that second embodiment of the invention provides;
Fig. 3 is the interaction diagrams for the cryptographic key negotiation method that third embodiment of the invention provides;
Fig. 4 is the structure chart for the terminal that fourth embodiment of the invention provides;
Fig. 5 is the structure chart for the server that fifth embodiment of the invention provides.
Specific implementation mode
The present invention is described in further detail with reference to the accompanying drawings and examples.It is understood that this place is retouched The specific embodiment stated is only used for explaining the present invention rather than limitation of the invention.It also should be noted that for the ease of Description, only some but not all contents related to the present invention are shown in the drawings.
First embodiment
Present embodiments provide a kind of technical solution of cryptographic key negotiation method.The cryptographic key negotiation method has terminal execution. The terminal is the side for asking startup password in the interaction of request startup password.
Referring to Fig. 1, the cryptographic key negotiation method includes:
Host ID is sent to server by S11.
The host ID IDaIt is the identity code that terminal and other-end can be uniquely distinguished.Close It is one-to-many relationship between server and terminal during key is negotiated.That is, server can simultaneously with it is more A terminal carries out the negotiation of key.In order to uniquely distinguish different terminals in the interactive process of the key agreement, close The incipient stage of key negotiations process, by the terminal by the host ID ID of itselfaIt is sent to the server.
S12 obtains open parameter and server identification code that the server is sent, wherein the openly parameter includes System features value.
Specifically, the open parameter includes:System features value P, coefficient radix s and hash function H.
S13, according to the open parameter and the host ID computing terminal private key, according to the open parameter and clothes Business device identification code calculation server public key, and encrypted server public key is sent to the server.
The host ID ID is being sent to the serveraLater, the terminal can be received from the server The open parameter and server identification code ID of the server feedbackm.The open parameter is institute during key agreement It states to retain on terminal and the server and has backup, and the identical parameter of value in the backup of the two retention.Specifically, institute Stating open parameter includes:System features value P, coefficient radix s and hash function H.
Specifically, the terminal calculates the terminal secret key according to such as following formula (1):
Apri=[s+H (IDa)]-1×P (1)
Wherein, s is the coefficient radix, and P is the system features value, IDaIt is the host ID, ApriIt is described Terminal secret key, H is the hash function, moreover, [s+H (IDa)]-1It is the second terminal coefficient.It can be seen that described second Terminal coefficient can be calculated by the open parameter, host ID.
Further, the product of the second terminal coefficient and the first terminal coefficient hereinafter referred to is definite value, and The value of the customization cannot be 0.
It should be noted that the calculation of the second terminal coefficient and being not fixed, may be used other than the present embodiment Other modes calculate, the present invention it is without limitation.But no matter use which kind of calculation, the second terminal coefficient It must keep being definite value with the product of the first terminal coefficient.
Since the calculation of first terminal coefficient and second terminal coefficient is not fixed, third party is increased to key agreement The difficulty that process is attacked, to improve the safety of cipher key agreement process.
Next the terminal calculates the server public key according to such as following formula (2):
Mpub=[s+H (IDm)]×P (2)
Wherein, s is the coefficient radix, and P is the system features value, IDmIt is the server identification code, MpubIt is institute Server public key is stated, moreover, [s+H (IDm)] it is the first server coefficient.As it can be seen that the first server coefficient can be with It is calculated by the open parameter and server identification code.
Further, the product of the first server coefficient and the second server coefficient hereinafter referred to is definite value.
Since the server public key is parameter server identification code, the system features for having backup according to retention on server What value and system radix were calculated, therefore, the server recognizes the server public key being calculated by terminal with self Card property.
The encrypted terminal public key is provided by such as following formula (3):
M′pub=ra×Mpub (3)
Wherein, M 'pubIt is encrypted server public key, raIt is the terminal pseudo noise code generated by the terminal, MpubIt is The server public key.
The server public key is encrypted using terminal pseudo noise code, improves the robustness of cipher key agreement process, Cipher key agreement process can be further avoided by third party's malicious attack.
S14 obtains the encrypted terminal public key that the server is sent.
The terminal public key is the product of the first terminal coefficient and system features value.The encrypted terminal public key It is the product of server pseudo noise code and the terminal public key.
S15 is calculated by bilinear map according to the encrypted terminal public key and the terminal pseudo noise code Terminal authentication value, the terminal authentication value, which is equal to, reflects the encrypted terminal public key and terminal secret key progress bilinearity The product of the mapping value and the terminal pseudo noise code penetrated.
Specifically, the terminal authentication value is provided by such as following formula (4):
Vea=e (Apub,Apri)ra=e (rm·[s+H(IDa)]·P,[s+H(IDa)]-1·P)ra=e (P, P) rarm (4)
Wherein, VeaIt is the terminal authentication value, ApubIt is encrypted terminal public key, ApriIt is terminal secret key, e is described Bilinear map.Specifically, the bilinear map can be one of tate pairs or weil centering.Moreover, above-mentioned formula (4) Derivation be utilized mapping e bilinearity.
S16 judges the accuracy of key agreement by comparing the terminal authentication value and server authentication value.
The present embodiment is by before end side carries out secret communication, running the instant computing of key so that logical in secrecy The key needed in letter can generate in real time.
Second embodiment
The present embodiment provides the another technical solutions of cryptographic key negotiation method.The cryptographic key negotiation method is held by server Row.Also, what the present embodiment provided executes the close of terminal execution that cryptographic key negotiation method and first embodiment provide by server To mating, it is a complete cipher key agreement process that the two, which combines, for key machinery of consultation.
Referring to Fig. 2, the cryptographic key negotiation method includes:
S21 obtains the host ID that terminal is sent.
The open parameter used in cipher key agreement process and server identification code are sent to terminal, wherein institute by S22 It includes system features value to state open parameter.
In the host ID ID for receiving the terminal transmissionaLater, the server is by open parameter, and services Device identification code IDmIt is sent to the terminal.
Specifically, as described in first embodiment of the invention, the open parameter includes:System features value P, coefficient radix S and hash function H.
The server identification code IDmIt is the unique identity number of the server.
S23 obtains the encrypted server public key that the terminal is sent.
The server public key is the product of first server coefficient and the system features value.The encrypted service Device public key is the product of terminal pseudo noise code and the server public key.
S24, according to the open parameter and the server identification code calculation server private key, according to the open parameter And host ID computing terminal public key, and encrypted terminal public key is sent to the terminal.
Specifically, the server is according to following formula (5) calculation server private key:
Mpri=[s+H (IDm)]-1×P (5)
Wherein, s is the coefficient radix, and P is the system features value, IDmIt is the server identification code, MpriIt is institute Privacy key is stated, H is the hash function, [s+H (IDm)]-1It is the second server coefficient.As can be seen that described the Two server coefficients can be calculated by the open parameter and the server identification code.
Further, the product between the second server coefficient and the first server coefficient is definite value.
It should be noted that the calculation of the second server coefficient and be not fixed, may be used the present embodiment with Outer other modes calculate, and the present invention is without limitation.But no matter use which kind of calculation, the second server The product of coefficient and the first server coefficient must keep being definite value.
Since the calculation of first server coefficient and second server coefficient is not fixed, third party is increased to key The difficulty that negotiations process is attacked, to improve the safety of cipher key agreement process.
The server calculates the terminal public key according to following formula (6):
Apub=[s+H (IDa)]×P (6)
Wherein, s is the coefficient radix, and P is the system features value, IDaIt is the host ID, ApubIt is described Terminal public key, H are the hash function, [s+H (IDa)] it is first server coefficient.It can be seen that the first terminal coefficient It can be calculated by the open parameter and the host ID.
Further, the product between the first terminal coefficient and the second terminal coefficient is definite value, also, this is fixed The value of value cannot be 0.
Due to the terminal public key be according to retained in terminal have the parameter server identification code of backup, system features value and System radix is calculated, and therefore, the terminal-pair has self identity by the terminal public key that server is calculated.
The encrypted terminal public key is provided by such as following formula (7):
A′pub=rm×Apub (7)
Wherein, A 'pubIt is encrypted terminal public key, rmIt is the server pseudo noise code generated by the server, Apub It is the terminal public key.
The terminal public key is encrypted using server pseudo noise code, improves the robustness of cipher key agreement process, It can play the role of avoiding cipher key agreement process by third party's malicious attack.
S25, by bilinear map, according to the encrypted server public key and the server pseudo noise code Calculation server validation value, the server authentication value are equal to the encrypted server public key and the privacy key Carry out the product of mapping value and the server pseudo noise code that bilinear map obtains.
The server authentication value is provided by following formula (8):
Vem=e (M 'pub,Mpri)rm=e (ra·[s+H(IDm)]·P,[s+H(IDm)]-1·P)rm=e (P, P) rarm (8)
Wherein, VemIt is the server authentication value, M 'pubIt is encrypted server public key, MpriIt is privacy key, e It is the bilinear map.Specifically, the bilinear map can be one of tate pairs or weil centering.On moreover, The bilinearity of mapping e is utilized in the derivation for stating formula (8).
S26 judges the accuracy of key agreement by comparing terminal authentication value and the server authentication value.
According to the derivation of formula (4) and formula (8), the value of the terminal authentication value and the server authentication value should phase Together.Therefore, the terminal can be by the value of both comparisons, to judge the accuracy of above-mentioned cipher key agreement process.
The present embodiment by server side carry out secret communication before, run key instant computing and immediately verification, The key needed in secret communication is generated in real time.
3rd embodiment
Present embodiments provide a kind of technical solution of cryptographic key negotiation method.In the technical scheme, the key agreement Method executes with end side and server side.
Referring to Fig. 3, the cryptographic key negotiation method includes:
Host ID is sent to server by S31, terminal.
The open parameter used in cipher key agreement process and server identification code are sent to end by S32, the server End, wherein the open parameter includes system features value.
S33, the terminal is according to the open parameter and the host ID computing terminal private key, according to the disclosure Parameter and server identification code calculation server public key, and encrypted server public key is sent to the server.
S34, the server is according to the open parameter and the server identification code calculation server private key, according to institute Open parameter and host ID computing terminal public key are stated, and encrypted terminal public key is sent to the terminal.
S35, the terminal by bilinear map, according to the encrypted terminal public key and the terminal puppet with Machine code computing terminal validation value, the terminal authentication value, which is equal to, carries out the encrypted terminal public key and the terminal secret key The product of mapping value and the terminal pseudo noise code that bilinear map obtains.
S36, the server is by bilinear map, according to the encrypted server public key and the service Device pseudo noise code calculation server validation value, the server authentication value are equal to the encrypted server public key and described Privacy key carries out the product of mapping value and the server pseudo noise code that bilinear map obtains.
S37, the terminal judge the standard of key agreement by comparing the terminal authentication value and the server authentication value True property.
S38, the server judge key agreement by comparing the terminal authentication value and the server authentication value Accuracy.
The present embodiment by before carrying out secret communication, end side and server side run key instant computing and Immediately verification so that the key needed in secret communication can generate in real time.
Fourth embodiment
Present embodiments provide a kind of technical solution of terminal.Referring to Fig. 4, the terminal includes:First sending module 41, First acquisition module 42, first key computing module 43, first key acquisition module 44, the first validation value computing module 45 and First authentication module 46.
First sending module 41 is used to host ID being sent to server.
First acquisition module 42 is used to obtain the open parameter and server identification code that the server is sent, In, the open parameter includes system features value.
The first key computing module 43 is used for private according to the open parameter and the host ID computing terminal Key according to the open parameter and server identification code calculation server public key, and encrypted server public key is sent to The server, wherein the terminal secret key is the product of second terminal coefficient and the system features value, and the server is public Key is the product of first server coefficient and the system features value, and the encrypted server public key is terminal pseudo noise code With the product of the server public key, the second terminal coefficient and the first server coefficient are included in the open parameter In, or one or several calculating in the open parameter, the host ID, the server identification code can be passed through It obtains, the product of the second terminal coefficient and first terminal coefficient is non-zero definite value.
The first key acquisition module 44 is used to obtain the encrypted terminal public key that the server is sent, wherein Terminal public key is the product of the first terminal coefficient and system features value, the encrypted terminal public key be server puppet with The product of machine code and the terminal public key.
The first validation value computing module 45 is used for through bilinear map, according to the encrypted terminal public key, And the terminal pseudo noise code computing terminal validation value, the terminal authentication value be equal to the encrypted terminal public key and The terminal secret key carries out the product of mapping value and the terminal pseudo noise code that bilinear map obtains.
First authentication module 46 is used for by comparing the terminal authentication value and server authentication value, judgement key association The accuracy of quotient.
Further, the open parameter includes:System features value P, coefficient radix s and hash function H.
Further, the first key computing module 42 is specifically used for:
The terminal secret key is calculated according to following formula;
Apri=[s+H (IDa)]-1×P
The server public key is calculated according to following formula;
Mpub=[s+H (IDm)]×P
The server public key is encrypted according to following formula;
M′pub=ra×Mpub
The encrypted server public key is sent to the server;
Wherein, s is the coefficient radix, and P is the system features value, IDaIt is the host ID, IDmIt is the clothes Business device identification code, H is the hash function, ApriIt is the terminal secret key, MpubIt is the server public key, M 'pubIt is described add Server public key after close, raIt is the terminal pseudo noise code, moreover, [s+H (IDa)]-1It is the second terminal coefficient, [s+H (IDm)] it is the first server coefficient.
5th embodiment
Present embodiments provide a kind of technical solution of server.Referring to Fig. 5, the server includes:Second obtains mould Block 51, the second sending module 52, the second Key Acquisition Module 53, the second cipher key calculation module 54, the second validation value computing module 55 and second authentication module 56.
Second acquisition module 51 is used to obtain the host ID of terminal transmission.
The open parameter and server identification code that second sending module 52 is used to use in cipher key agreement process It is sent to terminal, wherein the open parameter includes system features value.
Second Key Acquisition Module 53 is used to obtain the encrypted server public key that the terminal is sent, wherein Server public key is the product of first server coefficient and the system features value, and the encrypted server public key is terminal The product of pseudo noise code and the server public key.
The second cipher key calculation module 54 is used to calculate service according to the open parameter and the server identification code Encrypted terminal public key according to the open parameter and host ID computing terminal public key, and is sent to institute by device private key State terminal, wherein the privacy key is the product of the second server coefficient and the system features value, the terminal Public key is the product of the first terminal coefficient and the system features value, the encrypted terminal public key be server puppet with The product of machine code and the terminal public key, the first terminal coefficient and the second server coefficient are included in the open ginseng In number, or it can be calculated by one or several in the open parameter, host ID, server identification code, The product of the second server coefficient and first server coefficient is non-zero definite value.
The second validation value computing module 55 is used for through bilinear map, public according to the encrypted server Key and the server pseudo noise code calculation server validation value, the server authentication value are equal to described encrypted The mapping value that server public key and privacy key progress bilinear map obtain multiplies with the server pseudo noise code Product.
Second authentication module 56 is used for by comparing terminal authentication value and the server authentication value, judgement key association The accuracy of quotient.
Further, the open parameter includes:System features value P, coefficient radix s and hash function H.
Further, the second cipher key calculation module 52 is specifically used for:
The privacy key is calculated according to following formula;
Mpri=[s+H (IDm)]-1×P
The terminal public key is calculated according to following formula;
Apub=[s+H (IDa)]×P
The terminal public key is encrypted according to following formula;
A′pub=rm×Apub
The encrypted terminal public key is sent to the terminal;
Wherein, s is the coefficient radix, and P is the system features value, IDaIt is the host ID, IDmIt is the clothes Business device identification code, H is the hash function, rmIt is the server pseudo noise code, MpriIt is the privacy key, ApubIt is institute State terminal public key, A 'pubIt is the encrypted terminal public key, [s+H (IDm)]-1It is the second server coefficient, [s+H (IDa)] it is the first terminal coefficient.
Will be appreciated by those skilled in the art that each module of the above invention or each step can use general meter Device is calculated to realize, they can be concentrated on single computing device, or be distributed in network constituted by multiple computing devices On, optionally, they can be realized with the program code that computer installation can perform, so as to be stored in storage It is performed by computing device in device, either they are fabricated to each integrated circuit modules or will be more in them A module or step are fabricated to single integrated circuit module to realize.In this way, the present invention is not limited to any specific hardware and The combination of software.
Each embodiment in this specification is described in a progressive manner, the highlights of each of the examples are with The difference of other embodiment, just to refer each other for the same or analogous part between each embodiment.
The foregoing is merely the preferred embodiment of the present invention, are not intended to restrict the invention, for those skilled in the art For, the present invention can have various modifications and changes.It is all within spirit and principles of the present invention made by any modification, equivalent Replace, improve etc., it should all be included in the protection scope of the present invention.

Claims (8)

1. a kind of cryptographic key negotiation method is applied to terminal, which is characterized in that including:
Host ID is sent to server;
Obtain the open parameter and server identification code that the server is sent, wherein the open parameter includes system features Value;
According to the open parameter and the host ID computing terminal private key, according to the open parameter and server identification Code calculation server public key, and is sent to the server by encrypted server public key, wherein the terminal secret key is the The product of two terminal coefficients and the system features value, the server public key are first server coefficient and the system features The product of value, the encrypted server public key are the products of terminal pseudo noise code and the server public key, described second Terminal coefficient and the first server coefficient are included in the open parameter, or can pass through the open parameter, institute State in host ID, the server identification code it is one or several be calculated, the second terminal coefficient and first is eventually It is non-zero definite value to hold the product of coefficient;
Obtain the encrypted terminal public key that the server is sent, wherein terminal public key is the first terminal coefficient and be The product for characteristic value of uniting, the encrypted terminal public key is the product of server pseudo noise code and the terminal public key;
By bilinear map, verified according to the encrypted terminal public key and the terminal pseudo noise code computing terminal Value, the terminal authentication value is equal to carries out what bilinear map obtained to the encrypted terminal public key and the terminal secret key The product of mapping value and the terminal pseudo noise code;
By comparing the terminal authentication value and server authentication value, the accuracy of key agreement is judged.
2. according to the method described in claim 1, it is characterized in that, the open parameter includes:System features value P, coefficient base Number s and hash function H.
3. according to the method described in claim 2, it is characterized in that, being calculated according to the open parameter and the host ID Terminal secret key, according to the open parameter and the server identification code calculation server public key, and by encrypted server Public key is sent to the server:
The terminal secret key is calculated according to following formula;
Apri=[s+H (IDa)]-1×P
The server public key is calculated according to following formula;
Mpub=[s+H (IDm)]×P
The server public key is encrypted according to following formula;
M′pub=ra×Mpub
The encrypted server public key is sent to the server;
Wherein, s is the coefficient radix, and P is the system features value, IDaIt is the host ID, IDmIt is the server Identification code, H are the hash function, ApriIt is the terminal secret key, MpubIt is the server public key, M 'pubAfter being the encryption Server public key, raIt is the terminal pseudo noise code, moreover, [s+H (IDa)]-1It is the second terminal coefficient, [s+H (IDm)] it is the first server coefficient.
4. a kind of cryptographic key negotiation method is applied to server, which is characterized in that including:
Obtain the host ID that terminal is sent;
The open parameter used in cipher key agreement process and server identification code are sent to the terminal, wherein the public affairs It includes system features value to open parameter;
Obtain the encrypted server public key that the terminal is sent, wherein server public key is first server coefficient and institute State the product of system features value, the encrypted server public key is terminal pseudo noise code and the server public key multiplies Product;
According to the open parameter and the server identification code calculation server private key, according to the open parameter and terminal mark Know code computing terminal public key, and encrypted terminal public key is sent to the terminal, wherein the privacy key is second The product of server coefficient and the system features value, the terminal public key are first terminal coefficient and the system features value Product, the encrypted terminal public key are the products of server pseudo noise code and the terminal public key, the first terminal system The several and described second server coefficient is included in the open parameter, or can pass through the open parameter, the terminal One or several in identification code, the server identification code are calculated, the second server coefficient and first server The product of coefficient is non-zero definite value;
By bilinear map, service is calculated according to the encrypted server public key and the server pseudo noise code Device validation value, the server authentication value is equal to carries out two-wire to the encrypted server public key and the privacy key The product for the mapping value and the server pseudo noise code that property maps;
By comparing terminal authentication value and the server authentication value, the accuracy of key agreement is judged.
5. according to the method described in claim 4, it is characterized in that, the open parameter further includes:System features value P, coefficient Radix s and hash function H.
6. according to the method described in claim 5, it is characterized in that, according to the open parameter and the server identification code meter Privacy key is calculated, according to the open parameter and the host ID computing terminal public key, and encrypted terminal is public Key is sent to the terminal:
The privacy key is calculated according to following formula;
Mpri=[s+H (IDm)]-1×P
The terminal public key is calculated according to following formula;
Apub=[s+H (IDa)]×P
The terminal public key is encrypted according to following formula;
A′pub=rm×Apub
The encrypted terminal public key is sent to the terminal;
Wherein, s is the coefficient radix, and P is the system features value, IDaIt is the host ID, IDmIt is the server Identification code, H are the hash function, rmIt is the server pseudo noise code, MpriIt is the privacy key, ApubIt is the end Hold public key, A 'pubIt is the encrypted terminal public key, [s+H (IDm)]-1It is the second server coefficient, [s+H (IDa)] It is the first terminal coefficient.
7. a kind of terminal, which is characterized in that including:
First sending module, for host ID to be sent to server;
First acquisition module, for obtaining the open parameter and server identification code that the server is sent, wherein the disclosure Parameter includes system features value;
First key computing module is used for according to the open parameter and the host ID computing terminal private key, according to institute Open parameter and server identification code calculation server public key are stated, and encrypted server public key is sent to the service Device, wherein the terminal secret key is the product of second terminal coefficient and the system features value, and the server public key is first The product of server coefficient and the system features value, the encrypted server public key are terminal pseudo noise code and the clothes The product of business device public key, the second terminal coefficient and the first server coefficient are included in the open parameter, or It can be calculated by one or several in the open parameter, the host ID, the server identification code, institute It is non-zero definite value to state second terminal coefficient and the product of first terminal coefficient;
First key acquisition module, the encrypted terminal public key sent for obtaining the server, wherein terminal public key is The product of the first terminal coefficient and system features value, the encrypted terminal public key be server pseudo noise code with it is described The product of terminal public key;
First validation value computing module, for passing through bilinear map, according to the encrypted terminal public key and the end Pseudo noise code computing terminal validation value, the terminal authentication value is held to be equal to private to the encrypted terminal public key and the terminal Key carries out the product of mapping value and the terminal pseudo noise code that bilinear map obtains;
First authentication module, for by comparing the terminal authentication value and server authentication value, judging the accurate of key agreement Property.
8. a kind of server, which is characterized in that including:
Second acquisition module, the host ID for obtaining terminal transmission;
Second sending module, for the open parameter used in cipher key agreement process and server identification code to be sent to institute State terminal, wherein the open parameter includes system features value;
Second Key Acquisition Module, the encrypted server public key sent for obtaining the terminal, wherein server public key The product of first server coefficient and the system features value, the encrypted server public key be terminal pseudo noise code with The product of the server public key;
Second cipher key calculation module, for according to the open parameter and the server identification code calculation server private key, root According to the open parameter and host ID computing terminal public key, and encrypted terminal public key is sent to the terminal, In, the privacy key is the product of second server coefficient and the system features value, and the terminal public key is first whole It is that server pseudo noise code and the terminal are public to hold the product of coefficient and the system features value, the encrypted terminal public key The product of key, the first terminal coefficient and the second server coefficient are included in the open parameter, or can lead to Cross in the open parameter, the host ID, the server identification code it is one or several be calculated, described second Server coefficient and the product of first server coefficient are non-zero definite values;
Second validation value computing module, for by bilinear map, according to the encrypted server public key and described Server pseudo noise code calculation server validation value, the server authentication value be equal to the encrypted server public key and The privacy key carries out the product of mapping value and the server pseudo noise code that bilinear map obtains;
Second authentication module, for by comparing terminal authentication value and the server authentication value, judging the accurate of key agreement Property.
CN201510738170.4A 2015-11-02 2015-11-02 Cryptographic key negotiation method, terminal and server Expired - Fee Related CN105406961B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510738170.4A CN105406961B (en) 2015-11-02 2015-11-02 Cryptographic key negotiation method, terminal and server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510738170.4A CN105406961B (en) 2015-11-02 2015-11-02 Cryptographic key negotiation method, terminal and server

Publications (2)

Publication Number Publication Date
CN105406961A CN105406961A (en) 2016-03-16
CN105406961B true CN105406961B (en) 2018-08-07

Family

ID=55472226

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510738170.4A Expired - Fee Related CN105406961B (en) 2015-11-02 2015-11-02 Cryptographic key negotiation method, terminal and server

Country Status (1)

Country Link
CN (1) CN105406961B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109151818B (en) * 2018-08-07 2021-08-17 西安易朴通讯技术有限公司 Terminal verification method, AP (access point) equipment, terminal and system
CN110868285B (en) * 2018-08-28 2023-05-19 中国电信股份有限公司 Authentication method, server, system, and computer-readable storage medium
CN110278080B (en) * 2019-07-11 2020-10-02 珠海格力电器股份有限公司 Method, system and computer readable storage medium for data transmission
CN115242480A (en) * 2022-07-15 2022-10-25 京东方科技集团股份有限公司 Device access method, system and non-volatile computer storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102232275A (en) * 2008-12-05 2011-11-02 松下电工株式会社 Key distribution system
CN103248488A (en) * 2013-05-14 2013-08-14 顾纯祥 Identity-based key generation method and identity-based authentication method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100571820B1 (en) * 2003-10-20 2006-04-17 삼성전자주식회사 Conference session key distribution method on ID-based cryptographic system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102232275A (en) * 2008-12-05 2011-11-02 松下电工株式会社 Key distribution system
CN103248488A (en) * 2013-05-14 2013-08-14 顾纯祥 Identity-based key generation method and identity-based authentication method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Identity based authenticated key agreement protocols from pairings;L. Chen;C. Kudla;《Computer Security Foundations Workshop, 2003. Proceedings. 16th IEEE》;20030702;全文 *
基于双线性对的无证书两方认证密钥协商协议;杨浩民; 张尧学; 周悦芝;;《清华大学学报(自然科学版)》;20120930;全文 *

Also Published As

Publication number Publication date
CN105406961A (en) 2016-03-16

Similar Documents

Publication Publication Date Title
CN109756485B (en) Electronic contract signing method, electronic contract signing device, computer equipment and storage medium
US9698985B2 (en) Authentication
US11899756B1 (en) Systems and methods for secure element registration and provisioning
EP3444999B1 (en) Method for generating a public/private key pair and public key certificate for an internet of things device
Choudhury et al. A strong user authentication framework for cloud computing
Balfe et al. Trusted computing: Providing security for peer-to-peer networks
CN103118027B (en) The method of TLS passage is set up based on the close algorithm of state
CN104160656B (en) System and method for client device to be connected with network
US8971540B2 (en) Authentication
CN110337797A (en) Method for executing two-factor authentication
US9106644B2 (en) Authentication
US9531540B2 (en) Secure token-based signature schemes using look-up tables
US8285989B2 (en) Establishing a secured communication session
US10263782B2 (en) Soft-token authentication system
CN105406961B (en) Cryptographic key negotiation method, terminal and server
CN110380859B (en) Quantum communication service station identity authentication method and system based on asymmetric key pool pair and DH protocol
Obert et al. Recommendations for trust and encryption in DER interoperability standards
CN109831311A (en) A kind of server validation method, system, user terminal and readable storage medium storing program for executing
Vokorokos et al. Yet another attempt in user authentication
Hlauschek et al. Prying Open Pandora's Box:{KCI} Attacks against {TLS}
CN113411187B (en) Identity authentication method and system, storage medium and processor
Sureshkumar et al. An enhanced bilinear pairing based authenticated key agreement protocol for multiserver environment
CN101789939B (en) Effective realization method for credible OpenSSH
CN116170144B (en) Smart power grid anonymous authentication method, electronic equipment and storage medium
CN101834852B (en) Realization method of credible OpenSSH for protecting platform information

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180807