Developer Overview
Start Here to Find Out What You Actually Need
Seedkeeper PRO is a FIDO2 CTAP2.1 authenticator. If you are building a service that accepts passkeys, you need no Seedkeeper-specific code - implement WebAuthn and the device works, the same way any certified authenticator does. Seedkeeper libraries only matter if you are driving the device directly: provisioning, tooling, or a custom app.
Which Case Are You In?
| What you're building | What you need |
|---|---|
| A website or service that accepts passkeys | Standard WebAuthn. See WebAuthn Quickstart |
| An enterprise deployment restricting which hardware qualifies | AAGUID and attestation. See FIDO2 Integration Guide |
| Provisioning devices in volume, or internal tooling | Python Library and CLI |
| A mobile app that talks to the device over NFC | Mobile SDKs |
| Evaluating whether the hardware fits your requirements | Device Capabilities |
Why Most Integrations Need No SDK
This is worth stating plainly, because vendor documentation usually implies otherwise.
FIDO2 is an open standard with two halves. WebAuthn is a browser API - your service calls navigator.credentials.create() and get(), and the browser handles the rest. CTAP2 is the protocol between the browser and the authenticator, and it is the browser's job, not yours.
Your code never touches the device. It never learns which authenticator answered unless it asks for attestation. There is no Seedkeeper library to install, no partnership to sign, and nothing that would break if we disappeared tomorrow.
That is the intended outcome of an open standard, and it means the fastest path to supporting Seedkeeper PRO is to support WebAuthn properly. See What is FIDO2? for the background.
When You Do Need Our Code
Three cases, all of them about driving the device rather than authenticating against it.
Provisioning and tooling. Setting a FIDO PIN, loading OTP credentials, resetting applets, or scripting any of that across many devices. seedkeeper-manager is a Python library and CLI for exactly this.
Mobile apps. Talking to the device over NFC from iOS or Android requires a transport layer. We maintain forks of the Yubico mobile SDKs - see Mobile SDKs.
Reference implementations. The iOS and Flutter apps are open source and show a complete working integration end to end. See Repositories.
Everything Is AGPLv3
Firmware, apps, libraries. You can read the implementation, verify what it does, and build from source.
That has a practical consequence for integrators: if a claim in this documentation matters to your evaluation, you can check it against the code rather than taking our word for it.
Where to Go Next
- Evaluating the hardware? Device Capabilities has the raw metadata: algorithms, extensions, limits, transports.
- Adding passkey support? WebAuthn Quickstart.
- Looking for a specific repository? Repositories.
FAQ
Do I need an SDK to support Seedkeeper PRO in my service?
No. Seedkeeper PRO is a FIDO2 CTAP2.1 authenticator, so implementing standard WebAuthn is sufficient. The browser handles all communication with the device; your code never touches it directly.
Do I need a partnership or agreement with Satochip?
No. FIDO2 is an open standard with no licence fee and no gatekeeper. Any service implementing WebAuthn correctly works with the device without any involvement from us.
When would I use the Seedkeeper libraries?
Only when driving the device directly rather than authenticating against it: provisioning devices, setting PINs, loading OTP credentials, scripting deployments, or building a mobile app that talks to the device over NFC.
Is the source code available?
Yes, everything is published under AGPLv3 - firmware, mobile and desktop apps, and the Python tooling. See Repositories for the full list.