You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Post-Quantum Cryptography: ML-DSA for message signing + PQC TLS for broker connections #10370
I have checked the issues list
for similar or identical feature requests.
I have checked the pull requests list
for existing proposed implementations of this feature.
I have checked the commit log
to find out if the same feature was already implemented in the
main branch.
I have included all related issues and possible duplicate issues
in this issue (If there are none, check this box anyway).
Related Issues and Possible Duplicates
Related Issues
None
Possible Duplicates
None
Brief Summary
France's ANSSI will [stop certifying security products without post-quantum cryptography starting in 2027 (https://gizmodo.com/the-quantum-threat-to-encryption-is-coming-france-just-set-a-2027-deadline-2000773650) - the first hard regulatory deadline of its kind globally. Additional mandates: US NSA CNSA 2.0 (2027), NIST IR 8547 (deprecation by 2030, disallowed by 2035), EU critical infrastructure (2030).
Summary
Celery uses public-key cryptography for message signing (security serializer) with RSA/ECDSA - both quantum-vulnerable. Broker TLS connections (RabbitMQ, Redis) also lack PQC documentation or configuration guidance.
Two Gaps
1. Message Signing (security serializer)
Celery's security serializer signs task payloads with classical signatures. An attacker who captures signed tasks could forge them with a quantum computer. ML-DSA (FIPS 204) should replace RSA/ECDSA for message signing.
2. Broker TLS
Celery's broker_use_ssl passes TLS options to the broker client library. With OpenSSL 3.5+, PQC key exchange (X25519MLKEM768) works passively, but there is no documentation, testing, or explicit configuration guidance.
pyca/cryptography 47+ already ships ML-DSA (FIPS 204) with sign/verify support. The PR guards all imports with try/except ImportError.
Secondly, France's ANSSI stops certifying non-PQC products in 2027. NIST IR 8547 deprecates classical asymmetric crypto by 2030. Organizations using Celery for government, healthcare, or financial workloads will need to demonstrate PQC readiness in their message signing pipeline.
Activity
netanmangal commentedon Jun 21, 2026
I am happy to resolve this issue and raise up PR.
fix: add domain-separation context and address review feedback
auvipy commentedon Jun 22, 2026
isn't it too early now?
netanmangal commentedon Jun 22, 2026
pyca/cryptography47+ already ships ML-DSA (FIPS 204) with sign/verify support. The PR guards all imports withtry/except ImportError.Secondly, France's ANSSI stops certifying non-PQC products in 2027. NIST IR 8547 deprecates classical asymmetric crypto by 2030. Organizations using Celery for government, healthcare, or financial workloads will need to demonstrate PQC readiness in their message signing pipeline.
Add ML-DSA key and certificate detection alongside RSA
Add ML-DSA signing path in PrivateKey.sign()
Add ML-DSA verification path in Certificate.verify()
Add documentation for ML-DSA message signing and PQC broker TLS
Add tests for ML-DSA post-quantum signing support
fix: add domain-separation context and address review feedback
fix: resolve codespell and mypy CI failures
fix: resolve mypy no-redef error by declaring type before try/except