13 Jul 2026CMMC Phase II suspended: no C3PAO assessments can be designated. DFARS 7012 and Rev 2 still apply.What changed, and what did not →

The production API key is in a chat message from March.

Freehold keeps keys, tokens and passwords in a vault on your own machine, sealed under a passphrase only you hold, and hands one to a teammate over a post-quantum link - never through a server or a chat history. No account, no cloud, no per-seat rent.

The session shown here is real, and the limits are written down before you ask. Read what we do not claim.

freehold · session open · 3 peers · Noise X25519 + ML-KEM-768 · vault locked
alice@fireteam ▸ /lock ••••••••••••••
✓ vault open · identity, history and credentials sealed at rest (scrypt + AES-256-GCM)
alice@fireteam ▸ /secret add prod-stripe-key sk_live_… --kind apikey --user billing@acme
✓ sealed on its own inside the vault · the program holds ciphertext
alice@fireteam ▸ /secret gen deploy-token --kind pat --once
✓ generated · reveal-once: reading it destroys it
alice@fireteam ▸ /secret list
prod-stripe-key   apikey   3 min    held by: you, dana
deploy-token      pat      just now once
names and ages, never values
alice@fireteam ▸ /secret copy prod-stripe-key
on the clipboard · cleared in 45 s
alice@fireteam ▸ /secret send deploy-token dana
✓ offered on the encrypted link · dana accepted - it is in her vault, under her passphrase
written into neither history · nothing to find in a transcript, an export or a backfill
alice@fireteam ▸ /peers
dana - direct - ML-KEM-768 - verified
jonah - LAN - no internet - ML-KEM-768 - verified
rivera - relayed - ML-KEM-768 - verified
alice@fireteam ▸ /autolock 15m
alice@fireteam ▸ /deadman 30d
idle for 15 minutes relocks the vault · 30 days unopened destroys it
alice@fireteam ▸ /evidence export --since 30d
✓ bundle written · 412 events · hash chain intact
mapped to NIST SP 800-171, 3.5.10 included · verify offline: node verify-evidence.mjs
  • 0
    Servers holding your secrets
  • ML-KEM-768
    Post-quantum on every link, today
  • 45 s
    Until a copied credential leaves your clipboard
  • 26
    Automated suites gating every claim

01 - See it work

A session, as it actually behaves

Proof, not promises

Every claim on this page is enforced by the protocol and proven by an automated gate - 26 suites, 23 of which spawn real nodes over the real network and try to break the claim. A carrier that alters a relayed message is refused. A tampered evidence bundle fails verification. A 1 GB transfer killed at 30% resumes byte-identical. Two machines with no internet find each other in under a minute. A team whose lead has lost their machine still accepts the successor the old key named. A credential handed to a teammate is read back out of both machines’ history, and the test fails if it is there. The verifiers run on plain Node.js on a machine that has never seen Freehold - so the capture and the verdict can come from different people.

/secret gen --once - a token that reads itself away

A reveal-once credential is destroyed the moment it is read, so a deploy token minted for one job cannot linger in a vault nobody remembers. Copying any credential puts it on the clipboard for 45 seconds and then clears it; nothing you did not ask for stays behind.

/secret send - the key that never enters the chat

The credential leaves your vault, crosses the same encrypted link as your messages, and lands sealed in hers - as an offer she accepted, not a message either of you now has to remember to delete. Search the transcript afterwards and there is nothing to find, because it was never written there.

…and where it is refused

In a records channel, roster policy makes the channel append-only - and a fuse is refused on every member machine, not merely discouraged by a console. That is the federal-records tension resolved rather than dodged: ephemeral where you want it, provably permanent where the rules require it.

02 - The credential vault

Your keys belong in a vault you hold, not in a thread or a cloud

00

Sealed one by one, on your machine

Every value is AES-256-GCM sealed on its own inside a vault whose key is scrypt-hardened from your passphrase, in a directory on your own disk. The running program holds ciphertext: listing, searching, the sidebar view and every export have never touched a plaintext credential, and one is opened for exactly as long as it takes to answer a single request. Copy puts it on the clipboard and clears it after 45 seconds. Nobody else has a copy of the file, which is the whole point and the whole risk: a forgotten passphrase has no recovery.

01

In the vault you already have

Credentials require the vault passphrase - every command is refused without one, and the vault cannot be turned off while credentials are in it. Values are sealed individually inside the already-encrypted store, so the running program holds ciphertext: listing, searching and every export have never touched a plaintext key. One is opened only to answer a single request.

02

Handed over, never posted

