Author

Topic: Escrow without Wallet (Read 522 times)

legendary
Activity: 1274
Merit: 1004
May 30, 2013, 06:36:49 PM
#2
That sounds like a  great..Smiley
sr. member
Activity: 335
Merit: 255
Counterparty Developer
May 30, 2013, 06:29:56 PM
#1
Purpose
Alice wants to buy 30 LTC to Bob for 1BTC. They ask Trent to serve as Escrow, but do no want Trent can spend the coins

Methodology

Step 1
Alice and Bob generate one LTC address and one BTC address. Only Alice and Bob know private keys:
(TxPubLTC, TxPrivLTC) and (TxPubBTC, TxPrivBTC)

Step 2
Trent generate one LTC address and one BTC address. Only Trent knows private keys.
(TrentPubLTC, TrentPrivLTC) and (TrentPubBTC, TrentPrivBTC)

Step 3
Trent calculates escrow addresses. Nobody knows private keys.
EscrowPubLTC = TxPubLTC +TrentPubLTC => EscrowPrivLTC = TxPrivLTC + TrentPrivLTC
EscrowPubBTC = TxPubBTC +TrentPubBTC => EscrowPrivBTC = TxPrivBTC + TrentPrivBTC

Step 4a
Alice sends 1 BTC to  EscrowPubBTC
Bob sends 30 LTC to EscrowPubLTC
Transaction done.
Trent sends TrentPrivLTC to Alice wich can calculate EscrowPrivLTC
Trent sends TrentPrivBTC to Bob wich can calculate EscrowPrivBTC

Step 4b
Transaction canceled.
Trent sends TrentPrivLTC to Bob wich can calculate EscrowPrivLTC
Trent sends TrentPrivBTC to Alice wich can calculate EscrowPrivBTC

I started to develop an API in Python and a client in html/javascript. Both will be open source. I realy do not have much time and i can not predict when a v1 will be ready.

Thank you in advance for your comments, suggestions, criticisms and ideas. This idea has occurred to me while reading this post: https://bitcointalksearch.org/topic/vanity-pool-vanity-address-generator-pool-84569

first brick: https://github.com/JahPowerBit/CryptoAddress
Jump to: