基础安全技术高频问答:密码学、认证协议、加密算法、安全协议
本章围绕密码学、认证协议、加密算法和安全协议四大高频方向,精选三道常考面试题与一个真实项目案例。每道题均提供考察点、回答框架、示例回答及避坑提醒;项目案例采用STAR结构,便于直接迁移。
⬆ 回答框架:从问题到结构化输出,适用于密码学、认证协议类所有面试题
1. 对称加密与非对称加密的区别及各自适用场景
面试问题:请对比对称加密与非对称加密,并在实际系统中你会如何选择?
面试官考察点:基础概念清晰度、对性能与安全的平衡、实际工程选型能力。
回答框架:定义(算法类型)→ 核心区别(密钥管理、性能)→ 典型算法(AES、RSA)→ 混合方案举例(TLS握手)→ 场景推荐。
示例回答(80字):对称加密如AES速度快,适合大量数据加密,但密钥分发困难;非对称如RSA密钥管理方便但性能差。实际系统常采用混合方案:用RSA交换AES密钥,再用AES加密业务数据,兼顾安全与效率。
可能追问:① 非对称加密如何保证公钥真实性?(数字证书) ② 对称加密的密钥衍生函数(PBKDF2、argon2)?③ ECC相比RSA的优势?
2. TLS 1.3 握手过程及常见安全缺陷
面试问题:描述TLS 1.3握手流程,并指出历史上TLS被攻击的主要漏洞。
面试官考察点:协议细节掌握程度、对密码套件和算法的理解、安全意识。
回答框架:握手目的 → 1-RTT缩减 → ClientHello/ServerHello → 密钥协商(ECDHE) → 证书验证 → 加密通信 → 漏洞案例(如POODLE、DROWN、BEAST)。
示例回答(90字):TLS 1.3握手仅需1-RTT:Client发送支持的密码套件,Server回复选定套件、证书及密钥交换参数,双方通过ECDHE派生会话密钥。常见漏洞包括:降级攻击、中间人伪造证书、以及旧版TLS的Padding Oracle攻击。需启用HSTS和证书固定缓解。
可能追问:① 为什么TLS 1.3移除了RSA密钥交换?(不完全前向安全) ② 如何检测证书撤销?(CRL/OCSP) ③ 什么是0-RTT数据,有什么风险?
3. 国密算法 vs 国际算法:如何向业务方推荐选型?
面试问题:项目中如果要求使用国密算法,你会如何向非技术人员解释其必要性和技术差异?
面试官考察点:算法原理对比、合规意识、跨部门沟通能力、工程落地经验。
回答框架:背景(金融/政务合规)→ 算法对比(SM2 vs ECC,SM4 vs AES)→ 性能与兼容性 → 迁移方案(硬件加速、双栈支持)→ 沟通话术。
示例回答(95字):国密算法是中国特色密码体系,SM2基于椭圆曲线提供签名与加密,效率接近ECC;SM4对标AES-128。选型核心是合规:银行、政务系统必须满足GM/T标准。技术上需实现双栈支持(同时支持国密和国际),并利用专用硬件提升SM4加解密速度。
可能追问:① 国密算法是否存在已知后门?(明确没有公开证据) ② 如何验证国密算法实现正确性?(使用官方测试向量)③ 国密SSL与TLS的差异?
📌 项目案例:金融支付系统端到端加密改造
以下项目采用STAR结构,可用于回答“请分享一个您负责的安全架构项目”。
⬆ STAR结构可视化,适合直接套用到面试项目描述中
| 维度 | 内容 |
|---|---|
| 项目名称 | 金融支付系统端到端加密改造 |
| 业务背景 | 支付交易数据需满足《个人信息保护法》及金融行业等保三级要求,原有明文传输存在合规风险。 |
| 规模指标 | 日均交易 500万笔,峰值 TPS 8000;涉及 12个微服务、3个数据中心。 |
| 技术栈 | 国密 SM2/SM4、OpenSSL 1.1.1 + 国密模块、Nginx 反向代理、Kafka 消息加密、AES-256-GCM。 |
| 核心难点 | ①国密硬件加速卡与现有X86服务器兼容性不稳定;②业务零中断迁移,需灰度发布;③密钥轮转对数据库性能的影响。 |
| 面试高频追问 | · 密钥如何安全存储?采用HSM + KMS · 如何保证割接时业务不中断?先双写再切换 · 加密后查询性能下降如何解决?增加列加密与索引分离。 |
| 可迁移回答话术 | “我们采用双层加密:传输层使用国密SSL,存储层使用AES-256。为确保零停机,先部署双证书测试,逐步将10%流量切至新通道,监控无异常后全量切换,整个过程业务无感。” |
💡 面试加分点:在项目描述中主动提及“密钥生命周期管理”、“性能压测数据(加密前后延迟对比)”、“回滚方案”,可体现架构师的系统设计思维。