Send a credential to a teammate and it travels the live end-to-end encrypted link as an offer they accept or refuse - straight into their vault, sealed under their passphrase the moment it lands. It is written into neither side’s history, so it cannot come back in a transcript, an export, or a backfill to somebody who was offline. A machine with no vault refuses to receive one and says why.

03

It inherits every protection you set

Auto-lock drops credentials from memory with everything else. The duress passphrase and dead-man switch destroy them with the rest of the data directory. The encrypted identity backup carries them out, because a dead disk is the one thing your peers cannot help you recover from. And the evidence bundle gains NIST SP 800-171 3.5.10 - authenticators stored and transmitted cryptographically protected.

04

Reveal-once, rotation, and who else holds it

A credential can be marked reveal-once, so reading it destroys it. Rotating one keeps the value it replaced, so a half-finished cutover is recoverable. And the sender is shown who else holds each credential, because that is the list of people to re-send to when it is rotated; rotating yours does not reach their copy, and Freehold says so instead of pretending it did.

And what it does not do

This is not your browser autofill: no extension, no form filling, no phone. And once a teammate holds a credential, that copy is theirs - rotating yours does not reach it. So the app shows you who else holds each one, because that list is the blast radius and the people you have to re-send to, and telling you that is more useful than implying a control we do not have.

03 - Sovereign by architecture

The dependency is the vulnerability

01

Your identity is your key

A Freehold UID is an Ed25519 public key generated on your machine. No account, no registration, nobody to register with - and no server exists to breach, subpoena, take offline, or bill you. Peers connect directly, NAT holepunching included.

02

Post-quantum today, not on a roadmap

Every link runs Noise (X25519) plus an independent hybrid ML-KEM-768 (FIPS 203) layer - a fresh key per message, periodic re-keying, downgrade refusal. Traffic recorded today stays unreadable to tomorrow computers, ahead of CNSA 2.0 timelines.

03

Policy enforced, not suggested

A team lead signs the member list and security policy with the same key that authenticates them. Retention, expiry caps, banners and mandatory vault are enforced by every member machine. Follow several rosters at once - strictest policy wins. And the roster names a successor in advance, so losing the lead machine does not freeze the team.

04

Provenance, not trust

Every channel message carries its author own signature, bound to the channel. A tampered message is refused and logged at the receiving end. That is what makes store-and-forward safe: relayed does not mean trusted, it means verified.

04 - Capability

Slack-grade workspace, zero servers

A real daily driver

  • Channels, threads, reactions, editing, unread badges and @mentions
  • Desktop notifications, search and image previews
  • Voice and video calls, plus screen sharing, in the browser
  • A full terminal client for people who live there
  • Multi-device - one identity across up to eight machines
  • A stolen laptop is revoked account-wide and stops receiving ciphertext

Built for where clouds cannot go

  • Air-gapped LAN: two laptops find each other in under a minute, zero config
  • Private bootstrap node never announced on any public network
  • Store-and-forward relay through teammates you never overlap with
  • Mission-size files - 2 GB chunked transfers that survive a dropped link
  • Transfers resume where they stopped and are hash-verified on both ends
  • DDIL is the design point, not the failure mode

Compliance without a cloud

  • One-command signed evidence bundle mapped to NIST SP 800-171
  • Verifiable offline by a third party with nothing but Node.js
  • Records channels: append-only, deletion and self-destruct refused peer-side
  • Signed, timestamped transcripts export on demand
  • Tamper-evident hash-chained security event log
  • CUI marking banners per conversation, enforced both ends

At rest and under duress

  • AES-256-GCM at rest with a scrypt-hardened key; auto-relock on idle
  • Credentials sealed individually inside that - the program holds ciphertext
  • Duress passphrase that opens an innocent-looking empty account
  • The duress wipe clears the whole data directory - not a list of filenames
  • Dead-man switch that wipes an abandoned machine; /burn for a clean exit
  • Priority alerts everyone must acknowledge, with a live who-has-not board
  • Optional traffic-shape padding; cover traffic hides idle links

Continuity, not a single point of failure

  • A roster names its successor inside its own signature, before it is needed
  • Losing the lead machine no longer freezes the team permanently
  • Members offline during a succession pick it up when they reconnect
  • Encrypted identity backup - seed, rosters, attestations and contacts
  • Sealed with the same scrypt and AES-256-GCM as the vault
  • Stated plainly: a successor is a delegation, and a backup file is you

A desktop app, and your data stays yours

  • Version 1.2.0: installers for macOS on Apple Silicon and Intel, and Windows x64
  • Downloaded from the client portal, with a SHA-256 beside each installer
  • Identity, vault and history live in a directory on your disk, outside the app, so an upgrade never loses them
  • No account to create, no telemetry to a vendor, nothing that phones home
  • The web client and a full terminal client in the same app
  • Ad-hoc signed today; we say so rather than teach you to click through prompts

