Skip to content

cbdc-token/app/endorser

Endorser 是 TMS 初始化、审计代理和 Fabric-X proposal 背书节点,监听 gRPC 9300、WebSocket P2P 9301、FSC Web 9302

结构

text
app/endorser/
├── cmd/endorser/
└── internal/
    ├── biz/          TMS public parameter Init
    ├── conf/
    ├── server/
    └── service/      EndorserService.Init

它没有自建 data layer 或业务 worker。真正的审计代理与背书协议由 cbdc-token/pkg/token/views 和 Panurus FSC endorsement 实现。

Endorser Init

cbdc_token.v1.EndorserService 只有 Init

  1. 读取当前配置所指向的 TMS public parameters;
  2. 比对链上参数;
  3. 必要时调用 DeployTMSWithPP
  4. 返回初始化结果。

开发控制器在 up 时自动执行:

sh
./dev/cbdc-dev init endorser

公共参数文件名取决于实际 Token driver,不能固定写成 fabtoken1_pp.json:开发模板当前是 zkatdlog,模块模板当前是 fabtoken。

审计代理与背书

Endorser main 注册两个审计/重试相关 responder。审计签章由 Auditor 产生;Endorser 自身负责背书身份签名。

BizHub 与动态注册

Endorser 连接 BizHub mTLS,用于节点注册与动态 endpoint 管理。证书角色由 BizHub 校验;启动时注册地址从 FSC node config 解析,而不是把 listener 的 0.0.0.0 当成外部地址。

P2P 与证书

fsc.p2p.type: websocketmaxSubConns: 8192,并设置 WebSocket TLS server/client roots。Endorser 节点证书由共享 TLS Intermediate CA 签发,包含 server/client EKU 与 endorser1 DNS SAN。

持久化

Endorser 自身没有 Ent repo,但 FSC / Panurus persistence 使用独立 Postgres 库 cbdc_endorser1。不要把“无 internal/data”理解为“无持久化”。

Docker

与其他三个 Token 节点共用镜像,二进制 /usr/bin/endorser,运行命令 endorser --conf /app-conf