Many single-time use keys encryption scheme (not Shamir's Shared Secret) I'm looking for encryption scheme with the following properties:


There's a sequence of keys that can be used to decrypt the message
Strictly only one key from the sequence is required to decrypt the message
Keys need to be used in the order that is defined by keys sequence
Once used, the key can't be used again to decrypt the message (this implies some kind of transformation of encrypted message as part of the decription process)
It is not possible to derive keys from the sequence based on knowing any number of the keys from the sequence
The encrypted message is kept by third party (e.g. on a server), that 
decrypts it for the receiver of the message on request, but only the receiver of the message keeps the sequence of the keys. In case of security breach, if the encrypted messages leak from the storage they're kept on, they're worthless for the attacker, because the third party doesn't keep the sequence of the keys. I know that it would be still possible to steal the message from primary memory when the receiver decrypts it, but the focus is on making the permanent storage of the message safe.
Since you already trust the server to securely delete the plaintext message after decrypting it for a client, you can trust it to delete the encrypted versions too.

So for instance the case of 3 keys K1 .. K3 and plaintext P, store K1(P), K1(K2(P)),K1(K2(K3(P))) since they all start with K1, that is the only key that can be used at first. after K1 is presented, apply it to everything in the series, so you end up with.
P, K2(P), K2(K3(P)). serve up P deleting it and store the rest as your new series for when K2 arrives. repeat the proceduce until the whole sequence and hence all the keys are used up.