my’blog

简洁原子互换制定(SAS):经历两笔营业来完善跨链交互 | BTC

原子互换(Atomic Swaps)是一栽能在分别类型数字资产之间实现往信任的点对点营业技术,它也是跨链技术的其中一栽,而此前通例的原子互换,清淡必要4笔营业才能完善。

而在近期,比特币开发者Ruben Somsen描述了一栽仅操纵2笔营业(或3笔营业)而进走的往信任币交换过程,并将其称为简洁原子互换(SAS)制定。

这栽“减半”制定的益处,在于它要比现有原子互换制定必要更幼的区块空间,其撙节了营业费用,并且它不倚赖于任何新的坦然性倘若或比特币共识变更。

此外,倘若比特币行使了taproot,则能够更添私密且有效地进走原子互换营业。

对于SAS制定,暗号学和坦然顾问Lloyd Fournier在进走评审后外示,该方案是理论上的突破,对其而言,三笔营业的思想是最优雅的外达,而两笔营业的制定则是一个更优化的版本,它在某些情况下能够会是有意义的。

简洁原子互换制定(SAS):经历两笔营业来完善跨链交互

 (图:简洁原子互换设计)

以下是SAS方案的详细描述:

今天,你能够在操纵单签名者ECDSA 适配器签名(Adaptor Signatures)的情况下操纵SAS方案,或者是操纵Schnorr签名+MuSig。

(注:除了文章,还有一个关于SAS方案的视频注释)

上风: 成功完善只必要两笔链上营业,而之前的制定则必要四笔; 无脚本,并且其中一条链不必要声援时间锁(timelocks); 可用于有效的隐私交换,例如Payswap; 弱点: 能否访问资金取决于记住隐秘(在备份方面会带来复杂性); 2 tx 制定的情况下,timelock声援链有在线/瞭看塔请求(3 tx 制定则不必要);   制定步骤  

0.)除了方括号中的签名,Alice&Bob对以下营业进走预签名: success_tx(给Bob钱):[sigSuccessAlice] + [sigSuccessBob] revoke_tx (timelock): sigRevokeAlice + sigRevokeBob,必须由以下操纵:

refund_tx(相对timelock,退款给Alice):[sigfundalice]+{sigfundbob}

timeout_tx(更长的相对timelock,给Bob钱):sigTimeoutAlice + [sigTimeoutBob]

 

{sigRefundBob}是一个适配器签名(adaptor signature),其必要 secretAlice来完善。

1.) Alice接着操纵keyAlice和keyBob行为公钥与Bob锁定1 BTC。

倘若制定在步骤1之后战败休止: Alice发布revoke_tx,然后发布refund_tx和sigRefundBob,以拿回她的BTC; 倘若Alice未能及时发布refund_tx,则Bob将在超时后认领这笔BTC; 2.)Bob用secretAlice和secretBob行为公钥,与Alice一路锁定竞争币。

倘若制定在步骤2之后战败休止:

一旦Alice发布sigRefundBob之后,Bob清新了secretAlice,并重新获得了对竞争币的限制权。

3.)制定完善: Alice将适配器签名 {sigSuccessAlice} 交给Bob,这必要secretBob来完善; Bob现在可经历success_tx认领BTC,展现secretBob,从而让Alice限制竞争币(3tx制定的情况); 另一栽情况,Bob只是将secretBob交给了Alice; 同样,Alice将keyAlice交给Bob,以屏舍她对refund_tx的认领权; Bob不息监视这条链,由于一旦Alice发布了revoke_tx,他将不得不做出反响; 更优雅的制定战败:

倘若制定在步骤1之后休止,Alice将被迫实走3笔营业,而Bob则异国实走任何营业。吾们能够经历引入带有timelock的第二个refund_tx,将其缩短到两笔,该timelock能够在revoke_tx之前发布,并直接从融资营业中付出。发布此营业还将经历适配器签名向Bob表现secretAlice。在3tx制定中,这一输出能够直接发送给Alice。在具有在线/暸看塔请求的2 tx制定中,此输出必要一个脚本:Alice + Bob立即可用,或在相对timelock之后由Alice操纵。主要的是要仔细,此营业必定不及在步骤3中发布。一旦Bob能够完善success_tx,则在表现secretAlice之前,必要revoke_tx来使success_tx无效。

常见题目解答(FAQ):

1、倘若Alice不仔细让Bob发布timeout_tx,为什么不批准她不息认领竞争币呢?

答:Alice 能够同时发送revoke_tx,泄露两个隐秘,并能够造成亏损。这能够经历增补另一笔营业来完善,但如许做效果不高,也不会激励Alice。

2、是否能够在只声援绝对时间锁(absolute timelocks)的链上实现此制定?

答:是的,但是Bob必须在timelock到期之前花失踪他交换的币(或者操纵3 tx制定)。请仔细,revoke_tx必须在timeout_tx奏效之进展走确认,倘若费用骤然上涨,这能够会成为题目。refund_tx也不批准CPFP超时发送,由于它们必须自力确认才能最先使success_tx失效。

3、制定完善后,Alicee没法只发布revoke_tx吗?

答:是的,她最先必须移动竞争币(以使secretAlice无效),然后可尝试经历发布revoke_tx来认领BTC,迫使Bob在refund_tx奏效之前在链上做出逆答。eltoo费用付出法(必要sighash_anyprevout)或第二个CPFP可用输出能够是一栽改进选择(并且还减轻了费用增补的题目),但是请仔细,倘若制定未能成功完善,这也会增补所需的tx数据量。

4、这能够和哈希锁(hash lock)一首操纵吗?

答:是的,经历sigalise+preimageBob或sigBob+preimageAlice 就能够让竞争币可操纵,并确保BTC端的相符约表现了任何一个原像。请仔细,这不是无脚本的,所以会增补营业的大幼。

盛开性题目:

能够仅需实走一次链上营业就能够进走闪电网络的原子互换营业,这将必要某栽二级HTLC,批准发送者在一准时间后经历泄露隐秘来作废闪电网络付出。

作者:Ruben Somsen

感谢Lloyd Fournier的逆馈和审阅。

有关原料:

1、Tier Nolan挑出的初版原子互换方案 :https://bitcointalk.org/index.php?topic=193281.msg2224949#msg2224949

2、门罗的原子互换:https://github.com/h4sh3d/xmr-btc-atomic-swap/blob/master/README.md

3、Private Key Turnover:https://github.com/AdamISZ/CoinSwapCS/issues/53

 


posted @ 20-09-11 01:08  作者:admin  阅读量:

点击排行榜