内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体

usdt在哪里可以交易(www.caibao.it):有条件转账: 实现 L1-L2 互操作性的要害

2021-03-20 06:58 出处:  人气:   评论( 0

USDT第三方支付平台

菜宝钱包(caibao.it)是使用TRC-20协议的Usdt第三方支付平台,Usdt收款平台、Usdt自动充提平台、usdt跑分平台。免费提供入金通道、Usdt钱包支付接口、Usdt自动充值接口、Usdt无需实名寄售回收。菜宝Usdt钱包一键生成Usdt钱包、一键调用API接口、一键无实名出售Usdt。

本文意在解说 StarkEX 为支持快速取款(Fast Withdrawel)(在一个区块时间内从 Layer-2 中取款到随便 Layer-1 地址)而提出的解决方案。本方案的优点在于,其速率完全自力于 L2 的运营者天生有用性证实的速率。

快速取款模块已经运行在以太坊主网的 StarkEx 上(自 2020 年 10 月 StarkEx 2.0 公布始),而且赋能了 DeversiFi 生意所和 dYdX 生意所。

而下文我们解说的方案除了快速取款以外,尚有异常多的使用场景。我们先来领会一下需求是什么。

需求

区块链使得两方之间的免信托交互成为可能。Alice 想公布一笔仅在特定条件知足时才气执行的生意;Bob 希望在条件知足时能直接执行 Alice 的生意、不必再次获得 Alice 的允许。我们把支持此类交互模式的元件称作 “有条件生意(Conditional Transaction,CT)”。

在 L1 上实现 CT 不需要什么奇思妙想,由于智能合约可以保证时间和生意执行的耦合。但若是要求在 L2 中实现,那就有些挑战了。好比,在 StarkEx 中,生意提议人署名之后把生意通报给运营者,后者有责任来执行这笔生意,可是你用什么设施来阻止运营者在所需条件知足之前就执行这笔生意呢?

在本文中,我们只聚焦于在 L2 上实现依赖于 L1 事宜(记作 L2 | L1)的 CT。也就是说,这种 CT 要能保证,运营者仅能在某个 链上事宜 发生之后才气执行某笔签过名的生意。更进一步,我们将加入一种依赖于另一个 L2 中事宜(记作L21 | L22 )的 CT,从而支持 StarkEx 实例之间以及 StarkNet 中的互操作性。

下面,我们来形式化这种链上事宜的观点,看看我们若何在 StarkEx 中的 CT 若何行使它。

有条件生意简介

链上事宜的注册

CT 使用了 Fact Registry 合约来跟踪链上事宜。现实上,只有在一个 Fact Registry 合约中注册了的事宜,才气 “解锁” CT。举个例子,若是 Alice 直接在以太坊链上转账了 1 ETH 给 Bob(而不是通过 Fact Registry 合约),那 CT 是不能因此知足执行条件的。

在上面这个案例中,Fact Registry 合约需要一个函数 transfer(),Alice 传入 Bob 的地址作为收款方。transfer() 函数做两件事:(1)把需要转移的 ETH 发送给收款方;(2)保留对这笔转账的纪录,好比存储这笔转账相关参数(发送者、收款方、数额)的哈希值,到合约的存储项中。Fact Registry 合约还带有一个 isValid() 函数,接受一条哈希值作为参数,返回一个布尔值 —— 若是该条输入的哈希值即是合约中纪录的某条哈希值,就返回 True。云云,这个纪录在合约中的哈希值,就可以当成是一个事实(某个事宜已经发生)的证实。这个为 Fact Registry 合约引入一个新的事实的历程,通常称为 “事实注册”。

一笔签过名的 CT 所包罗的链上事宜的指纹有两个字段(现实上是这两个参数的哈希值):(1)一个 Fact Registry 合约的地址;(2)上述合约中应当纪录的事实。

StarkEx 有条件生意

StarkEx 会批量打包 Layey-2 中的生意,并使用一条发送到链上的 STARK 证实来结算这些生意。若是某一批次中包罗 CT,StarkEx 将保证相关的事实已经注册,以便能整理该批生意;否则,整批生意都市回滚。

有条件生意的案例

在本部门,我们会提出一些应用场景,并指出 CT 若何能用在这些场景中。

,

Usdt第三方支付平台

菜宝钱包(www.caibao.it)是使用TRC-20协议的Usdt第三方支付平台,Usdt收款平台、Usdt自动充提平台、usdt跑分平台。免费提供入金通道、Usdt钱包支付接口、Usdt自动充值接口、Usdt无需实名寄售回收。菜宝Usdt钱包一键生成Usdt钱包、一键调用API接口、一键无实名出售Usdt。

,

详细案例 —— 快速取款

在随便 L2 方案中,最低级的从 L2 转出资金到 L1 中的设施即是终局化一次 L2 的状态更新(在该次更新中包罗一笔取款生意)。在基于有用性证实的系统(好比 StarkEx)中,终局化一次 L2 的状态更新需要在链上提交一个响应(于此次更新)的有用性证实,一样平常来说需要 10 分钟。这就意味着,若是用户使用这种方式来取款,就不得不守候至少 10 分钟。

而快速取款的用意正是为领会耦这种(取款对 L2 状态更新的)依赖,让用户能够在 “区块时间” 内免信托地将资金取出,也即,就像使用通俗的以太坊合约一样。

那到底是怎么个流程呢?若是 Alice 想要从 L2 中取出 1 ETH 到 L1,Alice 可以在 L2 上署名一条将 1 ETH 转移给流动性提供者(LP)的 CT,条件是 LP 在 L1 上转移 1 ETH(减去一些手续费)给 Alice。Alice 的 CT 仅能在她收到 L1 上的转账之后才气执行,以是她不会晤临对手方风险。

我们来看一个能够协助 CT 的浅易的 Fact Registry 合约:

我们可以看到这个合约有一个 payabe 函数 transfer(),它的功效有两个:

(1)转移一定数目的 ETH 到某个地址

(2)挂号 keccack(amount, address, nonce)

Alice 签发的 CT 只有 keccack(1 ETH, Alice, nonce) 在 Fact Registry 中注册之后才气执行。而这个事实,也只有在给 Alice 的 1 ETH 转账发生了之后才气乐成注册。Alice 可以无需信托地取出 1 ETH,整个历程只需她的前面,和 LP 在以太坊链上提议的一笔生意。

更多应用场景

类似的流程可以捕捉到下列类型的事宜,从而 L2 的 CT 也可以有更多的用途,例如:

总结

CT 的第一种用途是快速取款,但 StarkEx 运营者可以用这一元件实现许多种类的 L2-L1 交互。

分享给小伙伴们:
本文标签:

相关文章

Copyright © 2002-2019 白山新闻 版权所有 Power by DedeMao