当你公布一个捐赠地址的那一刻,你也就公布了一份公开账本——上面记录着所有支持你的人,以及你究竟募到了多少钱。 这正是大多数项目没想透的地方。贴出单个地址确实方便,但对它的每一笔捐赠都是永久、公开且可归属的——任何人都能看到每位捐赠人的钱包、金额、时间,以及你不断累积的总额。对创作者来说,这是支持者的隐私问题;对非营利组织或开源项目来说,它可能是捐赠人的安全问题,也是组织本身的战略问题。
这篇文章讲的是如何在 Solana 上接受捐赠,而不把捐赠变成监控数据——既保护捐赠人的隐私,也保护你金库的隐私。
一个公开的捐赠地址究竟暴露了什么
只要你贴出一个地址、把所有捐款都收到它名下,链上就会记录下:
- 每一位捐赠人的钱包。 一位从绑定了自己身份的钱包捐款的支持者,等于永久公布了"我支持这个项目"。对于政治敏感的事业、新闻报道,或任何有争议的领域,这条关联可能给捐赠人带来真实的风险。
- 你精确的总额,实时可见。 竞争对手、交易对手以及好奇的人都能实时读出你的募款进度。没有所谓"我们不披露"——它就摆在区块浏览器上。
- 你的支出。 捐赠地址的每一笔流出同样公开。从中支付的供应商、工资、拨款,全都可归属,这和金库面临的问题如出一辙:金库隐私。
在这里,加密金额并不能解决核心问题——真正敏感的数据是关系(谁支持你、你付钱给谁),而即便金额被隐藏,这些关系依然公开。加密金额并不等于私密 解释了为什么。
要保护的是两端:捐赠人和收款方
捐赠隐私有两个相互独立的半边,你在意哪一边,决定了你的方案该怎么搭。
保护捐赠人,意味着支持者捐款时不必公开自己那个带身份的钱包与你的事业之间的关联。这件事由捐赠人在自己一端完成:他们从自己的钱包存入屏蔽池,再让提款交付到你的捐赠地址。链上看到的是他们的钱包向某个池子存款,以及一笔毫不相关的提款抵达你的地址——没有任何一条边把支持者和你连起来。在你这一端,你只是收到了资金。(如果你要给捐赠人写指引,在不暴露主钱包的情况下转账 SOL 就是可以指给他们看的完整教程。)
保护组织,意味着你的总额和支出不再是一本摊开的账。与其把所有资金都堆在一个可见的地址里,不如让资金穿过池子流转,这样你掌控的流入和你做出的流出,就不会被轻易绑成一份单一的公开余额与支付图谱。
一套可落地的方案
并没有一个能魔法般搞定这一切的"捐赠按钮",但这些零件可以干净地拼在一起:
- 收到一组轮换的全新地址,而不是一个永久地址。 单个长期使用的捐赠地址是最糟的情况——它把一切都聚合到一起。轮换收款地址能限制任何单个地址所暴露的信息量。每个地址都应当在选择收款地址所讲的意义上是全新的。
- 告诉注重隐私的捐赠人,他们可以通过池子捐赠。 想隐藏自己支持行为的捐赠人,把资金存入屏蔽池,并把提款指向你的地址。他们的身份钱包永远不会显得与你有连接。
- 接收你真正想要的资产。 如果你更愿意持有 USDC 而不是 SOL,捐赠人(或你在提款时)可以在私密步骤内部完成兑换——私密地把 SOL 兑换成 USDC——这样你事后就不必再对捐赠资金做一次公开、可关联的兑换。
- 在花掉之前,先让累积的资金穿过池子。 当你支付供应商或贡献者时,让资金路由经过屏蔽池,就切断了"捐款进来"与"这笔具体支出出去"之间的关联,这和任何一次私密支付遵循的纪律是一样的。
诚实地说说边界
有几件事得说清楚,因为在捐赠人安全上过度承诺,比什么都不说更糟:
- 捐赠人掌控着自己的隐私。 如果一位捐赠人直接从绑定身份的钱包转到你的公开地址,你事后无法替他把这件事藏起来。捐赠人一端的隐私,是捐赠人一端的动作。
- 链下披露照样泄密。 如果一位捐赠人公开发推说"刚给 X 捐了 10 SOL",而时间又恰好对得上一笔向你地址的池子提款,那这层推断就只能靠他自己来规避了。隐私是一条流水线,链只是其中一个环节。SolMask 无法保护你免受什么。
- 合规与记账是你的责任。 公开图谱的隐私,和你自己的记账义务,是两码事;这篇文章讲的是前者,而非对后者的建议。
从哪里开始
先读一读Solana 钱包隐私清单,掌握操作纪律,然后在/swap搭起你的第一条私密收款流程。如果你在接受捐赠的同时还经营着一个金库,金库隐私把同样的思路延伸到了供应商与贡献者付款上。
FAQ
问:我能让我的募款总额彻底隐形吗? 答: 你可以让它变得难读得多——不把一切聚合到一个公开地址,并让资金穿过池子流转——但在一条公开链上,完美的金库不透明性不是任何诚实的人该承诺的保证。目标是消除那种一眼就能读出的便利。
问:捐赠人要怎样私密地捐款? 答: 他们从自己的钱包存入屏蔽池,并让提款交付到你的地址。他们钱包与你事业之间的连接,永远不会成为一条公开的边。把在不暴露主钱包的情况下转账 SOL指给他们看。
问:我应该公布一个捐赠地址,还是多个? 答: 优先选择轮换的全新地址。单个永久地址会把每一笔捐款和支付都聚合进一份完全公开的余额与图谱里。
问:即便捐赠人发来的是 SOL,我能不能以 USDC 收款? 答: 可以——兑换可以发生在私密提款内部,所以不会有一笔单独的公开兑换。参见私密地把 SOL 兑换成 USDC。