# 数据分类与字段加密映射表 > 巴青平台密码改造字段级清单。 > 算法:**SM3-HMAC**(完整性)、**SM4**(机密性)。 > 状态:`待改造` / `一期` / `二期` / `三期` — 实施时更新。 **图例** | 保护 | 含义 | | --- | --- | | HMAC | 存储完整性,SM3-HMAC,库中存 `*_hmac` 或行级 `integrity_hmac` | | SM4 | 存储机密性,原字段或 `*_cipher` 存 Base64 密文 | | HMAC+SM4 | 同时做机密性与完整性 | --- ## 1. 身份鉴别数据 | 表名 | 字段 | 保护 | dataType | 期次 | 备注 | | --- | --- | --- | --- | --- | --- | | `sys_user` | `password` | HMAC+SM4 | `CREDENTIAL` | 二期 | 口令存储口径须与测评机构确认(SM4 或保留 BCrypt+HMAC) | | `sys_user` | `user_name` | HMAC | `CREDENTIAL` | 二期 | 登录账号完整性 | | `sys_user` | `cert_sn` | HMAC | `CREDENTIAL` | 一期 | UKey 证书序列号 | | `sys_user` | `cert_subject` | HMAC | `CREDENTIAL` | 一期 | 证书主题 | | Redis | `login:sms:*` | — | — | 一期 | 短信 OTP,TTL 过期,不落库 | --- ## 2. 个人信息 | 表名 | 字段 | 保护 | dataType | 期次 | 备注 | | --- | --- | --- | --- | --- | --- | | `sys_user` | `nick_name` | HMAC+SM4 | `PERSONAL` | 二期 | 姓名/昵称 | | `sys_user` | `phonenumber` | HMAC+SM4 | `PERSONAL` | 二期 | 短信登录依赖,须可解密 | | `sys_user` | `email` | HMAC+SM4 | `PERSONAL` | 二期 | | | `sys_user` | `sex` | HMAC | `PERSONAL` | 二期 | 可选 SM4 | | `sys_dept` | `phone` | HMAC+SM4 | `PERSONAL` | 三期 | 部门联系电话 | | `sys_dept` | `email` | HMAC+SM4 | `PERSONAL` | 三期 | | | `biz_medical_resource` | `contact_phone` | HMAC+SM4 | `PERSONAL` | 三期 | 兽医/机构联系电话 | | `biz_medical_resource` | `detail_address` | HMAC+SM4 | `PERSONAL` | 三期 | 详细地址 | | `biz_distributor` | `contact_phone` | HMAC+SM4 | `PERSONAL` | 三期 | 承销商 | | `biz_supplier` | `contact_phone` | HMAC+SM4 | `PERSONAL` | 三期 | 供应商 | | `biz_tech_resource` | `contact_phone` | HMAC+SM4 | `PERSONAL` | 三期 | 科技资源 | | `biz_trade_order` | 收货人/联系方式等 | HMAC+SM4 | `PERSONAL` | 三期 | 以订单表实际字段为准 | | `biz_epidemic_report` | 上报人联系方式等 | HMAC+SM4 | `PERSONAL` | 三期 | 疫情上报 | > **扩展规则**:新增业务表含手机、姓名、证件号、地址、银行卡等,默认归入 `PERSONAL`,上线前登记本表。 --- ## 3. 权限信息 | 表名 | 字段/范围 | 保护 | dataType | 期次 | 备注 | | --- | --- | --- | --- | --- | --- | | `sys_user` | `user_id,user_name,status,del_flag,dept_id` | HMAC(行级) | `PERMISSION` | 二期 | 用户主体完整性 | | `sys_role` | 全行关键字段 | HMAC(行级) | `PERMISSION` | 二期 | `role_id,role_key,status,del_flag,data_scope` | | `sys_user_role` | `user_id,role_id` | HMAC(行级) | `PERMISSION` | 二期 | 用户-角色关联 | | `sys_role_menu` | `role_id,menu_id` | HMAC(行级) | `PERMISSION` | 二期 | 角色-菜单关联 | | `sys_menu` | `menu_id,perms,status` | HMAC(行级) | `PERMISSION` | 三期 | 菜单权限标识 | **行级 HMAC 拼接示例(`sys_user_role`)** ```text PERMISSION|{keyVer}|{user_id}|{role_id} ``` --- ## 4. 操作日志 | 表名 | 字段/范围 | 保护 | dataType | 期次 | 备注 | | --- | --- | --- | --- | --- | --- | | `sys_oper_log` | `oper_id,title,method,oper_name,oper_url,oper_param,json_result,status,oper_time` | HMAC(行级) | `LOG` | 二期 | 写入后异步算 HMAC | | `sys_logininfor` | `info_id,user_name,ipaddr,login_location,browser,os,status,msg,login_time` | HMAC(行级) | `LOG` | 二期 | 含证书登录、验签失败记录 | **说明**:日志表一般不做 SM4 整行加密(影响检索);对 `oper_param` 中已识别的个人敏感子串可单独 SM4 脱敏存储(可选)。 --- ## 5. 主要业务数据 ### 5.1 牧业疫病诊疗 | 表名 | 字段 | 保护 | dataType | 期次 | 备注 | | --- | --- | --- | --- | --- | --- | | `biz_medical_resource` | `introduction` 等核心业务字段 | HMAC+SM4 | `BUSINESS` | 三期 | 按需求确定是否含简介全文 | | 在线问诊/预约相关表 | 病情描述、诊断结论等 | HMAC+SM4 | `BUSINESS` | 三期 | 待模块表结构梳理后补全 | ### 5.2 交易市场 | 表名 | 字段 | 保护 | dataType | 期次 | 备注 | | --- | --- | --- | --- | --- | --- | | `biz_trade_order` | 金额、结算、合同相关 | HMAC+SM4 | `BUSINESS` | 三期 | | | `biz_market_entry` | 入场登记敏感信息 | HMAC+SM4 | `BUSINESS` | 三期 | | | `biz_isolation_patrol` | 巡查记录 | HMAC | `BUSINESS` | 三期 | 完整性为主 | ### 5.3 产业数据 | 表名 | 字段 | 保护 | dataType | 期次 | 备注 | | --- | --- | --- | --- | --- | --- | | 养殖产业/牧场/草场等 | 主体、面积、存栏等核心指标 | HMAC+SM4 | `BUSINESS` | 三期 | 见各模块技术方案 | | 牦牛资产/金融相关 | 耳标、估值、权属 | HMAC+SM4 | `BUSINESS` | 三期 | | ### 5.4 政策与补贴 | 表名 | 字段 | 保护 | dataType | 期次 | 备注 | | --- | --- | --- | --- | --- | --- | | 补贴发放记录 | 户名、账号、金额 | HMAC+SM4 | `BUSINESS` | 三期 | 高敏感 | --- ## 6. 配置表(改造元数据) | 表名 | 说明 | | --- | --- | | `sys_crypto_field_config` | 表名、列名、保护类型(HMAC/SM4/BOTH)、`data_type`、`key_index`、是否启用 | | `sys_crypto_key_version` | 密钥版本与密码机索引映射 | | `sys_security_alert` | 完整性校验失败、篡改告警 | | `sys_crypto_audit_log` | 密码机调用审计(无明文) | --- ## 7. Canonical 规则登记 | dataType | 参与 HMAC 的字段顺序 | 空值规则 | | --- | --- | --- | | `CREDENTIAL` | 表定制 | 空字符串用 `` | | `PERSONAL` | 按映射表单字段升序 | 同上 | | `PERMISSION` | 主键 + 权限关键列 | 同上 | | `LOG` | 日志行全字段按列名排序 | 同上 | | `BUSINESS` | 按 `sys_crypto_field_config` 配置 | 同上 | **版本**:规则变更时 `integrity_key_ver` / `crypto_key_ver` 递增,保留旧版校验逻辑至迁移完成。 --- ## 8. 待梳理清单(实施前补充) - [ ] 各 `biz_*` 表完整字段扫描(自动化脚本输出草案) - [ ] 测评机构确认口令存储口径 - [ ] 密码机厂商密钥索引分配表 - [ ] 大屏免密登录账号(`screenviewer`)是否纳入证书/短信策略 - [ ] 第三方 Open API 回调数据是否落库加密