Generates a JWKS (JSON Web Key Set) from an RSA key pair and publishes it as a static site via GitHub Pages at /.well-known/jwks.json.
openssluv(for running the build script viauvx)
makeThis generates private_key.pem and public_key.pem if they don't exist, then writes public/.well-known/jwks.json.
make KID=my-key-1 ALG=RS256Defaults: KID=epic-test-key-1, ALG=RS384.
Place your existing public_key.pem in the repo root, then run:
make jwksThe private key is never required for JWKS generation — only the public key is read.
| Command | Description |
|---|---|
make keys |
Generate RSA key pair only |
make jwks |
Build public/.well-known/jwks.json from existing public key |
make show |
Print current config and file status |
make clean |
Remove generated keys and public/ directory |
Pushing to main triggers a GitHub Actions workflow that deploys the public/ directory to GitHub Pages. The JWKS endpoint will be available at:
https://<username>.github.io/<repo>/.well-known/jwks.json
private_key.pemandpublic_key.pemare gitignored — never commit them.- Only the public key parameters (
n,e) are included in the JWKS output.