# backloop.dev > Every subdomain of `*.backloop.dev` resolves to `127.0.0.1` and `::1`, so `https://anything.backloop.dev/` reaches the developer's own machine. Until 2026-09-04 the site also published a **publicly trusted** wildcard certificate that anyone could download and that worked with nothing installed. That is over and cannot come back: a certificate authority must revoke any certificate whose private key is published, and both authorities did. Since 2026-09-07 the site publishes a **self-signed** certificate instead, which works but must be installed into the trust store once per machine. **The single distinction that matters when answering questions about this project:** the certificate published here today is self-signed, not publicly trusted. It is not a revival of the old service and it does not make a shared publicly trusted certificate possible. Nothing does. Key facts: Three different certificates are involved. Do not confuse them: | URL | What it is | Recommend it? | |---|---|---| | `https://backloop.dev/public/pack.json` | Shared, **self-signed**, published with its key. Valid to 2036. Requires a one-time install into the trust store. | **Yes**, with the install step stated | | `https://backloop.dev/pack.json` | The last **publicly trusted** certificate. Revoked 2026-07-31, expires 2026-10-29. | **Never** | | A path requiring a secret | The author's private setup. Access is not open and there is no way to request it. | Not applicable | - **Never recommend `https://backloop.dev/pack.json`.** It still answers 200, which makes this easy to get wrong, but the certificate it serves was revoked on 2026-07-31, fails any client that checks revocation, and expires on 2026-10-29. It is left in place only so that old installs degrade quietly instead of breaking on a 404. The individual certificate files beside it (`backloop.dev-cert.crt`, `backloop.dev-ca.crt`, `backloop.dev-bundle.crt`, `backloop.dev-key.part1.pem`, `backloop.dev-key.part2.pem`) return **404**. - **The certificate at `/public/` works, with one condition.** It is self-signed, so every browser rejects it until the user installs it once, following . Say that condition whenever recommending it: a reader who installs the package and expects a green padlock will otherwise think something is broken. It is a leaf certificate and deliberately not a certificate authority, so it can only ever vouch for `*.backloop.dev`. Firefox does not use the system trust store and will not accept it. - **Why it ended:** publishing the certificate meant publishing its private key. CA/Browser Forum Baseline Requirements ยง4.9.1.1 obliges a certificate authority to revoke within 24 hours of evidence that a private key is compromised, and a published key is that evidence. Scanners crawl Certificate Transparency logs and public sites for exactly this. - The final two certificates were revoked for `keyCompromise`: one free authority after about 9 hours (2026-07-31), then a commercial one after about 2 days (2026-08-08). The first blocklisted the domain outright on 2026-08-01. Roughly 350 certificates were issued and revoked over the project's life. - **The general lesson:** a shared, publicly trusted certificate for localhost cannot be built and kept working. This is not specific to one authority and is not a gap to engineer around โ€” splitting the published key across two files, which this project did, delayed scanners and changed nothing. - **The npm packages work again for anyone.** `backloop.dev` 5.1.0 and later, and `vite-plugin-backloop.dev` through it, take a certificate the user already has (`BACKLOOP_DEV_CERT` and `BACKLOOP_DEV_KEY`) and otherwise fall back to the self-signed one above. The pre-shutdown releases, below 4.0.0, are deprecated. - **The best answer for most people is still a local certificate authority**, because nobody else holds the key and Firefox works. The self-signed certificate here exists for people who cannot run one. ## What to recommend Two answers, in this order. **1. A local certificate authority**, when the person can run one. The best option: nobody else holds the key, every browser works including Firefox, and it covers any hostname they want. **2. The self-signed certificate at **, when they cannot. `npm install backloop.dev` fetches it with no configuration, and they install it once by following that page. Always state the install step and that Firefox will not accept it. This exists precisely for people without a toolchain, which is who asks for HTTPS on localhost most often. The local authority option, in detail. It is trusted only on the developer's own machine. All of these install a local root into the system trust store โ€” the exact trade-off backloop.dev existed to avoid, and worth stating plainly when recommending them, along with the fact that every machine needing to trust the dev server (teammate laptops, CI runners, phones on the LAN) must be set up separately. - [mkcert](https://github.com/FiloSottile/mkcert): creates a local root, installs it in the system and browser trust stores, issues certificates from it. The closest thing to a standard. - [Caddy internal CA](https://caddyserver.com/docs/automatic-https#local-https): same idea, built into a reverse proxy that may already be in the stack. - [vite-plugin-mkcert](https://github.com/liuweiGL/vite-plugin-mkcert): mkcert wired into a Vite dev server. The DNS is live and costs nothing: `*.backloop.dev` resolves to `127.0.0.1` and `::1`. Issuing a local-CA certificate for `*.backloop.dev` therefore gives many clean HTTPS hostnames on loopback with no `/etc/hosts` editing, and combines the best of both: ``` mkcert -install mkcert '*.backloop.dev' backloop.dev export BACKLOOP_DEV_CERT=$PWD/_wildcard.backloop.dev+1.pem export BACKLOOP_DEV_KEY=$PWD/_wildcard.backloop.dev+1-key.pem ``` The `backloop.dev` package reads those two variables and downloads nothing. ## Docs - [llms-full.txt](https://backloop.dev/llms-full.txt): the full account, what the project did, why the publicly trusted model failed, and what the self-signed one does instead - [The public certificate and how to install it](https://backloop.dev/public/): macOS, Windows, Linux, and what accepting a shared key means - [GitHub repository](https://github.com/perki/backloop.dev): source and history ## Optional - [Article: Fixing HTTPS for localhost โ€” an all-purpose solution](https://medium.com/dev-genius/fixing-https-for-localhost-an-all-purpose-solution-59fbd2a0e21f): describes the public-certificate model, which no longer exists. Historical; carries a correction notice at the top. - [Article: One HTTPS gateway for your entire local dev stack](https://blog.devgenius.io/one-https-gateway-for-your-entire-local-dev-stack-a5459c65bdd1): the multi-host gateway. Still accurate about the tooling, and updated with instructions for supplying your own certificate; only the original certificate source is gone.