Skip to content

README: warn that not all packages are constant time - #668

Merged
cjpatton merged 1 commit into
cloudflare:mainfrom
frangelbarrera:readme/constant-time-warning
Jul 22, 2026
Merged

README: warn that not all packages are constant time#668
cjpatton merged 1 commit into
cloudflare:mainfrom
frangelbarrera:readme/constant-time-warning

Conversation

@frangelbarrera

@frangelbarrera frangelbarrera commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Adds a "Constant-Time Caveats" subsection to the README's Security Disclaimer, pointing readers at the per-package constant-time caveats that were added in #638 (seven packages) and #651 (ecc/p384): group/, oprf/, blindsign/blindrsa/partiallyblindrsa/, secretsharing/, tss/rsa/, zk/dl/, zk/dleq/, and ecc/p384/.

#657 asked for an explicit README-level warning that some experimental CIRCL packages are not constant time. PRs #638 and #651 added per-package caveats, but the README's Security Disclaimer still only mentioned that the library is experimental — it never mentioned constant time. A reader who only skims the README has no signal that they should drill into the per-package docs before relying on a package in a side-channel-sensitive context.

One file changed: README.md (+9 lines, -0 lines). No source files touched, no API change, no tests added (documentation-only change). go generate -v ./... is a no-op; go build ./... and go vet ./... are clean.

Note: dh/csidh also has inline // Non-constant time! comments in curve.go (lines 91, 133, 163) and csidh.go (line 73) that predate #638. These are on internal functions rather than at the package level, so I've left them out of the README list — happy to add a footnote if you'd prefer.

First-time contributor to CIRCL — happy to adjust wording, location, or scope.


Open in Devin Review

Issue cloudflare#657 asked for an explicit README-level warning that some
experimental CIRCL packages are not constant time. PRs cloudflare#638 and cloudflare#651
added per-package constant-time caveats to eight packages, but the
README's Security Disclaimer still only mentioned that the library is
experimental — it never mentioned constant time.

Add a "Constant-Time Caveats" subsection under the existing Security
Disclaimer, pointing readers at the per-package notes in group, oprf,
blindsign/blindrsa/partiallyblindrsa, secretsharing, tss/rsa, zk/dl,
zk/dleq, and ecc/p384.

Documentation-only change: no source files touched, no API change,
no tests added.

Refs: cloudflare#657

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Open in Devin Review

@cjpatton
cjpatton merged commit 1554bbf into cloudflare:main Jul 22, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants