semvec/pypi-packages huggingface dataset:
coconut-lib 1.3.1
Threshold Issuance Selective Disclosure Credentials.
Keywords: anonymous-credentials threshold-cryptography blockchains distributed-ledgers

# Coconut

[![license](https://img.shields.io/badge/license-apache2-brightgreen.svg)](https://github.com/asonnino/coconut/blob/master/LICENSE) 
[![Build Status](https://travis-ci.org/asonnino/coconut.svg?branch=master)](https://travis-ci.org/asonnino/coconut)
[![Documentation Status](https://readthedocs.org/projects/coconut-lib/badge/?version=latest)](http://coconut-lib.readthedocs.io/en/latest/?badge=latest)

**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](https://github.com/asonnino/coconut-timing) 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](https://github.com/asonnino/coconut-chainspace) and [Ethereum](https://github.com/asonnino/coconut-ethereum).

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


## Pre-requisites
**Coconut** is built on top of [petlib](https://github.com/gdanezis/petlib) and [bplib](https://github.com/gdanezis/bplib), make sure to follow [these instructions](https://github.com/gdanezis/petlib#pre-requisites) 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](https://www.apache.org/licenses/LICENSE-2.0)
git-create-repo 0.1.4
Creates local and remote repository from command line
Keywords: git repository python remote

# git-create-repo

[![PyPI version](https://badge.fury.io/py/git-create-repo.svg)](https://badge.fury.io/py/git-create-repo)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

Creates local and remote git repository from command line. This tool is intended for **Python 3**.

## Install

`pip install git-create-repo`

Or

`python setup.py install`

Also make sure you have [git](https://git-scm.com/downloads) installed. 

## Usage

`git_create.py [-h] [-p] [-s] [-n NAME]`

#### Arguments

```
-h, --help            show this help message and exit
-p, --private         private repository
-s, --ssh             switching from https to ssh remote url. Using
                      git@github.com... instead of https://github.com...
-n NAME, --name NAME  name of remote repository
  ```

Make sure you `cd` into the correct folder you want to create a repository in.

#### Create public repository

`git_create`

#### Create private repository

`git_create -p`

#### Adding Remote repository name

You can specify a different name for the remote repository with `-n`. Otherwise the local repo name will be used. 

#### Switching Remote URL

By default, remotes are added by HTTPS. You can change this to SSH by adding `-s`, assuming you have your SSH keys setup. 

#### Github Username

The tool simply fetches the username from `git config user.name`. If you don't have this set, the tool with prompt you to enter it beforehand. 

#### Next steps

* You will be prompted to enter your password and a description. The description can be skipped by simply pressing `enter`. If your password is incorrect, you will be prompted again.

* If the above is successful, you will now have a repository created on your Github account. 

## Note

* This will create a default `README.md` file including the name of your repository if none exist. 
* It is also suggested to create your own `.gitignore`, so you can ignore what files you don't want commited beforehand. All files get committed otherwise. 

## Development

### Windows

#### Installing Development Dependencies:

* Run `build install`

#### Testing Script

* Use `test` folder generated from `build test` to run script. This is to ensure your actual git repository is not compromised. 

The other build targets are used to upload to Pypi. 

### Linux

#### Installing Development Dependencies

* Ensure you have [GNU Make](https://www.gnu.org/software/make/) installed. You can install this with `sudo apt-get install make`. 

* To install development dependences, run `make install`.

#### Testing Script

* Use `test` folder generated from `make test` to run script. This is to ensure your actual git repository is not compromised. 

The other build targets are used to upload to Pypi. 

## Future
* Other features that can make this tool more usable. 
* Please let me know in the issues tab.