Eliminating double-spends with two-party self-escrow for high value transactions



Summary:

In high-value transactions, the fact that funds will be sent is known before they actually are. Existing escrow solutions take advantage of this fact; for instance, Localbitcoins provides sellers the ability to escrow their funds with Localbitcoins prior to when the funds are released to the buyer. With nLockTime, a third-party escrow agent is not required. Instead, prior to Alice sending the funds to the escrow address, she has Bob sign a refund transaction that unlocks at some time in the future. Local Trader is functionality built into the Mycelium Android wallet that helps users trade cash for bitcoins by finding traders in their local area. Local Trader already has pre-meetup buyer to seller communication built-in. The implementation sketch of Mycelium Local Trader shows how it can be extended to self-escrow. While the above is relatively complex, from the user's point of view the process is quite similar to how Mycelium already works.Transaction malleability is an issue that needs to be addressed. Adding a third-party escrow to the two-party escrow is a last ditch measure to ensure that if malleability is an issue the third-party can release locked funds manually. Secondly, a future soft-fork such as Pieter Wuille's BIP62 can eliminate malleability.


Updated on: 2023-06-08T21:43:59.622242+00:00