ETH:ERC-721 隐私泄露问题凸显 三种方案或能缓解

撰文:隔夜的粥

当前,NFT 市场主要使用了三种 token 标准,它们分别是 ERC-721、ERC-1155 以及 ERC-998,而占据整个市场主导地位的依旧是 ERC-721 token 标准,例如无聊猿(BAYC)、加密朋克(CryptoPunks)、ENS 等众多第一梯队的 NFT 项目均采用了该 token 标准。

然而,随着链上分析工具的发展,采用 ERC-721 标准的 NFT 面临的隐私泄露问题变得越来越严峻。

为了说明问题的严重性,本文先通过一个例子来进行说明。

使用 ERC-721 代币标准发行的资产都具有独一无二的特点,这无疑是推动 NFT 资产炒作的一个重要属性,然而当前以太坊等公链还具有了账本公开透明的特点,意味着用户可使用区块链浏览器等工具,通过 ERC-721 代币查询自己或他人的钱包信息。

Optimism发布支持声誉系统的Superchain Faucet,未来将支持World ID:8月2日消息,Optimism宣布推出Superchain Faucet,这是一个支持声誉系统的测试网水龙头,允许开发者利用链上声誉数据获取高达20倍于常规测试网ETH的数量。这将帮助Optimism生态系统中的开发者更有效地进行项目测试和迭代。Superchain Faucet不仅支持通过GitHub进行社交认证,还允许开发者通过链上身份进行认证。目前,Superchain Faucet支持OP Goerli,但设计上将扩展到Superchain的其他OPChains,包括Base、ZORA NETWORK、PGN以及未来的Superchain合作伙伴。Superchain Faucet目前支持通过Optimist NFT进行身份验证,并将在未来支持World ID。[2023/8/2 16:13:49]

最容易暴露隐私的 ERC-721 token,自然就是 ENS,其在为用户提供便利的同时,造成了非常严重的隐私泄露,例如近期的「知名 ENS 地址遭投」事件,仅仅是 ENS 隐私泄露问题的冰山一角。

Tether、Bitfinex与Hypercore已对Web3开发平台Holepunch投入1000万美元:7月26日消息,USDT发行商Tether、加密交易平台Bitfinex与Hypercore开源协议团队已对Web3开发平台Holepunch投入1000万美元,并可能还会带来数千万美元的额外投资。

昨日报道,USDT发行商Tether、加密交易平台Bitfinex与Hypercore开源协议团队合作推出基于底层技术Holepunch的点对点(P2P)加密通信应用Keet。目前该应用为Alpha版本,移动端预计将于2022年11月推出。(Decrypt)[2022/7/26 2:37:46]

除了 ENS ,头像类的 ERC-721 token 也会带来严重的隐私泄露问题。

举例来说,近日,用户名为 KinkyBedBugs 的 Twitter 用户花费了 400 ETH 购买了一只胖企鹅(Pudgy Penguins)NFT,并将其用作自己的 Twitter 头像。

Uniswap为乌克兰捐赠构建便捷界面,任意ERC-20代币均可自由捐赠:3月1日消息,Uniswap 官方发推称,已构建了一个界面,可以将任意 ERC-20 代币换成 ETH,然后在一次交易中直接将其发送给乌克兰政府。因为此前“乌克兰政府共享的地址是一个只接受 USDT 和 ETH 的中心化交易所,因此我们构建了这个界面,任何想要捐赠但持有其他 ERC-20 代币的人都可以一键完成支持”。[2022/3/1 13:30:27]

通过查询 opensea 的数据记录(或特征),我们可得知购买该 NFT 的钱包地址就是 saudietheran.eth(0 x304A97c9A85C92C93Ca24e0A85B69f892B67355E),在该网站上,我们可以看到该钱包地址持有的所有 NFT。

火币:暂停ERC20代币提现:火币官网发布公告称:暂停ERC20代币提现。[2021/5/19 22:22:12]

而通过链上数据查询工具,我们甚至可以追踪到该钱包的关联地址及持仓情况。

图片来自 watchers

在这个例子当中,由于 KinkyBedBugs 是一个匿名账户,并且其显然做好了 NFT 钱包与主钱包地址的分离,因此,以上的信息泄露可能都是 KinkyBedBugs 故意而为之的(主动将信息透露给公众,以实现某种目的)。

