Secure communication protocol method and system based on microchip fingerprint technology

By using physical uncloned function circuits on the microchip to extract fingerprint information and generate keys in combination with the elliptic curve cipher algorithm, the problem of security threats in the microchip environment is solved, and reliable authentication and secure communication of chip identity are achieved.

CN119011137BActive Publication Date: 2025-04-18WING SHIELD (SHANGHAI) INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411034160.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-07-30
Publication Date
2025-04-18
Estimated Expiration
2044-07-30

AI Technical Summary

Technical Problem

The prior art is difficult to effectively solve security threats such as information eavesdropping, data tampering and identity forgery in a microchip environment, and cryptographic algorithm calculations are complex, key management is complex, and it is difficult to resist physical attacks.

Method used

By extracting the physical fingerprint information of the micro chip using the physical uncloned function circuit, random hash is used to generate fingerprint summary, and combining the elliptic curve cipher algorithm to generate private keys and public keys, reliable authentication and secure communication of chip identity are achieved.

Benefits of technology

It realizes reliable authentication of chip identity, prevents identity forgery and cloning attacks, improves the randomness and security of keys, reduces hardware overhead and computing complexity, and is suitable for resource-constrained microchip environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119011137B_ABST
    Figure CN119011137B_ABST
Patent Text Reader

Abstract

The present invention provides a secure communication protocol method and system based on microchip fingerprint technology, which relates to the field of secure communication technology, including extracting physical fingerprint information of a microchip by using a physical uncloned function circuit, randomly hashing the physical fingerprint information, and generating a fingerprint summary; generating a private key and a public key corresponding to the fingerprint summary by combining a deterministic random number generation algorithm with an elliptic curve cryptographic algorithm; an authentication server establishes a mapping relationship between the public key and the ID of the microchip, digitally signs the communication request using the fingerprint summary as part of the private key, and sends the digitally signed communication request to the authentication server through a secure channel; after verification, generating a session key corresponding to the communication request through an asymmetric encryption algorithm based on a secure communication link, and transmitting the session key to the microchip and a target device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a secure communication technology, and in particular to a secure communication protocol method and system based on microchip fingerprint technology. Background Art

[0002] Microchips are widely deployed in various smart devices and security applications. However, the environment in which microchips are located is often exposed to various security threats, such as information eavesdropping, data tampering, and identity forgery, which pose a serious challenge to the communication security between chips and other devices.

[0003] Traditional communication security solutions mainly rely on cryptographic algorithms to protect the confidentiality and integrity of data through encryption and authentication mechanisms. However, these solutions face many difficulties in the resource-constrained microchip environment. First, cryptographic algorithms usually have high computational complexity, which poses a challenge to the processing power and storage space of the chip. Secondly, the key management problem is complex, requiring the safe and reliable generation, distribution and storage of keys, which increases the complexity and cost of the system. In addition, cryptography-based solutions are difficult to resist physical attacks on chips, such as side channel analysis and fault injection. Summary of the invention

[0004] The embodiments of the present invention provide a secure communication protocol method and system based on microchip fingerprint technology, which can solve the problems in the prior art.

[0005] According to a first aspect of the embodiments of the present invention,

[0006] Provides a secure communication protocol method based on microchip fingerprint technology, including:

[0007] Extracting physical fingerprint information of the microchip using a physical uncloned function circuit, performing random hashing on the physical fingerprint information to generate a fingerprint summary, wherein the physical fingerprint information includes physical characteristic parameters of texture features, transistor threshold voltage, and interconnect layer capacitance generated during the microchip manufacturing process;

[0008] The fingerprint summary is used as an initial seed, and a private key and a public key corresponding to the fingerprint summary are generated by a deterministic random number generation algorithm combined with an elliptic curve cryptography algorithm, wherein the private key is bound to the physical fingerprint information; the public key and the ID of the microchip are sent to an authentication server through a secure channel for registration, and the authentication server establishes a mapping relationship between the public key and the ID of the microchip, and stores the mapping relationship in a secure database;

[0009] When the microchip receives a communication request, it uses the fingerprint summary as part of the private key to digitally sign the communication request, and sends the digitally signed communication request to the authentication server through a secure channel; the authentication server verifies the communication request, and after the verification is passed, based on the secure communication link, generates a session key corresponding to the communication request through an asymmetric encryption algorithm, and transmits the session key to the microchip and the target device.

[0010] In an optional embodiment,

[0011] The physical fingerprint information of the microchip is extracted by using a physical uncloned function circuit, and the physical fingerprint information is randomly hashed to generate a fingerprint summary including:

[0012] Obtaining a current timestamp of the physical uncloned function circuit, and converting the current timestamp into an unsigned integer of a first preset number of bits; extracting a unique identification code of the microchip, and converting the unique identification code into an unsigned integer of a second preset number of bits;

[0013] Performing a bitwise XOR operation on the unsigned integer of the first preset number of bits and the unsigned integer of the second preset number of bits to generate an initial dynamic salt value;

[0014] The number of iterations is set according to a preset security strength, and the initial dynamic salt value is iteratively transformed for multiple rounds through a preset substitution function to obtain a final dynamic salt value; the physical fingerprint information is extracted using the physical uncloned function circuit, and the physical fingerprint information is spliced ​​with the final dynamic salt value to obtain a splicing result;

[0015] The sponge structure is used to absorb and squeeze the splicing result, wherein the absorption process converts the splicing result into a bit sequence, and the bit sequence is processed in blocks. When the length of the block bit sequence is lower than a preset length threshold, the block is filled using a preset filling rule; the squeezing process randomly hashes the result of the bit sequence block processing to generate a fingerprint summary.

[0016] In an optional embodiment,

[0017] The number of iterations is set according to the preset security strength, and the final dynamic salt value is obtained by performing multiple rounds of iterative transformation on the initial dynamic salt value through a preset substitution function, including:

[0018] The number of iteration rounds is set according to the preset security strength. The substitution function includes two components: a substitution box and a substitution box. The substitution box increases the degree of salt value confusion through nonlinear table lookup operation, and the substitution box increases the randomness of the salt value through bit rearrangement and diffusion.

[0019] The initial dynamic salt value is divided into a number of sub-blocks of the same length, each sub-block is nonlinearly transformed by the substitution box, the sub-blocks after the nonlinear transformation are spliced ​​into a complete salt value again, and the sub-blocks are rearranged at the bit level by the substitution box, and the substitution box uses a substitution matrix to realize bit diffusion;

[0020] The replaced initial dynamic salt value is iterated for multiple rounds according to the number of iterations set according to the preset security strength, and the substitution box transformation and the replacement box rearrangement operations are repeatedly performed until the number of iterations is reached to obtain the final dynamic salt value.

[0021] In an optional embodiment,

[0022] Using the fingerprint summary as the initial seed, generating the private key and public key corresponding to the fingerprint summary by combining a deterministic random number generation algorithm with an elliptic curve cryptography algorithm includes:

[0023] According to the initial seed, the internal state initial value corresponding to the initial seed is determined by the kernel function of the deterministic random number generation algorithm, the internal state initial value is iteratively updated based on the kernel function until a preset number of iterations is reached, a pseudo-random number sequence is generated, and the pseudo-random number sequence is mixed with the physical fingerprint information to obtain a mixed random number sequence, and the mixed random number sequence is used as a private key, wherein the kernel function includes a hash function;

[0024] Constructing a multi-layer hash tree according to the sequence length of the mixed random number sequence, splitting the multi-layer hash tree into multiple hash subtrees based on the order of the elliptic curve cryptographic algorithm, calculating hash results of the multiple hash subtrees in parallel according to the private key, and aggregating the multiple hash results as an entropy source;

[0025] The public key corresponding to the fingerprint summary is determined according to the entropy source, the base point of the elliptic curve cryptographic algorithm, and the post-quantum secure digital signature algorithm.

[0026] In an optional embodiment,

[0027] Determining the public key corresponding to the fingerprint digest according to the entropy source, the base point of the elliptic curve cryptography algorithm, and the post-quantum secure digital signature algorithm includes:

