Inspiration
INSSats was born from observing 7 critical problems with state pension systems like Brazil's INSS:
- Centralization and government deficit - Deficit-ridden governments that constantly print money devalue retirement assets
- Demographic crisis - Inverted age pyramid: fewer contributors for more retirees
- Lack of exit option - Mandatory contribution through taxes, no alternative
- Risk of fund misappropriation - Resources can be diverted for other political purposes
- Unethical use of resources - Your money finances projects contrary to your values
- Changing rules "mid-game" - Retirement age constantly changes
- Lack of personalized consulting - Nobody helps you plan adequately
The inspiration was to create a sovereign, transparent, and sustainable alternative using Bitcoin as a store of value and Simplicity smart contracts to guarantee immutable rules.
What it does
INSSats is a decentralized private pension platform built on Bitcoin (Liquid Network) that offers:
Three-Persona Architecture:
SAVER
- Manages retirement via mobile app
- Controls 100% of resources
- Can make planned withdrawals (with 7-day timelock) or urgent withdrawals (with consensus)
BROKER (Consultant)
- Offers personalized human consulting
- Performs P2P exchange (BRL → L-BTC)
- Validates urgent operations
- Business model: 2-5% fee on deposits + optional consulting
VAULT KEEPER (Custodian)
- In production: M-of-N multisig geographically distributed (e.g., 3-of-5 nodes)
- Validates operation security
- Publishes proof of reserves
- Business model: 0.5-1% annually on AUM
Simplicity Smart Contract:
Flexible N-of-M multisig with different logic per operation type:
- Planned operations: 1 signature + 7-day timelock + veto right
- Urgent operations: 3-of-3 consensus (all parties) + urgent fee
- Emergency veto: Any party can block suspicious operation
Configurable parameters at vault creation:
- Broker and keeper fees
- Timelocks (planned, urgent, key recovery, params change)
- Urgent operation fees
How we built it
Technology Stack:
Layer 1 - Blockchain:
- Liquid Network (Bitcoin sidechain with Simplicity support)
- L-BTC ("Wrapped" Bitcoin with greater privacy)
Layer 2 - Smart Contracts:
- Simplicity - Formal language with mathematical verification
- SimplicityHL - High-level language (Rust-like syntax) that compiles to Simplicity
We implemented:
- create_vault() - Vault creation with configurable parameters
- deposit() - Deposit with automatic broker fee calculation
- initiate_planned_withdrawal() / execute_planned_withdrawal() - Withdrawals with timelock
- initiate_urgent_withdrawal() - Urgent withdrawals with 3/3 consensus
- veto_operation() - Veto by any participant
- collect_keeper_fee() - Proportional annual keeper fee collection
- update_params() - Parameter updates with consensus and timelock
Layer 3 - Backend:
- Rust for CLI and contract integration
- PSET (Partially Signed Elements Transactions) to coordinate distributed signatures
Technical Challenges Overcome:
- Simplicity is pure functional - No mutable state, no loops, no side effects
- No floats - Balance and Fee calculation using basis points (250 bp = 2.5%)
- Block-based timelocks (not timestamps) - Liquid: 1 block = 1 minute
- Cryptographic validation - Schnorr signatures (BIP-340) via native jets
- Signature coordination - PSET flow to collect 3 geographically distributed signatures
- Integration between Green wallet (Kotlin) and Simplicity (Node)
Challenges we ran into
Simplicity learning curve
- Completely new language, pure functional paradigm
- Limited documentation, few examples available
- Had to study original paper and source code
Pure functional language limitations
- No mutable variables → All functions return new values
- No loops → Limited recursion
- No floats → Fee calculation with integers (basis points)
Distributed signature coordination
- How to collect 3 signatures from participants in different locations?
- Solution: PSET (Partially Signed Elements Transactions)
- Challenge: Integrate PEBT with air-gapped cold storage
Balancing security and convenience
- Users want easy access, but security requires friction
- Solution: Timelocks for planned operations (7 days) + emergency veto
- Urgent operations require 3/3 consensus
**Implementing in 40 hours (Satshack 2025)
- Very ambitious scope
- Had to prioritize: App, smart contract + web, leaving integrations for later
Calculating fees without losing precision
- Simplicity operates with u32/u64, no decimals
- Solution: Basis points (10000 bp = 100%)
- Keeper fee prorated over time: (balance × fee_bp × blocks_elapsed) / (10000 × blocks_per_year)
Accomplishments that we're proud of
First decentralized private pension system in Simplicity
- Nothing similar exists in the Bitcoin ecosystem
- Real use case
Smart contract PoC
- 5 main functions written
- Vault creation and operations dipatch
- Params and Veto logic working
Innovative security model
- Asymmetric security: each persona has appropriate level
- Saver: hot wallet (convenience)
- Broker: air-gapped cold storage (MANDATORY in production)
- Vault Keeper: M-of-N geographic multisig (maximum security)
Veto system that protects against all attacks
- Compromised Saver → Broker/Keeper can veto
- Compromised Broker → Saver/Keeper can veto
- Compromised Keeper → Saver/Broker can veto
- Collusion of 2 parties → Third party can veto
CLI, Web and Mobile interface
- Contract creation with configurable parameters
- Create vault, Deposit, planned withdrawal, veto operations
What we learned
About Simplicity:
- Static analysis allows knowing execution cost before running
- Formal verification offers mathematical proofs of correctness
- Bounded execution eliminates infinite loop risk
- Jets (native operations) are essential for efficient cryptography
- SimplicityHL is crucial for productivity (pure Simplicity is too low-level)
About Bitcoin and Covenants:
- Timelocks are fundamental for reversible operations
- Multisig alone isn't enough - needs intelligent logic
- PSETs are the solution for distributed signature coordination
About Pension Systems:
- Global problem: almost all state systems are unsustainable
- Demographic crisis makes pay-as-you-go models unviable
- Individual capitalization + Bitcoin solves inflation + confiscation
- Human consulting is essential (not just technology)
About Development:
- Minimal viable scope is crucial in hackathons
- Technical decisions need justification (we documented everything)
What's next for INSSats
Phase 1: Testnet (1-2 months)
- Deploy on Liquid testnet
- Closed beta with 10-20 early adopters
- Pilot Broker certification program
- External security testing
Phase 2: Mainnet Alpha (3-4 months)
- Deploy on Liquid mainnet with capital limits (e.g., 0.01 BTC/user)
- 5-10 certified Brokers operating
- 1-2 institutional Vault Keepers
Phase 3: Advanced Features (6-12 months)
- Integrated retirement simulator (calc.bitcoineracademy.com)
- Automated dashboard with projections and charts
- Reputation system for Brokers
- Impact analysis of contributions and withdrawals
Phase 4: Scale (12+ months)
- Remove capital limits
- Expand to other countries (Argentina, Venezuela, Turkey)
- Vault Keepers competing in open market
Long-term Vision:
- Make INSSats the standard for Bitcoin private pension
- Network effect: more Brokers/Keepers = more trustworthy
- Bitcoin financial education for millions of people
- Real and functional alternative to failed state systems
INSSats - Your Retirement, Your Rules, Your Bitcoin!
Built With
- elements
- kotlin
- simplicity
Log in or sign up for Devpost to join the conversation.