Independent review
Assessment — OpenSigner is infrastructure for embedded-wallet teams, not a consumer wallet. Its documented design splits a key into device, hot-storage, and cold-storage shares; any two can reconstruct the key temporarily for signing. That makes the placement and ownership of each service more important than a simple self-hosted label. A deployment controlled end to end by one operator can still let that operator reconstruct keys, while hybrid placement, recovery controls, or protected execution can change the custody model.
The supplied evaluation path is approachable: generate a JWT secret and a 32-byte share-encryption key, then use the Make targets to build and run the stack. Under those commands sits a sizeable system: PostgreSQL, MySQL, authentication, hot storage, a browser iframe, a sample app, Shield cold storage, and documentation. The hot-storage image builds a sample implementation, and Compose consumes a separately built Shield image pinned to v0.2.40 for linux/amd64.
Setup difficulty — moderate for the demonstration and advanced for production. A real deployment needs deliberate authentication, CORS, TLS and certificate validation between services, browser asset integrity, database isolation, secret rotation, recovery abuse controls, and incident procedures for compromised shares. The official security material is useful precisely because it does not pretend that running the containers settles those questions.
OpenSigner is a strong fit for a wallet product team with security engineering capacity that wants an auditable starting architecture and the option to place components across trust domains. It is not a safe drop-in custodian for a team that cannot threat-model key reconstruction. Managed alternatives such as Openfort, Privy, Turnkey, and Fireblocks trade some control for operated infrastructure and support; they overlap by category, not necessarily feature for feature.
GitHub reports the repository unarchived and enabled. The main branch reviewed here was committed in June 2026, with later repository pushes on feature work, and no GitHub release series was present. The README described a Quantstamp audit as in progress rather than publishing a completed report. Production users should therefore pin source and container versions, verify what was audited, review the external Shield artifact and architecture support, and commission their own security assessment.
Practical fit
Best for wallet teams able to design custody, recovery, TLS, iframe integrity, and component isolation; the example stack is not a substitute for a production security review.
Useful for
Embedded Ethereum and Solana wallet key management Two-of-three key-share recovery and ephemeral transaction signing Self-hosted, hybrid, or managed wallet infrastructure experiments
Dependencies
Docker Compose, Make, Git, and OpenSSL PostgreSQL 16 and MySQL 8.4 Node-based authentication service and Go hot-storage service Pinned Shield cold-storage container on linux/amd64
External services
Optional Openfort-managed component hosting in documented hybrid scenarios
Deployment notes
Generate secrets outside shell arguments, pin the reviewed source and Shield image, terminate TLS correctly between every component, restrict iframe origins, and decide which independent party controls each key share before treating the setup as non-custodial.
Limitations
The supplied hot-storage implementation is explicitly a sample that needs project-specific hardening. A single operator controlling enough shares can produce a custodial result despite self-hosting. The cold-storage source is consumed as an external prebuilt image and is represented as linux/amd64. No formal GitHub releases were listed, and the README described the audit as ongoing.
Project media

