作者TomSoong (?)
看板DigiCurrency
標題Re: [求助] 此版是否可做比特幣買賣交易?
時間Mon Apr 3 09:05:55 2017
看了一下你的敘述
感覺是發一個ETH智能合約讓雙方做擔保
但我不明白的事情是
如果你發ETH智能合約做擔保,但交易的東西是BTC和新台幣
屬於線上/下財產交易 和 跨鏈 財產交易
此種交易有時間差和擔保人的問題
請問如何克服?
※ 引述《L0v35 (是零不是歐)》之銘言:
: 剛剛寫好的Escrow smart contract:
: https://github.com/dymnz/Escrow/blob/master/escrow.sol
: 1. 交易雙方和Broker約好佣金
: 2. Broker部署Contract
: 3. 交易雙方從各自收款地址呼叫register1()或register2()
: 4. 交易雙方從任意地址呼叫deposit1()/deposit2()並送出資金
: 5. Broker釋出雙方資金並收取佣金
: 至於交易雙方各自要放多少錢到contract裡 contract並不管
: 這個合約可以用來當作線下交易的保險
: 安全性:
: * 資金只有兩個流向 1. 暫時凍結在合約 2. 釋出到退款地址
: * Broker只有在釋出資金時拿得到佣金
: 如果遇到惡意綁架資金的Broker 交易雙方可以呼叫forceRelase()來拿回資金
: Broker不會拿到佣金 交易雙方拿回的資金是扣除佣金後的餘額 和普通釋出相同
: 多餘的資金會永久凍結在合約
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.141.157.147
※ 文章網址: https://webptt.com/m.aspx?n=bbs/DigiCurrency/M.1491181557.A.408.html
1F:推 L0v35: 這個合約只能當作保險 雙方都放入和交易等值的ETH 如果出事 04/03 12:25
2F:→ L0v35: 就有失去合約裡資金的危險 用懲罰來鼓勵誠實 04/03 12:25
3F:→ L0v35: 時間差的話 Broker可以分別釋出資金 04/03 12:26
4F:→ L0v35: 擔保人則是用佣金只有在釋出資金時收取來鼓勵誠實 04/03 12:27
5F:→ TomSoong: 基本上這樣漏洞還是很多,建議不要一次換太多 04/03 12:27
6F:推 L0v35: 我現在知道的漏洞就是forceRelease的return 要改成throw 04/03 12:30
7F:→ L0v35: 你可以指出哪裡還有漏洞嗎? 04/03 12:31
8F:→ TomSoong: 時間差在跨鏈會有問題,不然你把全部流程寫出來我們討 04/03 14:16
9F:→ TomSoong: 論 04/03 14:16
10F:→ TomSoong: 先不討論智能合約code,先討論整個交易流程邏輯 04/03 14:26
11F:推 L0v35: 合約完全不管雙方如何交易 這個合約只是用來放collateral 04/03 18:06
12F:→ L0v35: 交易是否完成由broker確認並釋放存在合約裡的資金 04/03 18:07
13F:→ L0v35: 要自動化而且decentralized跨鏈交易 目前只有BTC<->ETH做的 04/03 18:08
14F:→ L0v35: 到 Oracalize也許可以做到更多 但也是第三方服務 04/03 18:08