Files
selfrelease 959e5ac18e docs: 项目交付说明(DELIVERY.md) + 三期任务文档归档
- 全相位回归测试通过(83用例/核心覆盖率85-100%)
- 交付说明: 概述/技术栈/功能/结构/启动/质量/待环境事项/安全
2026-06-14 18:02:22 +08:00

6.6 KiB
Raw Permalink Blame History

TCS-IPTV 内容可信锁定系统 — 项目交付说明

版本:V1.0(一期 MVP + 二期贯通 + 三期生态·代码可交付部分) 交付日期:2026年6月 运营主体:陕西 IPTV 运营公司(机构节点 MA.156.8531.6101 上游文档:../0-req-IPTV.md(需求)、../1-prd-IPTV.mdPRD)、../2-task-IPTV-MVP.md / ../3-task-IPTV-二期.md / ../4-task-IPTV-三期.md / ../5-task-IPTV-四期.md(任务)


一、项目概述

TCS-IPTV 在 内容提供商(CP)、审核和监管部门、运营商 三方现有系统之上,建立一层"可信身份映射层"MA 码(监管身份)+ 哈希码(技术指纹) 双锚定,实现 IPTV 内容"审过即锁定,锁定即通行,通行可追溯"。

核心设计:

  • 一剧一码 + 集级哈希MA 码按"剧/备案"颁发(对齐网标证),各集独立哈希挂同一码下,支持集级寻址/验真/下架
  • 不替代现有系统:原片走审核方既有渠道做内容审核,TCS 只处理哈希上链与映射(最小侵入)
  • 模式 B 自行发码:与发码机构对接获取号段,按备案规则原子发码

二、技术栈

选型
后端/链交互/哈希SDK Go 1.23 + Gin
智能合约 GoChainMaker 链原生,国密 SM2/SM3/SM4
联盟链 长安链 ChainMaker 2.xMVP/二期用 MemoryChain 等价实现,接口就绪)
数据库/缓存 PostgreSQL 16 / Redis 7.x
监管大屏 React 18 + Ant Design 5
控制台安全 BFF + 会话令牌(密钥不下发浏览器)
鉴权 API Key + HMAC-SHA256
CI/CD GitLab CI

三、已交付功能(按相位)

一期 MVP(核心闭环)

送审 → CSPS审核 → 发码签发 → 媒资库入库 → 发布 → CDN注入校验 → 应急下架

  • 哈希SDK(文件SHA-256 / 分段Merkle / 感知哈希)
  • MA码生成(六段式,号段原子分配,PostgreSQL 行锁防重号)
  • 可信数据空间(合约规则:1:1强绑定不可解绑、防换壳重发、权限控制)
  • 一剧一码 + 集级哈希 + 集级下架/恢复
  • HTTP API + HMAC 三角色权限 + 监管大屏(角色工作台/全流程演示/监管片库)

二期 贯通(权益场景)

  • 利益:数据回传聚合(F09)+ 可信播放数据 + 自动分账(F18,CP60/平台34/服务费6
  • 权利:全链路追责取证(F19,定位偷换环节)+ 确权证据链(F20)+ 感知哈希侵权比对
  • 效率:追更增量赋码(F21)+ 跨省复用三重校验快速准入(F13)
  • 合规:授权链登记 + 发布/注入前授权核验(F22,地域/平台/期限拦截)
  • 终端:片段抽检与断流提示(F08
  • 前端可视化:监管片库"权益与治理"标签(分账/追责/确权/授权)
  • CI/CDGitLab CI 流水线

三期 生态(代码可交付部分)

  • 备案对接(A.1):网标号/备案号关联 MA 码
  • 监管上报(A.2):监管数据日报
  • 号段管理(B.1):多机构号段列表与容量
  • 全国统计(C/F.2):按省/类目/状态聚合 + 全国监管大屏
  • 监管大屏 BFF 安全化(B:密钥仅存后端,浏览器只用会话令牌
  • 真实链合约源码(G):contracts/tcs_registry/registry.goChainMaker Go

四、工程结构

tcs-iptv/
├── cmd/
│   ├── api-svc/        # 业务后端(:8080
│   ├── chain-svc/      # 链交互服务(:8081
│   ├── hash-api/       # 哈希SDK HTTP API:8082
│   └── console-bff/    # 监管控制台 BFF:8090,三期)
├── internal/
│   ├── hash/           # 哈希核心(SHA256/Merkle/感知哈希)覆盖率88%
│   ├── macode/         # MA码生成/解析/号段(含PG存储)覆盖率75%
│   ├── chain/          # 可信数据空间抽象 + MemoryChain
│   ├── service/        # 业务编排(覆盖率85%
│   ├── playback/       # 播放聚合与分账(覆盖率100%)
│   ├── provenance/     # 全链路存证与追责
│   ├── bff/            # 控制台 BFF
│   ├── api/            # HTTP 路由与处理器
│   ├── model/          # 领域模型
│   ├── config/ httpx/  # 配置与通用HTTP/鉴权
├── contracts/tcs_registry/  # ChainMaker Go 合约(独立模块)
├── deploy/migrations/  # PostgreSQL 迁移(0001-0003
├── web-console/        # React 监管大屏
├── scripts/            # 冒烟/演示脚本
└── .gitlab-ci.yml

五、快速启动

依赖:本地 PostgreSQL(库 tcs_iptv+ RedisGo 1.23Node 20+

cd tcs-iptv

# 1. 数据库迁移
make migrate

# 2. 启动后端
make run-api          # api-svc :8080
go run ./cmd/console-bff   # BFF :8090(可选)

# 3. 启动前端
cd web-console && npm install && npm run dev   # :5173/5174

# 4. 造演示数据(陕西IPTV场景)
bash scripts/seed_demo.sh

# 5. 全相位冒烟
bash scripts/e2e_smoke.sh

监管大屏:http://localhost:5174 (角色工作台 / 全流程演示 / 监管片库)


六、质量状况

指标 状况
测试用例 83 个,全部通过
核心覆盖率 playback 100% / hash 88% / service 85% / macode 75%
go vet / build 通过
前端构建 通过
端到端冒烟 一期→三期全相位通过

七、待外部环境/流程的事项(非代码可完成)

说明 就绪度
真实 ChainMaker 测试网 需多节点国密链环境 合约源码 + chain.Client 接口已就绪,平滑替换 MemoryChain
链上数据 PG 镜像接入 需真实链 镜像表已建(migrations
性能压测 / 高可用灾备 需集群+压测工具+多节点 架构支持,待环境
等保三级正式测评 需第三方测评机构+正式环境 安全设计就绪(BFF/HMAC/国密/审计)
HSM 密钥托管 需硬件 接口预留
行业分账标准发布 政策/行业协作 分账引擎已实现
多省/平台实际接入 商务运营推进 多机构号段+跨省准入+授权核验能力就绪
四期 大小屏融合(OTT/APP 需端侧 SDK 集成环境 待启动

八、安全说明

  • 已实现:HMAC-SHA256 鉴权、三角色权限矩阵、MA码1:1不可解绑、哈希本地计算不上链原片、关键操作存证、监管大屏 BFF 化(密钥不下发浏览器)
  • ⚠️ 上生产前:真实链替换、等保三级测评、HSM 托管、生产凭证接 Vault/SSO

本系统 MVP + 二期 + 三期(代码部分)已完成并通过回归测试,可用于演示、试点联调与功能验收。