hyperledger / fabric

Hyperledger Fabric is an enterprise-grade permissioned distributed ledger framework for developing solutions and applications. Its modular and versatile design satisfies a broad range of industry use cases. It offers a unique approach to consensus that enables performance at scale while preserving privacy.
https://wiki.hyperledger.org/display/fabric
Apache License 2.0
15.78k stars 8.86k forks source link

Support post-quantum crypto algorithms #3763

Open bestbeforetoday opened 2 years ago

bestbeforetoday commented 2 years ago

As a business application developer I want to use post-quantum crypto algorithms with Fabric So that the integrity of business data is maintained as quantum computing technology advances

NIST has selected some quantum-resistant cryptography algorithms:

https://www.nist.gov/news-events/news/2022/07/nist-announces-first-four-quantum-resistant-cryptographic-algorithms

It would be good for Fabric to support use of one or more of these algorithms (or future recommendations) as an alternative (or in addition) to the existing ECDSA cryptography for securing messages and ledger data. This could also extend to the cryptography used for secure (TLS) gRPC connections, although that might be better tracked as a separate issue.

Current post-quantum crypto algorithms are available as a Golang module here:

https://github.com/open-quantum-safe/liboqs-go

SamYuan1990 commented 1 year ago

https://github.com/hyperledger/fabric/discussions/3880, maybe for post-quantum crypto algorithms we can impl in a specific repo as decouple bccsp from fabric repo?