[0028] Inputting the entropy source into a scalar multiplication operation of the elliptic curve cryptographic algorithm, and combining the base point of the elliptic curve cryptographic algorithm to generate a first public key;

[0029] The fingerprint summary is concatenated with the first public key as the key input of the post-quantum secure digital signature algorithm, the polynomial multiplication of the key input is converted into point value multiplication by using number theory transformation technology, a batch signature verification mechanism is introduced, multiple messages to be signed are packaged into a batch, and a second public key is generated;

[0030] The first public key and the second public key are concatenated to obtain a public key corresponding to the fingerprint summary.

[0031] In an optional embodiment,

[0032] The authentication server verifies the communication request, and after the verification is passed, generates a session key corresponding to the communication request through an asymmetric encryption algorithm based on a secure communication link, and transmits the session key to the microchip and the target device, including:

[0033] The authentication server verifies the communication request using an identity-based cryptographic protocol, verifies the digital signature in the communication request using public parameters in the identity-based cryptographic protocol and a server master key, and determines whether the communication request comes from a legitimate microchip. If so, the communication request verification is successful;

[0034] The authentication server generates a temporary key pair by using an elliptic curve cryptographic algorithm, determines elliptic curve parameters corresponding to the elliptic curve cryptographic algorithm, and synchronizes the temporary key pair and the elliptic curve parameters to the microchip and the target device based on a secure communication link;

[0035] The microchip and the target device respectively use their own device identifications and the public key in the temporary key pair to perform scalar multiplication operations to obtain their respective shared keys;

[0036] By using a secure hash algorithm as an encryption algorithm with an underlying hash function and taking the shared keys of the microchip and the target device as input, a session key corresponding to the communication request is generated, and the session key is transmitted to the microchip and the target device.

[0037] In an optional embodiment,

[0038] The method of generating a session key corresponding to the communication request by using a cryptographic algorithm with a secure hash algorithm as an underlying hash function and taking a shared key of the microchip and the target device as input comprises:

[0039] The microchip and the target device negotiate a shared key according to the Diffie-Hellman key exchange protocol, and generate a session key corresponding to the communication request through a key derivation function based on the shared key and metadata in the communication request;

[0040] The key derivation function is an encryption algorithm using a secure hash algorithm as an underlying hash function. When encrypting data, it includes an extraction phase and an expansion phase. The extraction phase uses a secure hash algorithm to generate an intermediate extraction key based on the shared key and a randomly introduced random salt value; in the expansion phase, a session key of a target length corresponding to the communication request is calculated using a secure hash algorithm based on the intermediate extraction key and metadata in the communication request; wherein the metadata in the communication request includes at least one of a request sequence number, a timestamp, and a random challenge value.

[0041] According to a second aspect of the embodiments of the present invention,

[0042] Provides a secure communication protocol system based on microchip fingerprint technology, including:

[0043] A first unit is used to extract physical fingerprint information of the microchip using a physical uncloned function circuit, and randomly hash the physical fingerprint information to generate a fingerprint summary, wherein the physical fingerprint information includes physical characteristic parameters of texture features, transistor threshold voltage, and interconnect layer capacitance generated during the microchip manufacturing process;

[0044] The second unit is used to use the fingerprint summary as an initial seed, generate a private key and a public key corresponding to the fingerprint summary by combining a deterministic random number generation algorithm with an elliptic curve cryptographic algorithm, and the private key is bound to the physical fingerprint information; send the public key and the ID of the microchip to the authentication server through a secure channel for registration, and the authentication server establishes a mapping relationship between the public key and the ID of the microchip, and stores the mapping relationship in a secure database;

[0045] The third unit is used for, when the microchip receives a communication request, to digitally sign the communication request using the fingerprint summary as a part of the private key, and to send the digitally signed communication request to the authentication server through a secure channel; the authentication server verifies the communication request, and after the verification is passed, generates a session key corresponding to the communication request based on a secure communication link through an asymmetric encryption algorithm, and transmits the session key to the microchip and the target device.

[0046] According to a third aspect of the embodiments of the present invention,

[0047] An electronic device is provided, comprising:

[0048] processor;

[0049] a memory for storing processor-executable instructions;

[0050] The processor is configured to call the instructions stored in the memory to execute the aforementioned method.

[0051] A fourth aspect of the embodiments of the present invention is:

[0052] A computer-readable storage medium is provided, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the aforementioned method is implemented.

[0053] This application uses a physical uncloned function circuit to extract the physical fingerprint information of a microchip, combines the unique physical characteristics of the chip with a cryptographic scheme, and achieves reliable authentication of the chip's identity, effectively preventing identity forgery and cloning attacks. The chip's physical fingerprint information is randomly hashed to generate a fingerprint digest as the initial seed for key generation, ensuring that the key is bound to the chip's physical characteristics, improving the randomness and unpredictability of the key. At the same time, a deterministic random number generation algorithm and an elliptic curve cryptographic algorithm are used to achieve high-intensity key generation and enhance key security.

[0054] By sending the chip's public key and ID to the authentication server through a secure channel for registration, establishing a mapping relationship between the public key and the chip ID, and storing it in a secure database, secure storage and management of the key is achieved. During the communication process, key distribution is performed through the authentication server, avoiding the transmission of keys on insecure channels and improving the security of key distribution. When a communication request is initiated, the microchip uses the fingerprint digest as part of the private key to digitally sign the communication request, ensuring the authenticity and non-repudiation of the request. The signature is verified by the authentication server to prevent data tampering and forgery. During the communication process, an asymmetric encryption algorithm is used to generate session keys to achieve data confidentiality protection.

[0055] Physical fingerprint information is extracted through physical uncloned function circuits, which avoids complex sensors and measurement circuits and reduces the hardware overhead of the chip. Lightweight cryptographic primitives such as elliptic curve cryptography and deterministic random number generation algorithms are used to reduce computational complexity and are suitable for resource-constrained microchip environments. BRIEF DESCRIPTION OF THE DRAWINGS

[0056] Figure 1 It is a flowchart of a secure communication protocol method based on microchip fingerprint technology according to an embodiment of the present invention;

[0057] Figure 2 It is a schematic diagram of the structure of a secure communication protocol system based on microchip fingerprint technology according to an embodiment of the present invention. DETAILED DESCRIPTION

[0058] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0059] The technical solution of the present invention is described in detail with specific embodiments below. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments.

[0060] Figure 1 FIG. 1 is a flow chart of a secure communication protocol method based on microchip fingerprint technology according to an embodiment of the present invention. Figure 1 As shown, the method includes:

[0061] S101. Extracting physical fingerprint information of a microchip using a physical uncloned function circuit, performing random hashing on the physical fingerprint information, and generating a fingerprint summary, wherein the physical fingerprint information includes physical characteristic parameters of texture features, transistor threshold voltage, and interconnect layer capacitance generated during the microchip manufacturing process;

[0062] S102. Using the fingerprint summary as an initial seed, a deterministic random number generation algorithm combined with an elliptic curve cryptography algorithm is used to generate a private key and a public key corresponding to the fingerprint summary, wherein the private key is bound to the physical fingerprint information; the public key and the ID of the microchip are sent to an authentication server through a secure channel for registration, and the authentication server establishes a mapping relationship between the public key and the ID of the microchip, and stores the mapping relationship in a secure database;

[0063] S103. When the microchip receives a communication request, it uses the fingerprint summary as part of the private key to digitally sign the communication request, and sends the digitally signed communication request to the authentication server through a secure channel; the authentication server verifies the communication request, and after the verification is passed, based on the secure communication link, generates a session key corresponding to the communication request through an asymmetric encryption algorithm, and transmits the session key to the microchip and the target device.

[0064] This application uses a physical uncloned function circuit to extract the physical fingerprint information of a microchip, combines the unique physical characteristics of the chip with a cryptographic scheme, and achieves reliable authentication of the chip's identity, effectively preventing identity forgery and cloning attacks. The chip's physical fingerprint information is randomly hashed to generate a fingerprint digest as the initial seed for key generation, ensuring that the key is bound to the chip's physical characteristics, improving the randomness and unpredictability of the key. At the same time, a deterministic random number generation algorithm and an elliptic curve cryptographic algorithm are used to achieve high-intensity key generation and enhance key security.

