用途:编写、审查或审计 STRK20 的 Cairo 匿名器(helper)合约,让隐私资金在不暴露发起者的情况下与 DEX、借贷金库、托管等外部协议交互。
主要能力:说明 helper 的原子“三明治”模式——从池中提取输入代币到 helper,池通过 INVOKE_SELECTOR 调用 helper 的 privacy_invoke,helper 完成操作并授权池拉取输出,最后返回 Span<OpenNoteDeposit> 指定要记入哪些开放票据及代币与金额。返回结构含 note_id、token、amount。
五条规则:必须精确返回 Span<OpenNoteDeposit>;用 approve 而非 transfer;空 span 合法;输出按余额差测量而非信任外部协议返回值;每笔交易仅一次外部 invoke。
使用方式:先路由再写 Cairo。需要共享调用者执行原子操作并立即把结果返回隐私票据时用 helper;需要稳定假名地址跨交易持有份额、债务、NFT 或奖励时,通过 strk20-wallet-api 使用标准 ShadowAccountAnonymizer。dapp 侧通过 Wallet API 以 amount 为 "OPEN" 的 transfer 创建开放票据,再用 invoke 指定 helper,calldata 顺序须匹配 privacy_invoke 签名。
适用场景:单跳 Ekubo 交换、Vesu 借贷金库存取、托管、跨链 CCTP 等。
限制:helper 合约由应用团队自行编写、审查与审计,官方技能不生成 Cairo;若由 Claude 起草须标注为草稿并送审,并运行 cairo-security 技能。票据金额为 u128,u256 金库运算须能容纳否则回滚。遇到无法满足五条规则、余额差无法对账、无上游参考 helper 或涉及资金且安全检查不通过时,应升级而非猜测。参考快照为 2026-08-16,合约包位于 starkware-libs/starknet-privacy,适配前请核实当前源码。