TLS 静态字段加密与 KMS 密钥轮换

共 19 题
#

1. PostgreSQL pgcrypto 扩展的应用?

A pgcrypto 提供哈希、加解密等函数,可用于字段级加密 ✓ 正确答案
B pgcrypto 只提供随机数生成,不提供加解密
C pgcrypto 是透明加密,应用无需感知密钥
D 使用 pgcrypto 加密的列仍可正常走索引和范围查询
#

2. 字段级加密(Column-Level Encryption)的实现?

A 字段级加密会加密整张表的所有列
B 字段级加密后所有列仍可正常排序和聚合
C 字段级加密不涉及密钥管理,安全性完全由数据库保证
D 加密列通常无法直接做精确查找与范围查询,牺牲查询能力 ✓ 正确答案
#

3. 静态加密(Encryption at Rest),文件系统加密、透明数据加密(TDE)?

A 文件系统加密在数据库层透明,能对表空间粒度控制
B TDE 会改变应用 SQL 和查询逻辑
C TDE 由数据库引擎自动加密数据文件与日志,对应用透明 ✓ 正确答案
D 静态加密只保护传输中的数据,不涉及磁盘存储
#

4. TLS 1.2 与 TLS 1.3 在数据库连接握手上的差异(1-RTT vs 0-RTT)及对连接建立延迟的影响?

A TLS 1.3 用 1-RTT 完成握手,并支持 0-RTT 恢复降低延迟 ✓ 正确答案
B TLS 1.2 已支持 0-RTT,无需密钥交换
C TLS 1.3 握手比 TLS 1.2 需要更多往返
D 0-RTT 完全没有重放安全风险
#

5. 字段级加密与数据库 TLS 连接的算法选择(AES-256-GCM、ChaCha20-Poly1305)对性能与合规的影响?

A AES-256-GCM 在支持 AES-NI 的 CPU 上性能优异,且合规认可度高 ✓ 正确答案
B ChaCha20-Poly1305 在 x86 服务器上通常比 AES-256-GCM 更快
C 字段级加密不需要考虑完整性校验,只需机密性
D TLS 1.3 不支持 AES-256-GCM 和 ChaCha20-Poly1305
#

6. MySQL InnoDB 表空间加密?

A InnoDB 表空间加密使用单一密钥直接加密所有数据
B 采用 keyring 存储主密钥,主密钥加密表空间密钥,实现两级密钥 ✓ 正确答案
C 表空间加密后应用必须修改 SQL 才能访问数据
D 加密只覆盖数据文件,不覆盖 redo/undo 日志
#

7. 信封加密(envelope encryption)为什么用 KMS 主密钥加密数据密钥而非直接加密数据?轮换时只需 re-wrap 数据密钥的原理是什么?

A KMS 主密钥直接加密所有业务数据,性能开销大
B 数据密钥永久不变,轮换只能重建整个数据库
C 主密钥只加密数据密钥,轮换时只需 re-wrap 数据密钥,无需重写数据 ✓ 正确答案
D 信封加密只有一层密钥,无法分离主密钥与数据密钥
#

8. 字段级加密与查询能力的矛盾,加密列无法走索引与范围查询,确定性加密(相同明文得相同密文)为何会引入泄漏与字典攻击风险?

A 加密列可以正常建立索引并做范围查询
B 确定性加密使明文可重复,因此易受字典攻击和频率分析 ✓ 正确答案
C 非确定性加密最适合做等值查询,且无任何泄漏
D 保序加密不引入任何泄漏,可安全用于范围查询
#

9. 数据库 TLS 连接经过代理/负载均衡时的 TLS 终止(termination)与会话保持策略?

A TLS 透传指代理解密流量,便于审计但暴露明文
B 高安全场景应默认使用 TLS 终止,牺牲端到端加密
C TLS 终止后代理能看到明文流量,代理需配合会话保持策略 ✓ 正确答案
D 代理无法支持 TLS 会话复用,只能重新握手
#

