-
@ ɅGOᏒɅ Marketplace
2025-05-05 12:29:57Satoshi Escrow
A Bitcoin non-custodial peer-to-peer dispute resolution using only Nostr keys.
Motivation When a Buyer wants to purchase something for a certain amount of BTC from a Seller but doesn't trust them, they can use our 2-of-2 multisig escrow address. The Buyer and Seller both lock their BTC in a multisig address. Both parties only need their respective Nostr secret keys (nsec) and each other's Nostr public keys (npub).
How it works If the trade is successful: - Both parties sign to release the funds - Buyer receives his BTC back - Seller receives his BTC back
If there's a dispute: - Parties can choose a trusted third party (arbitrator) - Arbitrator can help resolve the dispute after a timelock period - Resolution requires 2-of-3 signatures (Buyer/Seller + Arbitrator)
Technical Implementation We use Pay-to-Taproot (P2TR) multisig script path spends with a verified unknown discrete-log unspendable internal key. The system supports two resolution paths:
Collaborative Resolution 2-of-2 multisig between Buyer and Seller without timelocks.
Dispute Resolution 2-of-3 multisig between either party and the arbitrator with timelock.
Important Security Notice This application can be used offline on an air-gapped computer for maximum security. All transactions can be generated, and signed through the webpage offline.
Getting Started 1. Create Escrow Set up a new escrow address using npubs and specify amounts.
-
Sign Transaction Sign the transaction using your nsec key.
-
Combine Signatures Combine the signatures into a signed transaction.
-
Broadcast Broadcast the signed transaction to the Bitcoin network.
-
Spend Spend from the resolution address derived from your npub using your nsec.
You can learn more and try it n Testnet, Signet and Regtest from https://scrow.exchange/
Github repository https://github.com/storopoli/scrow
originally posted at https://stacker.news/items/971914
-