  Coconut is a novel selective disclosure credential scheme supporting
distributed threshold issuance, public and private attributes,
re-randomization, and multiple unlinkable selective attribute revelations.
Coconut integrates with blockchains to ensure confidentiality, authenticity and
availability even when a subset of credential issuing authorities are malicious
or offline. We implement and evaluate a generic Coconut smart contract library
for Chainspace and Ethereum; and present three applications related to
anonymous payments, electronic petitions, and distribution of proxies for
censorship resistance. Coconut uses short and computationally efficient
credentials, and our evaluation shows that most Coconut cryptographic
primitives take just a few milliseconds on average, with verification taking
the longest time (10 milliseconds).
