[Feature]: Publisher-authenticated SHA-256 checksums and attestations for browser downloads
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- playwright, typescript
Direzione di ricerca
Start by reading the three referenced registry and download files to confirm how archive URLs and revisions are selected. Then trace how Playwright publishes release metadata and browser archives; the issue does not identify an existing checksum or attestation entry point. Done means maintainers define a publisher-authenticated verification procedure or decide how to provide authenticated checksums for the listed archives.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
🚀 Feature Request
Please provide independently verifiable, publisher-authenticated integrity metadata for browser archives distributed through Playwright, such as SHA-256 digests in a signed manifest or verifiable release attestation.
For Playwright 1.64.1 on Windows x64, the following default archive URLs were identified from the browser registry and revision manifest (without environment-variable overrides):
| Component | Revision | Archive URL |
|---|---|---|
| Chromium | 1248 | https://cdn.playwright.dev/builds/cft/156.0.8078.4/win64/chrome-win64.zip |
| Chromium Headless Shell | 1248 | https://cdn.playwright.dev/builds/cft/156.0.8078.4/win64/chrome-headless-shell-win64.zip |
| FFmpeg | 1013 | https://cdn.playwright.dev/dbazure/download/playwright/builds/ffmpeg/1013/ffmpeg-win64.zip |
Could the maintainers please clarify:
- Are these the correct official Windows x64 archive URLs for Playwright 1.64.1?
- Are official SHA-256 digests available for the exact archive bytes?
- Is there a publisher-authenticated source for these digests, such as signed release metadata or verifiable attestations? If signatures or attestations are available, please include the trusted signing-key identity or trust root and the commands required to verify them.
- What verification procedure is recommended for security-sensitive or restricted environments?
- If authenticated checksum metadata is not yet available, could Playwright consider publishing it for future releases?
Relevant source files:
- https://raw.githubusercontent.com/microsoft/playwright/v1.64.1/packages/playwright-core/src/server/registry/index.ts
- https://raw.githubusercontent.com/microsoft/playwright/v1.64.1/packages/playwright-core/browsers.json
- https://raw.githubusercontent.com/microsoft/playwright/v1.64.1/packages/playwright-core/src/server/registry/oopDownloadBrowserMain.ts
Example
Example use case: a restricted Windows CI or test environment that must verify browser binaries before installing them into a protected execution directory.
The desired workflow is:
- Download the official Playwright browser archives into a temporary location.
- Retrieve publisher-authenticated checksum metadata or attestations.
- Verify the signature or attestation against a documented trusted key or trust root.
- Calculate SHA-256 for each downloaded archive and compare it with the authenticated digest.
- Install or publish the browser files only after all checks succeed.
- Fail closed if any archive, signature, revision, or checksum cannot be verified.
This would cover Chromium, Chromium Headless Shell, and FFmpeg without treating a locally generated checksum as independent proof of authenticity.
Motivation
The Playwright browser revision manifest identifies expected browser versions, but revision mapping alone does not authenticate the downloaded archive contents.
The npm package signature does not necessarily cover browser archives downloaded separately. Similarly, successful HTTPS downloads, HTTP status checks, and content-length checks do not provide an independently verifiable SHA-256 identity for each archive.
In a security-sensitive environment, calculating hashes from an existing local browser cache is insufficient to establish independent upstream provenance, particularly if the cache was previously writable by untrusted principals.
Publisher-authenticated integrity metadata would allow organizations to build reproducible, auditable, fail-closed browser installation workflows while preserving strict filesystem and access-control policies.
This is a supply-chain integrity enhancement request, not a claim that the listed archives are compromised or that a specific vulnerability has been exploited.
- Lingua principale
- TypeScript
- Stelle
- 99.1k
- Fork
- 6.8k
- Merge medio
- 17h 6m
- PR unite (30g)
- 306
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di microsoft/playwright
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 76/100
microsoft/playwright#43987 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
microsoft/playwright#43986 ·
I maintainer di solito rispondono entro 1 giorno
-
[Bug]: Embedded number/range inputs contribute their `value` attribute, not their current value, to accessible namesForse già presa @lazerg l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 35/100
microsoft/playwright#43984 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 64/100
microsoft/playwright#43983 ·
I maintainer di solito rispondono entro 1 giorno
-
needs-triage
Difficoltà 5/5 Più di una settimana Idoneità per principianti 30/100
microsoft/playwright#43969 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di microsoft/playwright
Issue simili
-
desktop v3 windows
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
esengine/DeepSeek-Reasonix#15016 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
FR: Support CJK brackets, symbols and full-width markers in footnoteHeuristics (EBPAJ support)Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
readest/readest#7413 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement good first issue priority: medium size: XS
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno
-
content triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
eliasstravik/herdr-projects#788 ·