On 10/05/2010 02:04 PM, [email protected] wrote:
I don't know if anyone else noticed this but...

Storage systems are basically a subclass of protocols; they're
unidirectional (with no acknowledgements).  IOW, you're sending
messages to yourself at some (future) point in space-time.

The recipient cannot respond, so is necessarily unauthenticated.

However, the converse is not true; the sender can apply a MAC
to the data to assure the recipient it has not been altered.

Only if he can also transmit something else in such a way that the recipient can know that that was not altered. This something else could be a shared secret for a MAC or a public key. It could be much smaller, and there may be many fewer of them than messages, but you still have to be able to transmit something that the recipient trusts to verify the sender's identity. So it almost becomes as much a data compression scheme as much as anything else.

If its a shared secret, then it obviously has to stay secret. If you have a way to communicate such a shared secret, then you might as well just send a hash of the message secretly.

Q: Do any storage cryptosystems do this?
    How do they manage the metadata?

Since it is a non-interactive protocol with no recipient
authentication, anyone may be the recipient, and subject it to an
attack, which is necessarily passive and offline.

Or they could modify the data and trick the recipient. Or make a third party believe incorrect things about the storing party. The attacker might cause data loss to go undetected for a period of time. Or they could cause the legitimate party to bear the costs and/or risks associated with storing the attacker's data. The attacker could make the storing party act as subliminal communications channel. Perhaps the attacker could cause the future recipient to leak information about the circumstances of the data's use.

Q: What design criteria does this imply, compared to our standard
    bi-directional protocols?

As mentioned, mutual authentication is out. No dynamic protocol negotiation. Forward secrecy doesn't apply. The sender will have no way to confirm that the message was successfully received.

Q: What is the analog of a replay attack in the storage crypto
    context?

An attacker could possibly make the recipient receive duplicate messages, or replace one message with another. He could obtain the shared secret as it was used to decrypt/verify one message and use it against others.

Does it have something to do with not maintaining
    positive control of your storage media at all times?

No, though that may have other benefits.

In summary, it's very much like email encryption a la GnuPG.

It may be further simplified, in that the recipient and sender are
generally the same person.

That may be exactly what the recipient is trying to prove, "I am the one who sent this to myself". So we should be careful not to assume it as an inherent property.

In LUKS, we may have several passphrases that unlock the storage key
(which is merely what I call "key indirection", or a K-E-K).

Q: What is the meaning of this, if we recast this as a protocol?

If it's just "any one of M keys" are sufficient to decrypt, you might consider that analogous to multicast, but otherwise it doesn't seem special. If it's an "N of M keys" scheme, then it could get more interesting.

In some cases, the storage crypto may also encrypt the storage key
to the pubkey for the enterprise, for key recovery reasons.
Q: Are there other applications of PK in storage crypto?

Perhaps steganography and watermarking which use PK might fit your definition?

- Marsh
_______________________________________________
cryptography mailing list
[email protected]
http://lists.randombit.net/mailman/listinfo/cryptography

Reply via email to