你可以在这里看到比特币目前的签名类型的科普(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类的签名类型。如果看到了相关的签名类型的提示,在非特殊用途的情况下,不要使用这种签名。
假如某个项目或者平台,需要你转账资产到某个脚本地址,你要格外小心。在签名的时候,你会看到你的资产在输出中去到了一个陌生的地址。
根据此前的内容你会知道,Taproot升级后,脚本地址和用户私钥地址是一样的。
假如盗窃者试图用私钥地址欺骗,收到的资产是可以直接转走的。假如是真的脚本地址。那要看他们是否公开了脚本地址的全部内容。假如是公布不完整的内容,尽管在使用的时候用户可以正常地签名操作转移资产,也有可能隐藏了一个或者多个的恶意UTXO解锁条件。可能会在未来某一天突然「收网」转走全部的UTXO资产。
即使他们开源了整个脚本的内容,目前市面上的钱包也并没有验证脚本MAST完整性和输出地址的对应性的功能,需要懂技术的用户自行使用Taproot的算法确认。或者十分信任这个项目和团队。
好在对于目前的应用,各种铭文资产的交易都不需要使用复杂的脚本,使用PSBT(部分签名交易)来规定好输入和输出即可。
但是在未来的BTCL2操作中,大概率会涉及到复杂多条件的比特币脚本。例如Babylon(@babylon_chain)的比特币质押脚本中,就有相对复杂一些的罚没逻辑和解锁逻辑。
假如你要使用这种比特币脚本的原生质押方式,此时开源脚本并验证安全性、完整性就尤为重要,否则就需要用户绝对信任项目方。
关注安全领域的头部账号,保证自己能跟上最新钓鱼手法,第一时间获得警告。诸如SlowMist的余弦@evilcos、GoPlus安全官方@GoPlusSecurity、ScamSniffer@realScamSniffer、我们OneKey官方账号@OneKeyCN。
关于防患于未然,我们可以迁移其他地方的安全经验。例如,在以太坊中,有这样一种钓鱼方式即构造头尾相似的地址,导致用户在历史记录中错误复制而丢失资产。而在构造BTC签名交易的时候,也有可能因为没有清楚地检查输出的地址而踩到坑。
在Unisat/Xverse等主流BTC生态钱包中,Taproot地址展示为bc1pxe9wh0(例),而bc1p为Taproot地址的固定开头。
这相当于只展示了6个字母为用于确认。相对有常用地址通讯录功能、基本都展示10位以上的以太坊的钱包标配,显然还不够。
这意味着黑客有不小的可能,去通过生成匹配的地址进行定制化钓鱼(尽管目前在比特币上还不多)。
所以如果做的绝一些,防患于未然,应要核对尽可能完整的地址。
总之......
StudyBitcoin.
StudyBitcoinSecurity.
随着Taproot为比特币引入新资产新场景,我们也必须学习新形式的安全威胁,尤其是不断演化的钓鱼技术。
尤其是现在生态基础设施不完善的情况,即使是误操作丢币、烧币都时有发生,更别说精心策划的钓鱼了。
OneKey始终将安全置于首位,紧跟技术发展并更新分享安全策略。BTC生态是这一轮牛市的主角之一,我们将继续关注BTC生态的安全挑战,一起共同促进和建设更安全的加密资产环境。
以上就是比特币生态怎么防钓鱼?比特币防钓鱼教程的全部内容,望能这篇比特币生态怎么防钓鱼?比特币防钓鱼教程可以帮助您解决问题,能够解决大家的实际问题是非常好学习网一直努力的方向和目标。