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

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

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

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

金色财经挖矿数据播报 | BCH今日全网算力下降4.68%:金色财经报道,据蜘蛛矿池数据显示:

ETH全网算力174.674TH/s,挖矿难度2168.44T,目前区块高度9815549,理论收益0.00785095/100MH/天。

BTC全网算力106.260EH/s,挖矿难度13.91T,目前区块高度624615,理论收益0.00001807/T/天。

BSV全网算力2.502EH/s,挖矿难度0.34T,目前区块高度629413,理论收益0.00071928/T/天。

BCH全网算力3.405EH/s,挖矿难度0.48T,目前区块高度629623,理论收益0.00052864/T/天。[2020/4/6]

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

金色午报 | 1月21日午间重要动态一览:7:00-12:00关键词:湖北、印度储备银行、赣服通3.0、青岛农商银行、BSV、EOS VM

1. 湖北省政府工作报告:强化区块链等新型通用技术引领带动。

2. 福建:积极推动区块链等技术在制造业领域应用与融合发展。

3. 印度储备银行:并未禁止加密货币交易,只是对银行等受监管实体隔离以避免风险。

4. 济南市市长:济南片区正探索实施区块链人工智能审批等政务服务新模式。

5. 江西:“赣服通”3.0版将创新运用区块链新技术。

6. 青岛农商银行开立山东首单银行区块链电子投标保函。

7. 2019年全年矿池平均赚矿工费428.53万美元,七大矿池年收入过千万

8. BSV创世纪升级技术变更:将恢复OP_RETURN的功能,不再支持P2SH地址。

9. EOS社区:出块节点开始测试EOS VM,性能大幅提升。

10. BTC现报8666美元,近24小时上涨0.15%,市值为1570.76亿美元。[2020/1/21]

Transaction Hash:0xdd108cd36fbeaab03b29ac46d465ad9824618d683268681d3206bd78302e0d71

动态 | 金色直播间话以太坊分叉 今晚9:30准时开播:今晚9:30—10:30,以太坊核心技术成员、Ewasm团队创始成员Lane Rettig做客金色直播间,与今晚特邀主持人Primitive Ventures创始合伙人Dovey Wan进行深度对话,两位大咖将与金色财经合伙人、CoinTime COO佟扬一起跟大家聊聊“以太坊的窘境与君士坦丁堡保卫战”。Lane也是本次升级的主要负责人。[2019/1/13]

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

分析 | 金色盘面:STORJ短线小幅反弹:金色盘面综合分析:STORJ短线获得上升趋势线支撑,小幅反弹,MACD即将走出金叉,上方压力位0.4891。[2018/8/7]

需要注意以下两点:

TetherToken 合约调用分析

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

金色财经独家消息 猎豹移动高级副总裁认为猎豹进军区块链行业是一项重要举措:金色财经独家消息,猎豹移动高级副总裁孙明焱针对此次海外官方宣布推出数字资产钱包SafeWallet的事件发表声明称:“进军区块链行业和AI战略一样,是猎豹移动的一项重要举措,具有重大意义。猎豹移动会致力于始终保持在新技术发展的前沿位置,相信我们会在移动资产安全领域发挥重要作用。”[2018/1/31]

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

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

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

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

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

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

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

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

USDT 增发分析

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

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

转换成以下伪代码:

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

Transaction Hash:0xb467ea92b5c0095b1a96f35eb466b239c13e5b0b3f493e3e452f832d99830d6b

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

USDT 增发如下图所示:

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

水星链

[0:0ms0-1:688ms