[0065] By sending the chip's public key and ID to the authentication server through a secure channel for registration, establishing a mapping relationship between the public key and the chip ID, and storing it in a secure database, secure storage and management of the key is achieved. During the communication process, key distribution is performed through the authentication server, avoiding the transmission of keys on insecure channels and improving the security of key distribution. When a communication request is initiated, the microchip uses the fingerprint digest as part of the private key to digitally sign the communication request, ensuring the authenticity and non-repudiation of the request. The signature is verified by the authentication server to prevent data tampering and forgery. During the communication process, an asymmetric encryption algorithm is used to generate session keys to achieve data confidentiality protection.

[0066] Physical fingerprint information is extracted through physical uncloned function circuits, which avoids complex sensors and measurement circuits and reduces the hardware overhead of the chip. Lightweight cryptographic primitives such as elliptic curve cryptography and deterministic random number generation algorithms are used to reduce computational complexity and are suitable for resource-constrained microchip environments.

[0067] In an optional embodiment,

[0068] The physical fingerprint information of the microchip is extracted by using a physical uncloned function circuit, and the physical fingerprint information is randomly hashed to generate a fingerprint summary including:

[0069] Obtaining a current timestamp of the physical uncloned function circuit, and converting the current timestamp into an unsigned integer of a first preset number of bits; extracting a unique identification code of the microchip, and converting the unique identification code into an unsigned integer of a second preset number of bits;

[0070] Performing a bitwise XOR operation on the unsigned integer of the first preset number of bits and the unsigned integer of the second preset number of bits to generate an initial dynamic salt value;

[0071] The number of iterations is set according to a preset security strength, and the initial dynamic salt value is iteratively transformed for multiple rounds through a preset substitution function to obtain a final dynamic salt value; the physical fingerprint information is extracted using the physical uncloned function circuit, and the physical fingerprint information is spliced ​​with the final dynamic salt value to obtain a splicing result;

[0072] The sponge structure is used to absorb and squeeze the splicing result, wherein the absorption process converts the splicing result into a bit sequence, and the bit sequence is processed in blocks. When the length of the block bit sequence is lower than a preset length threshold, the block is filled using a preset filling rule; the squeezing process randomly hashes the result of the bit sequence block processing to generate a fingerprint summary.

[0073] Exemplarily, the technical solution of the present application enhances the randomness and security of the fingerprint summary and improves the ability to resist attacks by introducing a dynamic salt value and a sponge structure.

[0074] The physical fingerprint information of microchips originates from the inherent variability in the chip manufacturing process, including physical characteristic parameters such as texture features, transistor threshold voltage, and interconnect layer capacitance. In order to extract these fingerprint information, this paper adopts the Physical Unclonable Function (PUF) circuit. The PUF circuit uses the physical characteristics inside the chip to generate a unique response, which is unclonable and physically unforgeable, making it an ideal choice for extracting chip fingerprint information.

[0075] This paper uses a PUF circuit based on a ring oscillator, which consists of multiple ring oscillators, each of which contains an odd number of inverters to form an oscillation loop. Due to the variability of the manufacturing process, there are slight differences in the oscillation frequency of each ring oscillator, which can be used to extract the physical fingerprint information of the chip.

[0076] By measuring the oscillation frequency of each ring oscillator, a set of frequency values ​​f1, f2, ..., f N , which is used as the physical fingerprint information P of the chip:

[0077] P={f1,f2,...,f N};

[0078] Where N is the number of ring oscillators, f N is the oscillation frequency of the Nth ring oscillator.

[0079] In order to enhance the randomness and unpredictability of the fingerprint summary, a dynamic salt value mechanism is introduced. The generation of dynamic salt value is divided into the following steps:

[0080] Get the current timestamp T of the PUF circuit and convert it into an unsigned integer T of the first preset number of bits unsigned The introduction of timestamp increases the dynamics and unpredictability of salt value.

[0081] Extract the unique identification code ID of the microchip and convert it into an unsigned integer ID of the second preset number of digits unsignedThe chip identification code is uniquely bound to the chip, ensuring the uniqueness of the salt value.

[0082] (3) performing a bitwise XOR operation on the unsigned integer of the first preset number of bits and the unsigned integer of the second preset number of bits to generate an initial dynamic salt value S init :

[0083]

[0084] in, Represents a bitwise XOR operation. The XOR operation mixes the information of the timestamp and the identification code, increasing the randomness of the salt value.

[0085] According to the preset security strength requirements, set the number of iterations r, and perform multiple rounds of iterative transformations on the initial dynamic salt value through the preset permutation function pi to obtain the final dynamic salt value S final :

[0086] S final =(pi) r (S init );

[0087] Among them, (pi) r It means that the permutation function pi is iterated r times. The design of the permutation function can refer to the permutation network in cryptography, such as the SP network. Through multiple rounds of permutation, the obfuscation and diffusion properties of the salt value are enhanced, and the ability to resist differential attacks and linear attacks is improved.

[0088] After obtaining the physical fingerprint information and dynamic salt value, generate the fingerprint summary. The specific steps are as follows:

[0089] The physical fingerprint information is spliced ​​with the dynamic salt value to obtain a splicing result;

[0090] The sponge structure is used to absorb and squeeze the splicing results. The sponge structure is a general hash function construction method with good security and flexibility.

[0091] The absorption stage converts the splicing result into a bit sequence and processes it in blocks. Assuming that the internal state size of the sponge structure is b bits and the block size is kr bits, the absorption process can be expressed as:

[0092] S (0) =IV;

[0093]

[0094] Among them, S (0) is the initial state, usually set to a fixed initial vector IV; C iis the i-th block of the splicing result C; pad() is the padding function, which fills the block when the length is less than kr bits; f() is the internal permutation function of the sponge structure, which is used to mix and diffuse the internal state, S (i) , S (i-1) They represent the bit sequences corresponding to the i-th block and the i-1-th block respectively.

[0095] The squeeze phase iterates the internal state after absorption to generate a fingerprint summary H of a specified length:

[0096] Z i =trunc r (S (n+i) );

[0097] H=Z1||Z2||...||Z fk ;

[0098] Among them, Z i represents the i-th output block in the sponge structure squeezing stage. In each iteration, the first kr bits are intercepted from the internal state S as the output block, S (n+i) represents the internal state of the sponge structure after the nth iteration in the squeezing phase; n represents the number of iterations in the absorption phase, that is, the number of iterations required to absorb the splicing result blocks into the internal state; fk represents the number of blocks of the output fingerprint summary.

[0099] The security of the sponge structure mainly depends on the design of the internal permutation function. This paper selects a design based on Keccak permutation, which has good randomness and collision resistance and can provide strong security guarantees.

[0100] After the above steps, the fingerprint summary corresponding to the physical fingerprint information can be obtained, achieving the purpose of mapping the physical characteristics of the chip into a fixed-length summary. The fingerprint summary is irreversible and collision-resistant, and can be used for chip identity authentication and key generation, providing a basis for subsequent secure communication protocols.

[0101] The fingerprint summary generation method proposed in this application makes full use of the uniqueness and non-cloning properties of physical fingerprint information, and combines the dynamic salt value mechanism and sponge structure to significantly enhance the security of the fingerprint summary.

[0102] First, physical fingerprint information originates from the inherent variability in the chip manufacturing process and has natural randomness and uniqueness. Extracting fingerprint information through the PUF circuit ensures that the fingerprint summary is bound to the physical characteristics of the chip, preventing the forgery and duplication of fingerprint information. Secondly, the dynamic salt value mechanism is introduced to generate a dynamic salt value using the timestamp and chip identification code, and mixed with the fingerprint information, which increases the unpredictability of the fingerprint summary. The salt value is iteratively transformed through multiple rounds of permutation functions to improve the ability to resist differential attacks and linear attacks. The introduction of dynamic salt values ​​effectively prevents replay attacks and rainbow table attacks.

