本节摘要:SOURCE 1.2 定义四大目标及典型实现:AES/RSA 保机密、SHA-256/MAC/签名保完整、证书与双因素保认证、数字签名保不可否认。
用户访问 「相关地址请参见官方文档」 NET::ERR_CERT_COMMON_NAME_INVALID`。这说明机密通道可能已建立,但认证失败——服务器身份无法与期望域名绑定。
| 目标 | 含义 | 典型手段 | TLS 中的体现 |
|---|---|---|---|
| 机密性 | 未授权者不可读 | AES、RSA 加密 | 记录层加密 |
| 完整性 | 数据未被篡改 | SHA-256、HMAC、签名 | AEAD / MAC |
| 认证 | 确认对方身份 | 密码、证书、2FA | 服务器证书链 |
| 不可否认 | 发送方不能抵赖 | 数字签名 | 可选客户端证书 |

⚠️ 常见坑:只关注加密忽略证书——等于给陌生人开加密对讲机。
💡 关键直觉:四目标常同时出现;TLS 握手主要解决认证与密钥协商,记录层解决机密与完整。
四个安全目标不是独立的四个开关,而是彼此咬合的链条。以一次网银转账为例:机密性保证交易内容只有双方能读;完整性保证金额没有被篡改;认证保证另一端确实是银行而非伪造者;不可否认保证银行无法事后抵赖这条指令出自客户。其中任何一环断裂,整体安全都不成立——机密性做得再好,如果认证失败,攻击者可以假扮银行骗取转账。
在实际系统里,四目标的实现往往复用同一批原语。AES-GCM 这类 AEAD 算法同时覆盖机密性与完整性;X.509 证书同时承载身份认证与公钥分发;数字签名则是完整性、认证与不可否认三者的共同工具。理解「一个原语可以同时服务多个目标」,有助于在阅读 TLS 握手时抓住「这条消息同时干了什么事」的线索。
# 一次转账流程的四目标映射 环节 机密性 完整性 认证 不可否认 TLS 握手 密钥交换 Finished 证书链 — 应用数据 AES-GCM GCM 标签 — — 签名指令 — 签名摘要 证书身份 签名本身 审计留档 加密存储 哈希链 操作者 签名记录
这张映射表可以推广到任意业务系统:先在流程图上标注每个环节涉及哪几类目标,再核对每类目标是否由具体原语覆盖、密钥由谁管理。这种「目标到原语的核对法」是安全评审里最常用也最不易漏项的方法,本教程后续所有章节都会用它来解释 TLS 与 VPN 的设计取舍。
# 四类安全目标对应的机制、密钥与典型失效案例 目标 典型原语 密钥管理 失效案例 机密性 AES-256-GCM 会话密钥短期 IV 重用导致密钥流重复 RSA-OAEP / ECDH 私钥 HSM 保护 RSA 1024 被分解 完整性 SHA-256 / HMAC 密钥参与 HMAC MD5 碰撞伪造摘要 认证 X.509 证书 / 2FA 私钥 + 受信根 自签名被当可信 不可否认 数字签名 私钥唯一持有 签名私钥泄露仍被抵赖 # 常见失效的连锁反应示例 失效环节 攻击者能做什么 防御要点 只有机密没有认证 伪装服务器骗取数据 证书验证不可关闭 只有认证没有完整 篡改在途数据 AEAD 校验不可跳过 密钥管理失守 解密全部历史数据 轮换 + HSM + 最小权限 吊销检查失守 用已撤销证书继续签名 OCSP/CRL 在线核对 算法过弱 离线破解密文 密钥长度与安全级别对齐 # 一次评审如何核对四目标(检查单) 1. 数据在传输中是否加密?加密算法与模式是什么? —— 机密性 2. 数据是否可被检测篡改?用 HMAC 还是签名还是 AEAD? —— 完整性 3. 双方身份如何确认?证书链 / 密钥 / 双因子? —— 认证 4. 关键操作是否可追溯不可抵赖?签名日志与审计链路? —— 不可否认
这套附录把抽象的四目标翻译成可执行的核对项。评审任何系统时,只要按这四个问题逐项回答并记录结论,就能快速识别「哪一类目标还悬空」,为后续的加固与采购提供明确依据。