有人点了一次“连接钱包”。三天后USDT没了。链上记录显示。他之前对某个空投网站做过tpwallet合约授权的,额度是无限。授权不是转账,是允许合约调用你的代币。你签的就是一张权限凭证。恶意合约拿到这个权限,可以随时把该代币划走。

TP钱包只是入口,真正的问题在链上权限记录。tpwallet合约授权到底是什么啊?

把它想成给DApp一张有额度的卡。

钱包签名后,链上会记下spender地址和allowance的。很多网站默认勾选无限授权,用户以为只授权一次,实际是长期有效,除非主动撤销了,否则权限一直在。

授权USDT。被划走的就是USDT;授权NFT的setApprovalForAll。整个系列都可能被转走。在TP钱包里可以找“安全”或“授权管理”,不同版本入口不一样;找不到就用链上工具查地址的,revoke.cash或区块浏览器上的授权检查。一次tpwallet合约授权危不危险。

看三件事,合约地址是否知名、额度是否无限、授权的是不是主流资产呢?空投、土狗、博彩、推特假客服发的链接,风险高。

小额度授权比无限好。签名页面会显示Approve和数量的,数量是2^256-1或unlimited,就是无限授权。不要只看页面UI,钱包确认页的合约地址才是真的。TP钱包弹出签名时,核对域名、链、合约。

看不懂就先拒绝,拒绝不会损失资产了,乱签会。已经授权了怎么办呢?撤销了。准备对应链的gas。打开授权查询工具,输入钱包地址,筛选spender,点revoke的,把授权额度设为0。

撤销也是一笔链上交易。可能花几美元到几十美元吧?取决于网络拥堵了。

撤销后最好断开钱包连接。有人问,卸载TP钱包是不是就安全了?不是。卸载App不等于撤销授权,换手机也不等于,因为权限记录在链上。授权的是恶意合约且资产已被划走,撤销不能追回,只能止损。

个人观察,人把tpwallet合约授权当成“登录”的。登录只证明地址归属,授权是给资产操作权。建议把常用钱包和交互钱包分开。大额资产放冷钱包或单独地址了。

每次授权前问自己,这个合约我信不信?额度能不能改成最小的?用完要不要撤?合约授权像钥匙。

不是聊天记录,删不掉。定期查授权,比出事后再找客服有用得多。