Implementation of lattice cryptography primitives
Project description
Introduction
This repository contains an implementation of a lattice-based one-time signature scheme (similar to the one published
by Lyubashevsky and Micciancio), and an extension
to Boneh and Kim style
signature aggregation. The lattice_cryptography
folder also includes a prototype of our novel one-time adaptor
signature scheme.
Explanatory resources
The "Techniques for efficient post-quantum finance" finance series contains several articles that go into detail about how these schemes work.
- For more information about the one-time signature scheme (
lm_one_times_sigs
) see this writeup: https://www.theqrl.org/blog/techniques-for-efficient-post-quantum-finance-part-1-digital-signatures/ - For more information about signature aggregation (
bklm_one_time_agg_sigs.py
) see this writeup: https://www.theqrl.org/blog/techniques-for-efficient-post-quantum-finance-part-2-signature-aggregation/ - For more information about the
lattice-algebra
library underlying the code in this repositor, see our introduction here: https://www.theqrl.org/blog/lattice-algebra-library/
Contributors
Brandon Goodell (lead author), Mitchell "Isthmus" Krawiec-Thayer, Rob Cannon.
Built by Geometry Labs in partnership with The QRL Foundation.
Running Tests
Run pip install -r requirements-dev.txt
then see files in tests
folder
License
This library is released as free and open-source software under the MIT License, see LICENSE file for details.
Contact
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 lattice_cryptography-0.0.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 040a69cf90b44d5efd054017797a2f832fd9115de87e15ff908de7372ca38864 |
|
MD5 | 112a35f55cf8aaf227d4e7b4d5f906d6 |
|
BLAKE2b-256 | 682ba2c5996d4fc6b21ba7d42a83d3b4482ab973ec36794f15ca06f61be9e0fd |
Hashes for lattice_cryptography-0.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a9abb10117c2166967bcde70a3fd47502701bd0af7b3b9b9aa6848410a9be8e8 |
|
MD5 | 7b53719e670d6ef062550523846d1861 |
|
BLAKE2b-256 | 7d533590112a9a5c7d20c613af1f986a671def22bb8e97ea74cae4acacfd5575 |