[0103] Furthermore, a sponge structure is used to absorb and squeeze the splicing results to generate a fingerprint summary. The sponge structure has good security and flexibility and can resist a variety of cryptographic attacks, such as birthday attacks and length extension attacks. The use of Keccak permutation ensures the randomness and anti-collision of the fingerprint summary. Finally, the irreversibility of the fingerprint summary protects the original physical fingerprint information and prevents the fingerprint information from being recovered from the summary. Even if the fingerprint summary is leaked, it is difficult for an attacker to infer the original fingerprint information, thus protecting the physical characteristics of the chip.

[0104] In an optional embodiment,

[0105] The number of iterations is set according to the preset security strength, and the final dynamic salt value is obtained by performing multiple rounds of iterative transformation on the initial dynamic salt value through a preset substitution function, including:

[0106] The number of iteration rounds is set according to the preset security strength. The substitution function includes two components: a substitution box and a substitution box. The substitution box increases the degree of salt value confusion through nonlinear table lookup operation, and the substitution box increases the randomness of the salt value through bit rearrangement and diffusion.

[0107] The initial dynamic salt value is divided into a number of sub-blocks of the same length, each sub-block is nonlinearly transformed by the substitution box, the sub-blocks after the nonlinear transformation are spliced ​​into a complete salt value again, and the sub-blocks are rearranged at the bit level by the substitution box, and the substitution box uses a substitution matrix to realize bit diffusion;

[0108] The replaced initial dynamic salt value is iterated for multiple rounds according to the number of iterations set according to the preset security strength, and the substitution box transformation and the replacement box rearrangement operations are repeatedly performed until the number of iterations is reached to obtain the final dynamic salt value.

[0109] For example, in order to enhance the randomness and unpredictability of the fingerprint summary, this paper introduces a dynamic salt value mechanism. In the process of generating the dynamic salt value, the initial dynamic salt value is transformed multiple times through an iterative permutation function to obtain the final dynamic salt value.

[0110] According to the preset security strength requirements, set the number of iterations in the dynamic salt value generation process. The selection of the number of iterations requires a balance between security and computational efficiency. A higher number of iterations provides stronger security, but at the same time increases computational overhead.

[0111] The permutation function is the core component in the dynamic salt generation process. Its purpose is to enhance the confusion and diffusion properties of the salt value and improve the randomness and unpredictability of the salt value. The permutation function designed in this paper contains two main components: Substitution Box (S-Box) and Permutation Box (P-Box).

[0112] The substitution box increases the obfuscation of the salt value through nonlinear table lookup operations. This paper adopts the S-Box used in the AES encryption algorithm, which is defined on a finite field and can map 8-bit input to 8-bit output. The design of the S-Box is based on the multiplication inverse operation and affine transformation on a finite field. It has good nonlinear properties and differential uniformity, and can effectively resist differential attacks and linear attacks.

[0113] The permutation box improves the randomness of the salt value by bit rearrangement and diffusion operations. The P-Box designed in this paper uses a permutation matrix to achieve bit-level diffusion. The permutation matrix defines the mapping relationship between input bits and output bits, and achieves the diffusion effect by rearranging the positions of bits.

[0114] The permutation matrix of the present application is reversible and has good diffusivity, that is, the change of each bit of the input should affect as many bits of the output as possible. High diffusivity can increase the randomness of the salt value and improve the ability to resist statistical analysis.

[0115] The algorithm for generating the permutation matrix is ​​as follows:

[0116] Initialize a unit matrix; randomly select multiple positions to permute the rows and columns of the permutation matrix, disrupt the order of rows and columns of the matrix, and increase the diffusion effect. Row and column permutations can be achieved by generating random permutation sequences. Output the generated permutation matrix. The permutation matrix generation process ensures the reversibility and randomness of the matrix, and reduces the computational complexity through the design of sparse matrices.

[0117] After multiple rounds of S-Box transformation and P-Box replacement, the initial dynamic salt value is fully obfuscated and diffused, generating a final dynamic salt value with high randomness and unpredictability. The number of iterative transformation rounds is set according to the security strength requirements. A higher number of iterative rounds can provide stronger security, but it will also increase the computational overhead.

[0118] The dynamic salt value generation method designed in the present application performs multiple rounds of transformations on the initial dynamic salt value through iterative permutation functions, which significantly enhances the randomness and unpredictability of the salt value and improves the ability to resist cryptographic attacks.

[0119] The introduction of S-Box increases the nonlinearity of the salt value, making the statistical characteristics of the salt value close to random distribution, which is difficult to be exploited by statistical analysis attacks. AES S-Box has good differential uniformity and nonlinear properties, which can effectively resist differential attacks and linear attacks.

[0120] P-Box achieves bit-level diffusion through permutation matrix, ensuring that changes in input bits can affect multiple bits of output, increasing the randomness of salt value. The random generation and row and column permutation of permutation matrix further enhances the diffusion effect and improves the ability to resist statistical analysis.

[0121] The multiple rounds of iterative transformation provide sufficient obfuscation and diffusion, so that each bit of the salt value undergoes multiple nonlinear transformations and permutation operations, eliminating the correlation between input and output. It is difficult for attackers to infer changes in input by observing changes in output, increasing the unpredictability of the salt value.

[0122] In addition, the dynamic salt value generation process introduces a timestamp and chip identification code to ensure that each generated salt value is unique, effectively preventing replay attacks. Even if an attacker obtains the salt value used in a certain communication, it cannot be reused in subsequent communications, protecting the security of the communication.

[0123] In an optional embodiment,

[0124] Using the fingerprint summary as the initial seed, generating the private key and public key corresponding to the fingerprint summary by combining a deterministic random number generation algorithm with an elliptic curve cryptography algorithm includes:

[0125] According to the initial seed, the internal state initial value corresponding to the initial seed is determined by the kernel function of the deterministic random number generation algorithm, the internal state initial value is iteratively updated based on the kernel function until a preset number of iterations is reached, a pseudo-random number sequence is generated, and the pseudo-random number sequence is mixed with the physical fingerprint information to obtain a mixed random number sequence, and the mixed random number sequence is used as a private key, wherein the kernel function includes a hash function;

[0126] Constructing a multi-layer hash tree according to the sequence length of the mixed random number sequence, splitting the multi-layer hash tree into multiple hash subtrees based on the order of the elliptic curve cryptographic algorithm, calculating hash results of the multiple hash subtrees in parallel according to the private key, and aggregating the multiple hash results as an entropy source;

[0127] The public key corresponding to the fingerprint summary is determined according to the entropy source, the base point of the elliptic curve cryptographic algorithm, and the post-quantum secure digital signature algorithm.

[0128] For example, the fingerprint summary-based key generation scheme uses the fingerprint summary as the initial seed, combines the deterministic random number generation algorithm and the elliptic curve cryptography algorithm, and generates the private key and public key corresponding to the fingerprint summary. This scheme uses the uniqueness and unpredictability of the fingerprint summary to ensure that the generated key has a high degree of randomness and security, and introduces the post-quantum secure digital signature algorithm to provide the ability to resist quantum computing attacks.

[0129] The process of generating a private key includes the following steps:

[0130] Based on the fingerprint summary as the initial seed $seed$, the kernel function F of the deterministic random bit generator (DRBG) is used to determine the initial value s0 of the internal state corresponding to the initial seed. The kernel function F can select a secure hash function such as SHA-256 or SHA-3. The calculation formula for the initial value of the internal state is:

[0131] s0=F(seed);

[0132] Iteratively update the internal state s based on the kernel function F j , until the preset number of iterations J is reached, a pseudo-random number sequence R is generated. The update formula for each iteration is:

[0133] s j+1 =F(s j );

[0134] R=s1||s2||...||s J ;

[0135] Among them, || represents the concatenation operation of bit strings.

[0136] The pseudo-random number sequence R is mixed with the physical fingerprint information P to obtain a mixed random number sequence HK as the private key. The mixing operation can be performed using an exclusive OR (XOR) operation; introducing physical fingerprint information for mixing can further enhance the randomness and uniqueness of the private key. Physical fingerprint information can be collected through a fingerprint sensor, such as ridge direction, ridge frequency, etc.

[0137] The public key generation process is based on Elliptic Curve Cryptography (ECC) and Post-Quantum Secure Digital Signature Algorithm (PQ-DSA), and includes the following steps:

[0138] According to the sequence length l of the mixed random number sequence HK, a multi-layer hash tree is constructed. HK is divided into several subsequences of length m. Each subsequence corresponds to a leaf node of the hash tree, and the hash value of the parent node is recursively calculated until a complete hash tree is constructed. According to the order of the elliptic curve used by the elliptic curve cryptography algorithm, the multi-layer hash tree is split into multiple hash subtrees. The number of leaf nodes of each hash subtree does not exceed the order of the elliptic curve. The root node hash value of each hash subtree is calculated in parallel according to the private key to obtain multiple hash results. Parallel computing can use multi-core processors or distributed computing environments to improve computing efficiency.

[0139] Aggregate multiple hash results to obtain an entropy source. The aggregation operation can use an XOR operation or a splicing operation. The entropy source has good randomness and unpredictability, providing a reliable random number input for subsequent public key generation.

[0140] According to the entropy source, the base point of the elliptic curve cryptography algorithm and the post-quantum secure digital signature algorithm, the public key corresponding to the fingerprint summary is generated.

[0141] First, the entropy source is used as a random number input to generate a random number through a post-quantum secure digital signature algorithm. Common post-quantum secure digital signature algorithms include CRYSTALS-Dilithium, FALCON, etc. Then, based on the elliptic curve cryptography algorithm, the public key pk is calculated:

[0142] pk=z·G;

[0143] Among them, z means taking the entropy source as a random number input and generating a random number through the post-quantum secure digital signature algorithm, and G represents the base point. The public key is a point on the elliptic curve and forms a key pair with the private key.

[0144] Through the above steps, the private key generation process uses a deterministic random number generation algorithm and physical fingerprint information to ensure the randomness and uniqueness of the private key. The public key generation process introduces a multi-layer hash tree and a post-quantum secure digital signature algorithm to provide the ability to resist quantum computing attacks. The generated key pair can be used in various cryptographic applications, such as digital signatures, key exchange, etc., to protect the security and privacy of the fingerprint recognition system.

[0145] The fingerprint summary-based key generation scheme proposed in this application makes full use of the uniqueness and unpredictability of the fingerprint summary, and combines the deterministic random number generation algorithm and the elliptic curve cryptography algorithm to generate a highly secure and random key pair. During the private key generation process, a pseudo-random number sequence is generated by a deterministic random number generation algorithm and mixed with the physical fingerprint information, which effectively enhances the randomness and uniqueness of the private key. The kernel function of the deterministic random number generation algorithm uses a secure hash function, such as SHA-256 or SHA-3, which has good randomness and collision resistance. The introduction of physical fingerprint information further increases the unpredictability of the private key. Even if the attacker obtains the same fingerprint summary, it is difficult to infer the same private key.

[0146] In the process of public key generation, multi-layer hash trees and parallel computing are used to efficiently generate random numbers with high entropy. The construction and splitting of multi-layer hash trees ensure the computational independence of each hash subtree and improve the efficiency of parallel computing. The use of hash trees also increases the unpredictability of the entropy source, making it difficult for attackers to infer the complete entropy source through partial hash results. The introduction of post-quantum secure digital signature algorithms to generate random numbers provides the ability to resist quantum computing attacks. Post-quantum secure digital signature algorithms, such as CRYSTALS-Dilithium and FALCON, are based on lattice problems and multivariate polynomial problems and have good resistance to quantum computing attacks. Even after quantum computers are realized, these algorithms can still provide sufficient security to protect the confidentiality of keys.

[0147] The use of elliptic curve cryptography further enhances the security of the key pair. The elliptic curve cryptography algorithm is based on the elliptic curve discrete logarithm problem (ECDLP) and has a shorter key length and higher security strength. It is difficult for an attacker to calculate the private key from the public key without knowing the private key, which ensures the confidentiality of the key pair.

[0148] In an optional embodiment,

[0149] Determining the public key corresponding to the fingerprint digest according to the entropy source, the base point of the elliptic curve cryptography algorithm, and the post-quantum secure digital signature algorithm includes:

[0150] Inputting the entropy source into a scalar multiplication operation of the elliptic curve cryptographic algorithm, and combining the base point of the elliptic curve cryptographic algorithm to generate a first public key;

[0151] Concatenate the fingerprint digest with the first public key as the key input of the post - quantum secure digital signature algorithm. Using number - theoretic transform technology, convert the polynomial multiplication of the key input into point - value multiplication, introduce a batch signature verification mechanism, pack multiple messages to be signed into a batch, and generate a second public key.

[0152] Concatenate the first public key and the second public key to obtain the public key corresponding to the fingerprint digest.

[0153] Exemplarily, take the entropy source as the input, combine it with the base point of the elliptic curve cryptography algorithm, and generate the first public key through scalar multiplication operations on the elliptic curve.

[0154] Specifically, let the elliptic curve used in the elliptic curve cryptography algorithm be E, its base point be G, and the order be q. Consider the entropy source e as a scalar on the elliptic curve, satisfying 0 < e < q. Then, through scalar multiplication operations on the elliptic curve, calculate the first public key, and its calculation process can be expressed as multiplying the base point by the scalar. The first public key is a point on the elliptic curve. The scalar multiplication operation on the elliptic curve has good one - wayness and intractability, that is, given the first public key and the base point, it is difficult for an attacker to calculate the scalar, ensuring the security of the first public key.

[0155] Concatenate the fingerprint digest with the first public key as the key input of the post - quantum secure digital signature algorithm, and use number - theoretic transform technology and batch signature verification mechanism to generate the second public key.

[0156] First, concatenate the fingerprint digest with the first public key to obtain the key input k of the post - quantum secure digital signature algorithm pq , and its concatenation process can be expressed as sequentially connecting the bit strings of the fingerprint digest and the first public key. The concatenated key input combines the uniqueness of the fingerprint digest and the randomness of the first public key, enhancing the security of the key.

[0157] Then, use number - theoretic transform technology to convert the polynomial multiplication operation of the key input into a point - value multiplication operation. Number - theoretic transform technologies, such as the Fast Fourier Transform (FFT) or the Number - Theoretic Transform (NTT), can convert polynomial multiplication operations into point - value multiplication operations, reducing the computational complexity. Through number - theoretic transform technology, the polynomial multiplication operation of the key input can be efficiently completed.

[0158] Next, introduce a batch signature verification mechanism, pack multiple messages to be signed into a batch, and improve the signature and verification efficiency. The batch signature verification mechanism allows signing and verification of multiple messages simultaneously, reducing the signature and verification overhead for individual messages. Through batch processing, the performance of the post - quantum secure digital signature algorithm can be significantly improved.

[0159] Finally, a second public key is generated through a post-quantum secure digital signature algorithm. Post-quantum secure digital signature algorithms, such as CRYSTALS-Dilithium or FALCON, are based on difficult mathematical problems, such as lattice problems or multivariate polynomial problems, and have the ability to resist quantum computing attacks. The generated second public key forms a key pair with the key input for subsequent digital signature and verification processes. The first public key and the second public key are concatenated to obtain the final public key corresponding to the fingerprint summary.

[0160] Through the above steps, the public key corresponding to the fingerprint summary is generated. The public key generation process uses the scalar multiplication operation of the elliptic curve cryptography algorithm to generate the first public key, ensuring the randomness and security of the public key. Then, by splicing the fingerprint summary with the first public key, combining number theory transformation technology and batch signature verification mechanism, the second public key is generated, providing the ability to resist quantum computing attacks. Finally, the first public key and the second public key are spliced ​​to obtain the public key corresponding to the fingerprint summary, which has the security of both traditional cryptography and post-quantum cryptography.

[0161] The generation process of the first public key of the present application utilizes the scalar multiplication operation of the elliptic curve cryptographic algorithm. The elliptic curve cryptographic algorithm is based on the elliptic curve discrete logarithm problem (ECDLP) and has a shorter key length and higher security strength. It is difficult for an attacker to calculate the private key through the public key without knowing the private key (i.e., the entropy source), thereby ensuring the confidentiality of the first public key. The scalar multiplication operation on the elliptic curve also has good unidirectionality, i.e., it is difficult to calculate the private key if the public key and the base point are known, thereby further enhancing the security of the first public key.

