Hi everyone,

I am to share a technical demonstration and benchmarking project that 
integrates the Falcon post-quantum signature scheme (Falcon-512) into 
Bitcoin Core, implemented as a soft-fork within the classic P2WPKH mode. 
This work aims to provide a practical reference for possible future Falcon 
adoption, especially as it approaches FIPS standardization.
You can find details at this fork 
<https://github.com/thisisnotgcsar/bitcoin-falcon>.

*Why Falcon?*
Falcon is a lattice-based, post-quantum digital signature scheme designed 
to be secure against quantum attacks. Unlike other PQC candidates such as 
SPHINCS+ and ML-DSA, Falcon offers significantly smaller signature and 
public key sizes, as well as efficient signing and verification times. It 
is implemented in pure C and does not require external dependencies.

*Benchmarking & Results*
Aspect                           Falcon    ECDSA
Public Key Size (B) 897         33
Signature Size (B) 655         71
Verification Time (μs) 57         120

Verification time is more critical than signature creation time in Bitcoin, 
since signature creation is performed by clients (wallets), while nodes 
focus on verification.

*Integration*

   - Falcon was included into the codebase from the original GitHub 
   repository.
   - The build system (CMakeLists.txt) was updated to support Falcon.
   - Falcon verification has been soft-fork enabled via a new script 
   verification flag.

*Next Steps & Reference*
This project serves as a practical demonstration of Falcon’s promising 
performance, highlighting its advantages over currently selected 
post-quantum signature algorithms such as SPHINCS+ and ML-DSA, which face 
significant time and space limitations. As Falcon approaches FIPS 
standardization, this work aims to provide a reference for future adoption 
and integration in Bitcoin.

Let me know what you think and if this could be of interest for which case 
I can complement the project by integrating Falcon into all the other 
spending paths. I also look forward to development/integration corrections.

Best regards,
Giulio

-- 
You received this message because you are subscribed to the Google Groups 
"Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/bitcoindev/16e01530-e9dd-481f-8c7f-ca9ccafcfcden%40googlegroups.com.
  • [bitcoindev] Falcon... Giulio Golinelli

Reply via email to