Repository navigation
Security parity with the sister project, a dice route, and a page that checks itself. Most of this release is the external review contributed by @deanrie in #7 (#1, #2, #3, #4, #6).
Added
- Roll your own randomness. A folded card under the meter takes dice rolls, five per word, and reads the words straight off the EFF table, so anyone with the same rolls and the printed list gets the same words. Rolls that look typed rather than rolled (one number, a repeating block, a run, a missing face, a loaded die) are named, and the first press makes nothing until a separate "Make it anyway".
- The clipboard is cleared 60 seconds after Copy, as long as you stay on the page and copy nothing else; the page never reads the clipboard to check.
- Signed releases. Each release is now built by GitHub Actions and its file is signed through Sigstore. Check a download with
gh attestation verify mypassphrase.html -R seQRets/My-Passphrase, a check that does not depend on trusting this repository. SHA256SUMS.txtin the repository, and/.well-known/security.txt.
Changed
- A stricter Content-Security-Policy: each inline script is pinned by its SHA-256, so the browser runs exactly those blocks and nothing injected;
connect-src 'none'and no referrer. - The page refuses to run inside another site's frame and says why.
- Screen readers announce the status line; printing or "Save as PDF" blanks every secret on the page; reduced-motion settings are honoured.
- Every push is checked in CI: 62 checks in headless Chrome, both word lists re-derived from their upstream sources, and the CSP pins.
Fixed
- The dice card sits below the meter, so the crack time stays on a laptop's first screen.
- With a character pool selected, the dice card asked for rolls by the character count ("320 rolls for 64 words"); it now counts in words.
- The header glow no longer makes a 320px phone scroll sideways on iOS Safari.
Verify your download
f332e0d7b5cd3f19da10c93250c0349874fbe2afc4e38f20bf8fca2e8bb70d82 mypassphrase.html
macOS: shasum -a 256 ~/Downloads/mypassphrase.html · Linux: sha256sum ~/Downloads/mypassphrase.html · Windows: Get-FileHash $HOME\Downloads\mypassphrase.html -Algorithm SHA256
If the value differs, stop. Do not open the file.