全网最深入的比特币生态防钓鱼指南(Taproot 升级最新版)

时间:2024-09-25 编辑: 浏览:(573)

作者:OneKey 中文,来源:作者推特@OneKeyCN

2021年末,Taproot 升级在第 709,632 个区块生效。那时候的人们,沉浸在以太坊 NFT 的热潮之中,无人知晓这将是 BTC 最「造富」的一次升级。

Taproot 与 Segwit 升级一起为 BTC 网络引入了新特性,也让区块数据间接扩容(相当于 1 MB 到 4 MB),成为了 2023 年至今 BTC 生态爆发的导火索。Taproot Assets、 Ordinals BRC-20、 ARC-20、 Runes 等新资产涌现,也让 Taproot 的转账采用率基本一直保持在一半甚至以上。

然而,新资产与新特性的引入也伴随着新的安全挑战。

比特币生态有着与以太坊生态不一样的底层模型。目前 BTC 新资产生态这种「好多东西都有待建设」和「理解门槛偏高」的场面,相信让很多用户都感到兴奋——毕竟这往往意味着「暴富」的机会。

但这也会对用户的安全操作意识提出了新的要求,否则很容易不明不白地就丢币。甚至还出现了如之前 Atomic 市场错误使用签名类型导致黑客攻击的事故。

下文 OneKey 深入浅出告诉大家如何在安全基础设施有限的 BTC 生态,最大程度保护资产安全,预防钓鱼。

Taproot 升级的具体影响简析

在讲述具体的防钓鱼措施之前,我们需要铺垫下 Taproot 升级的影响。

除了此前提到间接促进了 BTC 多资产生态的繁荣之外,在 BTC 交易底层其实也发生了很大的变化,主要是两个:Schnorr 签名和 MAST 技术。而这两者结合 PSBT (部分签名交易)之后,便让黑客钓鱼的发挥空间更多了。

一个是 Schnorr 签名。没错,这次升级把白皮书里的 ECDSA 签名换掉了。这个签名的技术特性是多个签名或者公钥聚合为一个。以往需要多个签名一次次确认的工作,现在只需要验证一次,直接缩小了签名的占用空间。

一个是 MAST 技术。如果说前者是聚合签名,那么 MAST 就是用来「聚合」多个脚本(对于脚本,你可以理解为比特币的有限「智能合约」)。同时,提交验证解锁花费的时候,也只需要验证花费条件其中的一个。很多条件的复杂的脚本的占用空间可以大大缩小。

这两个技术对隐私性的影响是最大的,同时也隐含了安全风险的空间。

对于转账记录,升级后所有的 UTXO 转账看起来都一样。在 Mempool 里面转账类型都显示为 P2TR ,地址都是 bc1p 开头相同长度的地址。

在以前,你可以很轻松区分转账到普通地址(P2PKH / P2WPKH)和转账到脚本地址(P2SH / P2WSH)的区别。

现在观察其他人花费掉一个 UTXO 之前,你根本无法分辨转账到普通地址与转账到脚本地址的区别。

对于脚本,矿工验证也只需要暴露脚本的一个花费条件,其他的分支脚本,外界不得而知。

预防比特币生态新资产钓鱼的 5 个心术

显然,目前 BTC 一层的资产生态的安全基础设施远没有以太坊强大,有许多东西需要用户先行理解学习。

同时,钓鱼的原理也和以太坊不太一样,很多钓鱼攻击在被发现之前可能整个市场都不太了解。例如 Atomic 市场的*SIGNHASH_NONE 签名安全事故,Unisat / Xverse 钱包也是后来才加入的安全提醒。

(1)第一个心术:老生常谈的加密安全基本功。

也就是注意私钥离线储存安全、注意是否为信任的网址和注意保护电脑不要中招木马病毒等等。

可是,在 FOMO 的市场中,新项目可能尚未形成信任共识就会有用户想要去「冲」,这时候接下来的几个心术就尤为重要。

(2)第二个心术:明确输入输出。

以太坊有「盲签名」。也就是说在签名的时候,如果钱包不解析,你只能看到一段乱七八糟的字符,无法预知签名之后资产会发生什么变化。这也就造成了丢币的风险。

而在比特币中,一定会明确一个交易的输入和输出,以及输入输出的对应的转账地址。(也就是:「从哪来,来了多少币」和「到哪里去,去了多少币」。)

签名的时候,不论是否使用 PSBT,交易前后会发生的变化,是一定会明确地显示在钱包中。所以核对输入输出是否符合自己的意图预期,非常重要。

例如假如黑客想要一次性钓走你的所有 Ordinals 铭文 NFT,在交易的输入(INPUT)中,一定会显示你的所有铭文 NFT 都被放进去了。同时输出(OUTPUT)中会显示他们都去到了陌生的地址里。

以使用 Unisat 在 MagicEden 挂单 Ordinals 铭文 NFT 为例子。当你在 MagiEden 市场挂单一个或者多个铭文 NFT 时,弹出的 PSBT 签名请求会显示交易的输入(INPUT)是你的某一个铭文或者多个铭文,输出则会显示,一旦交易成功,你会收到多少的比特币。

