织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 区块链

工程经理亲自揭开 Coinbase 管理百万比特币秘籍:父子支付技术 (2)

时间:2020-06-05 16:01来源:未知 作者:admin 点击:
图:比特币交易费用历史数据,来自 https://jochen-hoenicke.de/queue/#0,all 在 Coinbase Custody,我们意识到了这一障碍,并尝试了一些解决方案,以在客户最需要的
图:比特币交易费用历史数据,来自 https://jochen-hoenicke.de/queue/#0,all

在 Coinbase Custody,我们意识到了这一障碍,并尝试了一些解决方案,以在客户最需要的时候为他们提供优势。一个显而易见的解决方案,是在广播交易之前,立即计算交易费用,知道当前的网络状况,使得我们能够预测最佳的费用。

不幸的是,冷存储的安全要求,使得在广播之前是很难估算费用的。

冷存储遇到的挑战

冷存储安全模型,要求事先完全了解完整的交易有效载荷(包括金额和目的地),以防止在密钥恢复过程启动后,对有效载荷进行任何的更改。

另一方面,由于交易费用被编码在有效载荷中,因此这意味着必须提早在广播交易前计算费用。如果在该时间间隔内,网络突然变得拥挤,则计算出的费用可能不足以及时确认交易。

父子支付(CPFP)解决方案

比特币 UTXO 模型的一个有趣的特性是,交易是可以捆绑在一起的,然后矿工对费用进行整体评估。例如,如果一项(子项)交易花费了另一项(父项)交易的输出,则子项交易可以同时为这两项交易支付费用,而矿工是别无选择的,如果他们想从子项交易中收取超额费用,他们只能纳入父项交易。这种方法,通常被称为「父子支付」(CPFP)方案。

Coinbase 的客户平台使用该方案来加速提款已经有很长一段时间了,你可以在博客文章中了解到更多的信息,而 Custody 所面临的独特挑战,迫使我们重新考虑该方法,并由此提出了不同的设计。

在 Custody 托管产品中,我们使用「父子支付」(CPFP)技术将费用估算移动到广播之前。此外,我们使用特殊的加油站服务来支付交易费用。逐步的方法如下:

  1. 当一笔提款从冷钱包地址发起时,我们会进行初始费用估算,并使用加油站服务向该地址发送 10 倍的估算费用;
  2. 除了目的地和找零输出之外,当构建取款(父)交易时,我们添加一个输出,将预充的 10 倍费用移动到一个特殊的「费用」地址(该地址为每次取款生成,并且仅用一次)。我们把这个输出称为「CPFP link」。
  3. 一旦在密钥恢复仪式结束以及广播前签署了主交易,费用将根据当前网络条件重新估算。
  4. 费用地址会生成一笔子交易,它会花费 CPFP link 输出,支付两笔交易的费用,并将剩余的预充费用发送回加油站。

举例说明

工程经理亲自揭开 Coinbase 管理百万比特币秘籍:父子支付技术

让我们通过一个具体的例子来更好地理解这个解决方案的机制。请注意,为了简单起见,这里省略了一些小细节。 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容