Skip to content
Steven Allen edited this page Nov 19, 2015 · 3 revisions

Let Alice be the publisher, Bob, Carry, and David be consumers, Eve be an adversary, Frank be be the content host.

Components

  1. ACL: ACL's are opaque data structures labeled with a set of groups. A consumer secret labeled with at least one of the groups present in the ACL is said to intersect the ACL.

  2. Consumer Secret: Consumer secrets are opaque data structures labeled with the groups the consumer is in and the day the secret is valid.

Authentication

Eve can:

  1. obtain Alice's public key.
  2. obtain ACL's labeled with any set of groups.
  3. obtain consumer secrets labeled with any set of groups and any day.

When Eve is ready, she presents an (unmodified) ACL labeled with a set of groups and a day such that the set of groups do not intersect with the set of groups labeling any consumer secret she has already obtained for that day. She gives this to Frank and then wins if she can trick Frank info believing that she has a consumer secret labeled with one of the groups also labeling the ACL for the chosen day.

She can repeat this game any number of times.

Honest but curious content host

Frank can:

  1. obtain Alice's public key.
  2. obtain ACL's labeled with any set of groups.
  3. obtain consumer secrets labeled with any set of groups.

When ready, Frank chooses an ACL and presents two unmodified consumer secrets that both either intersect or do not intersect the ACL to Alice. Alice chooses one of the secrets and they run authentication protocol as specified. As many times as Frank wishes. Afterwards, Frank wins the round if he can guess which secret Alice used.

Repeat many times.

Frank wins the game if he wins more than half the rounds.

Malicious content host

In the above game, Frank can additionally violate the protocol.

Honest but curious client without collusion

TODO

Malicious client without collusion

TODO

Malicious client with collusion

TODO