Security posture
What it proves — and what it does not.
KeyPulse is built to be reasoned about honestly. Here is what each property means, and where the open problems are.
What the proof establishes
WHO — the account. PRESENT — the device’s own local user-verification approved the use of its key for this operation (not that a named person is there or acting freely). TOGETHER — two independent devices produced compatible observations of the same physical event. NOW — it was created at the moment of the operation and did not exist before it.
Replay
Replay of a recording of a past ceremony is addressed: each ceremony is bound to a fresh challenge tied to that one operation. This is validated on real hardware.
Real-time relay — open
A live relay between two places at the same instant is a harder problem. KeyPulse is designed to raise the cost and change the nature of that attack. It does not claim to make it impossible. This is an active area of research and it has a first-class limitations page.
Data
The design minimises data. Each integrator gets an opaque, non-correlatable reference for the same user, so third parties cannot link a user across services. KeyPulse’s own infrastructure necessarily holds that mapping — it never learns civil identity, but it is not “fully anonymous”.
Where it is worth it
A high-value financial transaction · A change of administrator rights · Access to critical infrastructure · An irreversible operation · A validation that requires several people
KeyPulse next to what you already use
KeyPulse is a layer, not a replacement. It is strongest where a physical proof of co-presence has real value. The KeyPulse column is the target for Secure Chain; cells marked “research” are open problems, not shipped properties.
| KeyPulse | Passkey / FIDO2 | MFA (app / push) | OTP (SMS / email) | |
|---|---|---|---|---|
| Phishing-resistant | ● | ● | ◐ | ○ |
| No shared secret in a server database | ● | ● | ○ | ○ |
| Independent hardware key | ● | ◐ | ○ | ○ |
| Fresh challenge bound to the operation | ● | ● | ◐ | ◐ |
| Local user-verification, cryptographically bound | ● | ● | ◐ | ○ |
| Proof two independent devices are physically together | ● | ○ | ○ | ○ |
| Resists replay of a recording | ● | ● | ◐ | ○ |
| Resists a real-time physical relay | ⧗ | ◐ | ◐ | ○ |
● established · ◐ partial / by implementation · ○ not provided · ⧗ open research
Threat model, read honestly
For each threat: what is demonstrated today, what is an engineering goal, and what is genuinely open. We would rather you learn this here than discover it later.
Replay of a recorded ceremony
- Demonstrated
- Bound to a per-operation challenge; validated on real hardware.
Real-time physical relay
- Engineering goal
- Raise the cost and change the nature of the attack.
- Open research
- Characterisation and mitigations are active research; impossibility is not claimed.
Phone stolen alone / card stolen alone
- Demonstrated
- Neither device on its own can complete a ceremony.
Spoofing / injecting the environmental response
- Engineering goal
- Reject implausible or absent responses.
- Open research
- Bounds on an adversary synthesising a response that passes the comparison.
Firmware / hardware compromise of a device
- Engineering goal
- Secure Element + Secure Boot on reference hardware.
- Open research
- The current card is an R&D demonstrator on off-the-shelf parts.
Coercion / duress
- Engineering goal
- KeyPulse informs an authorization decision; duress-aware flows are an integrator responsibility.
Questions past this page? Ask KeyPulse → Request a briefing →