← index

BIP Proposal: Stateless PSBT Coordination (Blind Relay)

An archive of delvingbitcoin.org · view original topic →

· Sean Carlin · #1 ·

Hi everyone,

I’m seeking conceptual and technical feedback on a draft BIP for Stateless PSBT Coordination, designed to solve the communication gap in multisig setups without relying on trusted, stateful servers.

Currently, coordinating a multisig transaction across hardware and software wallets requires either manual file passing (USB/SD) or relying on a centralized coordinator server that logs IP addresses, xpubs, and transaction metadata.

The Proposed Standard: I’ve drafted a BIP (bip-stateless-psbt-coordination) that proposes a “Blind Relay” model. It leverages an ephemeral, end-to-end encrypted WebSocket architecture.

Zero-Knowledge: The relay server never sees the PSBT, the xpubs, or the signatures.

Stateless: The room and all associated data cease to exist the moment the room is closed or after 24hours.

Split-Key OpSec: The room URL and decryption key (#key fragment) are transported out-of-band by the users.

Implementation (Signing Room): To prove the viability of this BIP, I’ve built an open-source reference implementation called Signing Room. I just released v1.8.0, which enforces human-layer OpSec by actively separating the transport of the room link and the decryption key in the UI.

Feedback Request: I would love the community’s eyes on:

The BIP draft itself: GitHub - scarlin90/bip-stateless-psbt-coordination: Draft Bitcoin Improvement Proposal (BIP) for a stateless, end-to-end encrypted WebSocket relay. Designed for secure N-of-M PSBT coordination, it eliminates the need for privacy-leaking, stateful servers by passing payloads entirely in RAM. · GitHub

Thoughts on the UX/OpSec tradeoff of the Split-Key UI approach in v1.8.0.

Looking forward to your thoughts and any features you think might be useful in this reference implementation.

All the best,

Sean Carlin

· Sean Carlin · #2 ·

I have just realised v2.0.0 of signing room which has alot of great improvements and also has a drop in web component so anyone can integrate with one Html Tag.

Full release notes here:

Let me know what you think.

All the best,

Sean Carlin

· Sean Carlin · #3 ·

Hi,

I just released @signing-room/sdk v1.0.0 alongside a developer walkthrough demonstrating the implementation.

Repository: signingroom/libs/sdk at main · scarlin90/signingroom · GitHub

NPM: https://www.npmjs.com/package/@signing-room/sdk?activeTab=readme

Video Walkthrough: https://youtu.be/yzcFlK6c6t0

This release decouples the core cryptographic and coordination logic from our main Angular client. It is a framework-agnostic TypeScript SDK designed to programmatically orchestrate ephemeral, end-to-end encrypted PSBT coordination ceremonies.

Because the SDK is unified with our standard web UI, all programmatic room creations, joins, and signature uploads sync dynamically in real-time. This opens up the possibility for headless multisig automation, such as AI agent signing ceremonies combined with a human-in-the-loop coordinator who retains finalization privileges.

Key areas covered in the walkthrough:

I am interested in any feedback on the API ergonomics, the event-driven coordination design, or useful features.

All the best,

Sean Carlin

· Sean Carlin · #4 · · in reply to #3

Hi All,

A quick progress update on Signing Room and the stateless PSBT coordination BIP draft.

Last week I tagged v3.4.0 of the coordinator and v1.2.0 of the SDK. The primary focus of this release is introducing Role-Based Access Control (RBAC) without introducing accounts, database state, or leaking participant identities to the relay.

Previously, the protocol operated on a binary access model (Coordinator vs. Guest), where any connected peer could download, sign, and broadcast updates to the PSBT. In institutional, legal, or high-security multisig workflows, separation of duties is critical. Transactions often require off-chain witnesses, compliance officers, or observers who need real-time verification of outputs and signatures without having the capability to submit signatures or manipulate the state machine.

To maintain zero-knowledge relay architecture:

Updates & BIP Specification

I am currently working on Tapscript / BIP 371 support to expand beyond native SegWit multisig and accommodate Miniscript spending trees.

Feedback and critiques on the token derivation and message format are welcome.

Best regards,

Sean Carlin