[0162] Secondly, the generation process of the second public key introduces a post-quantum secure digital signature algorithm, which provides the ability to resist quantum computing attacks. Post-quantum secure digital signature algorithms, such as CRYSTALS-Dilithium and FALCON, are based on lattice problems and multivariate polynomial problems and have good resistance to quantum computing attacks. Even after the realization of quantum computers, these algorithms can still provide sufficient security to protect the confidentiality of the second public key. By concatenating the fingerprint summary with the first public key as the key input of the post-quantum secure digital signature algorithm, the security and uniqueness of the second public key are further enhanced.

[0163] In addition, the introduction of number theory transformation technology transforms polynomial multiplication into point value multiplication, improving the computational efficiency of the post-quantum secure digital signature algorithm. The adoption of batch signature verification mechanism allows multiple messages to be signed and verified at the same time, significantly improving the performance of signature and verification. These optimization measures improve the efficiency of public key generation and use while ensuring security.

[0164] Finally, the final public key is obtained by concatenating the first public key and the second public key. The concatenated public key inherits the security of the elliptic curve cryptography algorithm and the post-quantum secure digital signature algorithm, and has the protection capabilities of both traditional cryptography and post-quantum cryptography. Even after the realization of quantum computers, the public key can still resist quantum computing attacks and maintain the confidentiality and integrity of the key.

[0165] In an optional embodiment,

[0166] The authentication server verifies the communication request, and after the verification is passed, generates a session key corresponding to the communication request through an asymmetric encryption algorithm based on a secure communication link, and transmits the session key to the microchip and the target device, including:

[0167] The authentication server verifies the communication request using an identity-based cryptographic protocol, verifies the digital signature in the communication request using public parameters in the identity-based cryptographic protocol and a server master key, and determines whether the communication request comes from a legitimate microchip. If so, the communication request verification is successful;

[0168] The authentication server generates a temporary key pair by using an elliptic curve cryptographic algorithm, determines elliptic curve parameters corresponding to the elliptic curve cryptographic algorithm, and synchronizes the temporary key pair and the elliptic curve parameters to the microchip and the target device based on a secure communication link;

[0169] The microchip and the target device respectively use their own device identifications and the public key in the temporary key pair to perform scalar multiplication operations to obtain their respective shared keys;

[0170] By using a secure hash algorithm as an encryption algorithm with an underlying hash function and taking the shared keys of the microchip and the target device as input, a session key corresponding to the communication request is generated, and the session key is transmitted to the microchip and the target device.

[0171] Exemplarily, before the microchip establishes a secure communication link with the target device, an authentication server is required to verify the communication request and generate a corresponding session key.

[0172] The authentication server uses the Identity-Based Cryptography (IBC) protocol to verify the communication request. The IBC protocol uses the entity's identity information as the public key, simplifying the certificate management problem in the traditional Public Key Infrastructure (PKI).

[0173] In the IBC protocol, the authentication server acts as a private key generator (PKG) and is responsible for generating the system's public parameters and server master key. The public parameters include elliptic curve parameters, base points, and related hash functions, which are used to generate the entity's public key and private key. The server master key is kept secret by the authentication server and is used to generate the entity's private key.

[0174] When initiating a communication request, the microchip uses its own device identification as identity information and generates a digital signature through the IBC protocol. After receiving the communication request, the authentication server uses the public parameters and the server master key to verify the validity of the digital signature. Specifically, the authentication server first uses the device identification of the microchip as input and generates the public key of the microchip through the public parameters. Then, the generated public key is used to verify the digital signature in the communication request. If the digital signature verification is successful, it means that the communication request comes from a legitimate microchip and the communication request verification is successful; otherwise, the authentication server rejects the communication request.

[0175] The use of the IBC protocol simplifies the key management of microchips, eliminating the need to allocate and manage separate certificates for each microchip, and improving the scalability of the system. At the same time, the security of the IBC protocol is based on the elliptic curve discrete logarithm problem, has a high anti-attack capability, and ensures the security of the communication request verification process.

[0176] After the communication request is verified, the authentication server uses the Elliptic Curve Cryptography (ECC) algorithm to generate a temporary key pair for subsequent session key generation. The ECC algorithm is based on the discrete logarithm problem on the elliptic curve and has a shorter key length and higher security strength.

[0177] The authentication server first selects an appropriate elliptic curve, such as the P-256 curve recommended by NIST, and determines the parameters of the elliptic curve, including the elliptic curve equation, base point, order, etc. Then, the authentication server generates a random number as a private key and calculates the corresponding public key through scalar multiplication on the elliptic curve. The generated private key and public key constitute a temporary key pair.

[0178] In order to ensure that the microchip and the target device can correctly calculate the shared key, the authentication server needs to synchronize the generated temporary key pair and elliptic curve parameters to the microchip and the target device. Through a secure communication link, the authentication server sends the temporary public key, elliptic curve equation, base point and other parameters to the microchip and the target device respectively to ensure that they obtain the same set of parameters. This process needs to ensure the integrity and confidentiality of the parameters to prevent man-in-the-middle attacks and parameter tampering.

[0179] After obtaining the temporary key pair and elliptic curve parameters, the microchip and the target device calculate their own shared keys respectively. The calculation process of the shared key is based on the Diffie-Hellman key exchange protocol on the elliptic curve.

[0180] The microchip uses its own device identification to perform a scalar multiplication with the temporary public key to obtain the shared key of the microchip.

[0181] Similarly, the target device uses its own device identification and the temporary public key to perform scalar multiplication to obtain the target device's shared key. Since the scalar multiplication operation on the elliptic curve satisfies the commutative law, the shared keys calculated by the microchip and the target device are the same. The consistency of the shared key provides the basis for the subsequent generation of the session key.

[0182] After the microchip and the target device calculate a shared key, the authentication server generates a session key using an encryption algorithm and distributes the session key to the microchip and the target device.

[0183] The authentication server selects a secure symmetric encryption algorithm, such as the AES algorithm, as the algorithm for generating the session key. To enhance the security of the session key, the authentication server uses an encryption algorithm that uses a secure hash algorithm (such as SHA-256) as the underlying hash function, such as the HMAC-SHA256 algorithm.

[0184] The authentication server takes the shared secret of the microchip and the target device as input and calculates the session key using the HMAC-SHA256 algorithm.

[0185] After the session key is generated, the authentication server sends the session key to the microchip and the target device through a secure communication link. During the transmission process, the confidentiality and integrity of the session key need to be ensured to prevent the session key from being stolen or tampered with. A secure transmission protocol, such as SSL / TLS protocol, can be used to encrypt and integrity protect the session key to ensure that the session key reaches the microchip and the target device safely.

[0186] At this point, the authentication server has completed the verification of the communication request, the generation and synchronization of the temporary key pair, the generation and transmission of the session key, etc. The microchip and the target device have obtained the same session key, which can be used to encrypt and authenticate subsequent communication data to ensure the confidentiality and integrity of the communication.

[0187] First, the IBC protocol is used to verify the communication request, ensuring that only legitimate microchips can initiate communication requests. The IBC protocol is based on the elliptic curve discrete logarithm problem and has a high anti-attack capability, preventing the forgery and tampering of communication requests.

[0188] Secondly, the ECC algorithm is used to generate a temporary key pair, which ensures the randomness and security of the key pair. The ECC algorithm is based on the elliptic curve discrete logarithm problem, has a shorter key length and higher security strength, and can effectively resist attacks from classical computers. The temporary key pair and elliptic curve parameters are synchronized through a secure communication link to ensure that the microchip and the target device use the same set of parameters, preventing parameter tampering and man-in-the-middle attacks.

[0189] Thirdly, the microchip and the target device calculate the shared key through the Diffie-Hellman key exchange protocol on the elliptic curve, which ensures the consistency and confidentiality of the shared key. The calculation process of the shared key depends on the device identification and temporary public key. It is difficult for an attacker to calculate the shared key without knowing the device identification and temporary private key, which ensures the security of the shared key.

