Create mechanism for committing hashes/checksums of published binaries to repos, and verifying them on install
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 1.2k
- Forks
- 271
- Avg merge
- 23h 40m
- Merged PRs (30d)
- 2
Description
node-pre-gyp currently has no mechanism for detecting a situation in which a built binary has been tampered with on s3 since its initial publication. We should have a way, after publishing a binary or set of binaries, to commit a hash (potentially signed, but might not be necessary) of the published binary to source control, publish it to npm, etc. This hash can be checked at node-pre-gyp install time, and can fail if a file on s3 has been tampered with.
For repositories that build and publish automatically on CI infrastructure in a single step as part of a release, we'll have to think about how these hashes would best make their way back into the repo. Maybe we can come up with best practices for producing them as build artifacts of some kind?
cc @mapbox/security @flippmoke
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.
Research direction
Start by reviewing node-pre-gyp's publish and install flows, including how published binaries and CI release artifacts are handled. Determine where checksums would be recorded and verified, and define completion as a documented mechanism that detects tampered binaries during installation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, node.js
- Domain
- release, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100