10. 静态加密(TDE/字段级加密)的密钥轮换频率与停机窗口、性能开销的工程权衡?

A 主密钥轮换需重写全部数据,停机窗口长
B TDE 的性能开销无法通过硬件加速缓解
C 数据密钥轮换成本低,可以频繁执行而不影响数据
D 常采用主密钥定期轮换 + 数据密钥按需轮换的混合策略 ✓ 正确答案
#

11. 数据库加密的硬件加速(AES-NI、Intel QAT)对吞吐与延迟的实际收益与部署成本?

A 硬件加速只影响延迟,不影响吞吐
B Intel QAT 是 CPU 内置指令,无需额外硬件即可使用
C AES-NI 只加速非对称加密,不适用于 AES
D AES-NI 是 CPU 内建指令,成本低且显著提升 AES 吞吐 ✓ 正确答案
#

12. 数据库实例证书的自动化管理(ACME、Vault PKI)在 K8s 部署中的挑战与最佳实践?

A 证书应一次签发长期有效,避免频繁轮换
B 证书轮换时必须重启数据库,无法热加载
C ACME 的 HTTP-01 challenge 完全适用于内部无公网服务
D 用 cert-manager/Vault PKI 自动签发并注入 Secret,支持热重载轮换 ✓ 正确答案
#

13. 零信任体系下数据库访问控制的会话粒度与策略执行点(mTLS、短期凭证)如何设计?

A 零信任仍依赖网络边界来保护数据库访问
B 短期凭证只用于运维,不适用于应用访问
C 会话粒度应尽量大,连接长期保持并信任
D 应用 mTLS 双向认证与短期凭证,在代理层设置策略执行点 ✓ 正确答案
#

14. 数据脱敏(Data Masking),静态脱敏 vs 动态脱敏?

A 静态脱敏在查询时实时脱敏,不改变存储
B 动态脱敏在查询时按权限实时脱敏,底层存储不变 ✓ 正确答案
C 静态脱敏用于生产环境在线查询
D 动态脱敏需要生成脱敏副本,开销较大
#

15. TLS(Transport Layer Security)在数据库连接的应用?

A TLS 只提供机密性,不提供身份验证
B TLS 提供传输加密与身份验证,防止窃听与中间人攻击 ✓ 正确答案
C TLS 加密的是磁盘上的静态数据
D TLS 连接一旦建立就无需管理证书
#

16. KMS(Key Management Service)的应用,密钥集中管理?

A KMS 会把密钥直接下发到各应用服务器以加速解密
B KMS 只用于加密业务数据,不参与数据库 TDE
C KMS 集中生成、存储、轮换密钥,并支持访问控制与审计 ✓ 正确答案
D KMS 密钥无法自动轮换,只能人工更换
#

17. TDE 的密钥层次(主密钥到表空间或表密钥再到数据页)如何设计?各级密钥分别存储在哪里、谁负责解密?

A 主密钥直接加密数据页,性能最优
B 数据页解密由应用层负责,数据库不参与
C 表空间密钥以明文存储在数据库中
D 主密钥存于 KMS,表空间密钥由主密钥加密,数据页用表空间密钥加密 ✓ 正确答案
#

18. 密钥轮换分主密钥轮换与数据密钥轮换两种,为什么前者只重加密密钥材料而后者要重写数据?各自的停机窗口如何规划?

A 主密钥轮换需重写全部数据,停机窗口长
B 主密钥轮换只 re-wrap 数据密钥,数据密钥轮换需重写数据 ✓ 正确答案
C 数据密钥轮换成本低,可频繁在不影响数据的情况下执行
D 两种轮换都只需更新密钥元数据,无需动数据
#

19. 密钥轮换(Key Rotation)的策略与影响?

A 轮换时应一次性删除旧密钥,避免密文可读
B 密钥轮换不影响备份恢复和版本一致性
C 应有新旧密钥平滑过渡,配合版本管理与审计、可回滚 ✓ 正确答案
D 轮换频率越高越好,无需考虑数据重写成本