Skip to content

Coconut: Threshold Issuance Selective Disclosure Credentials with Applications to Distributed Ledgers.

License

Notifications You must be signed in to change notification settings

asonnino/coconut

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Coconut

license Documentation Status

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. 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). We implement and evaluate a generic Coconut smart contract library for Chainspace and Ethereum.

A link to the full paper is available at the following address: https://arxiv.org/abs/1802.07344

Pre-requisites

Coconut is built on top of petlib and bplib, make sure to follow these instructions to install all the pre-requisites.

Install

If you have pip installed, you can install Coconut with the following command:

$ pip install coconut-lib

otherwise, you can build it manually as below:

$ git clone https://github.com/asonnino/coconut
$ cd coconut
$ pip install -e .

Test

Tests can be run as follows:

$ pytest -v --cov=coconut tests/

or simply using tox:

$ tox

License

The Apache 2.0 license

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages