3. 身份标识体系设计
在联邦学习中,参与方各自持有本地用户数据,模型训练需要跨机构协作,但原始身份信息不能直接共享。身份标识体系要解决的核心矛盾是:既要让系统知道“哪些样本属于同一个实体”,又不能暴露这个实体在现实世界中的真实身份。本节围绕全局唯一标识、本地标识映射、匿名化标识和跨域身份关联四个层面,说明如何设计一套可落地、可审计、可撤销的标识体系。
一、全局唯一标识:跨域对齐的锚点
全局唯一标识(Global Unique Identifier,GUID)是联邦学习中跨参与方对齐样本归属的基准。它不一定是真实身份,而是一个在联邦范围内稳定、唯一、不可碰撞的字符串。常见设计有三种:
- 随机 UUID:由中心协调方生成,如
f7c9a2e1-3b4d-4e8a-9c1f-2d6b8a0e5f31,优点是无需依赖任何业务字段,缺点是需要在各参与方之间同步映射关系。 - 哈希派生标识:对规范化后的业务主键(如“机构代码+证件号后四位+出生日期”)做加盐 SHA-256,取前 32 位十六进制。同一实体在不同参与方使用相同盐值和规范化规则时,可得到相同 GUID,从而支持无中心对齐。
- 分层命名标识:采用
org:user:hash形式,如hospitalA:patient:9f3a2c,便于按机构维度做权限隔离和批量撤销。
选择 GUID 时需明确三个参数:唯一性范围(联邦级还是联盟级)、稳定性(是否允许实体注销后重新分配)、可撤销性(能否在不影响其他实体的前提下失效某个标识)。例如,某医疗联邦设定 GUID 为“机构代码 + 患者主索引哈希”的 16 位截断值,要求全局唯一且不可逆,注销时通过维护一张撤销列表实现,而不是删除历史映射。
二、本地标识映射:不共享原始主键
每个参与方内部都有自己的本地标识(Local ID),如数据库自增主键、会员号、设备号。联邦训练时,参与方不应把 Local ID 直接上传,而是建立一张本地映射表,将 Local ID 映射为 GUID。映射表只保存在本地,中心或其他参与方只能看到 GUID。
映射表的关键字段包括:local_id、guid、created_at、status、salt_version。其中 salt_version 用于记录生成 GUID 时使用的盐值版本,便于轮换盐值后仍能追溯旧映射。一个典型的映射记录如下:
local_id: 100238
guid: 9f3a2c7e1b4d8a05
created_at: 2025-03-11T09:20:00+08:00
status: active
salt_version: v2
映射表需要配合访问控制:只有身份治理服务可以读写,训练任务只能通过接口按 GUID 查询是否存在,不能反查 Local ID。若参与方需要支持“同一实体多设备”场景,可在映射表中增加 device_scope 字段,将多个 Local ID 映射到同一 GUID,但需在隐私评估中说明该聚合粒度是否可接受。
三、匿名化标识:从可逆到不可逆的梯度
匿名化不是“把名字去掉”这么简单,而是一个从可逆到不可逆的梯度。联邦学习中常用的匿名化标识包括:
- 假名化标识:用 GUID 替代真实身份,但保留映射表,属于可逆匿名,适合需要审计和纠错的场景。
- 加盐哈希标识:对业务主键加盐后哈希,盐值不公开,属于弱不可逆,适合跨机构对齐。
- 差分隐私标识:在 GUID 生成或使用过程中引入噪声,如对哈希前缀做随机扰动,使同一实体在不同轮次可能得到不同标识,适合高敏感场景,但会牺牲部分对齐精度。
设计时要明确匿名化强度与关联可用性的权衡。例如,某金融联邦要求跨行识别同一客户,但监管不允许共享证件号。方案是:各行对“证件号+手机号”做 HMAC-SHA256,密钥由联盟密钥管理系统统一分发,输出 128 位摘要作为 GUID。该方案下,同一客户在不同行得到相同 GUID,但无法从 GUID 反推证件号;若密钥泄露,则需立即轮换并重新生成映射。
四、跨域身份关联方法:对齐、传递与验证
跨域身份关联要回答“A 机构的 GUID 和 B 机构的 GUID 是否指向同一实体”。常见方法有三类:
- 中心化对齐:由可信协调方维护全局映射表,各参与方上传本地 GUID 与中心 GUID 的对应关系。优点是实现简单,缺点是中心成为单点风险和隐私汇聚点。
- 基于哈希的隐式对齐:各参与方使用相同盐值和规范化规则独立生成 GUID,无需中心参与。关键是盐值分发和规范化规则必须严格一致,否则会出现“同一实体、不同 GUID”的漏对齐。
- 基于安全多方计算的关联:参与方将本地标识加密后输入 MPC 协议,共同计算交集或匹配结果,不暴露各自原始标识。适合高隐私要求场景,但计算开销较大。
无论采用哪种方法,都需要一个关联验证环节:在正式训练前,抽取少量已知对应关系的样本做对齐测试,统计匹配率和误配率。例如,抽取 200 对已知同一实体的记录,若匹配率低于 95%,应检查盐值版本、规范化规则或编码格式是否一致;若误配率高于 1%,则需收紧匹配条件或引入人工复核。
五、设计检查要点
落地时建议逐项确认:GUID 是否在联邦范围内唯一且不可碰撞;本地映射表是否只保存在参与方本地并受访问控制保护;匿名化强度是否与数据敏感级别匹配;盐值或密钥是否有轮换机制和版本记录;跨域关联是否经过抽样验证并保留验证报告;实体注销时是否能通过撤销列表或状态字段及时失效标识。只有把标识的生成、映射、匿名化和关联验证串成闭环,联邦学习才能在保护身份隐私的前提下完成有效的跨域协作。