05 - The comparison

Freehold versus renting a cloud messenger

FreeholdCloud secure messengers
Who holds your secretsYou. A vault file on your own disk, sealed under your passphrase; nobody can be subpoenaed, breached or billed for it but youThe vendor: your credentials, and the metadata of who shared what with whom, sit in their cloud under their keys and their terms
InfrastructureNone. Peer-to-peer - nothing to stand up, patch, or trustVendor cloud holds accounts, routing and metadata
Cross-org collaborationImport a signed roster file per team - a sub on three primes follows three rosters at onceAdmin-gated federation: security groups and network IDs exchanged between administrators per org pair
No internet / air-gappedNative: zero-config LAN discovery, private bootstrap, relay through teammatesNo reach to the cloud means no service
Quantum resistanceHybrid ML-KEM-768 on every link, todayNo public evidence the E2EE protocol itself is post-quantum
Retention vs ephemeralityRecords channels: append-only and signed, enforced peer-side, beside fully ephemeral channelsCompliance bolt-on in the paid tier of a burn-by-default tool
Assessment evidenceSigned, 800-171-mapped bundle your assessor verifies offlineThe vendor own accreditations keep the vendor compliant - they do little for your SSP
Message provenancePer-message author signatures; tampered relays refused and auditedServer-mediated trust
Passing a credential to a teammateHanded down the encrypted link into their vault, written into neither history - included, not a second subscriptionPasted into a chat thread, or bought separately as a team password manager at another ~$4–8 per user / month
DeploymentSign in to the portal, download the installer for your machine, open it. No admin rights, no MDM packaging, no per-seat provisioningInstaller plus account provisioning per seat, and a directory to keep in sync
If someone leavesThe roster names a successor in advance, signed by the key that was already the anchor. You hold an encrypted identity backupThe vendor console restores the account - convenient, and the same fact as the vendor holding your identity
Distribution trustInstallers served through the client portal with a published SHA-256 each; ad-hoc signed, and we say soSigned, notarized installers - a real advantage today

06 - Deployment

Five minutes, no IT department

1

Download from the portal

Sign in to the client portal and pick the 1.2.0 installer for your machine: macOS on Apple Silicon or Intel, or Windows x64. A SHA-256 is listed beside each; checking it takes ten seconds and is worth doing.

2

Open Freehold and set a vault passphrase

The first open needs a right-click → Open on macOS, or More info → Run anyway on Windows, because the installer is ad-hoc signed. Then choose a vault passphrase. Everything at rest, credentials included, is sealed under it from that moment, and nobody but you can recover it.

3

Swap UIDs once, and you are operational

Send your UID over any channel you already trust and add theirs; the mutual add is the whole trust ceremony, verified with matching emoji fingerprints on a call. From then on a credential goes to a teammate as an offer on the encrypted link, straight into their vault.

07 - Plain speaking

What we do not claim - read this part

Not an accredited system

No IL4/IL5, no FedRAMP, and the cryptography is not FIPS-validated - the algorithms are the NIST standards, but the implementation has not been through a validation programme. Where a contract mandates an accredited tool, Freehold is the disconnected-operations, cross-org, records-honest complement to it - not a compliance substitute. Confirm CUI usage with your FSO.

Not notarized yet

The 1.2.0 installers are ad-hoc signed, so macOS and Windows both warn on first open, and those warnings are correct: your OS cannot verify who produced the file. The portal publishes a SHA-256 for every installer instead, which proves the download was not altered but not who made it. Notarization is a certificate we have not bought yet, and we would rather say that than teach you to click through security prompts.

Not a full password-manager replacement

The credential vault covers what a team passes between people - keys, tokens, PATs, service passwords. It is not your browser autofill: no extension, no form filling, no phone, no shared folders with per-item permissions. And once a credential is used or handed over it is outside our reach - a teammate’s copy is theirs, and rotating yours does not reach it, which is why the app shows you who else holds each one instead of implying control we do not have.

Not for thousands of seats

Built for program teams - tens of people. If you are rolling out to an enterprise directory of five thousand users, this is the wrong shape of tool and we will say so.

Not on phones yet

Desktop today: macOS on Apple Silicon and Intel, and Windows x64, in the app or a full terminal client. No phone client, so a credential you need on the move is one you copy before you leave. If you need phones now, we will tell you in the first conversation rather than the last.

Not self-updating

