-
Notifications
You must be signed in to change notification settings - Fork 5.7k
Add draft BIP: pqcBitcoin Post-Quantum Cryptography for Bitcoin #1832
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
Hi @QbitsCode, if this is a collaboration with @ysangkok, how come there is only one author? Has there been a discussion of this proposal on the mailing list? |
I don't have anything to do with this, don't know why my email is on the commit |
Hi @murchandamus :
|
Hi @QbitsCode, can you please add the link to the mailing list discussion of this proposal to your pull request description? (I took a quick look in the mailing list https://groups.google.com/g/bitcoindev but did not find it.) |
You're right — I mistakenly stated that the proposal was discussed on the mailing list. It was actually discussed in other forums, such as Delving Bitcoin: https://delvingbitcoin.org/t/implemented-post-quantum-cryptography-pqc-feature-into-bitcoin-core/1320. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This document does not describe the proposed feature in sufficient detail and is not a stage where it should be a pull request to this repository. The Specification section seems like a good starting point for a conversation on the mailing list about the approach. It would be preferable if the proposal had seen more discussion and the document were further developed before being submitted here. We recommend that authors iterate on a pull request against their own fork of the BIPs repository at the early sketch stage as it doesn’t make sense to bombard other subscribers of this repository with notifications while the proposal is just starting to take shape.
I’m going to turn this into a draft pull request, but I would recommend that it be closed and reopened at a later time when the proposal is fleshed out more.
Also, please look into why your commit is labeled as having been authored by Janus—that’s just weird.
BIP: Unassigned | ||
Title: pqcBitcoin Post-Quantum Cryptography for Bitcoin | ||
Author: Eid Al Subaie <[email protected]> | ||
Status: Draft | ||
Type: Standards Track | ||
Created: 2025-04-22 | ||
License: BSD-2-Clause |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The preamble should use preformatted text:
BIP: Unassigned | |
Title: pqcBitcoin Post-Quantum Cryptography for Bitcoin | |
Author: Eid Al Subaie <[email protected]> | |
Status: Draft | |
Type: Standards Track | |
Created: 2025-04-22 | |
License: BSD-2-Clause | |
<pre> | |
BIP: ? | |
Title: pqcBitcoin Post-Quantum Cryptography for Bitcoin | |
Author: Eid Al Subaie <[email protected]> | |
Comments-URI: https://github.com/bitcoin/bips/wiki/Comments:BIP-? | |
Status: Draft | |
Type: Standards Track | |
Created: ? | |
License: BSD-2-Clause | |
</pre> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the feedback. This draft is part of a broader ongoing initiative to explore post-quantum cryptography for Bitcoin. We’ll initiate the discussion on the mailing list and continue refining the proposal in my fork as suggested.
== Specification == | ||
The proposed solution introduces the use of post-quantum cryptography to Bitcoin's transaction signing process. It integrates cryptographic primitives that are resistant to quantum computing-based attacks. | ||
|
||
### Proposed Algorithm |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder whether this and the two instances below were supposed to be section headers:
### Proposed Algorithm | |
=== Proposed Algorithm === |
- Provide a roadmap for transitioning to quantum-safe cryptographic techniques while maintaining Bitcoin's decentralization and security. | ||
- Ensure Bitcoin’s resilience in the face of future technological advancements, maintaining trust in its decentralized model. | ||
|
||
== Specification == |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Specification section should describe the syntax and semantics detailed enough to allow implementation of the feature. This is just a description for an approach.
- A **modified Bitcoin node** that validates both ECDSA and PQC signatures, ensuring compatibility with both old and new addresses during the transition period. | ||
- **Test vectors** that demonstrate the functionality and security of the proposed cryptographic methods when applied to Bitcoin transactions. | ||
|
||
== Rationale == |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Given that this is the third or fourth PQ proposal in a few months, it would be especially appreciated if the Rationale got into alternative approaches.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because the details aren't specified, it's not quite clear how this would differ from BIP-360. As Murch mentioned, it would make sense to at least contrast this with that BIP. There seems to be some overlap, and the parts that don't overlap, such as PQC KEM, might be better specified as a separate BIP. If I were to make a suggestion, maybe this BIP could focus on Group 2 algorithms (for communication between nodes and wallets, as the pqc-bitcoin readme states) and BIP-360 would cover Group 1. Do you think that might make sense?
@cryptoquick Thanks for your suggestion on pqcBitcoin. We're considering your point in our evaluation. So, what you're saying take Group 1 out as it covered in your BIP-360 and just foucs on Group 2 algorithms for communications between nodes, and wallets. It makes sense but let me tell the following:
|
Hi @QbitsCode, is this proposal still being worked on? |
Yes, we're actively working on it. Given the importance of post-quantum resilience for Bitcoin, we're taking the time to ensure the proposal is precise, solid, and forward-compatible! |
Delving discussion: https://delvingbitcoin.org/t/implemented-post-quantum-cryptography-pqc-feature-into-bitcoin-core/1320