MLchartDataset catalogue

Patent · US2014294177A1 · A1 · US

Identity based public key cryptosystem

(11) Publication number
US2014294177A1
(21) Application number
14/228,396
(22) Filing date
2014-03-28
(30) Priority date
2013-03-28
(43) Publication date
2014-10-02
(52) CPC
  • H04L Transmission of digital information, e.g. telegraphic communication: 9/0825, 2209/24, 9/0866, 9/14, 9/3013, 9/302
(73) Assignee
TATA CONSULTANCY SERVICES LTD
(54) Title
Identity based public key cryptosystem
(57) Abstract

A method for generating cryptographic parameters comprises generating a private_IGTABLE based on an Euler totient function of a composite number (φ(n)), where the private_IGTABLE includes a plurality of random numbers (x). Further, a public_IGTABLE based on the private_IGTABLE, a composite number (n), and a group generator element (g) is generated, where the public_IGTABLE includes a corresponding modular exponentiation under modulo n for each of the plurality of random numbers with g as base. Further, a public key of a user is computed based on the public_IGTABLE, an identity number (ID) corresponding to the user, and n. Further, a secret key of the user is generated based on the ID, a master private key, the φ(n), and the private_IGTABLE. Thereafter, the cryptographic parameters are provided to the user for performing encryption and decryption, where the cryptographic parameters include at least one of the ID, the public key, and the secret key.

Full text
View on Google Patents