The desktop app does not check for new versions yet; the portal lists the current one. Upgrading is safe, because your identity, vault and history live outside the app and survive the swap. It is still a manual step, and on our list.

Not magic

A compromised laptop beats any messenger, a peer can leak anything you send, and a forgotten vault passphrase has no recovery - that is the price of nobody else holding your keys. Every feature states its limits at the moment of use. That discipline is the product.

08 - Specification

The summary for whoever will actually evaluate it

Version1.2.0 desktop app - built and published 12 September 2026
IdentityEd25519 keypair generated on your machine - no account, no registration
TransportPeer-to-peer with NAT holepunching; no server in the data path
Transport encryptionNoise protocol over X25519, peer identity pinned
Post-quantum layerIndependent hybrid ML-KEM-768 (NIST FIPS 203), downgrade refusal
Message keysFresh key per message, periodic re-keying
At restAES-256-GCM with a scrypt-hardened key; idle auto-relock
Credential vaultEach value AES-256-GCM sealed on its own inside the scrypt-hardened store, on your own disk; vault passphrase required, and it cannot be turned off while credentials are held; reveal-once and rotation history; clipboard cleared after 45 seconds
Credential handoverOffered peer-to-peer on the live encrypted link and accepted explicitly; never written into message history, a transcript or an export
Rosters and policyEd25519-signed; enforced on every member machine, strictest wins
ContinuitySuccessor named inside the roster signature; encrypted identity backup
Message provenancePer-message author signature bound to the channel
AuditHash-chained security event log; silent tampering breaks the chain visibly
EvidenceSigned bundle mapped to NIST SP 800-171 - including 3.5.10, authenticators stored and transmitted cryptographically protected - verifiable offline with Node.js
File transfer2 GB chunked, resumable, hash-verified both ends
PlatformsmacOS on Apple Silicon and Intel, Windows x64; web client and terminal client in the app; up to 8 devices per identity
DistributionDesktop installers served to signed-in clients through the portal; ad-hoc signed; SHA-256 published for each
IntegritySHA-256 published for every installer in the portal; verify before you run it
AvailabilityProvided to MacTech clients through the client portal; ask for access
Assurance26 automated suites, 23 of them driving real nodes over the real network

Installers and checksums for every build are in the client portal; if you are not yet a client, ask for access.

09 - Questions

Asked and answered

What is Freehold?

Freehold is post-quantum credential and password storage you hold outright, and the peer-to-peer encrypted chat, calls and file transfer it grew out of. Your API keys, tokens and passwords are sealed one by one inside an encrypted vault on your own machine; a credential goes to a teammate as an offer over an ML-KEM-768 link straight into their vault, never through a server and never into a message history. There is no server, no account, no per-seat rent, and no third party holding your secrets or your metadata. The name is the thesis: a freehold is property you own outright rather than rent - which is exactly the difference between this and a cloud messenger subscription.

Freehold is a password manager as well?

Yes - for the credentials a team actually passes around: API keys, deploy tokens, PATs, service passwords. They live in the same encrypted vault as your history, and the reason it belongs in a messenger is the failure it removes. The way a production key usually reaches a colleague is a chat message, a mail, or a ticket, and it stays there afterwards. In Freehold you hand it over the same end-to-end encrypted link, as an offer they accept - and it is never written into either side’s message history, so it cannot resurface in a transcript, an export, or a backfill to someone who was offline. Values are sealed one by one inside the already-encrypted file, so the running program holds ciphertext until you ask for a specific credential by name.

What stops the credential vault from being the weak link?

Three deliberate constraints. Credentials require the vault passphrase: every command is refused without one, and turning the vault off is refused while credentials are stored - a credential store that wrote production keys to a plaintext disk would not be a degraded feature, it would be a lie. A credential is decrypted only for as long as it takes to answer one request, so listing, searching and every export have never touched a plaintext value. And handing one over needs both people online, because there is no queue for a credential; a machine with no vault refuses to receive one and tells the sender why. What we do not claim: once you use a credential it is subject to everything on that machine, and once a teammate holds it, that copy is theirs - rotating yours does not reach it, which is why the app shows you who else holds each one.

How much does Freehold cost?

Freehold is provided to MacTech clients through the client portal, with no per-seat rent and no vendor infrastructure to pay for. The comparison that matters is against a cloud password manager or secure messenger at roughly $5–15 per user per month, where retention, sharing and e-discovery typically live in a premium tier. Ask us for access; a pilot for a program team is the usual first step.

How does Freehold work with no internet at all?

