System and method for key pair derivation, system and method for group certificate generation, and high-efficiency key derivation module and method
Patent Information
- Application Number
- TW114128765
- Authority / Receiving Office
- TW · TW
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2025-07-29
- Publication Date
- 2026-09-21
- Estimated Expiration
- 2045-07-28
Smart Images

Figure TWG2TB001912342_001 
Figure TWG2TB001912342_002 
Figure TWG2TB001912342_003
Abstract
Claims
1. A key-pair derivative system, comprising: Key-based production module; And a key pair derivation module, coupled to the key pair generation module; wherein, the key pair generation module generates a first random number 𝜉, a first parameter k, a second parameter ℓ, a third parameter d, and a fourth parameter 𝜂, and substitutes the first random number 𝜉, the first parameter k, and the second parameter ℓ into a pseudo-random number generator with a pseudo-random number seed to generate a first pseudo-random number seed 𝜌 for generating a matrix, a second pseudo-random number seed 𝜌' for generating a first polynomial, and a first pseudo-random number 𝐾; The key pair generation module generates a first matrix A, the first matrix A having a dimension of λ × ℓ. Each element of the first matrix A is a first polynomial equation, the first polynomial equation having n first coefficients. The n first coefficients are integers modulo the fifth parameter λ, generated by the first key derivation module based on the first pseudo-random number seed λ used in the generation of the matrix and the matrix index value. The key pair generation module generates a first vector λ1, the first vector λ1 containing ℓ elements. Each element of the first vector λ1 is a second polynomial equation, the second polynomial equation having n second coefficients. The n second coefficients are pseudo-random numbers between [–λ, λ] generated by the second key derivation module based on the second pseudo-random number seed λ' used in the first generation polynomial. The key pair generation module generates a second vector 𝐬2, which contains k elements. Each element of the second vector 𝐬2 is a third polynomial equation with n third coefficients. The n third coefficients are pseudo-random numbers between [-𝜂, 𝜂] generated by the second key derivation module based on the second pseudo-random number seed 𝜌' used in the first generation polynomial. The key pair generation module generates a first original core public key value 𝐭, which is 𝐭 = 𝐀𝐬1 + 𝐬2. The key pair generation module divides each coefficient value of the first original core public key value 𝐭 according to the third parameter d to generate an original core public key value 𝐭1 and an original core private key value 𝐭0. The key generates an initial public key 𝑝𝑘 using the production module. The initial public key 𝑝𝑘 contains at least the first pseudo-random number seed 𝜌 used in the production matrix and the initial core public key value 𝐭1. The key generates an initial public key hash value 𝑡𝑟 using the production module, and then generates an initial private key 𝑠𝑘. The initial private key 𝑠𝑘 contains at least the first pseudo-random number seed 𝜌 used in the production matrix, the first pseudo-random number 𝐾, the initial public key hash value 𝑡𝑟, the first vector 𝐬1, the second vector 𝐬2, and the initial core private key value 𝐭0.The key pair derivative module generates a third pseudo-random number seed 𝜌'' for the second generation polynomial and generates an expanded vector 𝐬2', which contains k elements. Each element of the expanded vector 𝐬2' is a fourth polynomial equation with n fourth coefficients. The n fourth coefficients are pseudo-random numbers between [-𝜂, 𝜂] generated by the key pair derivative module based on the third pseudo-random number seed 𝜌'' for the second generation polynomial. The key pair derivative module generates a first expanded core public key value 𝐭', which is 𝐭' = 𝐀𝐬1 + 𝐬2'. The key pair generates an extended core private key value, 𝐭0', by cutting each coefficient value of the first extended core public key value 𝐭' according to the third parameter d; the key pair generates an extended private key 𝑠𝑘', which at least includes the first pseudo-random number seed 𝜌 used in the generation matrix, the first pseudo-random number 𝐾, the original public key hash value 𝑡𝑟, the first vector 𝐬1, the extended vector 𝐬2', and the extended core private key value 𝐭0'.
2. The key pair derivation system as described in claim 1, wherein the key pair derivation module cuts each coefficient value of the first extended core public key value 𝐭' according to a third parameter d to generate an extended core public key value 𝐭1' and an extended core private key value 𝐭0'; the key pair derivation module determines whether the coefficient value of the extended core public key value 𝐭1' is consistent with the coefficient value of the original core public key value 𝐭1; if they are inconsistent, another third pseudo-random number seed 𝜌'' used for the second production polynomial is generated, and the extended vector 𝐬2', the first extended core public key value 𝐭', and the extended core public key value 𝐭1' are generated until the coefficient value of the extended core public key value 𝐭1' is consistent with the coefficient value of the original core public key value 𝐭1.
3. The key pair derivation system as described in claim 1, wherein the key pair derivation module divides each coefficient value of the first extended core public key value 𝐭' according to the third parameter d to generate an extended core public key value 𝐭1' and an extended core private key value 𝐭0'; the key pair derivation module generates an extended public key 𝑝𝑘', the extended public key 𝑝𝑘' containing at least the first pseudo-random number seed 𝜌 used for generating the matrix and the extended core public key value 𝐭1'; The key generates an extended public key hash value 𝑡𝑟' for the derived module, and then generates an extended private key 𝑠𝑘'. The extended private key 𝑠𝑘' contains at least the first pseudo-random number seed 𝜌 used for generating the matrix, the first pseudo-random number 𝐾, the extended public key hash value 𝑡𝑟', the first vector 𝐬1, the extended vector 𝐬2', and the extended core private key value 𝐭0'.
4. The key pair derivation system as described in claim 3, wherein the key pair derivation module generates a random number 𝐾'; the key pair derivation module generates an extended private key 𝑠𝑘', the extended private key 𝑠𝑘' including at least the first pseudo-random number seed 𝜌 used for the generation matrix, the random number 𝐾', the extended public key hash value 𝑡𝑟', the first vector 𝐬1', the extended vector 𝐬2'', and the extended core private key value 𝐭0'.
5. A group credential generation system, comprising: Group leader terminal device; One or more group follower terminal devices, coupled to the group leader terminal device; The credential center is coupled to the group leader terminal device; the group leader terminal device includes a key pair derivation system as described in claim 1, wherein the key pair derivation system produces an original key pair, the original key pair including the original public key 𝑝𝑘 and the original private key 𝑠𝑘; the key pair derivation system produces one or more of the extended private keys 𝑠𝑘', and the extended core public key value 𝐭1' has the same coefficient value as the original core public key value 𝐭1; wherein the group leader terminal device transmits the original public key 𝑝𝑘 to the credential center; the credential center produces a group credential cert, the group credential cert including at least the original public key 𝑝𝑘.
6. The group credential generation system as described in claim 5, wherein the group leader terminal device transmits the extended private keys 𝑠𝑘' to the group follower terminal devices via a secure channel; each extended private key 𝑠𝑘' contains a different extended core private key value 𝐭0'; each group follower terminal device uses its corresponding extended private key 𝑠𝑘' to generate a signature value for a message to be signed, and the device receiving the message to be signed uses the original public key 𝑝𝑘 of the group credential cert to verify the signature value.
7. A key pair derivation method, comprising at least a key pair generation method and a key pair derivation sub-method; wherein, The key pair generation method includes generating a first random number 𝜉, a first parameter k, a second parameter ℓ, a third parameter d, and a fourth parameter 𝜂, and substituting the first random number 𝜉, the first parameter k, and the second parameter ℓ into a pseudo-random number generator method using a pseudo-random number seed to generate a first pseudo-random number seed 𝜌 for generating a matrix, a second pseudo-random number seed 𝜌' for generating a first polynomial, and a first pseudo-random number 𝐾; The key pair generation method includes generating a first matrix 𝐀, the first matrix 𝐀 having a dimension of 𝑘×ℓ, each element of the first matrix A being a first polynomial equation, the first polynomial equation having n first coefficients, the n first coefficients being integers modulo a fifth parameter 𝑞 of the pseudo-random number generated by the first key derivation method based on the first pseudo-random number seed 𝜌 used for generating the matrix and the matrix index value. The key pair generation method includes generating a first vector 𝐬1, which contains ℓ elements. Each element of the first vector 𝐬1 is a second polynomial equation with n second coefficients. The n second coefficients are pseudo-random numbers between [–𝜂, 𝜂] generated by a second key derivation method based on a second pseudo-random number seed 𝜌' used in the first generation polynomial equation. The key pair generation method also includes generating a second vector 𝐬2, which contains k elements. Each element of the second vector 𝐬2 is a third polynomial equation with n third coefficients. The n third coefficients are pseudo-random numbers between [–𝜂, 𝜂] generated by a second key derivation method based on the second pseudo-random number seed 𝜌' used in the first generation polynomial equation. The key pair generation method includes generating a first original core public key value 𝐭, the first original core public key value 𝐭 having coefficients 𝐭 = 𝐀𝐬1 + 𝐬2; the key pair generation method includes dividing each coefficient value of the first original core public key value 𝐭 according to a third parameter d to generate an original core public key value 𝐭1 and an original core private key value 𝐭0; the key pair generation method includes generating an original public key 𝑝𝑘, the original public key 𝑝𝑘 containing at least the first pseudo-random number seed 𝜌 used for the generation matrix and the original core public key value 𝐭1; The key pair generation method includes generating an original public key hash value 𝑡𝑟, and then generating an original private key 𝑠𝑘. The original private key 𝑠𝑘 contains at least the first pseudo-random number seed 𝜌 used in the generation matrix, the first pseudo-random number 𝐾, the original public key hash value 𝑡𝑟, the first vector 𝐬1, the second vector 𝐬2, and the original core private key value 𝐭0.The key pair derivation method includes generating a third pseudo-random number seed 𝜌'' for generating a second production polynomial, and generating an expanded vector 𝐬2' containing k elements. Each element of the expanded vector 𝐬2' is a fourth polynomial equation with n fourth coefficients, which are pseudo-random numbers between [-𝜂, 𝜂] generated by the second key derivation method based on the third pseudo-random number seed 𝜌'' for generating the second production polynomial. The key pair derivation method also includes generating a first expanded core public key value 𝐭', which is 𝐭' = 𝐀𝐬1 + 𝐬2'. The key pair derivation method includes cutting each coefficient value of the first extended core public key value 𝐭' according to the third parameter d to generate an extended core private key value 𝐭0'; the key pair derivation method generates an extended private key 𝑠𝑘', the extended private key 𝑠𝑘' containing at least the first pseudo-random number seed 𝜌 used for the generation matrix, the first pseudo-random number 𝐾, the original public key hash value 𝑡𝑟, the first vector 𝐬1, the extended vector 𝐬2', and the extended core private key value 𝐭0'.
8. The key pair derivation method as described in claim 7, wherein the key pair derivation sub-method includes cutting each coefficient value of the first extended core public key value 𝐭' according to the third parameter d to generate an extended core public key value 𝐭1' and the extended core private key value 𝐭0'; the key pair derivation sub-method includes determining whether the coefficient values of the extended core public key value 𝐭1' are consistent with those of the original core public key value 𝐭1; if they are inconsistent, generating another third pseudo-random number seed 𝜌'' for a second production polynomial, and generating the extended vector 𝐬2', the first extended core public key value 𝐭', and the extended core public key value 𝐭1', until the coefficient value of the extended core public key value 𝐭1' is consistent with that of the original core public key value 𝐭1.
9. The key pair derivation method as described in claim 7, wherein the key pair derivation sub-method includes cutting each coefficient value of the first extended core public key value 𝐭' according to the third parameter d to generate an extended core public key value 𝐭1' and an extended core private key value 𝐭0'; the key pair derivation sub-method includes generating an extended public key 𝑝𝑘', the extended public key 𝑝𝑘' containing at least the first pseudo-random number seed 𝜌 used for generating the matrix and the extended core public key value 𝐭1'; The gold key generates an extended public key hash value 𝑡𝑟' using the derivative sub-method, and then generates an extended private key 𝑠𝑘'. The extended private key 𝑠𝑘' contains at least the first pseudo-random number seed 𝜌 used for generating the matrix, the first pseudo-random number 𝐾, the extended public key hash value 𝑡𝑟', the first vector 𝐬1, the extended vector 𝐬2', and the extended core private key value 𝐭0'.
10. The key pair derivation method as described in claim 7, wherein the key pair derivation sub-method generates a random number 𝐾'; the key pair derivation sub-method generates an extended private key 𝑠𝑘', the extended private key 𝑠𝑘' including at least a first pseudo-random number seed 𝜌 used for the generation matrix, the random number 𝐾', the extended public key hash value 𝑡𝑟', the first vector 𝐬1', the extended vector 𝐬2'', and the extended core private key value 𝐭0'.
11. A method for generating group vouchers, comprising: The group leader terminal device performs the key pair derivation method as described in claim 7, wherein the key pair derivation method includes generating an original key pair containing the original public key 𝑝𝑘 and the original private key 𝑠𝑘; the group leader terminal device generates one or more extended private keys 𝑠𝑘', and the extended core public key value 𝐭1' has the same coefficient value as the original core public key value 𝐭1; the group leader terminal device transmits the original public key 𝑝𝑘 to the credential center; and the credential center generates a group credential cert, which contains at least the original public key 𝑝𝑘.
12. The group credential generation method as described in claim 11, comprising: The group leader terminal device performs an extended private key distribution method to transmit these extended private keys 𝑠𝑘' to multiple group follower terminal devices through a secure channel. Each extended private key 𝑠𝑘' contains a different extended core private key value 𝐭0'. The group follower terminal devices perform an extended private key signing method to generate a signature value for a message to be signed using the corresponding extended private key 𝑠𝑘'. The device receiving the message to be signed performs an original public key verification method to verify the signature value using the original public key 𝑝𝑘 of the group credential cert.
13. A high-efficiency key derivation module, comprising at least one pseudo-random number generator, wherein the input variables of the pseudo-random number generator include at least a 32-byte random number φ, a first integer λ, and a second integer ℓ, and the generator produces a 128-byte pseudo-random number as the output value, wherein the pseudo-random number generator comprises an Advanced Encryption Standard (AES) algorithm module; wherein, The pseudo-random number generator generates a first sub-message, onePad, with all bits set to 1 (32 bytes). It encodes the first integer 𝑘 as a second sub-message of 32 bytes, encodes the second integer ℓ as a third sub-message of 32 bytes, and generates a fourth sub-message, zeroPad, with all bits set to 0 (32 bytes). The generator then concatenates these sub-messages to generate a 128-byte message, msg = (onePad||𝑘||ℓ||zeroPad), where || denotes concatenation. The pseudo-random number generator uses the random number 𝜉 as the AES-256 key and the message msg as plaintext, executing the Advanced Encryption Standard Algorithm module to encrypt the message, resulting in a 128-byte ciphertext as the output value.
14. A high-efficiency key derivation module, comprising at least one pseudo-random number generator, wherein the input variables of the pseudo-random number generator include at least a 32-byte random number *f*, a first integer *h*, and a second integer *ℓ*, and generates a 128-byte pseudo-random number as the output value, wherein the pseudo-random number generator comprises a counter and a Secure Hash Algorithm 2 (SHA-2) module, the counter comprising a parameter *i*, the parameter *i* being initially set to 1; wherein, The pseudo-random number generator connects the parameter i, the random number 𝜉, the first integer 𝑘, and the second integer ℓ, with the value of i increasing from 1 to 4, and sequentially generates four messages msgi = (i||𝜉||𝑘||ℓ), where the symbol || indicates concatenation. The pseudo-random number generator uses these messages msg as plaintext, executes the second-generation secure hash algorithm module, performs SHA-256 calculation, and sequentially obtains four 32-byte ciphertexts, which are then concatenated as a 128-byte output value.
15. A high-efficiency key derivation module, comprising at least one pseudo-random number generator, wherein the input variables of the pseudo-random number generator include at least a 32-byte random number φ, a first integer λ, and a second integer ℓ, and generates a 128-byte pseudo-random number as the output value; wherein, This pseudo-random number generator is a third-generation Secure Hash Algorithm 3 (SHA-3) module; the plaintext is (𝜉||𝑘||ℓ), the third-generation Secure Hash Algorithm is executed, and the output length is set to 128 bytes, resulting in a 128-byte hash value as the output value, where the symbol || represents concatenation.
16. A high-efficiency key derivation method, comprising at least a method for selecting a pseudo-random number generator, wherein the input variables of the pseudo-random number generator method include at least a 32-byte random number *f*, a first integer *h*, and a second integer *t*, and the output value is a 128-byte pseudo-random number, wherein the pseudo-random number generator method comprises the Advanced Encryption Standard (AES) algorithm; wherein, The pseudo-random number generator method generates a first sub-message, onePad, with all bits set to 1 (32 bytes). It encodes the first integer 𝑘 as a second sub-message of 32 bytes, encodes the second integer ℓ as a third sub-message of 32 bytes, and generates a fourth sub-message, zeroPad, with all bits set to 0 (32 bytes). The first, second, third, and fourth sub-messages are then concatenated to generate a 128-byte message, msg = (onePad||𝑘||ℓ||zeroPad), where || denotes concatenation. The method uses the random number 𝜉 as the AES-256 key and the message msg as plaintext, encrypting it using the Advanced Encryption Standard (AES) algorithm to obtain a 128-byte ciphertext as the output value.
17. A high-efficiency key derivation method, comprising at least a method for selecting a pseudo-random number generator, wherein the input variables of the pseudo-random number generator method include at least a 32-byte random number *f*, a first integer *h*, and a second integer *t*, and generate a 128-byte pseudo-random number as the output value, wherein the pseudo-random number generator method comprises a counter and a second-generation secure hash algorithm (SHA-2), the counter comprising a parameter *i*, the parameter *i* being initially set to 1; wherein, The pseudo-random number generator method concatenates the parameter i, the random number 𝜉, the first integer 𝑘, and the second integer ℓ, with the value of i increasing from 1 to 4, to sequentially generate four messages msgi = (i||𝜉||𝑘||ℓ), where the symbol || indicates concatenation. The pseudo-random number generator method uses these messages msg as plaintext, executes the second-generation secure hash algorithm, performs SHA-256 calculation, and sequentially obtains four 32-byte ciphertexts, which are then concatenated to form a 128-byte output value.
18. A high-efficiency key derivation method, comprising at least a method for selecting a pseudo-random number generator, wherein the input variables of the pseudo-random number generator method include at least a 32-byte random number φ, a first integer λ, and a second integer ℓ, and the output value is a 128-byte pseudo-random number; wherein, This pseudo-random number generator method uses the third-generation secure hash algorithm (SHA-3); the plaintext is (𝜉||𝑘||ℓ), the third-generation secure hash algorithm is executed, and the output length is set to 128 bytes, resulting in a 128-byte hash value as the output value, where the symbol || represents concatenation.
Citation Information
Patent Citations
Method for optimizing an execution of a generation of a crystals-dilithium post-quantum signature
EP4422126A1