[0190] Finally, the encryption algorithm with the secure hash algorithm as the underlying hash function is used to generate the session key, which enhances the randomness and security of the session key. The secure hash algorithm has the characteristics of one-way and collision resistance, which ensures the unpredictability and uniqueness of the session key. The session key is transmitted through a secure communication link to prevent the theft and tampering of the session key.

[0191] In an optional embodiment,

[0192] The method of generating a session key corresponding to the communication request by using a cryptographic algorithm with a secure hash algorithm as an underlying hash function and taking a shared key of the microchip and the target device as input comprises:

[0193] The microchip and the target device negotiate a shared key according to the Diffie-Hellman key exchange protocol, and generate a session key corresponding to the communication request through a key derivation function based on the shared key and metadata in the communication request;

[0194] The key derivation function is an encryption algorithm using a secure hash algorithm as an underlying hash function. When encrypting data, it includes an extraction phase and an expansion phase. The extraction phase uses a secure hash algorithm to generate an intermediate extraction key based on the shared key and a randomly introduced random salt value; in the expansion phase, a session key of a target length corresponding to the communication request is calculated using a secure hash algorithm based on the intermediate extraction key and metadata in the communication request; wherein the metadata in the communication request includes at least one of a request sequence number, a timestamp, and a random challenge value.

[0195] Exemplarily, after the microchip and the target device obtain a shared key, a session key corresponding to the communication request needs to be generated through a key derivation function (KDF) based on the shared key and metadata in the communication request. The session key is used to protect the confidentiality and integrity of subsequent communications, and each communication request corresponds to a unique session key.

[0196] This application adopts an encryption algorithm with a secure hash algorithm as the underlying hash function to implement a key derivation function. The key derivation function includes an extraction phase and an expansion phase, which are used to generate an intermediate extraction key and a session key of a target length, respectively.

[0197] The microchip and the target device negotiate a shared key through the Diffie-Hellman (DH) key exchange protocol, which allows two parties to establish a shared key over an insecure communication channel without sharing any secret information in advance.

[0198] Suppose the microchip and the target device select private keys a and b respectively, and calculate their respective public keys A=g a mod p and B = g b mod p, where g is the generator of the DH group and p is a large prime number. After both parties exchange public keys, they calculate the shared key K = B a modp=A b modp.

[0199] In order to improve the security of the DH key exchange protocol, the Elliptic Curve Diffie-Hellman (ECDH) key exchange protocol can be used. The ECDH protocol is based on the elliptic curve discrete logarithm problem and has a shorter key length and higher security strength.

[0200] The extraction phase of the key derivation function uses a secure hash algorithm to generate an intermediate extraction key based on the shared key and a randomly introduced salt value. The purpose of the extraction phase is to convert the shared key into a pseudo-random value of a fixed length as input for the subsequent expansion phase.

[0201] Let the shared key be SK, the random salt value be Salt, the secure hash algorithm be Hash, and the intermediate extraction key be PRK. The calculation process of the extraction phase is as follows:

[0202] PRK = Hash(Salt||SK);

[0203] When selecting a random salt value, you should ensure that the salt value has sufficient randomness and length to enhance the security of the intermediate key extraction. You can use a secure random number generator, such as a random number generator based on a physical noise source or a cryptographically secure pseudo-random number generator (CSPRNG) to generate the salt value.

[0204] The expansion phase of the key derivation function calculates the session key of the target length through a secure hash algorithm based on the intermediate extraction key and the metadata in the communication request. The purpose of the expansion phase is to expand the intermediate extraction key into a session key of the required length and bind the metadata of the communication request to the session key to ensure the uniqueness of the session key.

[0205] Assume that the intermediate extraction key is PRK, the metadata in the communication request is Info, the target key length is L, the secure hash algorithm is Hash, and the session key is CSK. The calculation process of the expansion phase is as follows:

[0206] Initialize variable T_0 to an empty string and variable v to 1.

[0207] 2. Calculate T v =Hash(T v-1 ||Info||v), where v is the number of iterations of the expansion phase.

[0208] 3. T v Append to T0, that is, T0 = T0||T v .

[0209] 4. If the length of T0 is less than L, add 1 to v and return to step 2; otherwise, use the first L bytes of T0 as the session key CSK.

[0210] The metadata Info in the communication request can include information such as the request sequence number, timestamp, and random challenge value, which are used to identify and distinguish different communication requests. During the calculation process, the metadata is used together with the intermediate extraction key and the number of iterations as the input of the secure hash algorithm to ensure that the session key uniquely corresponds to the communication request and prevent replay attacks and key reuse.

[0211] The session key is generated by a cryptographic algorithm that uses the Secure Hash Algorithm as the underlying hash function, which has the following security advantages:

[0212] The security of the session key depends on the security of the shared key. Since the shared key is negotiated through the DH or ECDH key exchange protocol, it is difficult for an attacker to calculate the shared key without knowing the private key, thus ensuring the confidentiality of the session key. The introduction of a random salt value in the extraction phase enhances the randomness and unpredictability of the intermediate extraction key. Even if an attacker obtains multiple intermediate extraction keys, it is difficult to infer the shared key or other intermediate extraction keys, thus providing forward security.

[0213] The metadata of the communication request is bound to the calculation process of the session key during the extension phase, ensuring the unique correspondence between the session key and the communication request. Attackers cannot replay old communication requests or forge new communication requests, thus preventing replay attacks and key reuse. The secure hash algorithm has the characteristics of one-way, collision resistance, and pseudo-randomness, ensuring the irreversibility and randomness of the session key. Attackers cannot derive intermediate extraction keys or shared keys from the session key, nor can they forge or tamper with the session key.

[0214] Figure 2 FIG. 1 is a schematic diagram of the structure of a secure communication protocol system based on microchip fingerprint technology according to an embodiment of the present invention. Figure 2 As shown, the system comprises:

[0215] A first unit is used to extract physical fingerprint information of the microchip using a physical uncloned function circuit, and randomly hash the physical fingerprint information to generate a fingerprint summary, wherein the physical fingerprint information includes physical characteristic parameters of texture features, transistor threshold voltage, and interconnect layer capacitance generated during the microchip manufacturing process;

[0216] The second unit is used to use the fingerprint summary as an initial seed, generate a private key and a public key corresponding to the fingerprint summary by combining a deterministic random number generation algorithm with an elliptic curve cryptographic algorithm, and the private key is bound to the physical fingerprint information; send the public key and the ID of the microchip to the authentication server through a secure channel for registration, and the authentication server establishes a mapping relationship between the public key and the ID of the microchip, and stores the mapping relationship in a secure database;

[0217] The third unit is used for, when the microchip receives a communication request, to digitally sign the communication request using the fingerprint summary as a part of the private key, and to send the digitally signed communication request to the authentication server through a secure channel; the authentication server verifies the communication request, and after the verification is passed, generates a session key corresponding to the communication request based on a secure communication link through an asymmetric encryption algorithm, and transmits the session key to the microchip and the target device.

[0218] According to a third aspect of the embodiments of the present invention,

[0219] An electronic device is provided, comprising:

[0220] processor;

[0221] a memory for storing processor-executable instructions;

[0222] The processor is configured to call the instructions stored in the memory to execute the aforementioned method.

[0223] A fourth aspect of the embodiments of the present invention is:

[0224] A computer-readable storage medium is provided, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the aforementioned method is implemented.

[0225] The present invention may be a method, an apparatus, a system and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for executing various aspects of the present invention.

[0226] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or replace some or all of the technical features therein with equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. A secure communication protocol method based on microchip fingerprint technology, characterized in that: include: Extracting physical fingerprint information of the microchip using a physical uncloned function circuit, performing random hashing on the physical fingerprint information to generate a fingerprint summary, wherein the physical fingerprint information includes physical characteristic parameters of texture features, transistor threshold voltage, and interconnect layer capacitance generated during the microchip manufacturing process; The fingerprint summary is used as an initial seed, and a private key and a public key corresponding to the fingerprint summary are generated by a deterministic random number generation algorithm combined with an elliptic curve cryptography algorithm, wherein the private key is bound to the physical fingerprint information; the public key and the ID of the microchip are sent to an authentication server through a secure channel for registration, and the authentication server establishes a mapping relationship between the public key and the ID of the microchip, and stores the mapping relationship in a secure database; When the microchip receives a communication request, it uses the fingerprint summary as part of the private key to digitally sign the communication request, and sends the digitally signed communication request to the authentication server through a secure channel; The authentication server verifies the communication request, and after the verification is passed, generates a session key corresponding to the communication request through an asymmetric encryption algorithm based on a secure communication link, and transmits the session key to the microchip and the target device, including: The authentication server verifies the communication request using an identity-based cryptographic protocol, verifies the digital signature in the communication request using public parameters in the identity-based cryptographic protocol and a server master key, and determines whether the communication request comes from a legitimate microchip. If so, the communication request verification is successful; The authentication server generates a temporary key pair by using an elliptic curve cryptographic algorithm, determines elliptic curve parameters corresponding to the elliptic curve cryptographic algorithm, and synchronizes the temporary key pair and the elliptic curve parameters to the microchip and the target device based on a secure communication link; The microchip and the target device respectively use their own device identifications and the public key in the temporary key pair to perform scalar multiplication operations to obtain their respective shared keys; generating a session key corresponding to the communication request by using a cryptographic algorithm with a secure hash algorithm as an underlying hash function and taking a shared key of each of the microchip and the target device as input, and transmitting the session key to the microchip and the target device; Generating a session key corresponding to the communication request by using a cryptographic algorithm with a secure hash algorithm as an underlying hash function and taking the shared keys of the microchip and the target device as inputs includes: The microchip and the target device negotiate a shared key according to the Diffie-Hellman key exchange protocol, and generate a session key corresponding to the communication request through a key derivation function based on the shared key and metadata in the communication request; The key derivation function is an encryption algorithm using a secure hash algorithm as an underlying hash function. When encrypting data, it includes an extraction phase and an expansion phase. The extraction phase uses a secure hash algorithm to generate an intermediate extraction key based on the shared key and a randomly introduced random salt value; in the expansion phase, a session key of a target length corresponding to the communication request is calculated using a secure hash algorithm based on the intermediate extraction key and metadata in the communication request; wherein the metadata in the communication request includes at least one of a request sequence number, a timestamp, and a random challenge value.

2. The method according to claim 1, characterized in that: The physical fingerprint information of the microchip is extracted by using a physical uncloned function circuit, and the physical fingerprint information is randomly hashed to generate a fingerprint summary including: Obtaining a current timestamp of the physical uncloned function circuit, and converting the current timestamp into an unsigned integer of a first preset number of bits; extracting a unique identification code of the microchip, and converting the unique identification code into an unsigned integer of a second preset number of bits; Performing a bitwise XOR operation on the unsigned integer of the first preset number of bits and the unsigned integer of the second preset number of bits to generate an initial dynamic salt value; The number of iterations is set according to a preset security strength, and the initial dynamic salt value is iteratively transformed for multiple rounds through a preset substitution function to obtain a final dynamic salt value; the physical fingerprint information is extracted using the physical uncloned function circuit, and the physical fingerprint information is spliced ​​with the final dynamic salt value to obtain a splicing result; The sponge structure is used to absorb and squeeze the splicing result, wherein the absorption process converts the splicing result into a bit sequence, and the bit sequence is processed in blocks. When the length of the block bit sequence is lower than a preset length threshold, the block is filled using a preset filling rule; the squeezing process randomly hashes the result of the bit sequence block processing to generate a fingerprint summary.

3. The method according to claim 2, characterized in that The number of iterations is set according to the preset security strength, and the final dynamic salt value is obtained by performing multiple rounds of iterative transformation on the initial dynamic salt value through a preset substitution function, including: The number of iteration rounds is set according to the preset security strength. The substitution function includes two components: a substitution box and a substitution box. The substitution box increases the degree of salt value confusion through nonlinear table lookup operation, and the substitution box increases the randomness of the salt value through bit rearrangement and diffusion. The initial dynamic salt value is divided into a number of sub-blocks of the same length, each sub-block is nonlinearly transformed by the substitution box, the sub-blocks after the nonlinear transformation are spliced ​​into a complete salt value again, and the sub-blocks are rearranged at the bit level by the substitution box, and the substitution box uses a substitution matrix to realize bit diffusion; The replaced initial dynamic salt value is iterated for multiple rounds according to the number of iterations set according to the preset security strength, and the substitution box transformation and the replacement box rearrangement operations are repeatedly performed until the number of iterations is reached to obtain the final dynamic salt value.

4. The method according to claim 1, characterized in that: Using the fingerprint summary as the initial seed, generating the private key and public key corresponding to the fingerprint summary by combining a deterministic random number generation algorithm with an elliptic curve cryptography algorithm includes: According to the initial seed, the internal state initial value corresponding to the initial seed is determined by the kernel function of the deterministic random number generation algorithm, the internal state initial value is iteratively updated based on the kernel function until a preset number of iterations is reached, a pseudo-random number sequence is generated, and the pseudo-random number sequence is mixed with the physical fingerprint information to obtain a mixed random number sequence, and the mixed random number sequence is used as a private key, wherein the kernel function includes a hash function; Constructing a multi-layer hash tree according to the sequence length of the mixed random number sequence, splitting the multi-layer hash tree into multiple hash subtrees based on the order of the elliptic curve cryptographic algorithm, calculating hash results of the multiple hash subtrees in parallel according to the private key, and aggregating the multiple hash results as an entropy source; The public key corresponding to the fingerprint summary is determined according to the entropy source, the base point of the elliptic curve cryptographic algorithm, and the post-quantum secure digital signature algorithm.

5. The method according to claim 4, characterized in that Determining the public key corresponding to the fingerprint digest according to the entropy source, the base point of the elliptic curve cryptography algorithm, and the post-quantum secure digital signature algorithm includes: Inputting the entropy source into a scalar multiplication operation of the elliptic curve cryptographic algorithm, and combining the base point of the elliptic curve cryptographic algorithm to generate a first public key; The fingerprint summary is concatenated with the first public key as the key input of the post-quantum secure digital signature algorithm, the polynomial multiplication of the key input is converted into point value multiplication by using number theory transformation technology, a batch signature verification mechanism is introduced, multiple messages to be signed are packaged into a batch, and a second public key is generated; The first public key and the second public key are concatenated to obtain a public key corresponding to the fingerprint summary.

6. A secure communication protocol system based on microchip fingerprint technology, used to implement the method described in any one of claims 1 to 5, characterized in that: include: A first unit is used to extract physical fingerprint information of the microchip using a physical uncloned function circuit, and randomly hash the physical fingerprint information to generate a fingerprint summary, wherein the physical fingerprint information includes physical characteristic parameters of texture features, transistor threshold voltage, and interconnect layer capacitance generated during the microchip manufacturing process; The second unit is used to use the fingerprint summary as an initial seed, generate a private key and a public key corresponding to the fingerprint summary by combining a deterministic random number generation algorithm with an elliptic curve cryptographic algorithm, and the private key is bound to the physical fingerprint information; send the public key and the ID of the microchip to the authentication server through a secure channel for registration, and the authentication server establishes a mapping relationship between the public key and the ID of the microchip, and stores the mapping relationship in a secure database; A third unit is used for, when the microchip receives a communication request, to digitally sign the communication request using the fingerprint summary as a part of a private key, and to send the digitally signed communication request to the authentication server through a secure channel; The authentication server verifies the communication request, and after the verification is passed, generates a session key corresponding to the communication request based on a secure communication link through an asymmetric encryption algorithm, and transmits the session key to the microchip and the target device.

7. An electronic device, characterized in that: include: processor; a memory for storing processor-executable instructions; The processor is configured to call the instructions stored in the memory to execute the method described in any one of claims 1 to 5.

8. A computer-readable storage medium having computer program instructions stored thereon, characterized in that: When the computer program instructions are executed by a processor, the method according to any one of claims 1 to 5 is implemented.

Citation Information

Patent Citations

  • In-memory signing of messages with personal identifiers

    CN116941220A

  • Method and system for using hash value based on custom salt as hardware fingerprint source

    CN117216745A