Two laptops on one network segment find each other in under a minute with zero configuration, using an identity-free discovery beacon. You can also run your own one-file bootstrap node that is never announced on any public network. Messages relay through teammates to people you never overlap with - carrying the original author signature, so a relayed message is still verified rather than merely trusted. Denied, disrupted, intermittent and limited connectivity is the design point, not the failure mode.

What does post-quantum actually mean here?

Every link runs Noise over X25519 plus an independent hybrid ML-KEM-768 layer - the NIST FIPS 203 standard - with a fresh key per message, periodic re-keying, and downgrade refusal. Traffic recorded today stays unreadable to tomorrow computers, which is the "harvest now, decrypt later" exposure post-quantum cryptography exists to close. This is ahead of CNSA 2.0 timelines rather than a future roadmap item.

Can Freehold produce evidence for an assessment?

One command exports a signed bundle - verified audit chain, roster policy, retention settings, crypto inventory - mapped to NIST SP 800-171 control families. A third party can verify it offline with nothing but Node.js. Drop it in an SSP or hand it to a C3PAO. Freehold also supports records channels where roster policy makes a channel append-only: deletion and self-destruct are refused on every member machine, and signed timestamped transcripts export on demand. That resolves the federal-records retention versus ephemerality tension the DoD IG has documented, instead of dodging it.

What protects a device that is lost or seized?

Identity, history, files and stored credentials are encrypted at rest with AES-256-GCM and a scrypt-hardened key, and the vault auto-relocks on idle - the browser is outside the trust boundary. A duress passphrase destroys everything and opens an innocent-looking empty account. A dead-man switch wipes an abandoned machine. There is a /burn command for a clean exit. The tradeoff is stated plainly: a forgotten vault passphrase has no recovery, because nobody else holds your keys.

Is Freehold accredited - can it replace an authorized system?

No, and we will not claim otherwise. There is no IL4/IL5 or FedRAMP accreditation. Where a contract mandates an accredited tool, Freehold is the disconnected-operations, cross-org, records-honest complement to it - not a compliance substitute. It is built for program teams of tens of people, not thousands of seats. Anyone handling CUI should confirm usage with their FSO.

How is a team set up without exchanging keys by hand?

A team lead signs the member list and security policy with the same key that authenticates them. Policy - retention, expiry caps, banners, mandatory vault - is enforced by every member machine rather than suggested by a console. You can follow several rosters at once and the strictest policy wins, which is how a subcontractor on three primes programs works in practice. Cross-org collaboration is importing a signed roster file per team, not an admin-gated federation negotiated between two organizations.

How long does deployment take?

About five minutes and no IT department. Version 1.2.0 is a desktop app: sign in to the client portal, download the installer for your machine (Mac on Apple Silicon or Intel, Windows x64), check the SHA-256 listed beside it if you want to, and open it. No Node, no Python, no admin rights. Then set a vault passphrase, swap UIDs with your teammates once over any channel you already trust, and you are operational. A team lead who wants managed policy exports one roster file; everyone else imports it.

What platforms does Freehold run on?

Version 1.2.0 ships three desktop installers: macOS on Apple Silicon, macOS on Intel, and Windows x64. The app carries the web client and a full terminal client for people who live there. One identity works across up to eight machines, messages reach every device, and a stolen laptop is revoked account-wide and stops receiving ciphertext at all. There is no phone client yet, and we will say so in the first conversation rather than the last.

Why does my computer warn me when I open the download?

Because the 1.2.0 installers are ad-hoc signed rather than notarized, and the warning is accurate: your operating system cannot verify who produced the file. macOS will refuse the first open; right-click the app and choose Open, once. Windows SmartScreen will warn; choose More info, then Run anyway. The portal lists a SHA-256 for every installer so you can prove the file you downloaded is the one we published; that proves integrity, not authorship, and we would rather say so than teach you to click through prompts. Notarization is on the list.

What happens if the team lead loses their laptop?

A roster can name a successor inside its own signature. If the issuer can no longer sign, the named key issues the next version and every member accepts it - not because they trust the new key, but because the old key, while it still worked, signed that name into the roster they already hold. Team, policy and channel scope carry over, and members who were offline pick it up when they reconnect. Separately, any member can seal an encrypted backup of their identity, followed rosters and contacts with the same scrypt and AES-256-GCM as the vault. We state the sharp edges too: a successor is a delegation, not a backup - that key can take the team at any time - and whoever opens a backup file becomes you.

Bring us the network you think will break it

The demonstration is two laptops, one switch, and no uplink - a credential handed from one vault to the other with nothing in between - or your own contested environment, if you would rather we earned it the hard way. Thirty minutes, no procurement, and you keep the evidence bundle either way.