Quorum-based information recovery, comprising: receiving minimum number n+1 of ciphertexts, each generated by encrypting information using a session encryption key whose value equals a polynomial, at a distinct point, and in which the value of said polynomial at each of the other distinct points is encrypted to produce a ciphertext; determining a reconstructed session key by decrypting the ciphertexts to produce key fragments which are weighted and added together; and using said reconstructed session key to decrypt the information. Also further comprising: receiving 2n+1 of ciphertexts, each generated where the value of the polynomial evaluated at each one of the other distinct points is encrypted using an encryption key which has been encrypted into a ciphertext; decrypting the ciphertexts using private decryption keys to produce decryption keys which are used to decrypt the remaining ciphertexts to produce key fragments. Also generating quorum-based key fragments, comprising: initialising coefficient values of a key generator polynomial for deriving values for computing devices; computing a fragment value for each device by evaluating the polynomial at a respective distinct index value; encrypting the fragment values using a symmetric key of the corresponding computing device; and transmitting the encrypted fragment value to the corresponding computing device.
展开▼