金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

栏目: IT技术 · 发布时间: 4年前

近日,听说以太坊上的泰达币(USDT)频繁被增发。本着学习的目的在 etherscan 上审计了泰达币的智能合约(TetherToken)源码以及 USDT 增发相关的调用事件,本文记录一下分析过程。

以下是 TetherToken 智能合约的 USDT 增发函数:

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

可以看到增发 USDT 需要 TetherToken 合约的 owner 账户调用 issue(uint) 增发函数进行,增发成功后还会抛出 Issue(amount) 增发事件。

再看下最近的增发记录截图:

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

Transaction Hash:0xdd108cd36fbeaab03b29ac46d465ad9824618d683268681d3206bd78302e0d71

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

可以看到在上图交易详情中并没有调用 TetherToken 合约的 issue(uint) 增发函数,而是调用了 MultiSigWallet 合约的 confirmTransaction(uint) 函数完成的增发操作。

需要注意以下两点:

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

TetherToken 合约调用分析

我们先看看 MultiSigWallet 合约的 confirmTransaction(uint) 函数的实现

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

调用 confirmTransaction(uint) 函数确认并执行交易需要满足以下条件

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

submitTransaction(address,uint,bytes) 会调用到合约内部的 addTransaction(address,uint,bytes) 函数,其实现如下:

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

最终一次完整的提交 -> 确认操作流程如下:

1、调用 submitTransaction (address,uint,bytes) 函数提交事务并传入参数:contract-address、eth-value、payload。注意:提交事务包含一次事务确认。

依次发送 Submission 事件 -> Confirmation 事件。

2、调用 confirmTransaction(uint) 确认并执行事务,需要 3 个不同的 owner 账户完成最终的确认。

依次发送 Confirmation 事件 -> 执行 payload 所产生的事件(满足确认数量)-> Execution 事件。

TetherToken 跨合约调用如下图所示:

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

USDT 增发分析

继续看这笔增发交易的调用事件,正好满足调用 confirmTransaction(uint) 函数所产生的事件。

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

通过查询 transactionId 即可看到调用参数

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

转换成以下伪代码:

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

那么 Bitfinex: MultiSig 2 地址的 USDT 是哪来的呢?根据 transactionId 继续向前追踪一个事务即可找到真正为 Bitfinex: MultiSig 2 地址增发 USDT 的交易:

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

转换成以下伪代码:

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露

Transaction Hash:0xb467ea92b5c0095b1a96f35eb466b239c13e5b0b3f493e3e452f832d99830d6b

这才是真正为 Bitfinex: MultiSig 2 地址增发 USDT 的操作。

USDT 增发如下图所示:

金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露


以上所述就是小编给大家介绍的《金色荐读 | 印钞机的秘密:USDT增发最全技术细节披露》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

社交红利2.0

社交红利2.0

徐志斌 / 中信出版社 / 2015-9 / 42元

大型社交网络发展至今,开始显露出更为惊人的力量。有一个独特现象与这一结果相伴相生,即新应用或服务一进入社交网络就即时引爆,就像用户在等待它出现一样。随即开始的病毒式扩散,让创业者成为全民话题的焦点。但这一切是如何实现的?具备哪些特征的合作伙伴才可以被即时引爆? 作者从其长期追踪的近30个一进入微博、微信就引爆的经典案例中甄选出若干典型案例。从大量一手鲜活的后台数据入手,并结合腾讯对社交网络的......一起来看看 《社交红利2.0》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具