#cosmic #anchor #solana #transaction #smallet

soulboundsigner

通过在 smallet 中持有代币进行交易签名

1 个不稳定版本

0.1.0 2023年6月15日

#21 in #cosmic

MIT 许可证

7KB
78

token-signer

允许 NFT 的持有者以从 NFT 导出的地址签署交易。

由于这些密钥必须执行 CPI 调用,因此建议不要使用这些密钥进行可能需要深度 CPI 调用或大量 BPF 指令的指令。这尤其适用于与 smart_wallet 程序一起使用时,因为这会导致调用栈至少深入 2 个程序。

考虑到这些限制,这可以很有用:

  • 代表升级程序的权限所有权
  • 代表仅更改设置(如费用)的“管理员账户”的所有权

用作 RBAC 白名单

这仅检查用户钱包中至少存在一个代币。可以使用代币密钥作为允许多个用户执行操作的方式,类似于 1/n 多重签名。

例如,假设有一个在 AMM 上通过市场订单自动复利的函数。此函数应该受到限制,因为它容易受到闪电贷漏洞的攻击。通过将代币分配给每个成员,权限可以分配给受信任的各方。

请注意,无法撤销账户,因此这可能不是最优的。白名单可能更合适。

许可证

Goki 协议根据 GNU Affero 通用公共许可证 v3.0 许可。

简而言之,这意味着对代码的任何更改都必须是开源的,并可在 AGPL-v3.0 许可证下提供,即使仅用于私人用途。如果您需要使用此程序且无法遵守许可证条款,请直接向我们的团队发送消息 [email protected]

依赖项

~11–23MB
~331K SLoC