- Home
- Bitcoin wallet
Use your Bitcoin wallet
Connect a wallet you already use on BTC, BCH, or BSV. Use the supported account connection flow while keeping your existing recovery material.
Two layers, and they are worth keeping apart. Your identity attestation hashes are written to BSV. That is the anchor chain, and it does not move. Generating the identity is the other layer, and for that any Bitcoin family key you already hold will do.
One key, whichever fork you followed
The forks split the ledger. They did not split the cryptography.
BTC, BCH, and BSV all inherited secp256k1 and the Bitcoin Signed Message convention from the same codebase. One private key produces the same public key, and the same public key hash, on all three.
Your existing Bitcoin key already works
People ask which fork Sigma wants. The honest answer is that the question does not apply at the layer where the key is used.
secp256k1 everywhere
Every Bitcoin fork kept the elliptic curve from the original release. A private key is a number on that same curve in each of them, so the public key it produces is identical whichever client you generated it in.
Bitcoin Signed Message, unchanged
The signed message convention predates the forks and all three kept it. A signature produced by a BCH wallet recovers the same public key that a BTC or BSV wallet would have produced from that key.
Encoding and wallet conventions
BTC and BSV print a P2PKH address as the same base58 string. BCH re-encodes that same key hash as CashAddr. Wallets also differ on which derivation paths they use by default. None of that reaches the key.
Sigma derives from the key
Identity comes from the key itself, not from the address format your wallet prefers or the chain its balance sits on. So your existing Bitcoin key already works, whichever fork you followed.
Connect through the account wallet flow
Client side. Nothing here sends a private key anywhere.
Wallet management is a custom Sigma account API requiring an authenticated session, an owned profile, and the supported wallet proof. Installing the OAuth plugin does not mount that wallet route in your application.
// Open Sigma, sign in, and select the profile you control.
// Choose Wallets in the account navigation and follow its proof flow.
window.location.assign('https://auth.sigmaidentity.com/account');
// For app sign-in, use OAuth + PKCE and a server-side callback.
// The wallet connection API is not an OAuth callback.What Sigma does with the signature
The public key is recovered from the signature and the identity is derived from it. Sigma never sees the private key, because it never needs to.
import { PublicKey } from '@bsv/sdk';
// Address encoding only: this does not connect a wallet or prove ownership.
// verifiedPublicKeyHex must come from a separately verified wallet proof.
const publicKey = PublicKey.fromString(verifiedPublicKeyHex);
const address = publicKey.toAddress();Leaving without asking us
Recovery depends on the original key format and wallet support. Preserve a working backup and its derivation metadata before changing wallets.
What your wallet needs to do
Produce a Bitcoin Signed Message
The wallet must support the signature format and proof flow used by the selected integration. Shared cryptography alone does not guarantee compatibility.
Export or import a private key
Use compatible encrypted backups and preserve derivation metadata. Key import support does not guarantee automatic recovery of every identity or asset.
Connect a wallet and look at the result
Supported backup formats and recovery limits are in the wallet recovery documentation. If your key lives on an EVM chain instead, that path is documented separately.