作者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/cn.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