Files
dsh_ai1net_server/docs/分布式数据链路/分布式数据存储与查询-架构设计与隐私保护方案_20260919.md
T
admin ce8e6ceed9 chore(工作区): 纳入版本控制基线(回收 411 MB 过程产物)
回收 411 MB(470 M → 58.8 M),全部经回收站,可恢复:
- 待清理/(146.2 M,含 relay 分片 128 M 与 42 项过程目录)
- tmp/(32.4 M,按接续棒命名的过程临时区)
- .workbuddy/tmp/(39.5 M)
- 4 份 workbuddy.db 冗余副本(101 M,09-23 事故的坏副本 / 抢救产物)
- tmp/im16/gw/centrifugo 二进制(63.9 M,可重下)+ 缓存残留

入库范围:常驻规则(CODEBUDDY.md / README.md / state.py)、在途接续入口与
接续包、docs/、交付物/、交接单/、归档/、scripts/、.codebuddy/、
.workbuddy/memory/;共 398 件,其中 >60 KB 的 26 件全为文档。

排除(.gitignore):tmp/、待清理/、运行态日志与缓存、*.db 与 DB 备份整目录、
打包二进制(*.tar.gz / *.tgz)、记忆修复前备份。
2026-09-24 07:51:03 +08:00

585 lines
45 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 分布式数据存储与查询平台 · 架构设计与隐私保护方案
> 📌 术语:本文以「分布式」指代本项目(2026-09-19 由「去中心化」更名);引用原文、DAO 专有名词与行业泛指保留原措辞。
> 版本 v1.2 | 2026-09-19 | 状态:**架构已定 · 待评审**
> 主文档:`分布式数据链路-技术方案与落地路线_20260919.md`
> 前一版:`面向公众资产平台与隐私金库-落地方案_20260919.md`(合规判定部分因**范围澄清**已调整,见 §1)
> 本文回答三件事:**范围重定(§1)· 架构落地(§2–§4)· 隐私保密的最优解(§5,本文重点)**
### 📌 v1.1 修订记录(依据用户 2026-09-19 四条修正)
| # | 用户修正 | 本文落点 |
|---|---|---|
| 1 | **B 层要支持多节点共识,只是不公开** | §2.2 架构图 · §2.3 纪律 2 —— 纠正 v1.0"不参与共识"的**过度收窄**;"不公开" ≠ "不共识" |
| 2 | **区块链自研**(便于优化性能与加密);**对象存储用正规平台方案** | §3.2 选型表改为自研链 + 云对象存储;新增**两条自研红线**(不自研密码学 / 不悄悄削共识假设)+ 分阶段建议 |
| 3 | **B 层用户信息里还要包含用户密钥** | §4.3(新增)—— ⚠️ 指出这是**全架构最危险处**,必须门限分片存放(B 层只持 1 片),整钥存放 ⇒ A 层零知识失效 |
| 4 | **B 层加密安全优先;可查询内容用 KV:key 便于查询 / value 需解密查看** | §4.2(新增 KV 模型)+ §3.3.1(B 层查询链路)+ 三条约束(key 必须盲索引化 / 低熵截断 / key-value 密钥域分离) |
### 📌 v1.2 修订记录
| # | 用户提问 | 本文落点 |
|---|---|---|
| 5 | **"没有比 FISCO BCOS 更好的参考吗?需要 2 层链高性能安全方案,例如 StarkNet 的 zkVM"** | **§3.4(新增整节)** —— 纠正三个概念(zkVM ≠ 共识 ≠ 链)+ 🔴 给出 **ZK 对 B 层的真正价值 = 解开"要多节点共识 vs 要加密"的死结(节点盲验证)** + 2026 zkVM 实测格局与选型短名单 + 修订后的分阶段路线(自研共识 + 成熟 zkVM 证明 + 云对象存储) |
---
## 0. 三行结论
1. **范围已澄清 ⇒ 237 号文的禁止清单不适用**(无发行、无兑换、无撮合、无定价、无衍生品,仅用去中心化技术做**存储与查询**)⇒ §1 给出**唯一仍需处理的合规项**。
2. **架构:两套子系统 + 一条窄桥**(§2)——**A 层可公开但不含明文隐私;B 层不公开、但仍是多节点共识网络**(不公开 ≠ 不共识,见 §2.3 纪律 2),中间靠匿名 ID 映射桥接。
3. **隐私保密的最优解不是"选一种强加密",而是"四层组合"**(§5)——存储层非确定性加密 · 查询层盲索引 · 计算层机密计算 · 密钥层门限托管。**单靠任何一层都不成立**,这是本文最重要的判断。
---
## 1. 范围重定与剩余合规项
### 1.1 已澄清:237 号文禁止清单不适用
用户明确:**只用区块链去中心化技术做数据存储与查询**,不做以下任何一项 ——
| 237 号文禁止事项 | 本项目 |
|---|---|
| 法币与虚拟货币兑换 | ✗ 不做 |
| 虚拟货币之间兑换 | ✗ 不做 |
| 作为中央对手方买卖 | ✗ 不做 |
| 为交易提供信息中介与定价服务 | ✗ 不做 |
| **代币发行融资** | ✗ **无代币发行** |
| 虚拟货币衍生品交易 | ✗ 不做 |
⇒ **§1.1 判定:不落入该通知的规制范围。** 前一版方案的连带责任、经营范围禁用字样、支付通道不可得等结论**随之撤销**。
### 1.2 仍需处理的唯一一项:区块链信息服务备案
⚠️ **这一项与 237 号文无关,单独成立**,别因为 §1.1 通过就跳过。
**判据**:《区块链信息服务管理规定》第二条 —— 适用范围是"*基于区块链技术或者系统,通过互联网站、应用程序等形式,**向社会公众提供信息服务***"。
**本项目面向公众提供数据的存储与查询服务 ⇒ 落入适用范围**,需履行:
| 条款 | 义务 |
|---|---|
| 第 11 条 | 提供服务起 **10 个工作日**内备案;变更 5 个工作日内;终止 30 个工作日前注销 |
| 第 8 条 | **实名认证**(组织机构代码 / 身份证号 / 手机号);**未认证不得提供服务** |
| 第 9 条 | 新产品 / 新应用 / 新功能上线**前**报安全评估 |
| 第 13 条 | 对外服务显著位置**标注备案编号** |
| 第 6 条 | 禁止内容即时处置能力;记录留存 **≥ 6 个月** |
| 第 14 条 | 备案信息**定期查验**(持续义务) |
**成本量级**:这是一个**流程性**要求(提交材料 + 等 20 个工作日),不是架构级改造。⇒ **不影响 §2–§5 的技术设计**,但排期上要留出前置时间。
### 1.3 一条与"数据出境"相关的提醒
去中心化存储(IPFS / Arweave / 公链)的节点分布**天然在境外**。若存的是个人信息,需按数据出境相关规定评估。**若选择"密文出境 + 密钥不出境",法律定性需专业意见**——本文不预设结论,但这条会影响 §3 的存储选型。
**📌 v1.1 更新**:对象存储已按用户拍板改为**正规云平台托管方案**(可选境内区域)⇒ 该项风险**显著下降**。⚠️ 但**A / B 两层的链节点若跨境部署,仍会触发同一问题** ⇒ 链节点地域在 §3.2 定稿时须一并确认。
---
## 2. 总体架构:两套子系统 + 一条窄桥
### 2.1 为什么必须拆成两套
因为两个需求的安全目标**在数学上相反**:
- **公开可验证**要求数据能被任何人读取与校验;
- **隐私保密**要求数据不能被任何人读取(包括平台自己)。
把它们放进同一套存储 ⇒ **必然二选一失败**(要么隐私泄露,要么公开验证失效)。⇒ 唯一的正解是**两套独立系统**,各自把目标做到极致,中间只留一条**极窄且强审计**的桥。
### 2.2 架构图
```
┌────────────────────────────────────┐ ┌────────────────────────────────────┐
│ A 层 · 分布式存储与查询层 │ │ B 层 · 隐私金库(私有共识链) │
│ (可公开 / 半公开) │ │ (不公开 · 多节点共识 · 授权准入) │
│ │ │ │
│ · 密文 blob(用户数据本体) │ │ · KV:key 可查 / value 加密 │
│ · 盲索引 token(可查询的指纹) │ │ · 实名 · 联系方式 · 支付 Token │
│ · 匿名所有者 ID │ │ · 凭据哈希 · 风控日志 │
│ · 内容哈希 / 版本链 │ │ · 用户密钥托管(门限分片) │
│ · 访问控制策略(密文) │ │ · 私有共识:多节点 · 授权准入 │
│ │ │ │
│ ⛔ 永不出现:明文隐私、真实身份 │ │ ⛔ 不出公网:仅授权节点可达 │
└─────────────┬──────────────────────┘ └──────────────┬─────────────────────┘
│ │
│ 算法:HMAC(域密钥, userId) │
└────────────┬───────────────────────────┘
▼
┌────────────────────────────────┐
│ 窄桥 · 匿名 ID 映射表 │
│ · 独立加密(与两侧均不同密钥) │
│ · 双人授权 + 每次访问留痕 │
│ · 标注:最高价值攻击目标 │
└────────────────────────────────┘
```
### 2.3 三条架构纪律(不可协商)
| # | 纪律 | 违反后果 |
|---|---|---|
| 1 | **A 层永不出现明文个人信息**(含邮箱、手机号、实名、卡号) | 一旦上链 ⇒ 永久公开且不可撤回 |
| 2 | **B 层不公开,但仍须是多节点共识网络**(私有链 · 授权准入 · 节点不暴露公网) | 单节点存储 ⇒ 既无防篡改能力、也无容错;节点若暴露公网 ⇒ 隐私边界失守 |
| 3 | **窄桥独立加密、独立审计、双人授权** | 桥表泄露 ⇒ A 层全部匿名性失效,**且历史记录永久可关联** |
**第 2 条的关键澄清(2026-09-19 用户修正)**:**"不公开" ≠ "不共识"**。B 层是**私有链**——节点授权准入、数据不出公网,但**共识机制照常运行**(多节点、防篡改、可容错)。此前版本写成"不参与共识"是把"不公开"误推成"单机数据库",属**过度收窄**。
**第 3 条最易被低估**:匿名 ID 本身是安全的,但**"谁是谁"的映射一旦泄露,链上全部历史记录立即变成实名档案**——且无法撤回。⇒ 桥表按"泄露即灾难"级别设计。
---
## 3. A 层设计:分布式存储与查询
### 3.1 存储什么、存在哪
| 对象 | 存放 | 说明 |
|---|---|---|
| 数据本体 | **密文 blob**(用户侧加密后上传) | 平台/链上只见密文 |
| 可查询性 | **盲索引 token**(HMAC 指纹) | §5.2 详解 |
| 归属 | 匿名 ID | 由 §2 桥表生成 |
| 完整性 | 内容哈希 + 版本链 | 防篡改、可验证历史 |
| 访问控制 | 加密后的策略对象 | 谁能解、何时能解,都加密 |
### 3.2 存储载体选型(2026-09-19 用户拍板后修订)
| 方案 | 特点 | 定位 |
|---|---|---|
| **自研链(本项目)** | **性能与加密策略可按业务定制 —— 这是用户拍板的理由** | ✅ **A 层与 B 层的主链** |
| FISCO BCOS | 国密 SM2/SM3/SM4 原生;PBFT 秒级;单机 4 节点一条命令可起;1,000–3,000 TPS | 过渡方案 / **自研的对照基准与算法参考** |
| Fabric | 通道 / 私有数据集隔离更强;部署复杂、国密需自配 | 需"不同参与方看到不同数据"时 |
| 透明日志 + 公链锚定 | 只提供篡改可检测;成本低一个数量级 | 单方写入、只需可验证性 |
| **对象存储(正规云平台)** | 用户拍板:**用正规平台方案**(OSS / COS / S3 等托管服务) | ✅ 密文 blob 存储(重) |
**建议组合**:**自研链(A 层公开链 + B 层私有链两套共识网络)+ 正规云对象存储(密文 blob)**。大文件不进链。
#### 🔴 自研链的两条硬红线
1. **⛔ 自研的是"链",不是"密码学"**。共识、存储引擎、网络、接口、状态机 —— 这些自研合理;**AES-GCM / HMAC / SHA-256 / SM2-SM3-SM4 等国密算法绝不自己实现**,一律用成熟库(libsodium / OpenSSL / 国密 SDK)或硬件密码模块。**自研密码学 = 事故**,且无任何性能理由需要这么做(性能瓶颈在共识与 IO,不在密码学原语)。
2. **⛔ 不重写共识算法的安全性假设**。可从 PBFT / Raft 等**已被形式化研究过的算法**出发做工程优化与裁剪,但要清楚**削掉了哪条安全假设**(如降节点数、放宽超时、简化视图切换),并在文档中留痕。⇒ **"优化性能"最常见的代价是容错阈值下降**,这一点必须在架构评审时被明确讨论。
**自研的代价(如实列出,供排期与预算参考)**:需自建底层团队与运维线;公开参考量级为**20 人以上团队 / 年成本 500 万级**,用成熟框架可省约 60% 人力。⇒ 用户已拍板自研(理由:性能与加密可控),**本文按此执行**,但建议**分阶段**:先以 FISCO BCOS 跑通业务闭环与验收判据,再逐步替换为自研实现,**避免在业务未验证时先投入重资产**。
### 3.3 查询链路(关键:全程无明文)
```
用户发起查询
│ ① 客户端把查询条件转成 token(HMAC,密钥不出设备)
▼
提交 token 到查询接口
│ ② 链上/索引层按 token 做等值或前缀匹配(只见 token,不见明文)
▼
返回匹配的记录指针(密文 blob 地址 / 内容哈希)
│ ③ 客户端按指针取回密文
▼
④ 客户端本地解密 → 得到明文
```
**这条链路的核心性质**:**服务端与链上在任何一步都没有机会看到明文,也没有解密密钥**。⇒ 这是"平台零知识"的实现方式,也是最强的隐私保证。
**代价(必须提前接受)**:
- 服务端**无法**做服务端解密后的业务逻辑(如风控、统计、客服查证)⇒ 这类需求必须走 §5.4 的合规通道;
- 查询能力**受 token 设计限制**(等值易、范围难、模糊难,见 §5.2)。
#### 3.3.1 B 层查询链路(KV 模型 · 授权可解)
A 层是"**平台永不可解**",B 层是"**平台在授权下可解**"⇒ 两条链路的差异在于**解密权来源**:
```
① 客户端提交 key_token = HMAC(域密钥, 规范化标识)
▼
② B 层私有链按 key_token 定位(链上只见 token,不见原文)
▼
③ 取回 value 密文(AES-256-GCM)
▼
④ 授权判定:本请求是否有权解密该 value?
· 无 → 返回密文 / 拒绝
· 有 → 走 §4.5 密钥授权流程(V1: KMS 取 DEK;V2: 门限多角色授权)
▼
⑤ 应用层解密并返回(全程审计留痕)
```
**🔴 与 A 层的根本差别(一句话记住)**:
| | A 层 | B 层 |
|---|---|---|
| 数据形态 | 密文 blob + 盲索引 token | **KV**(key 可查 / value 加密) |
| 共识网络 | 公开准入的多节点 | **私有准入的多节点** |
| 平台能否解密 | **永不**(密钥分片,平台只持 1 片) | **授权下可**(受审计约束) |
| 密钥位置 | 用户设备(主) | 分片存 B 层(1 片)+ 用户设备 + 第三方 |
### 3.4 证明层选型(zkVM 与有效性证明)—— 回应"有没有比 FISCO BCOS 更好的参考"
> 用户 2026-09-19 提问:**"分阶段先用 FISCO BCOS 跑通…没有更好的参考吗?需要 2 层链 高性能安全的方案,例如 StarkNet 的 zkVM"**
#### 3.4.1 先纠正三个容易混的概念
| 概念 | 是什么 | **不是什么** |
|---|---|---|
| **zkVM** | 可验证计算引擎:程序(Rust/RISC-V)跑完,产出"它按规则执行了"的证明 | ⛔ **不是共识**、不给 TPS、不给最终性 |
| **ZK-rollup(Starknet 等)** | **L2 的完整形态** = 结算锚定在 L1 + 有效性证明 + 排序器 | ⛔ 不是"一个 zkVM 产品" |
| **有效性证明(validity proof)** | 让节点**不必重放全部交易**就能确认状态转换正确 | ⛔ 不解决"谁来排序、谁有最终性" |
**⇒ 关键判断:zkVM 是「证明层」组件,不是「链」的替代品。** 把"换成 zkVM 的链"理解成性能方案,是把两个正交的东西搞混了。
**⚠️ 另一处必须澄清**:**Starknet 用的不是通用 zkVM,而是 Cairo 专用语言 + Stwo(circle-STARK / Mersenne31)**。若要"通用 Rust 进、证明出",应看 **SP1 / RISC Zero / OpenVM**,而不是 Starknet 技术栈。两者性能在同一量级(见 3.4.3),差别在**是否接受专用语言与生态绑定**。
#### 3.4.2 🔴 对本项目最有价值的一点:ZK 恰好解开 B 层的死结
B 层需求是"**加密安全优先**"+"**要多节点共识**"。这两条**天然冲突**:
> 节点要验证状态转换,就得看到数据;看到数据 ⇒ 加密白做。
**有效性证明正是这个冲突的解**:节点**验证证明**即可确认"状态转换合法",**全程看不到 value 明文**。⇒ **B 层的每个节点都可以是"盲验证者"**。
这条比"选哪个链框架"重要得多 —— 它意味着 **ZK 在你这里的首要价值是「隐私」,不是「性能」**。
#### 3.4.3 2026 年 zkVM 格局(实测数据,标注口径)
| zkVM | 背景 | 标志性结果 | 生产状态 |
|---|---|---|---|
| **SP1(Hypercube)** | Succinct | **93–99.7% 以太坊区块 < 12 s**(约 160× RTX 4090 或 16× RTX 5090);**约 $0.02/证明** | ✅ **生产级**(约 90% rollup proving 份额,OP / Base / Unichain 在用) |
| **RISC Zero** | RISC Zero | R0VM 2.0 把单块证明从 **35 min → 44 s**;Boundless 市场已跑 **542 万亿 cycles** | ✅ **生产级**(支撑在线 coprocessor) |
| **OpenVM 2.0** | Axiom + 社区 | 8× RTX 5090 上 **P99 9.8 s** | ✅ 2026-07 起生产版 |
| Jolt | a16z crypto | 32 核 CPU **>100 万 RISC-V cycles/s**,证明约 50 KB | ⚠️ **Alpha,官方明确不建议用于生产** |
| Airbender | Matter Labs(ZKsync) | 单 GPU ethproofs 结果 | ⚠️ 特定 ZKsync OS 版本,⛔ 非通用生产 zkVM |
**硬件成本已大幅下降**:2024 年需 **$300–400K** GPU 集群 / 数小时;2026 年约 **$24–48K** 硬件即可(约 10 秒级)。**证明成本约 45× 下降**,公开 tracker 上单块成本由 1 月 $1.69 降至 12 月 **< $0.04**。
**消费级硬件上的 1 百万 cycle 证明时间**(M3 Max,公开基准归一化):Stwo ≈ **80 s** | SP1 ≈ **95 s** | RISC Zero ≈ **3 min** | zkSync Boojum ≈ 5 min。⇒ **第一梯队彼此差距已不大**,选型不该只看这一项。
#### 3.4.4 选型建议(可直接执行)
**保守短名单 = SP1 / RISC Zero / OpenVM。** 依据:Fenbushi Capital(2025-08)对八款 zkVM 的独立基准显示,这三者整体最稳健,且 **GPU prover 内存占用近乎恒定**;而多款更年轻的 zkVM 的**证明时间与内存随输入规模膨胀**。
> ⚠️ **最后一句对我们特别关键**:本项目的**数据量会持续增长**,"随规模膨胀"的实现在两年后就会变成事故。
**选型纪律**:
1. **锁定一个已审计的 release 版本**,并在**自己的程序上**跑基准(⛔ 不信厂商基准,那只是一个已发布的基准,不是中立认证);
2. 若接受专用语言、且看重 STARK 的透明性与后量子内层 ⇒ 可评估 **Cairo / Stwo** 路线;
3. **⛔ 不要为了"新技术"引入第 4 条运维线** —— zkVM 需要 GPU 资源与证明运维,这笔账要算进预算。
#### 3.4.5 三条必须知道的棱角
1. **证明成本要按"批量"算,不是按"逐块"算**。12 秒级实时证明需要 16× RTX 5090 级别硬件;**小规模私有链应改为批量证明**(每 N 秒 / 每批出一个证明)⇒ 硬件门槛大幅下降,代价是**确认延迟**。⇒ **"高性能"要用"低延迟 + 批量证明"换,而不是靠堆硬件**。
2. **可验证 ≠ 实现无误**。zkVM 的安全性来自数学,但**验证者仍须信任证明系统的实现**;RISC-V zkVM 的 **guest/host 边界是新兴攻击面**;经 Groth16 封装后 **不再后量子**。
3. **"L2"这个词在本项目里可能不成立**。L2 的定义要素是"**结算锚定在某个 L1**"。若 A / B 两层都是你自己的链、没有要锚定的公链 ⇒ 准确叫法是 **"应用链 / 主权链 + 有效性证明"**,不是二层链。⛔ 术语用错会在评审与合规材料里连带出错。
#### 3.4.6 修订后的架构结论(取代 §3.2 的"分阶段建议")
> **共识与证明必须分开做,两者正交、都不可省:**
> **共识(自研,负责排序与最终性)+ 有效性证明(成熟 zkVM,负责状态转换正确性)**
- **共识决定 TPS 上限** ⇒ 这是自研链要优化的地方(用户方向正确);
- **证明决定验证成本与隐私强度** ⇒ 这里**不要自研**,直接用成熟 zkVM(正好落在 §3.2 红线 1"不自研密码学"上);
- **A 层**(公开):证明用于**扩容 + 公众可验证**(任何人都能验证状态转换);
- **B 层**(私有共识):证明用于**节点盲验证** —— 即 3.4.2 那个死结的解,**这是 ZK 在本项目的第一价值**。
**参考对标(比 FISCO BCOS 更贴近本项目)**:**Matter Labs 的 Prividium** —— 面向受监管金融机构的**私有许可链**,据报道已有 5 家美国银行存款规模合计超 **$600B** 通过 Cari Network 在其上构建;其 Elastic Chain 方向即"多条应用专用 ZK 链共享证明层"。⚠️ 该数据来自公开报道与厂商口径,**作为方向参照而非中立认证**。
**⇒ 回答用户的问题**:**有更好的参考,但不是"换一条更快的链",而是"把证明层加进来"。** FISCO BCOS 仍适合作为**跑通业务闭环的临时底座**(部署最快、国密原生),但它只是脚手架;**目标形态应为"自研共识 + 成熟 zkVM 证明 + 云对象存储"**。
**分阶段(修订版)**:
| 阶段 | 底座 | 目的 |
|---|---|---|
| 步骤 1 | **FISCO BCOS** | 跑通业务闭环、**冻结全部验收判据**(≤ 数周量级,纯脚手架) |
| 步骤 2 | 自研共识替换 | 优化排序与最终性;⛔ 不削容错假设 |
| 步骤 3 | **接入 zkVM 证明层** | 先做 A 层可验证性 → 再做 B 层盲验证(3.4.2) |
| 步骤 4 | 按需 | 专用硬件 / 证明市场(外包证明)以规避 GPU 资产 |
⚠️ **顺序纪律**:**步骤 3 依赖步骤 1 冻结的判据**。若判据未冻结就引入证明层,"优化"会失去基准,无法判断是否真的变好。
---
## 4. B 层设计:隐私金库(私有共识链)
### 4.1 定位
**B 层 = 私有链上的加密 KV 金库**,承担三件事:
1. 存**必须由平台可读**的隐私数据(实名、联系方式、支付 Token、凭据哈希、风控日志);
2. 存**用户密钥**(§4.3)—— 这是 B 层最容易设计错的一处;
3. 以 **KV 形式对外提供"可查询但不可直接读"的访问**(§4.2)。
与 A 层的区别:**B 层平台能解密(受审计约束),A 层平台解不开**。但**两层都是多节点共识网络**,差别只在**是否公开准入**(用户 2026-09-19 修正)。
### 4.2 KV 模型:key 可查、value 加密(用户 2026-09-19 拍板)
**结构**:`key → value`,其中 **key 可索引(便于查询),value 密文(取回后解密查看)**。
| 部分 | 处置 | 说明 |
|---|---|---|
| **key** | **规范化 → 盲索引化 → 入链** | ⚠️ 裸明文 key 会把"谁在查谁"暴露给所有节点 ⇒ 见下方约束 1 |
| **value** | **AES-256-GCM 加密**(每记录随机 IV,或按需 SIV) | 密文直接落链;解密需密钥授权 |
| **查询** | 按 key 定位 | 等值查询 O(1) 级;范围 / 模糊见 §5.2(bucket 化 / n-gram) |
**🔴 三条必须守的约束**:
1. **key 不能是裸明文标识**。若 `key = user_email`,链上所有节点都能看出"哪些记录属于同一邮箱"以及查询分布。⇒ **key 应为 `HMAC(域密钥, 规范化标识)`**(即 §5.2 的盲索引),既保留"可等值定位",又不泄露原文。
2. **低熵 key 必须截断或复合**(§5.2 硬约束 1)—— 否则频率分析可还原该字段。
3. **value 的加密密钥必须与 key 的派生密钥不同源**(域分离)⇒ 攻破 key 空间不能推导出 value 密钥。
**这个模型的一大工程收益(值得记住)**:**key 与 value 的加密可独立演进**——将来升级 value 加密算法时,key 索引结构完全不用动;反之亦然。这是 KV 相比"整体加密文档"的决定性优势。
### 4.3 用户密钥的托管(存 B 层,但设计要当心)
用户密钥(用于解密 A 层数据本体)**存放在 B 层**。⚠️ 这里是整个架构**最危险的一处**:
> **若 B 层存的是"可直接使用的用户私钥",则 B 层一旦被攻破 ⇒ A 层的"平台零知识"当场失效,全部用户数据可解。**
⇒ **必须门限分片存放,而不是整钥存放**:
| 方案 | 做法 | 结果 |
|---|---|---|
| ⛔ 整钥存 B 层 | 用户私钥(或其加密态 + 平台持解密钥)直接存 | 平台单方即可解密**全部**用户数据 ⇒ 零知识失效、B 层成为单点 |
| ✅ **门限分片存 B 层**(推荐) | 用户密钥 **Shamir 分片**,如 **2-of-3**:用户设备 1 片 + B 层 1 片 + 第三方托管 1 片;**B 层只持 1 片** | B 层被攻破也**拿不到完整密钥**;用户丢设备仍可恢复 |
⇒ **B 层存的是"密钥分片",不是"密钥"**。这一条让"用户可恢复"与"平台不可解密"**同时成立**(与 §5.4 一致)。
### 4.4 三档实现
| 档 | 做法 | 平台能否解密 | 代价 |
|---|---|---|---|
| **V1 加密库 + KMS**(基线) | PostgreSQL + 应用层 AES-256-GCM 字段级加密;KEK 在 KMS/HSM | 能(受审计) | 平台是信任单点 |
| **V2 门限解密**(推荐) | 密钥 N-of-M 分片(Shamir / MPC);解密需多角色授权 | **单方不能** | 工程复杂、有延迟 |
| **V3 客户端加密 + 私有链存储** | 用户设备本地加密,密钥不出设备 | **完全不能** | 见 §5.5 |
### 4.5 密钥管理硬要求(V1 / V2 共担)
- **信封加密**:每租户/每数据集一把 DEK,DEK 用 KMS 里的 KEK 加密后与元数据同存;
- **DEK 缓存**:启动或首次访问时解密一次并缓存(TTL 10–15 min),**不要每行都调 KMS**(暖态约 1–3 ms/次);
- **无停机轮换**:DEK 版本化 —— 写用 v2,读先试 v2 再回落 v1,批量回填;
- **信任拆分**:盲索引的 salt / pepper **存 KMS 或 HSM**,⛔ 绝不入库;
- 密钥**绝不**出现在:代码库、明文配置、日志、备份目录、工单、聊天记录。
---
## 5. 用户隐私保密:有没有更好的办法
**这是本次的核心问题,答案分四层。**
### 5.0 先纠正一个提问方式
**不存在"选一种最强加密就完事"的方案。** 隐私保密面对的是一个**根本矛盾**:
> **加密越强 ⇒ 越不可查询;越可查询 ⇒ 泄露越多。**
随机 IV 的 AES-GCM 每次加密同一明文都产生不同密文 —— 这是你要的安全属性,**也正是数据库无法回答 `WHERE email = 'x'` 的原因**(两串密文永不相等,索引失效、JOIN 失效、LIKE 无望、ORDER BY 变成随机序)。
⇒ **所以要回答的问题不是"泄不泄露",而是"泄露多少可以接受、以及用什么手段把这个泄露压到最小"。**
**更好的办法 = 分层组合,每层解决不同问题。**
### 5.1 四层组合(推荐架构)
| 层 | 技术 | 解决什么 | 泄露/代价 |
|---|---|---|---|
| **L1 存储层** | **非确定性加密**(AES-256-GCM,随机 IV / AES-SIV 视场景) | 数据本体保密 | 无泄露;但不可查询 |
| **L2 查询层** | **盲索引**(HMAC(域密钥, 规范化明文),截断,每租户盐) | 恢复**等值 / 前缀**查询 | 只泄露"两行是否相等",可控 |
| **L3 计算层** | **机密计算 TEE**(SEV-SNP / TDX) | 必须明文计算时的保护 | 开销 **2–10%**;信任硬件厂商 |
| **L4 密钥层** | **信封加密 + 门限托管** | 密钥不出设备 / 可恢复 | 工程复杂度 |
**一个常见失败模式**:只做 L1(加密了但没法用)或只做 L2(能查了但泄露失控)。**必须有分层。**
### 5.2 L2 详解:可查询加密的五种方案对比
| 方案 | 支持查询 | 泄露什么 | 强度 | 判断 |
|---|---|---|---|---|
| **确定性加密**(AES-SIV / 固定 IV) | 等值 | **频率分布 + 行间相等模式** | 中 | ⚠️ 低基数字段(性别、状态)是**频率分析的完美靶子**;仅适合高基数不透明 ID |
| **盲索引**(HMAC 列) | 等值 | **仅"是否相等"**(比 OPE 泄露少) | 中 | ✅ **工程首选**。密文列保持非确定性,另存一列 HMAC |
| **N-gram 分词哈希** | 前缀 / 中缀 | 片段频率可统计 | 中低 | 索引膨胀 **2–4×**;用于前缀模糊 |
| **加密布隆过滤器** | 包含判断 | 中 | 中 | 特定场景 |
| **保序加密 OPE** | 范围 / 排序 | 🔴 **完整顺序** | **低** | ⛔ **已死** —— Naveed 等(CCS 2015)推断攻击可利用公开辅助分布(人口统计)**直接还原明文** |
| **SSE / FHE** | 关键词等值 / 任意 | 理论极少 | 高 | 性能代价极高,见 §5.3 |
**⇒ 结论:80% 的敏感字段查询是"等值 + 粗粒度范围",用"非确定性加密 + 盲索引 + bucket 化范围"就能覆盖,不必上密码学重武器。**
#### 盲索引的三条硬约束(血泪经验)
1. 🔴 **绝不在低熵字段上建盲索引**。经典反例:给"HIV 状态"建盲索引 ⇒ 任何有库读权限的人都能看出哪些记录状态相同,**几乎等于直接还原该字段**。
- 缓解:① **干脆不建**(不想暴露就别建索引);② **复合索引**(与其他字段一起哈希);③ **截断**(见下)。
2. ✅ **截断 HMAC 长度以控制每次查询返回行数**。目标"平均 N 条/查询":100 万行、想平均 3 条 ⇒ `log2(10⁶/3) ≈ 18 bit`。截断还能防"试探性写入探测"(攻击者插入一条记录,看是否产生相同 hash 从而反推)。
- ⚠️ 不随数据量放大索引 ⇒ 仅轻微性能开销(1000 万行时平均选 30 条,应用层解密过滤仍很快)。
3. ✅ **范围查询用 bucket 化,不用 OPE**。把数值/时间映射到桶(月、$10 区间)再建 token;粒度越粗泄露越少、索引越小,代价是**应用层过滤的假阳性**(典型放大 1.2–1.5×)。
- 学术对照:256 桶覆盖 10¹¹ 值时每桶约 3.9×10⁸ 个值,而 OPE 泄露的是**双射排序** —— 声明式 SQL 代理的研究已证明 bucket 泄露**严格小于 OPE**。
#### 实测性能与存储账(可直接用于容量规划)
| 项目 | 数值 |
|---|---|
| 等值查询(确定性加密或盲索引) | 存储开销 **1.1–1.3×**;p95 延迟 **+5–15 ms** |
| 前缀查询(n-gram) | 索引膨胀 **2–4×**;建议限制前缀字段数量 |
| 范围查询(bucket 化) | 假阳性放大 **1.2–1.5×**;端到端 p95 **+10–30 ms** |
| 全文检索(独立加密检索服务) | 索引 **2–5×** 原文;写入 **+20–80 ms**;读多一次网络跳 |
### 5.3 L3 详解:需要"在明文上算"时选什么
| 维度 | **TEE**(SGX/TDX/SEV-SNP) | **MPC** | **FHE** |
|---|---|---|---|
| 防"被攻破的 OS / 虚拟机监控器" | ✅ 设计如此 | ✅ 若协议假设成立 | ✅ 服务端无明文 |
| 侧信道暴露 | **高**(微架构 / 中断 / 故障注入) | 较低(但输出仍可能泄露) | 避开 TEE 边界;实现与元数据可泄露 |
| 对硬件厂商的信任 | **高** | 低 | 低 |
| 对手不串谋的假设 | 低-无 | **强依赖**(通常需要诚实多数) | 通常无(门限解密会引入) |
| 远程证明 | **必需** | 非硬件 | 依赖电路与密码学评估 |
| **性能开销** | ✅ **2–10%**(SEV-SNP);TDX 3–10%;SGX 5–20% 且受 EPC 内存限制 | 受网络限制(约 1 ms 级延迟);批处理可降 2–4 个数量级 | 🔴 **1,000–10,000×**(三到四个数量级) |
| 成本 | **最低溢价** | 较高(多方 + 协议开销) | **最高** |
#### 🔴 关于 FHE 的如实说明(最容易吹过头的技术)
**能上生产的形态只有一种:窄模式的私有查找。**
已落地的生产案例清一色是**私有信息检索(PIR)**——小查询、有界计算、可容忍异步延迟:
- **Apple Live Caller ID Lookup**(iOS 18+,BFV 方案,已开源 `swift-homomorphic-encryption`)——iPhone 向服务端核验陌生来电,**不泄露号码**;
- **Microsoft Edge Password Monitor** —— 密态比对失泄密语料库;
- **Zama Protocol**(以太坊主网 2025-12)—— TFHE 实现加密余额与隐私转账,吞吐 **数十 TPS**。
**⛔ 反面事实**:**没有任何公司把整个后端跑在 FHE 上**,包括最有钱的那些。通用/实时计算仍慢 3–4 个数量级。**"把后端整体同态加密"是当前不成立的目标。**
**选型口诀**:**逻辑与比较用 TFHE,机器学习用 CKKS,精确查找用 BFV/BGV**。库首选:TFHE-rs(TFHE)、`swift-homomorphic-encryption`(BFV 私有查找);CKKS 需自测 Poulpy / Lattigo / SEAL / OpenFHE / GPU 原生方案(如 FIDESlib)。
#### ⚠️ TEE 也要如实说明:它是"移动靶"不是一次性证明
- 历史攻击:**Foreshadow**(推测执行破 SGX 机密性)、**Plundervolt**(欠压破 SGX 完整性)、**中断类攻击**破 SEV-SNP / TDX;**2026 年 AMD 仍发公告 AMD-SB-3034**(SEV-SNP 路由错配,特权攻击场景下完整性可被破坏)。
- **实践数据**:对 179 个开源 TEE 项目的学术分析发现 **约 1/3 绕过了官方 SDK 的密码学 API**,另有相近比例存在不安全编码 ⇒ **硬件保证强,但软件实现能把它毁掉**。
- 结论:**TEE 可用,但要把它当作持续的系统安全工程目标,而不是买来就有的证明。**
- ✅ **最实用的姿势**:**用 TEE 做密钥释放**(KMS 仅在远程证明通过时才释放密钥)—— 这把密钥的使用收进硬件隔离,显著缩小主机被攻破时的爆炸半径。
### 5.4 L4 详解:密钥托管与恢复(解决"丢了就没了")
这是**V3(客户端加密)最大的软肋**:用户丢钥 = 数据永久丢失。**更好的办法是门限密钥托管。**
| 方案 | 做法 | 优点 | 缺点 |
|---|---|---|---|
| 用户独持(纯 V3) | 密钥只在设备 | 平台零知识最彻底 | **丢钥即永久丢失** |
| **门限托管**(推荐) | 主密钥 **Shamir 分片**分给 N 方(用户设备 + 平台 + 用户指定受托方…),M-of-N 可重建 | 可恢复;**单方拿不到完整密钥** | 需多方协作、有延迟 |
| 社交恢复 | 指定守护人集,多数同意可重置 | 体验好 | 守护人被串通/胁迫 |
| 托管式(平台持钥) | 平台保管 | 体验最好 | **平台零知识失效** |
**建议**:**"用户设备持 1 片 + 平台持 1 片 + 用户指定第三方持 1 片",2-of-3 恢复**。⇒ 平台**单方无法解密**(零知识仍成立),但**用户丢设备可恢复**(不再是灾难)。这是本方案对"V3 硬代价"的正面解法。
**与 B 层的关系**:平台持的那 1 片**即落在 B 层**(§4.3)⇒ B 层存的是**密钥分片**而非整钥。⚠️ 这是本方案与"B 层存用户密钥"这条需求**唯一相容的实现方式** —— 若 B 层存整钥,A 层的零知识承诺立刻作废。
### 5.5 综合推荐(一句判据)
> **按"平台是否需要读到明文"分档,而不是按"数据有多敏感"分档。**
| 数据类别 | 方案 | 理由 |
|---|---|---|
| 数据本体(用户自己的数据) | **A 层 + 客户端加密 + 门限托管**(§3.3 + §5.4) | 平台不该看见,且用户丢钥可恢复 |
| 需等值/前缀检索的字段 | **盲索引(截断 + 每租户盐,salt 在 KMS)** | 泄露最小、成本最低 |
| 需范围检索的字段 | **bucket 化 token**(⛔ 不用 OPE) | OPE 已被证明可还原明文 |
| 需明文计算的极敏感子集 | **TEE 隔离区 + 远程证明门控的密钥释放** | 开销仅 2–10%,但须接受硬件信任 |
| 需向第三方证明"结论为真" | **ZK 证明**(只证明命题,不交数据) | 与 FHE 互补:ZK 证明事实,FHE 计算密文 |
| 必须平台可读(实名/客服) | **B 层 V1/V2** | 这是合规与运营的现实需要 |
| **⛔ 绝不用** | **加密后上链(长期存)** | 不满足删除权;密钥轮换不可行 ⇒ "历史数据永远更弱"的斜坡 |
### 5.6 一个所有人都忘的泄露面:元数据
**加密保证的是"内容",不是"模式"。** 以下信息**FHE 也不保护**:
- **访问模式**(何时查了哪条)
- **搜索模式**(同样的查询反复出现 ⇒ 可关联)
- **时间与频率**(数据量、更新节奏)
- **记录数量与大小**
**缓解手段**:查询填充(定长/填充响应)、批处理混淆、延迟随机化、门限解密策略、输出过滤。⇒ **这些不是可选项,是"号称加密但被流量分析打穿"的分水岭。**
---
## 6. 验收判据
| # | 判据 | 通过标准 |
|---|---|---|
| 1 | A 层零明文隐私 | 全量链上/索引条目做正则 + 字段级扫描,敏感模式命中 **0** |
| 2 | 服务端不可解密 | 用平台全部权限(含 DBA + KMS 管理员)尝试解密 A 层数据 ⇒ **失败** |
| 3 | 匿名性成立 | 关联性测试:仅凭公开数据无法反推或交叉关联出真实身份 |
| 4 | 桥表受控 | 双人授权 + 每次访问留痕;独立密钥;访问日志与业务日志分离 |
| 5 | 盲索引泄露受控 | 查询平均返回行数在目标区间(如 3 ± 2);单字段频率分布测试无异常 |
| 6 | 密钥不出金库 | 密钥只在 KMS/HSM;代码 / 日志 / 备份零命中;轮换演练成功 |
| 7 | 可恢复 | 模拟用户丢失设备 ⇒ 门限恢复流程可重建数据(真跑一遍) |
| 8 | 删除权可执行 | 真实走通删除;链上不留可关联信息 |
| 9 | 篡改可检测 | 注入篡改 ⇒ 校验器下轮必报警 |
| 10 | 元数据泄露已评估 | 有访问/搜索模式的缓解措施,且有流量分析演练 |
| 11 | 备案就位 | 备案编号已下且已公示;实名、安全评估、6 个月留存齐备 |
| 12 | **B 层共识有效** | 停 1 个节点仍可写入与查询(容错演练);新增节点须授权准入(不满足则说明"共识"名不副实) |
| 13 | **B 层 key 不泄露标识** | 抽样全量 key:**无法从 key 直接读出邮箱 / 手机号等原文** |
| 14 | **用户密钥为分片态** | 仅凭 B 层全部数据与全部权限,**无法重建任何用户的完整密钥**(真做一次尝试) |
⚠️ **第 2 条是本方案的立身之本**:如果平台某条路径能解密 A 层数据,那"零知识"就是宣传而非事实。
---
## 7. 分阶段落地
| 阶段 | 内容 | 退出条件 |
|---|---|---|
| **S0** | 确定 A/B 数据边界(哪些字段走哪层);发起备案 | 数据分类表完成;备案已提交 |
| **S1** | **B 层 V1**:字段级加密 + KMS + 审计 + 删除流程 | 判据 6、8 通过 |
| **S2** | **A 层存储**:客户端加密 + 密文 blob 存储 + 版本链 | 判据 1、9 通过 |
| **S3** | **查询层**:盲索引(截断 + 每租户盐)+ bucket 化范围 | 判据 5 通过;等值查询 p95 达标 |
| **S4** | **窄桥**:匿名 ID + 独立加密映射表 + 双人授权 | 判据 3、4 通过 |
| **S5** | **密钥层**:门限托管 + 恢复流程 | 判据 7 通过(真跑恢复演练) |
| **S6** | **自研链替换**(用户已拍板方向)—— 先用 FISCO BCOS 跑通业务闭环并冻结判据,再逐步替换共识 / 存储 / 接口层;⛔ 密码学原语始终用成熟库 | 自研链通过**全部既有判据**(尤其判据 9 篡改可检测、判据 2 服务端不可解密);容错演练通过 |
| **S7** | **按需**:TEE 隔离区(+ 证明门控密钥释放);窄模式 FHE | 有明确需求与预算 |
**顺序纪律**:
- **S4 桥必须先于 A 层对外开放**(否则匿名性不成立);
- **S5 必须在用户大规模上传数据之前**(否则无法安全迁移已加密数据);
- **S6 是可选层** —— 不要为了技术新颖而引入 TEE / FHE(它们各自带来新的运维线和攻击面)。
---
## 8. 负面清单
- ⛔ **不用保序加密** —— 泄露完整顺序,Naveed 等(CCS 2015)已证明可结合公开统计分布还原明文;
- ⛔ **不给低熵字段建盲索引** —— 等于直接暴露该字段(HIV 反例);
- ⛔ **不把加密后数据长期上链** —— 删除权不满足 + 密钥轮换不可行;
- ⛔ **不追求"后端整体 FHE"** —— 慢 3–4 个数量级,无一家公司做到;
- ⛔ **不把 TEE 当一次性证明** —— 是移动靶(Foreshadow / Plundervolt / AMD-SB-3034);
- ⛔ **不假设"加密了就安全"** —— 元数据 / 访问模式 / 搜索模式不加密;
- ⛔ **不让 A 层任何路径能解密** —— 否则零知识是宣传;
- ⛔ **不在 S5 完成前让用户大规模上传** —— 密钥方案变更会导致存量数据无法迁移;
- ⛔ **不自研密码学** —— 链可以自研(用户已拍板),但 **AES-GCM / HMAC / SHA-256 / SM2-SM3-SM4 绝不自己实现**,一律用成熟库(libsodium / OpenSSL / 国密 SDK)或硬件密码模块。**自研密码学 = 事故**(§3.2 红线 1);
- ⛔ **不悄悄削共识安全假设** —— 可从 PBFT / Raft 出发做工程优化与裁剪,但必须写清**削掉了哪条假设**并在评审中讨论;⚠️ "优化性能"最常见的代价是**容错阈值下降**(§3.2 红线 2);
- ⛔ **不在 B 层整钥存放用户密钥** —— 必须门限分片(B 层只持 1 片),否则 B 层被攻破 ⇒ A 层零知识当场失效(§4.3);
- ⛔ **不用裸明文做 KV 的 key** —— 必须是盲索引 token(`HMAC(域密钥, 规范化标识)`),否则链上节点可看出"哪些记录同属一人"(§4.2 约束 1);
- ⛔ **不用统一密钥同时派生 key 与 value 的加密密钥** —— 必须域分离(§4.2 约束 3);
---
## 9. 来源
**可查询加密与泄露**
- 盲索引 / 确定性加密 / OPE / SSE 的泄露对比与工程实践 —— 2026 年可搜索加密工程手册;.NET 加密实践指南(五种方案矩阵);中文密文检索选型分析
- 🔴 **OPE 推断攻击** —— Naveed, Kamara, Wright, "Inference Attacks on Property-Preserving Encrypted Databases", CCS 2015
- **盲索引截断与低熵字段风险**(含"平均 N 条/查询"的比特数计算)—— Ciphersweet 安全讨论
- **bucket 化泄露严格小于 OPE 的形式化证明 + 1M 行医疗记录实测** —— Springer, "Dual Blind Indexes for Queryable Column-Level Encryption"(256 桶 / 10¹¹ 值 ⇒ 每桶约 3.9×10⁸ 值)
- 性能与存储账(+5–15 ms / 1.1–1.3× 等)—— 2026 CTO 实践手册
**机密计算 / MPC / FHE 三方对比**
- TEE 开销(SEV-SNP 2–10%、TDX 3–10%、SGX 5–20% 且受 EPC 限制)、历史攻击(Foreshadow、Plundervolt、SEV-SNP/TDX 中断攻击)、**AMD-SB-3034**、179 个开源 TEE 项目约 1/3 绕过官方密码学 API —— 2026 年机密计算对比分析 + 独立基准
- MPC 与 FHE 性能(ABY3 十亿级 AND 门/秒;SECRECY 1 亿 shares 约 2 秒;SPDZ 实现层漏洞)—— 同上
- **FHE 生产现状**(Apple Live Caller ID、Apple Enhanced Visual Search、Microsoft Edge Password Monitor、Zama Protocol 数十 TPS;1,000–10,000× 开销;"没人把后端跑在 FHE 上")—— 2026 FHE 生产现状分析(含厂商数据标注)
- **FHE 方案选择**(TFHE 逻辑 / CKKS ML / BFV 精确查找)与库推荐 —— 同上
**合规**
- 《区块链信息服务管理规定》第 2/6/8/9/11/13/14 条 —— 网信办 2019-01-10
- 备案运行状态 —— 网信办境内区块链信息服务备案编号公告(第二十四批,2026-07-21)
**技术选型**
- FISCO BCOS / Fabric 对比(国密、共识、部署、隔离)—— 公开技术文档 + 2026 第三方分析
- RFC 6962(Certificate Transparency)—— Merkle 只追加日志规范
**zkVM 与有效性证明(v1.2 新增)**
- zkVM 生产格局与实测(SP1 Hypercube 93–99.7% 以太坊区块 <12 s / 约 $0.02 每证明 / 约 160× RTX 4090 或 16× RTX 5090;RISC Zero R0VM 2.0 35 min→44 s;OpenVM 2.0 8× RTX 5090 P99 9.8 s;Jolt 32 核 >100 万 cycles/s 但为 Alpha;Airbender 为 ZKsync OS 特定版本)—— 2026 年 ZK 生产就绪度分析(含厂商数据标注)+ 独立基准汇总
- **八款 zkVM 独立基准**(SP1 / RISC Zero / OpenVM 整体最稳健;GPU prover 内存近乎恒定,年轻实现随输入规模膨胀)—— Fenbushi Capital,2025-08
- 消费级硬件百万 cycle 证明时间(Stwo ≈80 s / SP1 ≈95 s / RISC Zero ≈3 min)—— 2026 年公开基准归一化
- 证明成本下降幅度(约 45×;单块成本 $1.69 → <$0.04)—— ethproofs 公开 tracker / 2026 分析
- zkVM 内部引擎(STARK + recursion / multilinear / sum-check)与后量子性说明 —— 2026 年可验证计算技术综述(含 a16z 对 Jolt 的评估)
- **Prividium**(Matter Labs 面向受监管金融机构的私有许可链;据报道 5 家美国银行存款合计超 $600B 经 Cari Network 构建)—— ⚠️ 公开报道 + 厂商口径,**作方向参照,非中立认证**
**⚠️ 提示**:§1.2 备案适用性、§1.3 数据出境定性、以及"平台零知识"与司法配合义务的关系,建议取得执业法律意见后定案。本文为技术方案,不构成法律意见。
---
*相关文档:`分布式数据链路-技术方案与落地路线_20260919.md`(通用判定与三档路线)|`面向公众资产平台与隐私金库-落地方案_20260919.md`(其 §1.1 因范围澄清已作废,其余架构部分被本文取代)*