A key negotiation update method
By establishing a negotiation switching mechanism between old and new keys in real-time data encryption transmission scenarios and temporarily changing the data processing mode, the problem of out-of-synchronization and high update cost of key updates is solved, and key updates are not stopped or lost steps are achieved, ensuring the security, continuous and efficient data transmission.
Patent Information
- Application Number
- CN202211148451.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-20
- Publication Date
- 2025-03-21
- Estimated Expiration
- 2042-09-20
AI Technical Summary
In real-time data encryption transmission scenarios, existing key update solutions face the problem of out-of-synchronization of key updates and high update costs, which usually require downtime to update or sacrifice a large amount of system resources.
By establishing a negotiation switching mechanism for old and new keys, the data processing mode is temporarily changed during the new key update process, so that the key update will not stop and step by step. The specific steps include confirming the key update between the first communication terminal and the second communication terminal, negotiating the generation of a new key, collaborating on the replacement of new and old keys, and resetting the encryption and decryption operation process.
In real-time data transmission service, key update does not affect the security, continuity and efficiency of data transmission, and reduces the cost of system resources and updates.
Smart Images

Figure CN115643007B_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the technical field of secure communications, and in particular relates to a key negotiation and updating method. Background Art
[0002] With the development of the Internet, more and more real-time data security transmission needs have emerged, and encryption is usually used to prevent data from being stolen during transmission. In order to reduce the risk of key leakage, keys need to be replaced regularly, and existing key update solutions are mostly aimed at non-real-time data transmission scenarios. When applied in real-time data encryption transmission scenarios, they face the problems of asynchronous key updates and high update costs, and often require downtime updates or sacrifice of a large number of system resources to support key update operations. Summary of the invention
[0003] The purpose of the present invention is to provide a key negotiation update method, which establishes a new and old key negotiation switching mechanism, temporarily changes the data processing mode during the new key update process, and ensures that the real-time data transmission service is safe, continuous and efficient.
[0004] In order to achieve the above object, the solution of the present invention is:
[0005] A key negotiation update method comprises the following steps:
[0006] Step 1: The first communication terminal and the second communication terminal confirm to update the key;
[0007] Step 2: The first communication terminal and the second communication terminal negotiate to generate a new key;
[0008] Step 3: The first communication terminal and the second communication terminal cooperate to replace the old key with the new key;
[0009] Step 4: Reset the encryption and decryption operation process.
[0010] The details of step 1 above are:
[0011] Step 11, the first communication terminal initiates a key update request to the second communication terminal;
[0012] Step 12: The second communication terminal responds to the key update request of the first communication terminal.
[0013] In the above step 2, after the first communication terminal receives the response from the second communication terminal, the first communication terminal and the second communication terminal negotiate to use SM9 or SM2 to generate a data encryption key.
[0014] When the first communication terminal is an encryption terminal, the details of step 3 are:
[0015] Step 3A1, the first communication terminal sends a key change request to the second communication terminal, and the first communication terminal does not change its data processing mode;
[0016] Step 3A2: the second communication terminal receives the key change request from the first communication terminal, the second communication terminal changes its data processing mode, and sends a confirmation signal to the first communication terminal;
[0017] Step 3A3, the first communication terminal receives the confirmation signal, and modifies the encryption operation process to first add a new key identifier in front of the plaintext data, and then encrypt the data with the new key; then sends an encryption key change signal to the second communication terminal;
[0018] Step 3A4, the second communication terminal receives the key change feedback information, which is the encryption key change confirmation signal of the first communication terminal, and then the second communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network; after the countdown ends, the decryption operation process is reset, that is, regardless of whether the new key identifier is extracted, the new key is used for decryption, and then a key change end request is sent to the first communication terminal;
[0019] Step 3A5, the first communication terminal receives the key change completion feedback information from the second communication terminal, where the key change completion feedback information is the key change completion request from the second communication terminal, after which the first communication terminal resets the encryption operation process, i.e., no longer adds a new key identifier to the plain text, and directly uses the new key for encryption, and then sends a key change completion signal to the second communication terminal;
[0020] Step 3A6, the second communication terminal receives the key change completion feedback information, which is the key change completion signal of the first communication terminal, and then the second communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network; after the countdown ends, the decryption operation process is reset, and then a key change completion confirmation signal is sent to the first communication terminal, and the key negotiation update operation is ended;
[0021] Step 3A7: After receiving the key change completion confirmation signal from the second terminal, the first communication terminal ends the key negotiation and update operation.
[0022] In the above step 3A2, the second communication terminal modifies the data processing mode to extract the key identifier first. If the extracted information is the identifier corresponding to the new key, the new key is used for decryption, otherwise the old key is used for decryption. After completing the data processing mode modification, a decryption key change confirmation signal is sent to the first communication terminal.
[0023] When the first communication terminal is a decryption terminal, the details of step 3 are:
[0024] Step 3B1, the first communication terminal sends a key change request to the second communication terminal. Before sending the key change signal, the decryption operation process is modified to first extract the key identifier. If the extracted identifier information is the identifier information corresponding to the new key, the new key is used for decryption, otherwise the old key is used for decryption;
[0025] Step 3B2: the second communication terminal receives the key change request from the first communication terminal, the second communication terminal changes its data processing mode, and sends a confirmation signal to the first communication terminal;
[0026] Step 3B3, the first communication terminal receives the confirmation signal, and the first communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network; after the countdown ends, the decryption operation process is changed to use the new key for decryption regardless of whether the new key identifier is extracted, and then a key change end request is sent to the second communication terminal;
[0027] Step 3B4: the second communication terminal receives the key change feedback information, which is the key change completion request of the first communication terminal. Then, the second communication terminal resets the encryption process, that is, no longer adds a new key identifier to the plain text, and directly uses the new key for encryption, and then sends a key change completion signal to the first communication terminal;
[0028] Step 3B5, the first communication terminal receives the key change completion feedback information from the second communication terminal, where the key change completion feedback information is the key change completion signal of the second communication terminal, after which the first communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network; after the countdown ends, the decryption operation process is reset, that is, regardless of whether the new key identifier is extracted, the new key is used for decryption, and then a key change completion confirmation signal is sent to the second communication terminal, and the key negotiation update operation is terminated;
[0029] Step 3B6, the second communication terminal receives the key change completion feedback information, which is the key change completion confirmation signal of the first communication terminal. After the second communication terminal receives the key change completion confirmation information number, the key negotiation update operation is completed.
[0030] In the above step 3B2, the second communication terminal modifies the encryption operation process by first adding a new key identifier in front of the plaintext data, and then encrypting the data with the new key; after completing the data processing mode modification, it sends a key change confirmation signal to the first communication terminal.
[0031] The above logo adopts the featureless marking method, and its generation method is:
[0032] Step I, generating random data of a specified length as an identification carrier, wherein the specified length is the length of the minimum carrier data required for embedding the identification calculated based on the identification information and the steganographic algorithm to be adopted, wherein the steganographic algorithm adopts an information hiding method based on coding, and the calculation formula of the identification carrier length L is as follows:
[0033]
[0034] Among them, l is the number of identification information bits, α is the embedding efficiency of the proposed steganographic algorithm, Indicates rounding up operation. Indicates floor rounding operation;
[0035] Step II: embed the identification information into the identification carrier to obtain a featureless identification.
[0036] The above identification adopts the featureless labeling method, and the extraction method is:
[0037] Step I, extracting a featureless identifier from a designated position of the received data and using it as a secret carrier, wherein the designated position is determined by prior negotiation between the communicating parties;
[0038] Step II: extract the identification information from the secret carrier according to the information hiding method adopted.
[0039] After adopting the above scheme, the present invention has the following characteristics:
[0040] (1) Based on temporarily changing the data processing mode of the encryption and decryption terminal, the present invention proposes a method for online negotiation and replacement of new and old keys, so as to achieve key update without stopping the machine or losing synchronization;
[0041] (2) The present invention only adds an identification operation during the key replacement phase, and can be restored to a non-identified state after the update is completed, requiring only a small amount of system resources and having high execution efficiency;
[0042] (3) The present invention uses steganography to achieve the de-featured addition of identification, that is, the identification has no fixed pattern and will not become the basis for tracking encrypted data. It is not easy to be analyzed by big data and has high security. BRIEF DESCRIPTION OF THE DRAWINGS
[0043] Figure 1 is a flow chart of the present invention;
[0044] Figure 2 is a key negotiation update flow chart when the first communication terminal is an encryption terminal;
[0045] Figure 3 is a key negotiation and update flow chart when the first communication terminal is a decryption terminal;
[0046] Figure 4This is a flow chart of using SM2 negotiation to generate a new key. DETAILED DESCRIPTION
[0047] The technical solutions and beneficial effects of the present invention will be described in detail below with reference to the accompanying drawings.
[0048] like Figure 1 As shown, the present invention provides a key negotiation update method, comprising the following steps:
[0049] Step 1: The first communication terminal and the second communication terminal confirm to update the key;
[0050] Step 2: The first communication terminal and the second communication terminal negotiate to generate a new key;
[0051] Step 3: The first communication terminal and the second communication terminal cooperate to replace the old key with the new key;
[0052] Step 4: Reset the encryption and decryption operation process.
[0053] The details of step one are as follows:
[0054] Step 11, the first communication terminal initiates a key update request to the second communication terminal;
[0055] Step 12: The second communication terminal responds to the key update request of the first communication terminal.
[0056] The details of step 2 are as follows:
[0057] After the first communication terminal receives the response from the second communication terminal, the first communication terminal and the second communication terminal negotiate to generate a new data encryption key. The negotiation method for generating the new key can be implemented using a key exchange protocol of algorithms such as SM9 and SM2.
[0058] Cooperate Figure 4 Taking SM2 as an example, the specific method for negotiating and generating a new key is:
[0059] Assume that the length of the key data negotiated by users A and B is klen bits, user A is the initiator, and user B is the responder. In order to obtain the same key, users A and B should implement the following operation steps:
[0060] remember represents the rounding operation, where n is the order of the elliptic curve, that is, the number of rational points of the elliptic curve over the finite field.
[0061] User A:
[0062] A1: Generate a random number r using a random number generator A ∈[1,n-1];
[0063] A2: Calculate the elliptic curve point R A ∈[r A ]G=(x1,y1);
[0064] A3: R A Send to user B;
[0065] User B:
[0066] B1: Generate a random number r using a random number generator B ∈[1,n-1];
[0067] B2: Calculate the elliptic curve point R B ∈[r B ]G=(x2,y2);
[0068] B3: From R B Take out the domain element x2, convert the data type of x2 to an integer according to the method given in standard GM / T0003.1-20124.2.8, and calculate
[0069] B4: Calculation
[0070] B5: Verify R A Whether the elliptic curve equation is satisfied, if not, the negotiation fails; otherwise, A Take out the domain element x1, convert the data type of x1 to an integer according to the method given in standard GM / T0003.1-20124.2.8, and calculate
[0071] B6: Calculate elliptic curve points If V is at infinity, B negotiation fails; otherwise, x is set according to the method given in GM / T0003.1-20124.2.6 and 4.2.5. V ,y V The data type is converted to a bit string;
[0072] B7: Calculate K B =KDF(x V ||y V ||Z A ||Z B ,klen);
[0073] B8: (optional) According to the method given in GM / T0003.1-20124.2.6 and 4.2.5, R A The coordinates x1, y1 and R B The data types of the coordinates x2 and y2 are converted to bit strings, and the calculation
[0074] S B =Hash(0x02||y V ||Hash(x V ||Z A ||Z B ||x1||y1||x2||y2));
[0075] B9: R B 、(Option S B ) is sent to user A;
[0076] User A:
[0077] A4: From R A Take out the domain element x1, convert the data type of x1 to an integer according to the method given in standard GM / T0003.1-20124.2.8, and calculate
[0078] A5: Calculation
[0079] A6: Verify R B Whether the elliptic curve equation is satisfied, if not, the negotiation fails; otherwise, B Take out the domain element x2, convert the data type of x2 to an integer according to the method given in standard GM / T0003.1-20124.2.8, and calculate
[0080] A7: Calculate elliptic curve points If U is a point at infinity, B negotiation fails; otherwise, x is set according to the method given in GM / T0003.1-20124.2.6 and 4.2.5. U ,y U The data type is converted to a bit string;
[0081] A8: Calculate K A =KDF(x U ||y U ||Z A ||Z B ,klen);
[0082] A9: (optional) According to the method given in GM / T0003.1-20124.2.6 and 4.2.5, R A The coordinates x1, y1 and R B The data types of the coordinates x2 and y2 are converted to bit strings, and the calculation
[0083] S1=Hash(0x02||y U ||Hash(x U ||ZA ||Z B ||x1||y1||x2||y2)), and verify that S1=S B Is it true? If the equality is not true, the key confirmation from B to A fails;
[0084] A10: (optional) Calculate S A =Hash(0x03||y U ||Hash(x U ||Z A ||Z B ||x1||y1||x2||y2)), and S A Sent to user B.
[0085] User B:
[0086] B10: (option) calculate S2 = Hash (0x02||y V ||Hash(x V ||Z A ||Z B ||x1||y1||x2||y2)), and verify that S2=S A Is it true? If the equality is not true, the key confirmation from A to B fails.
[0087] The meanings of the various parameters involved in the above SM2 key negotiation process are as follows:
[0088] A, B: Two users using public key cryptography.
[0089] a, b: F q The elements in F q An elliptic curve E on .
[0090] d A : User A’s private key.
[0091] d B : User B’s private key.
[0092] E(F q ): F q The set of all rational points on the elliptic curve E (including the point O at infinity).
[0093] F q : A finite field with q elements.
[0094] G: The previous base point of the elliptic curve, whose order is a prime number.
[0095] Hash(): Cryptographic hash function.
[0096] H v(): A cryptographic hash function with a message digest length of v bits.
[0097] h: cofactor, h = #E(F q ) / n, where n is F q The order.
[0098] ID A , ID B : The distinguishable identifier of user A and user B.
[0099] K, K A , K B : The shared secret key agreed upon in the key exchange protocol.
[0100] KDF(): Key derivation function.
[0101] mod n: modulo n operation.
[0102] n: the order of the base point G (n is #E(F q ) of the prime factors of ).
[0103] O: A special point on the elliptic curve, called the point at infinity or the zero point, is the identity element of the elliptic curve additive group.
[0104] P A : User A’s public key.
[0105] P B : Public key of user B.
[0106] q: finite field F q The number of elements in .
[0107] r A : Temporary key value generated by user A during key exchange.
[0108] r B : Temporary key value generated by user B during key exchange.
[0109] x||y: the concatenation of x and y, where x and y can be bit strings or character strings.
[0110] Z A : A hash value of the user A’s identifiable identifier, some elliptic curve system parameters, and the user A’s public key.
[0111] Z B : A hash value of the user B's identifiable identifier, some elliptic curve system parameters, and the user B's public key.
[0112] #E(F q ):E(F q ) is called the elliptic curve E(F q) level.
[0113] [k]P: The point k times the point P on the elliptic curve, where k is a positive integer.
[0114] [x,y]: The set of integers greater than or equal to x and less than or equal to y.
[0115] Top function: smallest integer greater than or equal to x.
[0116] Floor function: the largest integer less than or equal to x.
[0117] &: Bitwise AND operation of two integers.
[0118] Among them, in the step 3, the processing methods are different according to whether the first communication terminal is an encryption terminal or a decryption terminal, which are respectively introduced below:
[0119] Cooperate Figure 2 , when the first communication terminal is used as an encryption terminal, the details of step three are:
[0120] Step 3A1, the first communication terminal sends a key change request to the second communication terminal, and the first communication terminal does not change its data processing mode;
[0121] Step 3A2: the second communication terminal receives the key change request from the first communication terminal, changes its data processing mode, and sends a confirmation signal to the first communication terminal; specifically, the second communication terminal changes the data processing mode to first extract the key identifier, and if the extracted identifier is the identifier corresponding to the new key, uses the new key for decryption, otherwise uses the old key for decryption; after completing the data processing mode modification, sends a decryption key change confirmation signal to the first communication terminal;
[0122] Step 3A3, the first communication terminal receives the confirmation signal, and modifies the encryption operation process to first add a new key identifier in front of the plaintext data, and then encrypt the data with the new key; then sends an encryption key change signal to the second communication terminal;
[0123] Step 3A4, the second communication terminal receives the key change feedback information, which is the encryption key change confirmation signal of the first communication terminal, and then the second communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network; after the countdown ends, the decryption operation process is reset, that is, regardless of whether the new key identifier is extracted, the new key is used for decryption, and then a key change end request is sent to the first communication terminal;
[0124] Step 3A5, the first communication terminal receives the key change completion feedback information from the second communication terminal, where the key change completion feedback information is the key change completion request from the second communication terminal, after which the first communication terminal resets the encryption operation process, i.e., no longer adds a new key identifier to the plain text, and directly uses the new key for encryption, and then sends a key change completion signal to the second communication terminal;
[0125] Step 3A6: The second communication terminal receives the key replacement completion feedback information, which is the key replacement completion signal of the first communication terminal. After that, the second communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network. After the countdown ends, the decryption operation process is reset, that is, regardless of whether the new key identifier is extracted, the new key is used for decryption, and then a key replacement completion confirmation signal is sent to the first communication terminal, and the key negotiation update operation is terminated.
[0126] Step 3A7: After receiving the key change completion confirmation signal from the second terminal, the first communication terminal ends the key negotiation and update operation.
[0127] Cooperate Figure 3 , when the first communication terminal is used as a decryption terminal, the details of step three are:
[0128] Step 3B1, the first communication terminal sends a key change request to the second communication terminal. Before sending the key change signal, the decryption operation process is modified to first extract the key identifier. If the extracted identifier information is the identifier information corresponding to the new key, the new key is used for decryption, otherwise the old key is used for decryption;
[0129] Step 3B2, the second communication terminal receives the key change request from the first communication terminal, the second communication terminal changes its data processing mode, and sends a confirmation signal to the first communication terminal; specifically, the second communication terminal modifies the encryption operation process to first add a new key identifier in front of the plaintext data, and then encrypts the data with the new key; after completing the data processing mode modification, the second communication terminal sends a key change confirmation signal to the first communication terminal;
[0130] Step 3B3, the first communication terminal receives the confirmation signal, and the first communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network; after the countdown ends, the decryption operation process is changed to use the new key for decryption regardless of whether the new key identifier is extracted, and then a key change end request is sent to the second communication terminal;
[0131] Step 3B4: the second communication terminal receives the key change feedback information, which is the key change completion request of the first communication terminal. Then, the second communication terminal resets the encryption process, that is, no longer adds a new key identifier to the plain text, and directly uses the new key for encryption, and then sends a key change completion signal to the first communication terminal;
[0132] Step 3B5, the first communication terminal receives the key change completion feedback information from the second communication terminal, where the key change completion feedback information is the key change completion signal of the second communication terminal, after which the first communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network; after the countdown ends, the decryption operation process is reset, that is, regardless of whether the new key identifier is extracted, the new key is used for decryption, and then a key change completion confirmation signal is sent to the second communication terminal, and the key negotiation update operation is terminated;
[0133] Step 3B6, the second communication terminal receives the key change completion feedback information, which is the key change completion confirmation signal of the first communication terminal. After the second communication terminal receives the key change completion confirmation information number, the key negotiation update operation is completed.
[0134] It should be noted that the identification actions used in this embodiment all adopt the featureless marking method, and the specific operations of featureless identification generation and extraction are as follows:
[0135] (1) No feature identifier generation
[0136] 1) Generate random data of a specified length as an identification carrier. The specified length is the length of the minimum carrier data required for embedding the identification calculated based on the identification information and the steganographic algorithm to be adopted. The steganographic algorithm adopts an information hiding method based on coding. The calculation formula of the identification carrier length L is as follows:
[0137]
[0138] Where l is the number of identification information bits, α is the embedding efficiency of the proposed steganographic algorithm (i.e., the number of secret information bits that can be embedded per bit carrier on average), Indicates rounding up operation. Indicates floor operation.
[0139] 2) Embed the identification information into the identification carrier to obtain a featureless identification;
[0140] (2) No feature extraction
[0141] 1) Extracting a featureless identifier from a designated location of the received data and using it as a secret carrier, wherein the designated location is determined by prior negotiation between the two communicating parties;
[0142] 2) According to the information hiding method adopted, the identification information is extracted from the secret carrier.
[0143] The encryption and decryption operations involved in this embodiment are only for the data part, and the identification information is not encrypted. If the decryption end cannot extract the key identification information, it is considered that the data has not been identified. If the identification information is extracted, the identification is deleted first, and then the data part is decrypted.
[0144] The above embodiments are only for illustrating the technical idea of the present invention, and cannot be used to limit the protection scope of the present invention. Any changes made on the basis of the technical solution in accordance with the technical idea proposed by the present invention shall fall within the protection scope of the present invention.
Claims
1. A key negotiation update method, characterized in that The steps include: Step 1: The first communication terminal and the second communication terminal confirm to update the key; Step 2: The first communication terminal and the second communication terminal negotiate to generate a new key; Step 3: The first communication terminal and the second communication terminal cooperate to replace the old key with the new key; Step 4: Reset the encryption and decryption operation process; When the first communication terminal is an encryption terminal, the details of step 3 are: Step 3A1, the first communication terminal sends a key change request to the second communication terminal, and the first communication terminal does not change its data processing mode; Step 3A2: the second communication terminal receives the key change request from the first communication terminal, the second communication terminal changes its data processing mode, and sends a confirmation signal to the first communication terminal; Step 3A3, the first communication terminal receives the confirmation signal, and modifies the encryption operation process to first add a new key identifier in front of the plaintext data, and then encrypt the data with the new key; then sends an encryption key change signal to the second communication terminal; Step 3A4, the second communication terminal receives the key change feedback information, which is the encryption key change signal of the first communication terminal, and then the second communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network; after the countdown ends, the decryption operation process is reset, that is, regardless of whether the new key identifier is extracted, the new key is used for decryption, and then a key change end request is sent to the first communication terminal; Step 3A5, the first communication terminal receives the key change completion feedback information from the second communication terminal, where the key change completion feedback information is the key change completion request from the second communication terminal, after which the first communication terminal resets the encryption operation process, i.e., no longer adds a new key identifier to the plain text, and directly uses the new key for encryption, and then sends a key change completion signal to the second communication terminal; Step 3A6, the second communication terminal receives the key change completion feedback information, which is the key change completion signal of the first communication terminal, and then the second communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network; after the countdown ends, the decryption operation process is reset, that is, after the countdown ends, the new key is used for decryption, and the key identifier is no longer recognized; then a key change completion confirmation signal is sent to the first communication terminal, and the key negotiation update operation is terminated; Step 3A7, after the first communication terminal receives the key change completion confirmation signal from the second terminal, the key negotiation and update operation is terminated; When the first communication terminal is a decryption terminal, the details of step 3 are: Step 3B1, the first communication terminal sends a key change request to the second communication terminal. Before sending the key change signal, the decryption operation process is modified to first extract the key identifier. If the extracted identifier information is the identifier information corresponding to the new key, the new key is used for decryption, otherwise the old key is used for decryption; Step 3B2: the second communication terminal receives the key change request from the first communication terminal, the second communication terminal changes its data processing mode, and sends a confirmation signal to the first communication terminal; Step 3B3, the first communication terminal receives the confirmation signal, and the first communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network; after the countdown ends, the decryption operation process is changed to use the new key for decryption regardless of whether the new key identifier is extracted, and then a key change end request is sent to the second communication terminal; Step 3B4: The second communication terminal receives the key change feedback information, which is the key change completion request of the first communication terminal. After that, the second communication terminal resets the encryption process, that is, no longer adds a new key identifier to the plain text, and directly uses the new key for encryption, and then sends a key change completion signal to the first communication terminal; Step 3B5, the first communication terminal receives the key change completion feedback information from the second communication terminal, the key change completion feedback information is the key change completion signal of the second communication terminal, and then the first communication terminal enters a countdown of T, where T is the maximum lifetime value of data transmission in the network; after the countdown ends, the decryption operation process is reset, that is, the new key is directly used for decryption without recognizing the key identifier, and then a key change completion confirmation signal is sent to the second communication terminal, and the key negotiation update operation is terminated; Step 3B6, the second communication terminal receives the key change completion feedback information, wherein the key change completion feedback information is the key change completion confirmation signal of the first communication terminal, and then the second communication terminal ends the key negotiation and update operation after receiving the key change completion confirmation signal; The identification actions adopted by the method all adopt the featureless marking method. The specific operations of featureless identification generation and extraction are as follows: (1) No feature identifier generation 1) Generate random data of a specified length as an identification carrier. The specified length is the length of the minimum carrier data required for embedding the identification calculated based on the identification information and the steganographic algorithm to be adopted. The steganographic algorithm adopts an information hiding method based on coding. The calculation formula of the identification carrier length L is as follows: Where l is the number of identification information bits, α is the embedding efficiency of the proposed steganographic algorithm (i.e., the number of secret information bits that can be embedded per bit carrier on average), Indicates rounding up operation. Indicates floor operation; 2) Embed the identification information into the identification carrier to obtain a featureless identification; (2) No feature extraction 1) Extracting a featureless identifier from a designated location of the received data and using it as a secret carrier, wherein the designated location is determined by prior negotiation between the two communicating parties; 2) Extracting identification information from the secret carrier according to the information hiding method adopted; The encryption and decryption operations are only for the data part, and the identification information is not encrypted. If the decryption end cannot extract the key identification information, it is considered that the data has not been identified. If the identification information is extracted, the identification is deleted first, and then the data part is decrypted.
2. A key negotiation and updating method as claimed in claim 1, characterized in that: The details of step one are: Step 11, the first communication terminal initiates a key update request to the second communication terminal; Step 12: The second communication terminal responds to the key update request of the first communication terminal.
3. A key negotiation and updating method as claimed in claim 1, characterized in that: In the step 2, after the first communication terminal receives the response from the second communication terminal, the first communication terminal negotiates with the second communication terminal to use SM9 or SM2 to generate a data encryption key.
4. A key negotiation and updating method as claimed in claim 1, characterized in that: In step 3A2, the second communication terminal modifies the data processing mode to extract the key identifier first. If the extracted identifier corresponds to the new key, the new key is used for decryption; otherwise, the old key is used for decryption. After the data processing mode modification is completed, a decryption key change confirmation signal is sent to the first communication terminal.
5. A key negotiation and updating method as claimed in claim 1, characterized in that: In step 3B2, the second communication terminal modifies the encryption operation process by first adding a new key identifier in front of the plaintext data, and then encrypting the data with the new key; after completing the data processing mode modification, a key change confirmation signal is sent to the first communication terminal.
Citation Information
Patent Citations
Steganography-based key transmission and key updating method
CN102724041A
Network key updating system, method and apparatus
CN108449756A