网站为什么要数你的资产
一些网站需要知道”这个用户名下有哪些币”:报税工具要汇总持仓、结算工具要选支付货币。在提案设想的年代,实现方式是网站自己维护一份热门代币清单——合约地址加 ABI——然后逐个查余额。这个笨办法有两个漏洞:清单永远列不全,用户会看到明明持有却被漏掉的资产;清单又可能列太多,把用户根本不在乎的空投垃圾也翻出来反复展示。EIP-2256 的思路是别数链,数钱包:钱包本来就管理着你关注的资产,直接问它不更快?这份 2019 年 8 月提交的提案叫 wallet_getOwnedAssets,目前状态 Stagnant,从未进入主流钱包。

参数与返回的形状
方法收两个参数:一个地址,和一个可选的选项对象。选项里 chainId 把范围限定在某条链,types 按接口类型过滤(比如只要 ERC20 或 ERC721),limit 声明网站最多想要几条,justification 是网站用人类语言写的一段话,解释”我为什么要问这个”——提案特意注明此字段”可选但推荐”。返回是一份资产记录数组,每条带合约地址、链号、类型标签,再挂一个资产专属的 options:ERC-20 的样例里包含名称、符号、图标和以最小单位计的 balance、小数位 decimals。余额进返回值是个刻意的优化:让网站不必再为显示余额去查链——提案自己也承认,这类信息”通常是公开的”,这句轻描淡写值得每个用户多想一层。
三种用户选择
提案的界面建议部分是全文最有意思的段落。它给钱包设计了三个动作按钮:接受,网站拿到全部请求的资产;拒绝;第三种最特别——“改写”:用户可以在批准前把返回范围调小,只勾选愿意让网站看到的那几项。若请求的是全量清单,钱包应展示资产总数并允许逐个点选;若是选择型请求,用户从清单里挑一个。提案还建议钱包把用户常用资产排在列表前面。把这三个按钮放到今天的语境里看,它就是一份现成的隐私核对单:网站问的每个”读取类”请求,都值得用”能不能少给一点”过一遍。
它停在哪里,后来者补了什么
这条提案没走完的路有两个注脚。一是同期相近方向的网络资产发现提案各自为政、无人实装;二是它数钱包的前提是”钱包已经知道这些资产”,而钱包的显示盲区(非标准合约、铭文、跨链持仓)恰恰是这类清单最容易漏的地方。多年后同一问题迎来了新方案:ERC-7811 提出的 wallet_getAssets 把参数、过滤器和返回结构重新规整了一遍,也是 NFT 资产清单话题下的常见讨论对象,机制细节见wallet_getAssets 是什么:让钱包替应用回答“你有哪些资产”。两代提案共同留下的用户侧课题是:资产清单不是从合约里读出来的,而是钱包的自报告——它比链上事实少一层客观性,多一份你主动交出的隐私。链上地址本就公开,但”哪些地址属于同一个人”正是持有人最不想让每个网站拼出的拼图,这与此前讲过的地址序列问题同源,见收款地址一直在变?钱包地址序列与扫描间隔机制。
今天遇到资产请求怎么办
把提案放回工具箱,普通用户今天就能用上的纪律有三条。第一,凡是”授权登录”顺带请求资产列表的页面,先看它给的说明文字写没写用途——一段空泛的 justification 本身就是红旗。第二,弹窗若支持勾选,默认从最小集开始:只给这单业务用得到的那个资产。第三,对声称”自动识别全部持仓”的服务保持警觉:真要全量数据,网站完全可以拿你的公开地址自己去扫链,向你伸手要清单的真实动机多半是省成本或拼画像。
本文为技术说明,不构成投资建议;向任何应用披露资产清单前,请先确认用途与最小披露范围。
发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。