§ Case study · Web3 infrastructure · MPC 2024 · 1 yr 5 mos · Shipped

Halo — MPC wallet

First non-custodial MPC wallet for an entire UTXO network.

Kaspa. Multi-chain. Inside a Telegram Mini App.

Architected and built the first non-custodial MPC wallet for the Kaspa network, supporting multi-chain functionality on a UTXO-based model. Backend in Node.js. Designed a high-performance Twitter scraper and a RAG-based AI model for real-time market sentiment alongside it.

  • MPC
  • Kaspa
  • UTXO
  • Node.js
  • RAG
  • Web3
Network
Kaspa
first non-custodial MPC for the chain
Surface
Telegram
Mini App
Twitter scraper
<70 ms
tweet extraction
Multi-chain
Yes
expandable from UTXO base

§ Abstract

Non-custodial MPC wallets are well-explored on account-based chains. They’re not on UTXO chains. Kaspa’s BlockDAG, with its UTXO model and BlockGHOST consensus, doesn’t fit the assumptions baked into most threshold-signature libraries.

I architected and built the first non-custodial MPC wallet for the entire Kaspa network at Halo Terminal (formerly XODEX). The wallet supports multi-chain functionality from the UTXO base, lives inside a Telegram Mini App, and ships with high-throughput Node.js APIs powering a market-sentiment dashboard alongside it.

§ What surfaced

  • UTXO + MPC is genuinely harder than account-based + MPC. The signing flow has to handle multiple inputs per transaction, each potentially requiring a fresh signing round.
  • Telegram Mini Apps are an underrated distribution surface — onboarding inside a chat app the user already trusts removes nearly all wallet-creation friction.
  • A RAG-based AI model fed by a sub-70 ms Twitter scraper turned out to be more useful for institutional decision-making than I expected. The latency budget was the unlock.

§ Method

MPC threshold signing distributed across the user’s device, the platform, and a third-party share. Standard threshold ECDSA adapted for the UTXO signing pipeline. Telegram Mini App handled the user-facing UI; Node.js backend orchestrated signing rounds and broadcast.

The Twitter scraper was its own subproject — bypassing rate limits, reverse-engineered API calls, custom request pacing, achieving sub-70 ms tweet extraction at the high end. The output fed a RAG-based sentiment model that produced actionable signals on demand.

§ Implementation

  • High-throughput Node.js APIs for signing, broadcast, and balance retrieval
  • Telegram Mini App frontend with proper deep-link integration
  • Twitter scraper running as a separate worker, backed by a queue
  • KOL Sentiment Dashboard for visualization
  • Reverse-engineering of competitor wallets to inform product decisions

§ Outcomes

  • Shipped first non-custodial MPC wallet for Kaspa — production for over a year
  • Sub-70 ms tweet extraction sustained across the scraper’s operational window
  • RAG-based sentiment dashboard in active use by institutional clients
  • Halo Terminal raised follow-on capital during this period

The technical work for this role was the most demanding I’ve done in Web3. UTXO MPC isn’t a solved problem — every team I’ve talked to since has solved it differently. There’s still significant headroom for the standards.

Let's take the housing off something.

Reverse-engineering, Web3 infrastructure, firmware teardowns, consulting. I answer email inside 24 hours.