Connecting your wallet
Live mode connects to your Strike account through Strike Builder Connect. You sign one message with your own wallet. You don't send a transaction, pay gas or move funds.
Which network you connect to
You connect to the Strike network Live orders execute on: Strike testnet on the hosted app. Your Strike account, the API key and the collateral are all on that network. That stays true although practice on the hosted app shows Strike mainnet's prices: connecting never touches a mainnet account there.
The consent screen names the network first. On testnet it reads "Testnet only. Strike testnet collateral has no real value." A deployment that trades on mainnet says "Mainnet: real funds." instead.
Supported wallets
| Chain | What your wallet does |
|---|---|
| Ethereum | signs a text message (personal_sign, EIP-191) |
| Solana | signs a text message (signMessage) |
| Cardano | signs data through the CIP-30 dApp connector (signData) |
If you don't have a Strike account yet, Strike creates one for your wallet when you connect.
What happens, step by step
- You pick a chain and connect your wallet, so strikeabox knows your address.
- strikeabox creates a new API key for you. The server generates a fresh Ed25519 key pair: the API wallet. The private half never leaves the server.
- strikeabox asks Strike for a consent message. It sends Strike your address, the chain, the builder code
strikeabox, the maximum builder fee you are asked to approve (fee_share_bps: 100, which is 1 %), and the public half of the new key (POST /auth/builder/request-signature). - You read the consent screen. It shows Strike's exact message, plus what it means in plain words (below). Nothing is signed yet.
- Your wallet signs Strike's message, exactly as Strike wrote it.
- strikeabox sends the signature to Strike (
POST /auth/builder/verify-signature). Strike creates your account if needed, approves the builder for your account, revokes any earlier strikeabox key, and activates the new one.
The challenge expires after 5 minutes. If you take longer, start again. Each attempt is a call to Strike, so attempts are limited: at most 5 per account in any ten minutes (and 20 per network). If you hit the limit, wait about ten minutes.
The message you sign
This is the exact text Strike asks you to sign. The values in angle brackets are filled in for you:
Connect to Strike via builder "strikeabox".
This authorizes the builder to collect up to 1% fee on your trades.
Referral attribution: none.
By signing, you are entrusting your API wallet private key to this builder. You trust the builder to store and use this key responsibly.
Wallet: <address>
Chain: <chain>
API Key: <public key>
Nonce: <nonce>
Timestamp: <time>
Complete verify-signature within 5 minutes; after that the challenge expires.Line by line:
- Builder "strikeabox". strikeabox is registered with Strike as a builder: an app that places orders for its users.
- Up to 1% fee. This is the most strikeabox may ever charge per order, and Strike enforces it: an order with a higher builder fee is rejected. strikeabox charges less than that: on the hosted deployment it charges 0.05 % (5 basis points) per order. The consent screen shows both numbers before you sign, and every live plan shows the fee in dollars. See Fees.
- Referral attribution: none. Connecting doesn't sign you up under anyone's referral.
- Entrusting your API wallet private key. strikeabox holds the private key of the API wallet created for you. See what the key can do and how it is kept.
- Wallet, Chain, API Key. Check these: they must be your address, the chain you picked, and the key the consent screen shows.
- Nonce, Timestamp. Make the signature single-use and time-limited.
Read the message in your wallet before you sign. If anything differs from the consent screen, don't sign.
What the key can and cannot do
The API wallet key lets strikeabox act on your Strike account:
- Can: place and cancel orders, and read your balances, positions and orders.
- Cannot withdraw. Strike requires a signature from your own wallet for every withdrawal, and only pays out to the wallet you connected with. The API key alone can't move your funds out.
strikeabox only uses the key for Live boxes: placing the entry with its target and stop, cancelling leftover orders, closing at the deadline or when you ask, and reading your account to show results and reconcile. It has no deposit or withdrawal feature. It doesn't change your leverage.
How the key is kept
- Generated on the server and never sent to your browser or written to logs.
- Encrypted at rest with AES-256-GCM. The encryption is bound to your strikeabox account and the key's public half, so an encrypted key can't be moved to another account.
- Deleted for good when you disconnect.
Why on the server and not in your browser? Because a live box must be closed at its deadline, and protected, even if you close the app. The worker can only do that if it can sign for you.
You need collateral
Live boxes need collateral in your Strike account, and strikeabox doesn't deposit for you. On the hosted app that is testnet USD: fund your account at testnet.strikefinance.org.
When connecting isn't available
Live mode is a deployment setting. When the operator has switched it off, the deployment has no builder code or key-encryption key, or a mainnet deployment hasn't enabled trading with real funds, the app says why ("Live trading is switched off on this deployment") and a connection attempt is refused. Practice mode is unaffected.
Trouble connecting?
See Troubleshooting → the wallet won't sign and the Cardano notes.