巴西加密交易所Mercado Bitcoin完成3800万美元融资:1月22日消息,周四,巴西比特币交易所Mercado Bitcoin宣布完成2亿巴西雷亚尔(约合3800万美元)的融资,并透露了其国际扩张计划。此次融资由当地私募股权公司GP Investimentos和早期风险投资公司Parallax Ventures牵头,其他几方也参与了此次活动,其中大部分来自本地市场。Mercado Bitcoin首席执行官Reinaldo Rabelo表示,该交易所计划进入智利,墨西哥和阿根廷市场。(Finance Magnates)[2021/1/22 16:47:36]

但如果通过 NFT 关联到了持有者的真实身份,并且其没有做好钱包联系分离,一旦被怀有恶意的对手方(例如黑客、投者、敲诈者等)利用,NFT 持有者就可能面临非常危险的攻击。

在了解了 ERC-721 NFT 带来的隐私泄露问题的严重性后,我们需要了解一些缓解措施。

正如在本文当中提到的例子,我们在使用 ENS token 时,应尽量避免将自己的真实身份与钱包地址联系在一起,例如真实姓名拼音或常用英文名可能都是糟糕的选择,而采用一些较通用的词,例如 DeFi、NFT、DAO、DEX 等,可以增加一些隐私性。

接下来,钱包隔离工作将是至关重要的,一般来说,我们都会有多个以太坊钱包地址,其中会有 1-2 个存放资金的主地址,而其余存放小额资金的钱包地址会用于日常的交易或协议交互。

而我们要做的,就是切断主钱包地址和日常交易地址之间的任何联系,这意味着这些钱包之间不能有任何相互转账的操作。(注:如果实在有转账的需求,可以通过中心化交易所作为中间的桥梁)

做好钱包隔离工作之后,我们将主钱包用于存钱用途,而将日常用的钱包用于存放价值较低的 ENS 或 NFT 小图片。

近期,以太坊研究人员 Anton Wahrst?tter(@Nerolation)在 ethresear.ch 发表了一项 ERC721 扩展提案?,其提议将 zk-SNARK 技术应用到 ERC-721,以保护相关 NFT 持有者的隐私。

对此,以太坊联合创始人 Vitalik 评论称,使用常规隐身地址?(stealth address) 技术可以更简单地实现,不需要 Merkle 树或 ZK-SNARK 级别隐私的原因在于,每个 ERC721 都是独一无二的,因此不可能为 ERC721 创建「匿名集」。相反,用户只是想隐藏指向发送者和接受者的高度可见的公共身份链接(因此,你可以将一个 ERC721 token 发送给 vitalik.eth,此时 Vitalik 本人可以看到这一点,但其他人都不能看到 vitalik.eth 这个地址收到了一个 ERC721 token,他们只能看到某人收到了一个 ERC721 token)。

那这种技术方案的原理是怎样的呢?Vitalik 解释称:

这一想法也获得了 Anton Wahrst?tter 的认可,其目前正在根据 vitalik 的建议撰写一份 EIP?,计划将提议的 generateStealthAddress (bytes32 key) 应用到智能合约钱包当中。

然而,正如 Bain Capital Crypto 研究合伙人 Wei Dai 指出的那样?,隐身地址(stealth address)方案的缺点在于,如果它应用于 ERC-721 以外的任何 token(例如 ERC-20 或 ERC-1155 ),由于可以追踪传输链,其可添加的隐私性是非常有限的。相比之下,基于 zk-SNARK 零知识证明的方法可以完全保持机密性或匿名性。

在他看来,理想情况下,L1 应支持可由智能合约应用使用的隐私保护 token,这可以通过已知技术实现,实际上,用户可以充分利用 Aztec 等以隐私为中心的 L2,并在 L1 上默认设置隐私保护 token 记账,他进一步解释称:

而摆在用户面前的另一个问题是,采用零知识证明隐私解决方案,可能会遇到监管上的一些麻烦,例如 FTX 交易所就屏蔽了一些 Aztec 用户地址,并发出了相关警告。

可见,更好的隐私性,也不一定是一件好事。

作为一名普通的以太坊用户,就目前来说,我们首先应做好身份隔离和钱包隔离工作,以避免严重的隐私泄露问题,而在不久的将来,内置隐身地址(stealth address)方案的智能合约钱包,可能会得到更多的采用。

而隐私性更好的零知识证明方案,由于监管方面的担忧,或许会遇到一些阻力,这还需要我们更多的观察。

DeFi之道

个人专栏

阅读更多

金色早8点

Bress

链捕手

财经法学

PANews

成都链安

Odaily星球日报

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

金星链

[0:15ms0-0:880ms