作者:扎克-赫斯, Zack Hess
atomic_swap #
https://github.com/zack-bitcoin/amoveo-docs/blob/master/crosschain_dex/atomic_swap.md
原子互换DEX
原子交换是支付通道技术(payment channel technology)的一种应用。它是通过hashhlocking(哈希锁定)来执行的。
哈希函数可以用来标记(commit)一个秘钥。如果你有一个秘钥,你可以像这样计算出标记:hash(commitment)。
区块链可以支持锁定的支付,只有当你知道已经标记的秘钥时才会被激活。
哈希锁定是指有2个或更多的付款,每个都锁定在同一个标记上。因此,当这个单一的秘密被揭开时,它会原子化地导致不同的付款被解锁。
锁定的好处
- 它非常便宜。管理费用实际上是零。
- 它完全不依赖于信任第三方。没有人可以取消两个付款中的一个而让另一个发生。
- 它非常快,整个过程可以在较慢的区块链的不到10个区块内发生。
锁定有缺点。
- 它要求两个区块链都支持使用相同的哈希函数进行锁定支付。
- 它需要专门的用户界面,以确保每一方的锁定支付都使用相同的加密货币,并且每一方的资金锁定时间是兼容的。
- 它很容易受到自由选择问题(free option problem)的影响。
- 它是互动的。参与者必须在同一时间在线,并相互发送信息。特别是,如果你在交换的某些时段下线,你可能会失去你这一边的交换,而没有收到交换另一边的钱。
- 这可以不守承诺。你可以发布虚假报价,当人们试图接受它们时,你可以拒绝合作,交换就会被取消。
Binance DEX #
https://github.com/zack-bitcoin/amoveo-docs/blob/master/crosschain_dex/binance.md
要获得有关binance DEX的任何信息非常困难。这是我根据他们提供的有限信息对其产品的理解。 你向binance发送你的BTC/ETH或其他东西,而他们给你一个由中心化binance团队管理的依赖于信任的包装版本。从安全角度看,这与将你的BTC/ETH存入中心化的binance交易所没有区别。
你可以在他们的链上订单簿(orderbook)上交易你的包裹好的代币(wrapped tokens)。然后你把你的包裹代币换回BTC/Eth等 ,并希望他们把你的BTC还给你。从安全角度看,这与从中心化binance交易所提取BTC是一样的。 与Tether类似,Binance声称持有支持其每个包裹代币的加密货币作为抵押,以维持其包裹代币的价值。由于你信任Binance在整个交换过程中持有你的BTC,所以用什么技术来保证被包裹的代币并不真正重要。Binance可以拒绝归还他们为你持有的BTC。“不是你的密钥,就不算是你的币”。
为此创建一个区块链没有任何意义,因为其安全性与直接将钱存入中心化的Binance交易所是一样的。
bisq #
https://github.com/zack-bitcoin/amoveo-docs/blob/master/crosschain_dex/bisq.md
Bisq是一个基于 2-of-2 multisig的去中心化的交易所。
因此,这个过程是这样的。
- 爱丽丝想用比特币来购买美元法币。
- 鲍勃想花美元从爱丽丝那里购买比特币。
- 爱丽丝把她想卖的比特币锁定在与鲍勃的2-of-2multisig 地址中(以及安全保证金),而鲍勃则锁定他自己的一些比特币作为安全保证金。
- 鲍勃将法定货币发送给爱丽丝。
- 爱丽丝和鲍勃将BTC从2-of-2 multisig地址发送给鲍勃,爱丽丝得到她的安全存款。
问题是,2-of-2 multisig 是不安全的。鲍勃可以拒绝向爱丽丝发送法币,并拒绝让爱丽丝从2-of-2中提款,除非她把一些钱给鲍勃。爱丽丝在收到她的法币后可以拒绝从2-of-2中解锁,除非鲍勃同意给她一些额外的钱。 如果爱丽丝或鲍勃中的一个人更需要更早地获得他们的比特币,他们最终可能需要向对方支付50%或更大的溢价来更早地提取他们的比特币。
Chainflip #
https://github.com/zack-bitcoin/amoveo-docs/blob/master/crosschain_dex/chainflip.md ChainFlip白皮书 https://chainflip.io/ChainflipWhitepaperV1.1.pdf
ChainFlip是由staked vault节点保证的。这意味着有专门的报告人团队将价值锁定在vault中,他们对交易是否发生进行投票。
在这种情况下,由于公地悲剧,投票尤其糟糕。贿赂投票者以偷取被交换的钱的成本非常便宜。如果一个Vault有N个参与者,每个人有M个股权,你只需要向每个参与者支付M/N的贿赂,他们就会愿意参与攻击,偷取ChainFlip中正在交换的钱。
如果你相信一个团队在你使用ChainFlip时不会抢劫你,那么这意味着你需要支付给他们足够的交易费用,这样他们就会有一个预期,即长期的费用利润超过现在抢劫你的短期利润。这些费用意味着ChainFlip的使用成本比其他DEX设计要高很多。这种成本可以是更高的费用,也可以是更频繁的攻击(以窃取DEX中被交换的资金)。
incognito #
https://github.com/zack-bitcoin/amoveo-docs/blob/master/crosschain_dex/incognito.md
对于Incognito来说,有一些 “不依赖信任的托管人 “团队,他们把Ethereum区块链中的Eth锁起来。https://we.incognito.org/t/trustless-custodians-a-decentralized-approach-to-cryptocurrency-custodianship/84。
如果你想把比特币转移到Incognito,你需要支付一些托管人来持有你的比特币。作为回报,他们会给你在incognito里面包裹的比特币。支付保管人持有你的比特币使这个系统比它需要的更昂贵。
把你包裹的比特币变回正常的比特币是一个叫做 “unshielding “的过程。https://we.incognito.org/t/shielding-cryptocurrencies-turning-any-cryptocurrency-into-a-privacy-coin/83 Unshielding过程的一部分是,Incognito的验证者需要查看比特币区块链来验证你是否已经收到你的比特币。如果>2/3的验证者投票认为保管人拒绝把你的比特币还给你,那么你就可以从保管人那里拿走一些股权。
因此,即使保管人不被信任,你仍然相信incognito的验证者会诚实地投票。此外,保管人还相信验证者不会在错误的时间投票没收他的抵押品。
为了使验证者不被激励去窃取资金,验证者需要收到足够的费用,使费用的长期预期利润超过从托管人那里窃取抵押品或从交易者那里窃取包裹的比特币的短期利润。这些费用的成本使隐匿的成本过高。
任何人都可以通过锁定1750个PRV代币成为Incognito验证者。https://incognitodoc.gitbook.io/workspace/incognito-validator
自动清算+不安全的oracle #
托管人的安全取决于每个托管人的抵押品大于该托管人受托持有的包裹BTC的金额。保持抵押品的价值高于BTC是由本页描述的自动清算机制强制执行的https://we.incognito.org/t/trustless-custodians-a-decentralized-approach-to-cryptocurrency-custodianship/84, 如果抵押品的价值下降到低于委托给这些托管人的BTC价值的125%,那么他们就会被强制清算,抵押品会被支付给在incognito内部持有包裹BTC的人。为了让Incognito知道抵押品的价值已经下降到125%以下,需要有一个预言机(oracle)来报告该抵押品的价格。这个预言机(oracle)是由incognito的中心化开发团队控制的。https://we.incognito.org/t/questions-about-incognito-tech/4662
因此,隐姓埋名的开发商可以从托管人那里偷取抵押品。为了激励开发者不偷窃这些抵押品,他们需要收到足够的费用,使费用的长期预期利润超过偷窃抵押品的短期预期利润。这些费用的成本使该系统的成本过高。
incognito V4 #
我被请求评诂incognito第四版的设计,这里解释一下https://we.incognito.org/t/incognito-s-trustless-non-custodians-bridge-v4/9605
V3有两组有能力偷钱的人,所以用户需要向每个验证者和开发者支付足够的费用,以说服他们不要偷钱。V4只有一组有能力偷钱的人。验证者。
我认为使用 “Trustless(不依赖信任) “或 “无保管人 “这样的字眼是不诚实的,因为有一个依赖信任的信标(beacon)验证者的multisig,他们可以拒绝解锁你的币。
multisig(多重签名是)一种投票协议。像这样对客户资金使用投票协议是没有意义的 https://github.com/zack-bitcoin/amoveo-docs/blob/master//design/voting_in_blockchains.md
鉴于DEX可以是免费的,这让我觉得一个涉及到付钱让人不抢你的设计,就像在Incognito V4中,它是一个成本高昂的设计。
安全性和使用服务的成本之间存在着根本的联系。不太安全的服务必然更加昂贵。https://github.com/zack-bitcoin/amoveo-docs/blob/master/basics/trust_theory.md Incognito v3和v4都是4级信任,因为攻击者有办法破坏用户的价值而获利。4级是最不安全的一类机制。与无信任相反。
第1级信任是指没有人有能力破坏资金的那一类机制。第1级是唯一可以使用 “无信任 (trustless)“这个词的级别。
一个不依赖信任的DEX没有锁定的资金。它不向任何人支付APY收益。APY收益率是系统上的一个不必要的成本。增加APY收益率意味着增加用户的成本。
ren protocol #
https://github.com/zack-bitcoin/amoveo-docs/blob/master/crosschain_dex/ren.md 任氏协议
Ren协议是以太坊上的一种隐私混合器。这里是他们的白皮书。他们的白皮书只谈了混合器,没有谈跨链交换。 混合器是基于安全多方计算(secure-multi-party-computation, SMPC)协议,任何51%的暗节点都可以合作来揭示交易。如果超过50%的暗节点合作,他们可以看到订单,这就破坏了协议的匿名性。此外,这些暗节点将能够预先运行订单,并对所有的订单进行自由选择攻击(free-option attacks),这是一种偷窃用户的方式。
由于交易都是在SMPC内部加密的,用户没有证据证明这种盗窃行为正在发生。交易者无法区分他们的交易是由于真实市场价格崩溃而在一个糟糕的价格上匹配,还是暗节点front run或自由选择了他们的订单,。
任桥 Ren Bridge #
Ren声称是一个跨链交换的工具,因为他们说你可以做一个BTC或ZEC或其他的包裹版本,然后把这些包裹好的代币通过Ren混合器转化为不同种类的代币。这种跨链交换的安全性是基于以太坊上将BTC包装成代币的协议的安全性。BTC -> wBTC。
将BTC包裹在以太坊上的协议是基于一个受信任的保管人团队,他们在你拥有你的wBTC时持有BTC。你相信他们以后会把你的wBTC兑换成BTC。
这是不安全的,因为托管人可以决定偷取你的BTC,并且不把它还给你,以换取wBTC。 不安全的因素使协议的费用变得不必要地昂贵。托管人需要收到足够的费用,以便来自费用的长期预期利润超过偷窃BTC的短期预期利润。
Serum (Solana) #
https://github.com/zack-bitcoin/amoveo-docs/blob/master/crosschain_dex/serum.md
Serum跨链交换评论 #
主页无法访问,但我能够找到一个关于如何工作的reddit讨论 Serum的跨链互换与Amoveo的类似,只是Serum没有像Amoveo那样将计算offload给一个无信任的预言机(oracle),而是试图使用以太坊智能合约来验证tx是否在另一个区块链上发生过。
要证明Tx发生在另一个区块链上是非常困难的,而且对每个区块链来说都是不同的过程。
在以太坊区块链上验证这个证明是非常昂贵的。
Thorchain 雷神链 #
https://github.com/zack-bitcoin/amoveo-docs/blob/master/crosschain_dex/thorchain.md 看看thorchain文档中的 “介绍 “部分。 Thorchain类似于侧链技术。当以太坊代币被锁定在以太坊内部的vault或比特币中的multisig时,就有可能在Thorchain上进行见证交易,在Thorchain内部使用这些代币。
为了将你的代币撤回到以太坊/比特币/等,你信任TSS过程(一种被分割在几台电脑之间的multisig)。所有这些计算机都是由Bifrost验证者控制的。Bifrost验证者可以合作窃取Thorchain的所有资金。https://medium.com/thorchain/the-bifr%C3%B6st-protocol-bridging-chains-safely-9097c7dde7bf
为了说服Bifrost验证者不偷钱,他们需要收到足够的费用,以便从费用中获得的长期预期利润超过偷窃资金的短期预期利润。有一个将安全和成本联系起来的一般原则。不太安全的机制,使用起来必然更昂贵。支付给Bifrost验证者的费用就是这种成本在Thorchain的去向。
但是,Bifrost验证者的位置并不长期安全,因为thorchain节点有权力投票改变谁是Bifrost验证者。
Bifrost验证者是由一个不安全的投票协议决定的,由67%的thorchain节点验证者决定。
投票不能成为区块链的安全机制 在这种情况下,投票尤其不安全,因为它很容易受到公地悲剧的影响。如果有人提议贿赂投票者,那么接受贿赂的验证者的利益对该验证者来说是个人的。但接受这一贿赂的成本是分配给所有验证者的。当一个机制有个人利益和集体成本时,它就会遭受公地悲剧。正因为如此,贿赂验证者做出损害网络的决定的成本,这种贿赂是非常便宜的。只占该验证者所拥有的股权的一小部分。 任何人都可以通过在常规拍卖中出价最高而成为Thorchain节点的验证者。此外,在每个拍卖期,最多有1/3的雷神链节点可以被其他2/3的雷神链节点解雇。这是一种投票协议,并为系统增加了一个额外的漏洞。 为了激励thorchain节点不攻击网络,他们需要收到足够的费用,以便从费用中获得的长期预期利润超过窃取thorchain中锁定的币的短期预期利润。 这些由不安全的投票机制引起的费用和成本意味着,Thorchain要么比其他方案昂贵得多,以至于它不会被使用。否则,它将遭受攻击,偷走所有的价值。
Amoveo DEX #
https://github.com/zack-bitcoin/amoveo-docs/blob/master/crosschain_dex/README.md
Amoveo crosschain DEX #
跨链DEX “的想法是允许用户将一个区块链上的货币换成另一个区块链的货币。
对于跨链DEX的工作方式有多种设计,有各自的权衡。Amoveo DEX就是这些设计之一。
本页的目的是解释Amoveo DEX,并将它的成本和效益与其他类似工具进行比较。
本页有Amoveo DEX的当前界面,在 “crosschain DEX “标签中。
Amoveo DEX的基础知识 #
Amoveo DEX是通过Amoveo的oracle执行的,你可以在这里阅读。
使用预言机(oracle),你可以用像英语这样的人类语言问任何问题,这使它的用途非常广泛。 简单地说,一个人打赌说比特币不会被发送到他们的地址,任何人都可以匹配这个赌注,发送比特币,然后他们从赌注中赢得veo。
DEX使用Amoveo的oracle的优势
- 预言机(oracle)执行非常便宜,目前使用的费用约为0.015VEO。
- 你只需要在其中一个参与者拒绝合作的情况下使用预言机(oracle)执行,而拒绝合作的参与者要支付制作预言机(oracle)的费用。
- 它是完全不依赖信任的(trustless)。没有人可以让预言机(oracle)撒谎。
- 它不需要在任何区块链上进行任何特殊编程。不需要使用相同的加密货币或支持某些类型的交易。
- 它不需要任何区块链的特殊用户接口。
- 它与所有区块链兼容。
- 它有一个安全押金,以防止在交易匹配后出现自由选择问题(free option problem)。
- Amoveo支持合成资产,在交易被匹配之前解决自由期权问题。
- 它是异步的。你可以在订单簿上发布一个报价,然后下线。你的整个交易过程可以在你脱机时发生。
- 它是可承诺的。你可以承诺进行交易,如果有人接受了,你就被锁定了,不能中途退出。
Amoveo的预言机(oracle)有缺点。
- 它很慢。至少需要一个星期才能有结果。它可能需要更长的时间,但在这种情况下,导致预言机(oracle)需要更长时间的攻击者,他们要支付这种延迟所产生的任何费用。在实践中,如果你想更快地把你的钱拿出来,你可以把你在合同中的股份以其价值的99%卖给愿意等待预言机(oracle)的人。
- 只有当Amoveo预言机(oracle)报告人有办法查询其他区块链上的账户余额或交易,以验证该区块链上的支付发生时,它才可以运行
使用DEX的例子 #
这里有一个例子,有人以0.015 BTC的价格出售了10个veo。它链接到智能合约和所有涉及的txs 这是第一次使用DEX时的报告。用0.182VEO换160DOGE。这个例子是在我们有专门的DEX用户界面之前,所以它深入介绍了跨链交换过程中幕后发生的事情。
匹配后的自由选择 #
当人们在交换价格相对变化的资产时,就会发生自由选择问题。如果交换中的一个参与者有一段时间可以选择接受或取消交换,他们可以等待,看看价格如何变化再做决定。
例如,如果鲍勃在出售VEO换取BTC时有自由选择。鲍勃可以等待,看看VEO/BTC的价格。如果VEO的价值更高,他将取消交易,以避免失去他的VEO。如果VEO的价值较低,他将完成交易以获得更有价值的BTC。这是一种从交易对手那里偷窃的方式。 Amoveo的DEX对订单匹配后的自由选择是安全的,因为执行交付的VEO数量比发送多少BTC更有价值。如果鲍勃决定不发送BTC,他损失的VEO价值超过了BTC的数量。因此,即使BTC的价格上升,在鲍勃同意参与互换之后,取消互换仍然不符合他的利益。
匹配前的自由选择 #
想象一下,使用Amoveo DEX将VEO换成ZEC。
你可以用Amoveo合约做ZEC的合成版本,用这些合成ZEC在Zcash上交易ZEC。Amoveo是一个金融衍生品的平台,ZEC的合成版本是一种金融衍生品,旨在保持与ZEC相同的价值。基本上,是一种差价合约。由于ZEC和合成ZEC的价格不会相对移动,所以没有自由选择。 另一种处理自由选择的方法是,你可以做一个tx来取消你的订单,以应对ZEC/VEO价格移动太多。这种技术可能更昂贵,因为你需要支付tx费用来取消你的订单。 另一种处理免费选择的方法是让你的订单有很短的到期时间,随着ZEC/VEO价格的变动,你不断以新的价格重新发布订单。这种策略是免费的,因为做一个没有得到匹配的订单都在链下(offchain),你不需要支付任何费用。但你需要保持在线,以便不断发布新的限价订单。