主题
sign-kms · 概述
仓库基本事实
| 项 | 值 | 出处 |
|---|---|---|
| Module path | github.com/built-by-sign/sign-kms | go.mod |
| Go 版本 | 1.25.1 | go.mod:3 |
| Go 文件数 | 88 | find 统计 |
| C 源/头文件数 | 6 .c + 5 .h(均在 p11client/) | find 统计 |
| gRPC 端口 | 0.0.0.0:9200 | README.md:60-62 |
| HTTP 端口(管理 + Web UI) | 0.0.0.0:9201 | README.md:60-62 |
README.md 自述(架构段)
来源:README.md:5-16。
- FSC 节点:BCCSP PKCS#11 →
libkms_pkcs11.so→ gRPC(Bearer JWT)→ KMS 服务 - KMS 服务再通过 PKCS#11 → HSM(SoftHSM / Luna S790)
- BizHub CA 通过 gRPC(Bearer JWT)→ KMS 服务
关键三方依赖
来源:go.mod。
| 依赖 | 版本 |
|---|---|
entgo.io/ent | v0.14.5 |
github.com/go-kratos/kratos/v2 | v2.9.2 |
github.com/miekg/pkcs11 | v1.1.2 |
google.golang.org/grpc | v1.80.0 |
golang.org/x/crypto | v0.49.0 |
go.opentelemetry.io/otel、trace、metric | v1.43.0 |
顶层目录
来源:find + README。
sign-kms/
├── cmd/kms/ 程序入口(Wire DI、Kratos 启动)
├── internal/
│ ├── conf/ 配置 proto schema
│ ├── server/ gRPC + HTTP 服务注册
│ ├── service/ service 层(gRPC / HTTP 实现)
│ ├── biz/ 业务逻辑
│ └── data/ + data/ent/ Repository + Ent ORM
├── pkg/
│ ├── pkcs11/ ProviderRegistry / SessionPool
│ ├── auth/ JWT claims + 中间件
│ ├── errors/ 错误类型
│ └── audit/ 审计
├── api/v1/ *.proto(kms.proto + manage.proto)
├── p11client/ libkms_pkcs11.so 的 C 源码
├── web/ React 19 + Vite 前端
├── conf/ core.yaml 样例
├── docs/ 设计文档
├── scripts/ init-softhsm.sh
└── Makefile, Dockerfile, docker-compose.yaml与其他包的位置
参考:sign-ca · 概述。