(3)第三个心术:签名类型要小心。

你可以在这里看到比特币目前的签名类型的科普(https://btcstudy.org/2021/11/09/bitcoin-signature-types-sighash/)。

这里面唯一需要注意的签名类型就是 SIGHASH_NONE(0x02)和 SIGHASH_NONE | SIGHASH_ANYONECANPAY(0x82)。这两个都意味着你「只对交易的输入签名,不管交易的输出」。

对于交易铭文资产而言,安全的签名类型应该是SIGHASH_SINGLE | SIGHASH_ANYONECANPAY(0x83),能够通过 PSBT 免信任构造一个完整的交易。这也是 MagicEden、OKX 等主流铭文交易市场使用的签名类型。

以 Atomic 市场之前错误使用 SIGHASH_NONE | SIGHASH_ANYONECANPAY(0x82) 签名为例。

当你挂单 Atom 铭文资产的时候,你在签名的时候确实看到了正确的输入和输出,即「规定了我挂单的资产在输入里,输出也有我能收到的钱」。

但是,黑客完全可以拿到这个 PSBT 修改输出,提交的交易也会被矿工打包,最终让你收不到挂单的钱。总之是因为使用的签名类型只对输入部分签名,最终导致「零元购」。

好在,目前主流的 BTC 生态钱包,比如 Unisat 和 Xverse,已经都支持了高亮提醒或者禁止 SIGHASH_NONE 类的签名类型。如果看到了相关的签名类型的提示,在非特殊用途的情况下,不要使用这种签名。

(4)第四个心术:使用脚本要小心。

假如某个项目或者平台,需要你转账资产到某个脚本地址,你要格外小心。在签名的时候,你会看到你的资产在输出中去到了一个陌生的地址。

根据此前的内容你会知道,Taproot 升级后,脚本地址和用户私钥地址是一样的。

假如盗窃者试图用私钥地址欺骗,收到的资产是可以直接转走的。

假如是真的脚本地址。那要看他们是否公开了脚本地址的全部内容。假如是公布不完整的内容,尽管在使用的时候用户可以正常地签名操作转移资产,也有可能隐藏了一个或者多个的恶意 UTXO 解锁条件。可能会在未来某一天突然「收网」转走全部的 UTXO 资产。

即使他们开源了整个脚本的内容,目前市面上的钱包也并没有验证脚本 MAST 完整性和输出地址的对应性的功能,需要懂技术的用户自行使用 Taproot 的算法确认。或者十分信任这个项目和团队。

好在对于目前的应用,各种铭文资产的交易都不需要使用复杂的脚本,使用 PSBT(部分签名交易)来规定好输入和输出即可。

但是在未来的 BTC L2 操作中,大概率会涉及到复杂多条件的比特币脚本。例如 Babylon @babylon_chain 的比特币质押脚本中,就有相对复杂一些的罚没逻辑和解锁逻辑。

假如你要使用这种比特币脚本的原生质押方式,此时开源脚本并验证安全性、完整性就尤为重要,否则就需要用户绝对信任项目方。

(5)第五个心术:关注安全动态,注意防患于未然。

关注安全领域的头部账号,保证自己能跟上最新钓鱼手法,第一时间获得警告。诸如 SlowMist 的余弦 @evilcos 、Go Plus 安全官方 @GoPlusSecurity 、Scam Sniffer @realScamSniffer 、我们 OneKey 官方账号 @OneKeyCN 。

关于防患于未然,我们可以迁移其他地方的安全经验。

例如,在以太坊中,有这样一种钓鱼方式——即构造头尾相似的地址,导致用户在历史记录中错误复制而丢失资产。而在构造 BTC 签名交易的时候,也有可能因为没有清楚地检查输出的地址而踩到坑。

在 Unisat / Xverse 等主流 BTC 生态钱包中,Taproot 地址展示为 bc1px…e9wh0 (例),而 bc1p 为 Taproot 地址的固定开头。

这相当于只展示了 6 个字母为用于确认。相对有常用地址通讯录功能、基本都展示 10 位以上的以太坊的钱包标配,显然还不够。

这意味着黑客有不小的可能,去通过生成匹配的地址进行定制化钓鱼(尽管目前在比特币上还不多)。

所以如果做的绝一些,防患于未然,应要核对尽可能完整的地址。

总之......

Study Bitcoin.

Study Bitcoin Security.

随着 Taproot 为比特币引入新资产新场景,我们也必须学习新形式的安全威胁,尤其是不断演化的钓鱼技术。

尤其是现在生态基础设施不完善的情况,即使是误操作丢币、烧币都时有发生,更别说精心策划的钓鱼了。

最新 更多 >
  • 1 JOINT币历史价格走势怎么样?

    JOINT币历史价格走势怎么样? JOINT币是由Joint Ventures公司推出的一种基于区块链技术的数字资产。Joint Ventures公司主要是一个金融科技公司,通过区块链技术给中小型企业提供了一系列金融服务,比如ICO、融资、信用评估等等。而JOINT币是其发行的唯一货币。JOINT币历史价格走势体现出了该数字资产的市场表现。 JOINT币于2018年3月份开始公布在加密货币交易所

  • 2 aqt币哪个交易所可以买到

    AQT币是一种加密数字货币,是基于区块链技术而创建的一种加密资产。AQT币是由ATP(Automated Trading Platform)生态系统发行的数字货币,旨在为用户提供更高效、更可靠的自动化交易体验。AQT币具有高度安全性和可追溯性,使得交易过程更加透明和可靠。对于想要购买AQT币的用户来说,选择一个可靠的交易所非常重要。下面将介绍三个知名的交易所:欧易交易所、币安交易所和火必交易所。欧

  • 3 HXD币的创始人是谁

    HXD币的创始人是谁?HXD币是一种去中心化数字货币,由HXD Foundation团队开发和运营。该团队最初由来自中国和韩国的开发人员组成,旨在为全球用户提供安全、快速且低成本的交易体验。HXD币的创始人是何先生。何先生的故事何先生原籍湖南,年轻时去了北京创业。他在创业过程中深深感受到了金融体系的封闭性,觉得数字货币是颠覆传统金融体系的绝佳机会。于是,他开始学习区块链技术,研究数字货币,并于20

  • 4 AKITA币去哪里交易

    AKITA币是一种新兴的加密货币,由一群热衷于区块链技术和数字资产的开发者创造而成。与比特币和以太坊等其他数字货币一样,AKITA币也具备去中心化、匿名性和安全性等特点,成为了广大投资者和交易者追逐的对象。在众多的数字货币交易所中,有几家著名的平台可以进行AKITA币的交易。以下是其中三个值得推荐的交易所:1. 欧易交易所 欧易交易所是一家知名的数字货币交易平台,成立于2018年。作为全球领先的数

  • 5 INTER币最高的时候是多少钱?

    INTER币最高价钱是多少钱?了解INTER的历史价格INTER币是一种基于区块链技术的数字货币,也是一种分布式电子支付系统。INTER币的最高价钱是多少钱?这是一个令人好奇的问题。我们通过以下内容为大家介绍一下INTER币的历史价格。2017年11月,INTER币创下历史最高价2017年11月,INTER币突破上升趋势线,创下历史最高价达到31.2美元,创下历史性的高点。当时,INTER币的市场

  • 6 AMG币怎么交易

    AMG币是一种加密货币,它基于区块链技术并由AMG基金会发行。作为一种数字资产,AMG币旨在提供一种安全、高效、去中心化的交易方式。它采用了加密技术来保护用户的交易隐私和安全,同时具备快速转账和低成本的特点。在市场上,有许多各种各样的加密货币交易所供用户选择。以下是三个著名的AMG币交易所:欧易交易所是一个知名的数字资产交易平台,提供AMG币的交易。该平台以其高度安全性和用户友好界面而闻名。欧易交

  • 7 ICSA币的创始人是谁

    ICSA币的创始人是谁?ICSA币是一种新型数字货币,其挖掘技术基于密码学和共识算法,并且是全球公认的去中心化虚拟货币,面向全球范围的数字金融市场。ICSA币如今在全球范围内得到了广泛的收藏和应用,在投资者中享有很高的声誉。那么,ICSA币的创始人是谁呢?本文将为您略作介绍。ICSA币的创始人是名叫阮清峰的年轻人。阮清峰1988年出生于华盛顿,是一个具有丰富人生经历的年轻创业者。他从小就对计算机技

  • 8 ALEPH币如何购买与销售

    ALEPH币是一种基于区块链技术的数字货币,它的目标是为用户提供可靠、可扩展和智能化的金融解决方案。作为全球首个以机器学习为基础的去中心化金融(DeFi)协议,ALEPH币旨在为用户提供透明、高效和快速的交易体验。对于那些对ALEPH币感兴趣并且希望购买或出售这种数字货币的人来说,一个重要的考虑因素是选择一个可信赖的交易所。以下将介绍三个著名的交易所:欧易交易所、币安交易所和火必交易所。欧易交易所

  • 9 AMI币在哪个平台买

    AMI币是一种新兴的数字货币,它基于区块链技术和智能合约技术,旨在为用户提供更安全、快速和便捷的交易方式。它有着许多创新的特点,例如去中心化、匿名性和智能合约等,使得AMI币成为了众多投资者追捧的对象。在AM币交易所的选择上,目前市场上有许多知名的平台可供选择。以下将介绍其中的三个著名交易所。首先是欧易交易所,欧易交易所是全球领先的数字资产交易平台之一,提供多种数字货币的交易服务。欧易交易所以其安

  • 10 HPL币历史价格走势怎么样?

    介绍HPL币HPL币是Hydro Protocol的代币,Hydro Protocol是一个去中心化的交易协议,使用智能合约在以太坊平台上构建。HPL币的发行总量为1亿个,现在已经全部发行。该代币主要用于支付Hydro Protocol网络上的交易费用,也可以作为奖励分发给网络参与者。下面将介绍HPL币的历史价格走势。上市初始阶段HPL币于2018年1月19日上线交易所,并在CoinEx和DDEX