Feat: ChaCha20-Poly1305 implementation.
@officialfrancismendoza is already working on this.
Since Sep 20, 2026.
Assessment
This issue has not been assessed yet.
Description
This is on the OpenSSL compatibility list.
See https://www.rfc-editor.org/info/rfc8439/ - there's actually a couple of ways to implement ChaCha20 but this is the one that's required (the nonce/counter split is different from the original specification, so be sure to follow the RFC).
OpenSSL implement ChaCha20-Poly1305 as an AEAD cipher and implement Poly1305 separately as a MAC and ChaCha20 separately as a stream cipher. We should probably follow the pattern.
Note: there are also Wycheproof test vectors for this one, in addition to what's in the RFC. Both Bouncy Castle and OpenSSL can also be used to test against.
- Dominant language
- Rust
- Stars
- 25
- Forks
- 18
- Avg merge
- 16h 38m
- Merged PRs (30d)
- 3
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from bcgit/bc-rust
-
good first issue refactor
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
-
Difficulty 4/5 3-5 days Newbie friendliness 58/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
gitbutlerapp/gitbutler#15998 · 1 comment ·
-
bug triage:deciding
Difficulty 1/5 Under an hour Newbie friendliness 88/100
open-telemetry/otel-arrow#4132 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100