Claims (1)

  1. A method for generating cryptographic parameters for securing information, the method comprising: generating a private_IGTABLE based on a Euler totient function of a composite number (φ(n)), wherein the private_IGTABLE includes a plurality of random numbers (x); generating a public_IGTABLE based on the private_IGTABLE, the composite number(n), and a group generator element (g), wherein the public_IGTABLE includes a modular exponentiation corresponding to each of the plurality of random numbers (x) given by the equation g x (mod n), wherein g x is the modular exponentiation under modulo n, and wherein n is the composite number; computing a public key of a user based on the public_IGTABLE, an identity number (ID) corresponding to the user, and the composite number (n); generating a secret key of the user based on the ID, a master private key, the private_IGTABLE and the Euler totient function of the composite number (φ(n)); and providing the cryptographic parameters to the user for performing encryption and decryption, wherein the cryptographic parameters include at least one of the ID, the public key, and the secret key. 2. The method of claim 1, wherein the ID is one of a binary vector and a random bit vector, and wherein each of the binary vector and the random bit vector is of length 256, and wherein the random bit vector is ascertained using a random bit vector generation process 3. The method of claim 1, wherein the providing further comprises: publishing a set of public parameters, wherein the set of public parameters include a composite number (n), the group generator element (g), a master public key (e), the public_IGTABLE, the public key of the user and the ID; and transmitting a secret key to the user, wherein the secret key correspond to the ID of the user. 4. The method of claim 3 further comprising receiving a request for generating the cryptographic parameters from the user, wherein the cryptographic parameters include the public parameters and the secret key. 5. The method of claim 1, further comprising: selecting a first prime number (p1) and a second prime number (p2) of a form 3 modulus 4, and wherein each of the first prime number (p1) and the second prime number (p2) has a bit length of at least 512 bits; computing the composite number (n) based on the first prime number and the second prime number, wherein the composite number (n) is obtained as a product of the p1 and p2; determining the Euler totient function of the composite number (φ(n)); selecting the group generator element (g); and computing the master public key (e) and the master private key (d) based on the Euler totient function of the composite number (φ(n)), wherein the φ(n) is a product of (p1−1) and (p2−1). 6. The method of claim 1, wherein the private_IGTABLE and the public_IGTABLE are generated using an IGTABLE generation process. 7. The method of claim 1, wherein the ID is computed using hashing technique. 8. The method of claim 1, wherein the public key is computed using a user public key generation process. 9. The method of claim 1, wherein the secret key is generated based on a user secret key generation process. 10. The method of claim 1, wherein the random number (x) has a value in the range of 1 to φ(n)−1. 11. The method of claim 1, wherein the master public key (e) is an odd integer having bit length of k-bits. 12. The method of claim 1, wherein the master private key (d) is a multiplicative inverse of the master public key (e) modulo φ(n), and wherein the master private key (d) is relatively prime to the master public key (e), and wherein the master private key (d) and the master private key (e) are relatively prime to φ(n). 13. The method of claim 1, wherein the private_IGTABLE and the public_IGTABLE is an array of length 256. 14. A public key infrastructure, comprising: a processor; a parameter generation module coupled to the processor, the parameter generation module configured to, generate a private_IGTABLE based on a Euler totient function (φ) of a composite number (n), wherein the private_IGTABLE includes a plurality of random numbers (x); generate a public_IGTABLE based on the private_IGTABLE, the composite number (n), and a group generator element (g), wherein the public_IGTABLE includes a modular exponentiation corresponding to each of the plurality of random numbers (x) given by the equation g x (mod n), wherein g x is the modular exponentiation under modulo n, and wherein n is the composite number; and ascertain an identity number (ID) corresponding to a user, wherein the ID is one of a binary vector and a random bit vector, and wherein the binary vector and the random bit vector is of length 256, and wherein the random bit vector is ascertained using a random bit vector generation process; and a key generation module coupled to the processor, the key generation module configured to, compute a public key of the user based on the public_IGTABLE, the ID, and the composite number (n); and generate a secret key of the user based on the ID of the user, a master secret key, the private_IGTABLE, and the Euler totient function of the composite number (φ(n)). 15. The public key infrastructure of claim 14, further comprising a user interaction module coupled to the processor, the user interaction module is configured to receive a request for generating cryptographic parameters from the user; wherein the cryptographic parameters include a set of public parameters and the secret key. 16. The public key infrastructure of claim 14, further comprising a user interaction module coupled to the processor, the user interaction module is further configured to, publish the set of public parameters, wherein the set of public parameters include a composite number (n), the group generator element (g), a master public key (e), the public_IGTABLE, the ID of the user, and the public key of the user; and transmit the secret key to the user. 17. The public key infrastructure of claim 14, wherein the parameter generation module is further configured to, select a first prime number (p1) and a second prime number (p2) of a form 3 modulus 4, and wherein each of the first prime number (p1) and the second prime number (p2) has a bit length of at least 512 bits; compute the composite number (n) based on the first prime number and the second prime number, wherein the composite number (n) is obtained as a product of the p1 and p2, the Euler totient function of the composite number (φ(n)), wherein the φ(n) is a product of (p1−1) and (p2−1); select the group generator element (g); compute the master public key (e) and a master private key (d) based on the Euler totient function (φ) of the composite number(n); 18. A computer-readable medium having embodied thereon a computer program for executing a method comprising: generating a private_IGTABLE based on a Euler totient function of a composite number (φ(n)), wherein the private_IGTABLE includes a plurality of random numbers (x); generating a public_IGTABLE based on the private_IGTABLE, the composite number(n), and a group generator element (g), wherein the public_IGTABLE includes a modular exponentiation corresponding to each of the plurality of random numbers (x) given by the equation g x (mod n), wherein g x is the modular exponentiation under modulo n, and wherein n is the composite number; computing a public key of a user based on the public_IGTABLE, an identity number (ID) corresponding to the user and composite number (n); generating a secret key of the user based on the ID, a master private key, the private_IGTABLE and the Euler totient function of the composite number (φ(n)); and providing cryptographic parameters to the user for performing encryption and decryption, wherein the cryptographic parameters include at least one of the ID, the public key, and the secret key. 19. The computer-readable medium of claim 18, wherein the ID is one of a binary vector and a random bit vector, and wherein each of the binary vector and the random bit vector is of length 256, and wherein the random bit vector is ascertained using a random bit vector generation process. 20. The computer-readable medium of claim 18, wherein the method further comprises: selecting a first prime number (p1) and a second prime number (p2) of a form 3 modulus 4, and wherein each of the first prime number (p1) and the second prime number (p2) has a bit length of at least 512 bits; computing the composite number (n) based on the first prime number and the second prime number, wherein the composite number (n) is obtained as a product of the p1 and p2; determining the Euler totient function of the composite number (φ(n)); selecting the group generator element (g); and computing the master public key (e) and the master private key (d) based on the Euler totient function of the composite number (φ(n)), wherein the φ(n) is a product of (p1−1) and (p2−1).

Citations (2)

  • US2002186848A1
  • US5761310A
Record as JSON
{
  "publication_number": "US2014294177A1",
  "country": "US",
  "kind": "A1",
  "title": "Identity based public key cryptosystem",
  "abstract": "A method for generating cryptographic parameters comprises generating a private_IGTABLE based on an Euler totient function of a composite number (φ(n)), where the private_IGTABLE includes a plurality of random numbers (x). Further, a public_IGTABLE based on the private_IGTABLE, a composite number (n), and a group generator element (g) is generated, where the public_IGTABLE includes a corresponding modular exponentiation under modulo n for each of the plurality of random numbers with g as base. Further, a public key of a user is computed based on the public_IGTABLE, an identity number (ID) corresponding to the user, and n. Further, a secret key of the user is generated based on the ID, a master private key, the φ(n), and the private_IGTABLE. Thereafter, the cryptographic parameters are provided to the user for performing encryption and decryption, where the cryptographic parameters include at least one of the ID, the public key, and the secret key.",
  "claims": [
    "1. A method for generating cryptographic parameters for securing information, the method comprising: generating a private_IGTABLE based on a Euler totient function of a composite number (φ(n)), wherein the private_IGTABLE includes a plurality of random numbers (x); generating a public_IGTABLE based on the private_IGTABLE, the composite number(n), and a group generator element (g), wherein the public_IGTABLE includes a modular exponentiation corresponding to each of the plurality of random numbers (x) given by the equation g x (mod n), wherein g x is the modular exponentiation under modulo n, and wherein n is the composite number; computing a public key of a user based on the public_IGTABLE, an identity number (ID) corresponding to the user, and the composite number (n); generating a secret key of the user based on the ID, a master private key, the private_IGTABLE and the Euler totient function of the composite number (φ(n)); and providing the cryptographic parameters to the user for performing encryption and decryption, wherein the cryptographic parameters include at least one of the ID, the public key, and the secret key. 2. The method of claim 1, wherein the ID is one of a binary vector and a random bit vector, and wherein each of the binary vector and the random bit vector is of length 256, and wherein the random bit vector is ascertained using a random bit vector generation process 3. The method of claim 1, wherein the providing further comprises: publishing a set of public parameters, wherein the set of public parameters include a composite number (n), the group generator element (g), a master public key (e), the public_IGTABLE, the public key of the user and the ID; and transmitting a secret key to the user, wherein the secret key correspond to the ID of the user. 4. The method of claim 3 further comprising receiving a request for generating the cryptographic parameters from the user, wherein the cryptographic parameters include the public parameters and the secret key. 5. The method of claim 1, further comprising: selecting a first prime number (p1) and a second prime number (p2) of a form 3 modulus 4, and wherein each of the first prime number (p1) and the second prime number (p2) has a bit length of at least 512 bits; computing the composite number (n) based on the first prime number and the second prime number, wherein the composite number (n) is obtained as a product of the p1 and p2; determining the Euler totient function of the composite number (φ(n)); selecting the group generator element (g); and computing the master public key (e) and the master private key (d) based on the Euler totient function of the composite number (φ(n)), wherein the φ(n) is a product of (p1−1) and (p2−1). 6. The method of claim 1, wherein the private_IGTABLE and the public_IGTABLE are generated using an IGTABLE generation process. 7. The method of claim 1, wherein the ID is computed using hashing technique. 8. The method of claim 1, wherein the public key is computed using a user public key generation process. 9. The method of claim 1, wherein the secret key is generated based on a user secret key generation process. 10. The method of claim 1, wherein the random number (x) has a value in the range of 1 to φ(n)−1. 11. The method of claim 1, wherein the master public key (e) is an odd integer having bit length of k-bits. 12. The method of claim 1, wherein the master private key (d) is a multiplicative inverse of the master public key (e) modulo φ(n), and wherein the master private key (d) is relatively prime to the master public key (e), and wherein the master private key (d) and the master private key (e) are relatively prime to φ(n). 13. The method of claim 1, wherein the private_IGTABLE and the public_IGTABLE is an array of length 256. 14. A public key infrastructure, comprising: a processor; a parameter generation module coupled to the processor, the parameter generation module configured to, generate a private_IGTABLE based on a Euler totient function (φ) of a composite number (n), wherein the private_IGTABLE includes a plurality of random numbers (x); generate a public_IGTABLE based on the private_IGTABLE, the composite number (n), and a group generator element (g), wherein the public_IGTABLE includes a modular exponentiation corresponding to each of the plurality of random numbers (x) given by the equation g x (mod n), wherein g x is the modular exponentiation under modulo n, and wherein n is the composite number; and ascertain an identity number (ID) corresponding to a user, wherein the ID is one of a binary vector and a random bit vector, and wherein the binary vector and the random bit vector is of length 256, and wherein the random bit vector is ascertained using a random bit vector generation process; and a key generation module coupled to the processor, the key generation module configured to, compute a public key of the user based on the public_IGTABLE, the ID, and the composite number (n); and generate a secret key of the user based on the ID of the user, a master secret key, the private_IGTABLE, and the Euler totient function of the composite number (φ(n)). 15. The public key infrastructure of claim 14, further comprising a user interaction module coupled to the processor, the user interaction module is configured to receive a request for generating cryptographic parameters from the user; wherein the cryptographic parameters include a set of public parameters and the secret key. 16. The public key infrastructure of claim 14, further comprising a user interaction module coupled to the processor, the user interaction module is further configured to, publish the set of public parameters, wherein the set of public parameters include a composite number (n), the group generator element (g), a master public key (e), the public_IGTABLE, the ID of the user, and the public key of the user; and transmit the secret key to the user. 17. The public key infrastructure of claim 14, wherein the parameter generation module is further configured to, select a first prime number (p1) and a second prime number (p2) of a form 3 modulus 4, and wherein each of the first prime number (p1) and the second prime number (p2) has a bit length of at least 512 bits; compute the composite number (n) based on the first prime number and the second prime number, wherein the composite number (n) is obtained as a product of the p1 and p2, the Euler totient function of the composite number (φ(n)), wherein the φ(n) is a product of (p1−1) and (p2−1); select the group generator element (g); compute the master public key (e) and a master private key (d) based on the Euler totient function (φ) of the composite number(n); 18. A computer-readable medium having embodied thereon a computer program for executing a method comprising: generating a private_IGTABLE based on a Euler totient function of a composite number (φ(n)), wherein the private_IGTABLE includes a plurality of random numbers (x); generating a public_IGTABLE based on the private_IGTABLE, the composite number(n), and a group generator element (g), wherein the public_IGTABLE includes a modular exponentiation corresponding to each of the plurality of random numbers (x) given by the equation g x (mod n), wherein g x is the modular exponentiation under modulo n, and wherein n is the composite number; computing a public key of a user based on the public_IGTABLE, an identity number (ID) corresponding to the user and composite number (n); generating a secret key of the user based on the ID, a master private key, the private_IGTABLE and the Euler totient function of the composite number (φ(n)); and providing cryptographic parameters to the user for performing encryption and decryption, wherein the cryptographic parameters include at least one of the ID, the public key, and the secret key. 19. The computer-readable medium of claim 18, wherein the ID is one of a binary vector and a random bit vector, and wherein each of the binary vector and the random bit vector is of length 256, and wherein the random bit vector is ascertained using a random bit vector generation process. 20. The computer-readable medium of claim 18, wherein the method further comprises: selecting a first prime number (p1) and a second prime number (p2) of a form 3 modulus 4, and wherein each of the first prime number (p1) and the second prime number (p2) has a bit length of at least 512 bits; computing the composite number (n) based on the first prime number and the second prime number, wherein the composite number (n) is obtained as a product of the p1 and p2; determining the Euler totient function of the composite number (φ(n)); selecting the group generator element (g); and computing the master public key (e) and the master private key (d) based on the Euler totient function of the composite number (φ(n)), wherein the φ(n) is a product of (p1−1) and (p2−1)."
  ],
  "cpc": [
    "H04L 9/0825",
    "H04L 2209/24",
    "H04L 9/0866",
    "H04L 9/14",
    "H04L 9/3013",
    "H04L 9/302"
  ],
  "assignees": [
    "TATA CONSULTANCY SERVICES LTD"
  ],
  "filing_date": "2014-03-28",
  "publication_date": "2014-10-02",
  "priority_date": "2013-03-28",
  "application_number": "US-201414228396-A",
  "family_id": "51620869",
  "citations": [
    "US2002186848A1",
    "US5761310A"
  ]
}

Record 2,117 of 5,000 in Patents full text (MLC-0201). Request the full dataset.