Generating an encrypted message for storage
First Claim
1. A method for execution by a processing module of a first computing device, the method comprises:
- obtaining, by the processing module, a second public key of a second computing device, wherein the second public key is part of a second public/private key pair of the second computing device;
receiving, by the processing module, an encrypted secret exponent from the second computing device, wherein a secret exponent was encrypted using a shared secret key;
determining, by the processing module, the shared secret key based on the second public key and a first private key of the first computing device using a first modulo prime polynomial function, wherein a first public key of the first computing device is generated from the first private key using a second modulo prime polynomial function and wherein the second public key is derived using the second modulo prime polynomial function on a second private key of the second public/private key pair;
decrypting, by the processing module, the encrypted secret exponent using the shared secret key to recover the secret exponent;
generating, by the processing module, an encryption key based on the secret exponent and a password;
encrypting, by the processing module, a message using the encryption key to produce an encrypted message; and
outputting, by the processing module, the encrypted message to the second computing device, wherein the second computing device generates the encryption key based on the secret exponent and the password.
4 Assignments
0 Petitions
Accused Products
Abstract
A method begins by a dispersed storage (DS) processing module generating a shared secret key from a public key of another entity and a private key using a first modulo prime polynomial function, wherein a public key is generated from the private key using a second modulo prime polynomial function and wherein the public key of the other entity is derived using the second modulo prime polynomial function on a private key of the other entity. The method continues with the DS module encrypting a message using the shared secret key to produce an encrypted message. The method continues with the DS module outputting the encrypted message to the other entity.
100 Citations
22 Claims
-
1. A method for execution by a processing module of a first computing device, the method comprises:
-
obtaining, by the processing module, a second public key of a second computing device, wherein the second public key is part of a second public/private key pair of the second computing device; receiving, by the processing module, an encrypted secret exponent from the second computing device, wherein a secret exponent was encrypted using a shared secret key; determining, by the processing module, the shared secret key based on the second public key and a first private key of the first computing device using a first modulo prime polynomial function, wherein a first public key of the first computing device is generated from the first private key using a second modulo prime polynomial function and wherein the second public key is derived using the second modulo prime polynomial function on a second private key of the second public/private key pair; decrypting, by the processing module, the encrypted secret exponent using the shared secret key to recover the secret exponent; generating, by the processing module, an encryption key based on the secret exponent and a password; encrypting, by the processing module, a message using the encryption key to produce an encrypted message; and outputting, by the processing module, the encrypted message to the second computing device, wherein the second computing device generates the encryption key based on the secret exponent and the password. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for execution by a processing module of a first computing device, the method comprises:
-
receiving, by the processing module, an encrypted message from a second computing device, wherein the second computing device encrypted a message using an encryption key to produce the encrypted message, and wherein the second computing device generated the encryption key based on a secret exponent and a password; receiving, by the processing module, an encrypted secret exponent, wherein the secret exponent is encrypted using a shared secret key, wherein the shared secret key is generated by the second computing device using a first modulo prime polynomial function on a first public key of the first computing device and a second private key of the second computing device; obtaining, by the processing module, a second public key of the second computing device, wherein the second public key is part of a second public/private key pair of the second computing device; generating, by the processing module, the shared secret key from the second public key and a first private key of the first computing device using the first modulo prime polynomial function, wherein the first public key is generated from the first private key using a second modulo prime polynomial function; decrypting, by the processing module, the encrypted secret exponent using the shared secret key to produce a decrypted secret exponent; generating, by the processing module, the encryption key based on the decrypted secret exponent and the password; and decrypting, by the processing module, the encrypted message using the encryption key to recapture a message. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A dispersed storage (DS) module comprises:
-
a first module, when operable within a first computing device, causes the first computing device to; obtain a second public key of a second computing device, wherein the second public key is part of a second public/private key pair of the second computing device; receive an encrypted secret exponent from the second computing device, wherein a secret exponent was encrypted using a shared secret key; determine the shared secret key from the second public key and a first private key of the computing device using a first modulo prime polynomial function, wherein a first public key of the first computing device is generated from the first private key using a second modulo prime polynomial function and wherein the second public key is derived using the second modulo prime polynomial function on a second private key of the second public/private key pair; a second module, when operable within the first computing device, causes the first computing device to; decrypt the encrypted secret exponent using the shared secret key to recover the secret exponent; generate an encryption key based on the secret exponent and a password; encrypt a message using the encryption key to produce an encrypted message; and a third module, when operable within the first computing device, causes the first computing device to; output the encrypted message to the second computing device, wherein the second computing device generates the encryption key based on the secret exponent and the password. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A dispersed storage (DS) module comprises:
-
a first module, when operable within a first computing device, causes the first computing device to; receive an encrypted message from a second computing device, wherein the second computing device encrypted a message using an encryption key to produce the encrypted message, and wherein the second computing device generated the encryption key based on a secret exponent and a password; receive an encrypted secret exponent, wherein the secret exponent is encrypted using a shared secret key, wherein the shared secret key is generated by the second computing device using a first modulo prime polynomial function on a first public key of the first computing device and a second private key of the second computing device; and obtain a second public key of the second computing device, wherein the secret public key is part of a second public/private key pair of the second computing device; a second module, when operable within the first computing device, causes the first computing device to; generate the shared secret key from the second public key and a first private key of the first computing device using the first modulo prime polynomial function, wherein the first public key is generated from the first private key using a second modulo prime polynomial function; and a third module, when operable within the first computing device, causes the first computing device to; decrypt the encrypted secret exponent using the shared secret key to produce a decrypted secret exponent; generate the encryption key based on the decrypted secret exponent and the password; and decrypt the encrypted message using the encryption key to recapture a message. - View Dependent Claims (19, 20, 21, 22)
-
Specification