Primcast
EN

合规

Primcast 在彼此独立的多个层面执行监管约束:无论交易从哪里进入系统,受限方都无法完成交易;每项资产还可以在此之上叠加自己的投资者规则。

三层防线

层位置拦截什么
1. 排序器准入Nitro 排序器(ArbOS 61 交易过滤)发送方、目标或任何被触及的地址在限制名单上的交易,以及涉及受限地址的 ERC-20/1155 Transfer/Approval 事件——这类交易根本不会进入区块
2. 延迟收件箱执行监控以太坊收件箱的哨兵 + ArbOS 过滤交易管理器涉及被制裁地址的强制打包交易:打包时失败,Gas 被销毁
3. 应用层关卡IdentityRegistry 事实 + 每个 RWAToken 的规则不合格、被冻结或被制裁方的转账、铸造、认购、分红领取和赎回

限制名单的来源

  1. 治理方通过 IdentityRegistry.addSanction(address, listSource, reason) 在链上添加制裁,链上关卡立即生效。
  2. 合规发布器每 5 分钟读取链上名单(以及可选的静态导出名单,如 OFAC SDN),每次用新的盐值生成加盐 SHA-256 哈希列表。
  3. 排序器在下一次轮询时重新加载名单。

链上登记表是唯一事实来源,排序器名单最多滞后约 5 分钟。

事实与规则分离

IdentityRegistry 保存关于钱包的事实:KYC 状态与有效期、合格投资者、辖区、登记冻结和制裁。规则在每个代币上:requireKyc、requireAccredited、allowedJurisdictions。因此同一条链上的两个代币可以凭同一次 KYC 面向不同市场销售。

代币如何校验一笔转账

代币状态(暂停/到期?)→ 本代币冻结(双方)
→ 对每一方调用一次 complianceOf():
     被制裁?→ 登记冻结?→ 是场所吗?(该方到此为止)
     → requireKyc 且 KYC 无效?
     → 仅接收方:requireAccredited 且非合格投资者?→ 辖区不在允许列表?
→ 单人持有上限(场所、系统合约和代币托管地址豁免)
  • 合格投资者与辖区只校验接收方。 失去合格投资者资格或迁往资产不允许的辖区的投资者,仍然可以卖出(转出,包括转入 DEX 资金池)。代币支付给他的一切——新份额、分红领取、赎回兑付——都适用接收方规则,需等资格恢复后才能进行。
  • KYC 过期同样生效:过期的 KYC 与没有 KYC 一样无法通过校验,发送方和接收方都一样。在需要 KYC 的代币上,KYC 过期的持有人在续期前无法转出份额。
  • 错误类型明确: Sanctioned、AccountFrozen、KYCRequired、AccreditedRequired、JurisdictionDenied、LimitExceeded。
  • canReceive(to, amount) 是不回滚的查询版本,供前端使用;本门户在允许你认购前会调用它。

场所与第三方协议

DEX 资金池或借贷市场没有身份。代币管理员通过 setVenue(pool, true) 标记这类合约:

  • 场所本身跳过 KYC、合格投资者、辖区和持有上限校验。
  • 每个交易对手仍被校验。 一笔会把份额发给不合格钱包的兑换或借款,会像直接转账一样回滚——场所是规则的传递者,而不是漏洞。
  • 制裁、登记冻结和本代币冻结对场所地址仍然有效。
  • 默认情况下场所余额不参与分红,收益归真实持有人。能够把分红转交出去的场所可以通过 setVenueDividends(pool, true) 重新纳入;Primcast DEX 交易对就是如此,它会把分红并入资金池,归流动性提供者所有。
  • 到期后,份额仍可以从场所转给合格持有人,让流动性提供者和借款人能取回份额并赎回;其他转账全部停止。
  • 只有合约才能成为场所。未标记的资金池需要满足资产要求的全部资格,其累积的分红将无法领取。

Primcast DEX 还对 LP 代币设限:只有 RWA 会接受的钱包才能在 RWA 交易对中持有流动性。

强制措施

措施执行者事件
持有人之间的强制转移代币管理员(发行方)或治理方ForceTransferred
销毁(追回)代币管理员或治理方Burned
本代币冻结代币管理员或治理方FrozenSet
暂停 / 恢复代币代币管理员或治理方TokenStatusSet
全局冻结某账户任一登记机构AccountFrozen
制裁某地址治理方SanctionAdded

每一项特权操作都会发出事件。审计记录就是事件日志,任何人都能重建。

结算端

USDC 和 USDT 不由 Primcast 发行。Primcast 无法冻结或没收稳定币余额,只有 Circle 或 Tether 可以。Primcast 在结算端执行的是:每个入口(Offering.subscribe、distributeDividend、claimDividends、赎回)的身份关卡,以及把被制裁方排除在兑付之外。所有兑付都由接收方主动领取;稳定币发行方拉黑某个持有人时,只有该持有人的领取会失败。

已知限制

  • 以太坊上受限地址的 ETH 充值 无法丢弃,否则 ETH 会滞留在桥中。哨兵会报告这类充值,且该地址在 Primcast 上仍无法发起交易。
  • 排序器过滤滞后 链上名单最多约 5 分钟;链上关卡即时生效。
  • 制裁是公开的。 排序器名单经过哈希处理,但 IdentityRegistry 中的制裁及其历史按设计在链上可读。
  • 认购只校验制裁和 KYC。 合格投资者、辖区和持有上限在领取时铸造份额才校验。见认购。