Metadata-Version: 2.1
Name: python-picnic
Version: 1.0.1
Summary: Python bindings for picnic
Home-page: https://github.com/sebastinas/python-picnic
Author: Sebastian Ramacher
Author-email: sebastian.ramacher@ait.ac.at
License: MIT
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Security :: Cryptography
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE

# Python bindings for Picnic

python-picnic provides Python bindings based on [Cython](https://cython.org/) for the
[Picnic](https://microsoft.github.io/Picnic/) post-quantum signature scheme.

## Dependencies

* `Cython >= 0.28` (only for building)
* `pkgconfig` (only for building)
* [Picnic](https://github.com/IAIK/Picnic)

## Quick installation guilde

python-picnic can be installed via `pip`:
```sh
pip install python-picnic
```
or by running:
```sh
python3 setup.py install
```

Packages for Ubuntu are also available via the [picnic
PPA](https://launchpad.net/~s-ramacher/+archive/ubuntu/picnic):
```sh
sudo add-apt-repository ppa:s-ramacher/picnic
sudo apt update
sudo apt install python3-picnic
```

## Usage

```python3
import picnic

# create keypair
sk, pk = picnic.keygen(picinc.Picnic_L1_full)
# sign a message
sig = picnic.sign(sk, b"a message")
# verify a signature
picnic.verify(pk, b"a message", sig)
```

## License

The code is licensed under the MIT license.


