1. k-server password manager.
a) I would like to store my password on a cloud server (online password manager).
But I don't wish to entrust any single server with my password.
Please devise a scheme such that I can store my password on
k different servers,
such that any coalition of k-1 servers learn nothing about my password.
However, I can recover my password by talking to all k servers.
b) In general, how can I split a secret amongst k servers,
such that any coalition of t (t < k) servers
cannot learn anything about my secret?
(Assume the servers are honest-but-curious, i.e., they will store data honestly for me, and will not tamper
with the data. However, they may be curious to learn my password)
(Hint: http://en.wikipedia.org/wiki/Shamir's_Secret_Sharing)
c) Let's do a concrete example of Shamir Secret Sharing.
Although in practice, we should use finite field algebra,
for simplicity, in this problem, we will use standard
integer rings.
Suppose we have a 3-out-of-5 Shamir Secret Sharing scheme.
Reconstruct the secret from the following 3 shares:
(1, 9)
(2, 33)
(3, 77)