Before diving into BSV development, it's crucial to understand the two fundamental architectural paradigms for building BSV applications. Your choice determines how you structure your application, manage keys, handle transactions, and integrate with users.
Overview
BSV applications can be built using two distinct paradigms:
Backend/Service Development - Custodial wallet management where your application controls private keys
Frontend Integration Development - Non-custodial where users control their own wallets
Each paradigm serves different use cases, has different security considerations, and requires different SDK components.
Paradigm 1: Backend/Service Development
What It Is
Backend development is when your application manages wallets and private keys on behalf of users or for internal business operations. The application acts as a custodian, controlling the signing of transactions server-side.
✅ Business wallets - Corporate treasury management
Not ideal for:
❌ Consumer-facing dApps where users expect wallet sovereignty
❌ Applications where regulatory compliance requires non-custodial solutions
❌ Use cases requiring user signature authentication
Technical Stack
Core SDK Components:
Key Operations:
Key Management: Generate and securely store private keys in your database/vault
UTXO Tracking: Maintain UTXO database for your managed wallets
Transaction Building: Create transactions programmatically using SDK
Automated Signing: Sign with stored private keys
Broadcasting: Submit transactions to blockchain via ARC
Simple Backend Example
Security Considerations
Critical Requirements:
🔒 Secure key storage - Use HSMs, key vaults, or encrypted databases
🔒 Access control - Strict authentication for key access
🔒 Audit logging - Track all transaction creation and signing
🔒 Key rotation - Regular key updates for high-value wallets
🔒 Cold storage - Keep most funds in offline wallets
🔒 Rate limiting - Prevent automated attacks on your service
🔒 Multi-signature - Require multiple approvals for large transactions
Compliance:
You are a custodian - subject to financial regulations
May require KYC/AML procedures
Responsible for user funds security
Need insurance and security audits
Paradigm 2: Frontend Integration Development
What It Is
Frontend development is when users control their own wallets and private keys. Your application requests the user's wallet to sign transactions, but never has access to their private keys.
Architecture
Use Cases
Perfect for:
✅ Consumer dApps - Social platforms, marketplaces, content platforms
✅ Web3 applications - Where user sovereignty is expected
✅ Peer-to-peer systems - Direct user-to-user transactions