Keyward Server
The secrets, credentials, certificates and machine-identity platform at the centre of Keyward, what it is a fork of, how its provenance travels with every build, and what its first build is and is not.
Where things stand. Keyward Server 1.0.0-alpha.1 is the first build. It runs on an internal staging instance with empty data, for development and testing, and is not open to the public. The status page says what is proven and what is not.
What it is
Keyward Server holds the things a team must never paste into chat, into a pipeline variable or into a file in a repository: secrets, credentials, certificates and the identities of the machines that need them. It is organised as projects, each with environments (development, staging, production) and folders of secrets; secrets can reference each other, carry versions, and be rotated. Machine identities let a pipeline, a container or a service authenticate without a person's credentials; certificates and SSH certificates are issued from it.
It is a downstream fork of Infisical's MIT-licensed core, with the full upstream history, started at a baseline chosen for a reason a secrets platform must give: the version whose data path we watched decrypt every cell of our own vault in an isolated restore, not the newest. A newer upstream earns its place by passing the same proof.
Provenance in every build
Every build carries six values, as environment variables, as labels on the image and as a file inside it,
/keyward/provenance.json:
| Value | Meaning |
|---|---|
KEYWARD_VERSION |
Keyward's own version, for example 1.0.0-alpha.1 |
UPSTREAM_VERSION |
The upstream version the fork is based on, for example v0.165.16 |
UPSTREAM_COMMIT |
That version's commit |
KEYWARD_PATCHSET_VERSION |
The downstream patch set the build carries |
SOURCE_COMMIT |
The Keyward commit the build was made from |
BUILD_TIMESTAMP |
When |
The display string is Keyward 1.0.0-alpha.1 (based on Infisical OSS v0.165.16, 0b52a604). Attribution is a
requirement of the licence and a courtesy to the people whose work this builds on, not decoration.
What is changed, and what is not
Upstream's internals (package names, database objects, migrations, API paths) are left alone: renaming them would buy nothing a person can see and would cost a merge conflict forever. What Keyward changes is what a person perceives (the name, the mark, the typography, the pages, the mail) and what security or operation requires. Each change carries a reason in its commit, so the difference between Keyward and upstream can be listed at any time, and is treated as a budget rather than a byproduct.
One change is already in the first build: the typeface upstream ships, whose redistribution rights were not established, is replaced by Inter, under the SIL Open Font License. The build refuses a tree or an image that still contains the old files.
The enterprise boundary
Upstream keeps some of its code under a separate licence, in directories named ee. Keyward does not copy,
enable or work around any of it. Those paths are excluded from every Keyward release artifact by policy. The
build that enforces that exclusion is not written yet; until it is, every Keyward Server image is labelled
internal, for development and testing, and is used for nothing else. "Keyward Enterprise", where this site uses
the words, means Keyward's own server tier, built on the MIT core and Keyward's own code: enrolment of computers,
central audit and policy, the connector and the relay. See Enterprise.
Running it
Keyward Server is a container image, with PostgreSQL and Redis beside it, behind a reverse proxy that terminates
TLS. The staging instance at keyward.vault.exprezoe.com runs that way. It is not a download from this site; the
image is published through Exprezoe's own registry to the people who operate it.
What stays yours
Keyward Server runs with upstream's telemetry switched off. It sends nothing to anybody. What it holds is in its own database, on hardware Exprezoe runs, with a nightly recovery set, an off-site copy and a weekly restore that decrypts every cell to prove the keys still work.