看板 DigiCurrency 關於我們 聯絡資訊
看了一下你的敘述 感覺是發一個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://www.ptt.cc/bbs/DigiCurrency/M.1491181557.A.408.html
L0v35: 這個合約只能當作保險 雙方都放入和交易等值的ETH 如果出事 04/03 12:25
L0v35: 就有失去合約裡資金的危險 用懲罰來鼓勵誠實 04/03 12:25
L0v35: 時間差的話 Broker可以分別釋出資金 04/03 12:26
L0v35: 擔保人則是用佣金只有在釋出資金時收取來鼓勵誠實 04/03 12:27
TomSoong: 基本上這樣漏洞還是很多,建議不要一次換太多 04/03 12:27
L0v35: 我現在知道的漏洞就是forceRelease的return 要改成throw 04/03 12:30
L0v35: 你可以指出哪裡還有漏洞嗎? 04/03 12:31
TomSoong: 時間差在跨鏈會有問題,不然你把全部流程寫出來我們討 04/03 14:16
TomSoong: 論 04/03 14:16
TomSoong: 先不討論智能合約code,先討論整個交易流程邏輯 04/03 14:26
L0v35: 合約完全不管雙方如何交易 這個合約只是用來放collateral 04/03 18:06
L0v35: 交易是否完成由broker確認並釋放存在合約裡的資金 04/03 18:07
L0v35: 要自動化而且decentralized跨鏈交易 目前只有BTC<->ETH做的 04/03 18:08
L0v35: 到 Oracalize也許可以做到更多 但也是第三方服務 04/03 18:08