Threshold Issuance Selective Disclosure Credentials.
Project description
Coconut
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for coconut_lib-1.3.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e1b2977c9b22051b6aec77942b21e448ffc13ddc3359974f4b5c0e01470b0621 |
|
MD5 | 245d3cc93b4bb6e1acb7a44956ef1e4b |
|
BLAKE2b-256 | dab5ce796214f41cbdbb8f21719788d95029df44befea8086dd1f73ceb853922 |