
将明文信息通过密钥转换为不可直接读取的密文防止数据被非法窃取的技术是A. 数据加密✅。数据加密Data Encryption是指利用加密算法和密钥将原始明文转换为密文的过程只有拥有对应密钥的授权方才能解密还原为明文从而保障数据的机密性。而B. 数据脱敏是对敏感数据进行变形处理如掩码、泛化使其不可识别原始值主要用于测试或共享场景不依赖密钥也不可逆通常C. 数据备份是为防数据丢失而做的副本保存不涉及保密性保护D. 日志审计用于记录和审查系统操作行为侧重于可追溯性和合规性非保密技术。因此正确答案是A. 数据加密。对称加密与非对称加密的核心区别在于密钥的使用方式对称加密加密和解密使用同一个共享密钥secret key。✅ 优点运算速度快、效率高适合大量数据加密如文件、通信流。❌ 缺点密钥分发困难安全性依赖于密钥的保密性N个用户两两通信需管理 $ \frac{N(N-1)}{2} $ 个密钥扩展性差。 典型算法AES、DES、3DES、SM4。非对称加密公钥加密使用一对数学关联的密钥——公钥public key用于加密私钥private key用于解密或反之用于签名。✅ 优点解决密钥分发问题天然支持数字签名与身份认证N个用户仅需维护各自1对密钥共N对。❌ 缺点计算复杂度高、速度慢通常比对称加密慢数百至数千倍不适合直接加密大数据。 典型算法RSA、ECC椭圆曲线密码、SM2。补充说明实际应用中常结合二者优势——用非对称加密安全传递对称密钥如TLS握手再用该对称密钥加密实际传输数据即“混合加密体制”。非对称加密不能直接用于加密大文件根本原因在于其算法设计基于复杂数论运算计算开销极大且存在严格的明文长度限制。具体瓶颈如下1. 数学运算复杂度高非对称加密如RSA、ECC依赖于大数模幂运算RSA、椭圆曲线标量乘法ECC等。例如RSA 加密需计算 $ c \equiv m^e \bmod n $其中 $ n $ 通常为2048位或4096位大整数$ m $ 须小于 $ n $且模幂运算时间随密钥长度呈亚指数级增长ECC 虽比RSA更高效同等安全强度下密钥更短但标量乘法仍涉及大量有限域上的点加与倍点运算远慢于对称加密的查表/移位/异或等操作。2. 明文长度受限尤其RSA以RSA为例若模数 $ n $ 为2048位256字节则最大可加密明文长度仅为 $ \lfloor \log_2(n) \rfloor / 8 - \text{填充开销} $PKCS#1 v1.5 或 OAEP 填充会占用数十字节实际仅支持约214–245字节明文。加密1MB文件需拆分为数千块逐块加密——不仅效率极低还显著增加传输体积和安全风险如缺乏块间关联保护易受重放/篡改攻击。3. 缺乏原生分组/流模式支持对称加密算法如AES定义了ECB、CBC、GCM等工作模式可安全处理任意长度数据而非对称算法无标准流式或分组链式机制强行分块加密会丧失语义安全性且无法提供完整性保护如GCM的认证加密。✅ 因此工程实践中采用混合加密Hybrid Encryption用非对称加密安全传递一个随机生成的对称密钥如AES-256密钥再用该对称密钥加密大文件——兼顾安全性密钥交换与效率批量数据加密。RSA-OAEPOptimal Asymmetric Encryption Padding与 RSA-PKCS#1 v1.5 填充方案的核心安全性差异在于OAEP 是经过严格可证明安全provable security设计的填充机制具备抗选择密文攻击CCA2能力而 PKCS#1 v1.5 仅满足选择明文攻击CPA安全且存在实际可利用的侧信道漏洞如Bleichenbacher攻击不具备CCA2安全性。具体关键差异如下✅1. 安全模型与证明强度OAEP在随机预言机模型Random Oracle Model下被证明是IND-CCA2安全即不可区分、适应性选择密文攻击下语义安全。这意味着即使攻击者能反复提交密文并获取对应明文解密 oracle也无法区分两个等长明文的加密结果。PKCS#1 v1.5仅被证明在CPA下安全未被证明CCA2安全实际中已被证实存在致命缺陷。✅2. 结构设计与抗攻击能力OAEP采用双杂凑掩码生成函数MGF的两阶段随机化结构EM OAEP-Encode(m, r) (0x00 || maskedSeed || maskedDB)其中r是随机盐值maskedSeed和maskedDB相互依赖、双向掩码破坏任一字段均导致整个解密失败天然抵抗部分解密或格式探测。PKCS#1 v1.5结构为0x00 || 0x02 || PS || 0x00 || mPS为非零随机填充字节。其致命弱点在于解密后可通过检查前缀0x00 0x02和首个0x00的位置判断填充是否有效——该“填充有效性反馈”被Bleichenbacher1998利用构造自适应选择密文攻击仅需约百万次解密查询即可恢复任意密文明文如TLS中的预主密钥。✅3. 实际部署风险PKCS#1 v1.5 在TLS等协议中曾因服务器错误返回不同HTTP状态码/错误消息如“bad record MAC” vs “decryption failed”泄露填充验证结果导致POODLE、DROWN等现实攻击。OAEP 无此类结构化反馈解密失败一律返回错误不泄露中间信息从根本上阻断基于填充的侧信道。✅4. 标准推荐与演进RFC 8017PKCS#1 v2.2明确指出“PKCS#1 v1.5 加密方案不应在新系统中使用”推荐OAEP作为默认加密填充NIST SP 800-56B、ISO/IEC 18033-2 等标准均将OAEP列为唯一推荐的RSA加密填充方案TLS 1.3 已完全移除RSA-PKCS#1 v1.5密钥传输仅支持前向安全的(E)CDH密钥交换。⚠️ 补充说明OAEP虽强仍需正确实现如使用密码学安全随机数生成器、固定哈希/MGF参数且其安全性依赖于随机预言机假设——这是理论局限但目前无实际攻击突破。