密码学基础

发布于:2025-09-02 ⋅ 阅读:(11) ⋅ 点赞:(0)

一、概述

1、核心目标

核心目标:所有技术都是为了实现这四大安全目标。


核心安全目标:

  1. 机密性 (Confidentiality): 数据不被未授权方访问。→ 加密算法
  2. 完整性 (Integrity): 数据在传输中未被篡改。→ 哈希函数、MAC
  3. 身份认证 (Authentication): 确认通信双方的身份。→ 数字签名、证书
  4. 不可否认性 (Non-repudiation): 发送方无法否认已发送的信息。→ 数字签名

2、解决问题

1)如何安全地存储密码?

  • 解决方案: 慢哈希函数 + 盐
  • 技术Argon2 (冠军), Bcrypt, PBKDF2
  • 绝对禁止: 使用明文、MD5、SHA家族快速哈希存储密码。

2)如何保证数据传输的机密性?

  • 解决方案: 加密
  • 技术AES-256-GCM (大量数据), RSA/OAEP or ECC (加密上述AES的密钥)。

3)如何验证数据未被篡改?

  • 解决方案A (共享密钥场景): 消息认证码 (MAC)

  • 技术HMAC-SHA256

  • 解决方案B (公钥场景): 数字签名

  • 技术SHA256withECDSA

4)如何确认对方身份?

  • 解决方案: 公钥基础设施 (PKI)
  • 技术: 数字证书(X.509), CA。

5)如何安全地交换密钥?

  • 解决方案: 非对称密钥交换
  • 技术ECDHE (提供前向安全性)。

3、编码&加密

1)编码 (Encoding):

  • 目的: 数据转换,便于存储或传输(无安全目的)。
  • 特点: 公开、无密钥、可逆。
  • 例子: Base64 (将二进制数据编码为ASCII文本,用于在文本协议,如HTTP、邮件中安全传输二进制数据), Hex (十六进制编码,便于人类阅读和调试), URL Encoding

2)加密 (Encryption):

  • 目的: 保护数据机密性(有安全目的)。
  • 特点: 依赖密钥、设计目的是抵抗破解。
  • 例子: AESRSA

3)关系:

加密后的二进制密文经常通过 Base64 编码转换为文本,以便在JSON、XML、URL等文本协议中安全传输。



二、古典密码学

1、替换密码 (Substitution Ciphers)

  1. 凯撒密码 (Caesar Cipher)
  2. 单表替换密码 (Monoalphabetic Cipher)
  3. 多表替换密码 (Polyalphabetic Cipher),如维吉尼亚密码 (Vigenère Cipher)

2、换位密码 (Transposition Ciphers)

  1. 栅栏密码 (Rail Fence Cipher)
  2. 列置换密码 (Columnar Transposition Cipher)

3、机械密码

  1. 恩尼格玛机 (Enigma Machine)

4、核心弱点

均无法抵抗频率分析等统计攻击。




三、现代密码学

1、哈希/散列函数 (Cryptographic Hash Functions)

1)核心概念

密码学哈希函数是一种将任意长度输入(明文)映射为固定长度输出(哈希值、散列值、摘要)的算法。其设计目标决定了它的安全性。具有确定性、抗碰撞性、抗原像性、雪崩效应等核心特点

特性 描述 攻击含义
确定性 相同输入总是产生相同输出。 基础要求,非安全特性。
高效性 计算哈希值的过程是快速的。 基础要求,非安全特性。
抗原像性 给定哈希值 h,难以找到任何一个明文 m使得 H(m) = h 防止从摘要恢复明文。
抗第二原像性 给定明文 m1,难以找到另一个明文 m2 (m2 ≠ m1) 使得 H(m1) = H(m2) 防止对特定明文的篡改。
抗碰撞性 难以找到任意两个不同的明文 m1m2 (m1 ≠ m2) 使得 H(m1) = H(m2) 这是最高要求,意味着攻击者无法伪造任何一对明文的哈希。
雪崩效应 输入明文的任何微小改变(1个比特),都会导致输出哈希值发生巨大且不可预测的变化(约50%的比特改变)。 确保哈希值看似随机,隐藏明文信息。

重要提示: 哈希是单向函数不可逆。它用于生成“指纹”,而非用于“加密”数据


2)常见算法

  1. MD5 (Message-Digest Algorithm 5):输出长度128位,已彻底破解,完全不安全。曾广泛应用,但王小云教授等人于2004年发表了高效的碰撞攻击方法,可在数小时内找到碰撞。绝对禁止用于任何安全场景。用于非安全场景的文件完整性校验(例如校验下载的大文件是否损坏,但无法防止恶意篡改)
  2. SHA-1 (Secure Hash Algorithm 1):输出长度160 位。已彻底破解,完全不安全。曾是SSL证书、Git版本控制系统的核心。Google的SHAttered攻击(2017)实现了实际的文件碰撞。老旧系统兼容。所有新系统必须弃用
  3. SHA-2 (Secure Hash Algorithm 2):输出长度提供了多种输出长度:SHA-256, SHA-384, SHA-512等。当前全球绝对主流和标准,未被破解。SSL/TLS证书、区块链(比特币)、软件包签名、几乎所有的安全协议。SHA-256是默认首选
  4. SHA-3 (Secure Hash Algorithm 3):可变长度(SHA3-256, SHA3-512等)。安全,是未来的标准。采用与SHA-2完全不同的“海绵结构”,作为SHA-2的后备和替代选择。目前应用逐渐增多。
  5. SM3 (ShangMi 3):输出长度256 位,设计与SHA-256类似,但结构不同。中国国家标准密码算法,安全性得到广泛认可。主要用于中国的商用密码体系,如政府、金融等领域,与SM2、SM4算法构成体系。

算法 输出长度 安全性状态 主要应用
MD5 128-bit 已破解,完全弃用 文件完整性校验(非安全)
SHA-1 160-bit 已破解,完全弃用 同上
SHA-2 256/512-bit 安全 (当前主流) 完整性校验,数字签名,区块链
SHA-3 可变 安全 (新标准) 同上
SM3 256-bit 安全 (国标) 中国商用算法体系
Bcrypt 自适应 安全 密码哈希
Argon2 自适应 安全 (竞赛冠军) 密码哈希

3)关键应用与技术

  1. 消息认证码 - HMAC(相当于“加盐”的MD5)

    1. 原理: 使用一个共享密钥与消息混合后进行哈希计算,公式可简化为 HMAC(K, m) = H( (K ⊕ opad) || H( (K ⊕ ipad) || m ) )
    2. 目的: 验证消息的完整性真实性。接收方只有拥有相同的密钥,才能计算出相同的HMAC值。
    3. 标准做法HMAC-SHA256
  2. 密钥派生函数 - KDF

    1. 原理: 从主密钥、密码或其他弱熵源中派生出一个或多个密码学强度的密钥。
    2. 例子PBKDF2, bcrypt, scrypt。它们都故意设计得很慢,以抵御暴力破解。
    3. 核心加盐,以防止彩虹表攻击。

4)最佳实践

  1. 算法选择

    1. 无脑首选SHA-256
    2. 追求前沿: SHA3-256 或 SHA-512。
    3. 国内商用环境: SM30
    4. 密码存储: 必须使用慢哈希函数(如 Argon2id, bcrypt),绝不能直接用SHA系列快速哈希。
  2. 彻底弃用

    1. 绝对禁止MD5SHA-1 用于任何安全目的(证书、签名、密码存储等)。
  3. 完整性验证

    1. 验证文件或数据下载是否完整且未被篡改时,应提供 SHA-256 或更高级别的校验和,而非MD5。
  4. 使用HMAC进行认证

    1. 当需要验证数据来源和完整性时(如API请求),使用 HMAC-SHA256 并确保密钥安全管理。

2、对称加密 (Symmetric Cryptography)

1)核心概念

加/解密使用同一把密钥,计算速度非常快,适合加密大量数据。核心挑战是密钥分发,如何在通信双方之间安全地共享密钥,是对称加密的首要问题

主要分类

  • 分组密码:将明文分成固定长度的组,以组为单位进行加密(如 AES, DES, SM4)。这是主流。
  • 流密码:将明文作为连续的比特流处理,逐比特或逐字节地与密钥流进行加密(如 RC4, ChaCha20)

2)常见算法

  1. DES (Data Encryption Standard):密钥长度56位(密钥本身64位,其中8位用于奇偶校验),已彻底破解,完全不安全。是现代密码学普及化的开端,但其设计已被证明不足以抵抗现代计算能力。绝对禁止在任何新系统中使用
  2. 3DES (Triple DES):为延长DES寿命而设计,对每个数据块执行三次DES操作:加密-解密-加密(EDE)。支持2-key(112位有效安全强度)和3-key(168位有效安全强度)模式。 已被弃用,不推荐用于新系统。速度慢(是DES的三倍),且分组长度仍只有64位,易受到“碰撞攻击”等威胁。
  3. AES: 2001年由NIST遴选取代DES,获胜算法为Rijndael。分组密码,固定块大小128位。密钥长度128位(足够安全)、192位、256位。AES-256-GCM 是黄金标准,同时提供加密和认证。AES-128 在可预见的未来仍然是安全的。
  4. SM4: 中国商用密码体系的核心算法,安全性得到广泛认可,旨在替代AES在国内重要领域的应用。密钥和分组长度均为128位。与SM2(非对称)、SM3(哈希)共同构成中国商用密码体系,用于政府、金融、物联网等领域
算法 密钥长度 分组长度 特点
DES 56-bit 64-bit 已破解,完全弃用
3DES 112/168-bit 64-bit 慢,仅用于遗留系统
AES 128/192/256-bit 128-bit 当前全球标准,快,安全
SM4 128-bit 128-bit 国标,安全性等同AES
ChaCha20 256-bit 流密码 快,常用于移动和TLS

3)工作模式

后文会详细展开

  1. ECB:不推荐,不安全。
  2. CBC:常用,需要随机IV。需要随机且不可预测的IV。可能受到填充预言攻击。
  3. CTR:将分组密码变为流密码,可并行。
  4. GCM认证加密模式 (AEAD)推荐首选。同时提供机密性、完整性和认证。认证加密模式 (AEAD)推荐首选。同时提供机密性、完整性和认证。无需单独填充。

4)最佳实践

算法选择

  1. 国际标准/通用场景: 无脑选择 AES-256-GCMAES-128-GCM
  2. 国内商用/合规需求: 使用 SM4(通常结合CBC或GCM模式)。
  3. 高性能移动端/Web端: 可考虑 ChaCha20-Poly1305(另一种AEAD流密码)。

彻底弃用

  1. 绝对禁止在新项目中使用 DES3DES。对于遗留系统,应制定计划迁移至AES。

密钥管理

  1. 密钥必须通过密码学安全的随机数生成器生成
  2. 严禁硬编码密钥在代码或配置文件中。
  3. 使用专业的密钥管理服务,如 AWS KMS、HashiCorp Vault、Azure Key Vault
  4. 建立密钥轮换策略。

初始向量管理

  1. 对于 CBC等模式,IV必须是随机且不可预测的。
  2. 对于 GCM模式,Nonce必须保证唯一性。
  3. IV/Nonce无需保密,通常与密文一起存储或传输。

3、非对称加密 (Asymmetric Cryptography)

1)核心概念

定义

使用一对数学上相关的公钥私钥进行加密和解密的算法。公钥可公开分享,私钥必须严格保密。

核心价值

  • 解决密钥分发问题: 无需预先共享密钥,通信双方只需交换公钥即可建立安全通信。
  • 实现数字签名: 用于验证消息来源和完整性,并提供不可否认性。

性能特点:

基于复杂的数学难题(如大数分解、离散对数),计算速度比对称加密慢多个数量级。因此,绝不用于直接加密大量数据

主要功能

  • 加密/解密: 发送方用接收方的公钥加密。只有拥有对应私钥的接收方能解密。
  • 数字签名: 发送方用自己的私钥对消息的哈希值进行签名。任何人可用其公钥验证签名。

2)常见算法

  1. RSA

    • 基于难题大整数分解难题。将两个大质数相乘很容易,但将一个大的合数分解回其质因数极其困难。

    • 密钥生成: 生成两个大质数 pq,计算 n = p * qn 作为公钥的一部分;pq 是私钥的核心。

    • 关键参数

      • 密钥长度2048位是当前最低安全要求。对更高安全需求(长期保密),推荐3072位或4096位。1024位及以下已被破解。

      • 填充方案至关重要,直接决定安全性

        • 加密: 使用 RSA-OAEP。这是一种概率性加密方案,引入了随机数,能有效抵御选择密文攻击。绝对避免使用旧的PKCS#1 v1.5填充
        • 签名: 使用 RSASSA-PSS。同样引入了随机性,比旧的PKCS#1 v15签名方案更安全

  2. ECC (Elliptic Curve Cryptography)

    • 基于难题椭圆曲线上的离散对数难题

    • 优势

      • 密钥短256位的ECC密钥安全性相当于3072位的RSA密钥。
      • 计算快: 所需计算量更小,能耗更低,特别适合移动设备、物联网等计算资源受限的环境。
    • 常见曲线secp256r1 (NIST P-256), secp384r1, curve25519 (用于ECDH)。

    • 主要应用

      • ECDH: 基于椭圆曲线的迪菲-赫尔曼密钥交换。是前向安全的TLS握手协议的核心。
      • ECDSA: 基于椭圆曲线的数字签名算法。被比特币、现代SSL证书等广泛采用。
  3. SM2

    • 基于难题: 基于椭圆曲线密码的中国国家标准

    • 特点

      • 同样具备ECC的所有优势(密钥短、效率高)。
      • 算法设计为一个整体方案,集成了加密、签名和密钥交换功能。
      • 主要用于中国的商用密码体系,以满足合规性要求。
  4. Diffie-Hellman (DH / DHE)

    • 功能纯密钥交换协议,本身不用于加密或签名。
    • 原理: 双方在不安全的信道上,通过交换一些公开信息,可以独立计算出一个相同的共享秘密,作为后续对称加密的会话密钥。
    • 前向安全: 使用临时迪菲-赫尔曼 DHEECDHE 时,每次会话使用临时密钥对。即使服务器私钥未来泄露,也无法解密过往的通信记录。这是现代TLS的强制要求
算法 基于数学难题 特点
RSA 大整数分解 最著名,但密钥长(2048-bit+),计算慢
ECDH/ECDHE 椭圆曲线离散对数 当前主流,密钥短(256-bit),效率高
SM2 椭圆曲线 国标,集成了加密、签名和密钥交换
DH/DHE 离散对数 用于密钥交换,不用于加密/签名

3)混合加密

非对称加密和对称加密不是替代关系,而是互补关系。它们的协同工作流程是现代安全通信的基石,其过程完美结合了双方的优势,如下图所示:

总结

  • 对称加密负责主体数据的加密,因为它快
  • 非对称加密负责加密那把对称密钥,解决密钥分发的难题。

4) 最佳实践

  1. 算法与密钥选择

    • 优先选择 ECC: 新系统应优先选择 ECDHE 用于密钥交换,ECDSA 用于签名。性能更好,证书更小。
    • RSA密钥长度: 如果使用RSA,密钥长度至少为2048位,推荐3072位。检查并淘汰1024位密钥。
    • 国密合规: 面向国内市场的系统,需支持 SM2 算法体系。

  2. 填充方案

    • 加密: 强制使用 RSA-OAEP
    • 签名: 优先使用 RSASSA-PSS
  3. 前向安全性

    • 在TLS/SSL配置中,强制使用支持前向安全的密码套件,即使用 DHEECDHE 作为密钥交换机制,而非静态的RSA密钥交换。
  4. 证书管理

    • 使用来自可信CA的证书,并实施严格的证书生命周期管理(自动续期、监控、吊销)。

4、工作模式和填充模式

1)核心特点

工作模式

  • 定义如何利用分组密码算法(如 AES,DES,SM4)来加密长于一个分组的消息
  • 解决了分组密码如何重复使用以处理任意长度明文的问题。
  • 核心目标:不仅扩展功能,更重要的是增强安全性(如引入随机性、提供认证)。

填充模式

  • 当明文长度不是分组大小的整数倍时,需要将最后一个分组填充至完整长度。
  • 核心目标:解决数据块长度对齐的问题。

2)归属关系

工作模式与填充模式是对称加密(特别是分组密码)的“专属特性”

因为它们解决的是“如何用固定大小的分组处理任意长度数据”的问题。流密码(如 ChaCha20)和非对称加密算法本身就不存在这个问题。


非对称加密算法(如 RSA,ECC)没有“工作模式”的概念

因为它们本质上是数学函数,一次处理一个输入(一个数字),输入大小受密钥长度限制(如 RSA-2048 最多只能加密 245 字节左右的数据),无法也不应该用于直接加密大量数据。它们的主要用途是加密小数据(如一个对称密钥)数字签名


3)工作模式(以 AES 为例)

工作模式的发展史,就是密码学家不断应对新威胁、满足新需求的历史。其演进历程如下图所示,从最初的基础加密发展到如今的认证加密:

  1. 电子密码本 - ECB

    • 机制: 最简单的模式。每个明文块独立地用同一密钥加密。
    • 安全性缺陷
    • 无法隐藏数据模式: 相同明文块 => 相同密文块。对加密图片、数据库等包含重复结构的数据是灾难性的。
    • 容易遭受重放攻击和块重组攻击
    • 结论理论上不安全,绝对禁止用于任何加密协议。仅适用于加密单个数据块(如加密一个密钥)。
  2. 密码分组链接 - CBC

    • 机制: 每个明文块在加密前,先与前一个密文块进行异或操作。第一个块使用初始向量(IV)。

    • 核心要求IV 必须是随机且不可预测的(通常来自CSPRNG)。IV无需保密,但必须随密文传输。

    • 安全性

      • 解决了ECB的模式隐藏问题。
      • 存在填充预言攻击的风险。若攻击者能向服务器发送密文并观察其解密成功(填充正确)或失败(填充错误)的反应,就可能逐步恢复出明文。
    • 特性

      • 加密过程是串行的,无法并行化。
      • 解密过程可以并行(先解密,再与前一个密文块异或)。
      • 错误传播: 密文中的一个比特错误会影响当前块和下一块的正确解密。

  3. 计数器模式 - CTR

    • 机制: 将分组密码转换为流密码。它加密一个计数器序列(Nonce + Counter),然后将加密后的密钥流与明文流进行异或。

    • 核心要求绝对确保 (Nonce, Counter) 的组合永不重复。否则密钥流复用会导致灾难性破坏。

    • 安全性: 安全性取决于底层分组密码的强度。

    • 特性

      • 无需填充
      • 加密和解密均可完全并行化(因为可以预先计算任何位置的密钥流块)。
      • 仅需实现加密算法,即可同时完成加密和解密。
      • 错误传播: 无扩散。密文中的一个比特错误只会影响明文对应位置的比特。

  4. 伽罗瓦/计数器模式 - GCM

    • 机制: 一种 AEAD 模式。它是 CTR 模式(用于机密性)GMAC(用于认证) 的结合。

    • 工作原理

      • 使用CTR模式加密明文,产生密文。
      • 同时,利用一个在伽罗瓦域上的乘法哈希函数,计算密文和任何附加认证数据(AAD) 的认证标签(Tag)。AAD是需要认证但不需加密的信息(如数据包头部)。
    • 安全性: 同时提供机密性、完整性和认证

    • 特性

      • 高效并行化,性能极高。
      • 无需填充
      • 是TLS 1.2和TLS 1.3的标准套件,是现代应用的黄金标准

  5. 其他模式

    • CFB & OFB: 也将分组密码转为流密码。与CTR类似,但串行生成密钥流,效率较低,现已较少使用。
    • CCM: 另一种AEAD模式(CBC-MAC + CTR模式)。相比GCM,它是串行的,性能较低。
模式 主要目标 是否需要填充? 并行性 推荐度 关键要求
ECB 机密性(差) 禁止使用
CBC 机密性 加密否,解密是 遗留系统可用 随机且不可预测的IV
CTR 机密性 高性能场景 永不重复的(Nonce, Counter)
GCM AEAD 首选推荐 永不重复的Nonce

4)工作模式-最佳实践

  1. 首选 AEAD 模式: 新系统设计无脑选择 AES-GCMChaCha20-Poly1305。它们简化了操作(无需单独考虑完整性和填充问题),且性能优异。

  2. 正确管理初始值

    • 对于 CBC: IV 必须是密码学安全的随机数
    • 对于 CTR/GCM: Nonce 必须绝对唯一。通常通过计数器或随机数保证。
  3. 如果被迫使用 CBC

    • 必须结合 HMAC 进行完整性保护,且遵循 Encrypt-then-MAC 的顺序。
    • 使用诸如 PKCS#7 的填充方案,并在解密时检查填充有效性,但要注意抵御填充预言攻击(如使用恒时间比较函数)。
  4. 使用高级库: 优先使用 Google TinkLibsodium 等库。它们提供了安全的默认配置,避免了开发者自己实现这些复杂且易错的概念。

5)填充模式

对称加密的填充

  • 目的:纯技术需求,解决数据块长度对齐问题。

  • 常见方案PKCS#7/PKCS#5。规则是缺 N 个字节就填充 N 个值为 N 的字节。

  • 例如:块大小 16 字节,最后一块差 5 字节 → 填充 05 05 05 05 05

  • 重要提示AEAD 模式(如 GCM)和流密码模式(如 CTR)不需要填充

非对称加密的“填充”

  • 目的核心是安全需求,而非简单的长度对齐。裸的 RSA 数学运算(即不加填充直接加密)是极其脆弱的,会受到多种攻击。

  • 常见方案

    • PKCS#1 v1.5:旧标准,目前已知存在漏洞(如 Bleichenbacher 攻击),应避免使用
    • OAEP:用于加密现代标准。它引入随机数和哈希函数,将明文处理成一个随机化的、具有抗冲突特性的格式,再交给 RSA 函数计算。
    • PSS:用于数字签名现代标准。同样引入随机性,使得对同一消息的两次签名会产生不同的签名结果,更安全。

6)填充模式-最佳实践:

  • 加密时使用:RSA/ECB/OAEPWithSHA-256AndMGF1Padding
  • 签名时使用:RSASSA-PSS

7)核心关联

工作模式(对称加密)和填充(非对称加密)虽然属于不同领域,但它们在一个最关键的现代安全协议中产生了交集和关联:混合加密系统

这套系统完美结合了对称加密的高效和非对称加密的密钥分发优势,其工作流程如下:

总结

  • 对称加密(如 AES-GCM)负责主体数据的加密,因为它。这里会用到工作模式
  • 非对称加密(如 RSA-OAEP)负责加密第1步中使用的对称密钥,解决密钥分发的难题。这里会用到填充(OAEP)。
  • 两者在混合加密系统中分工协作,共同构建了现代安全通信的基石(如 TLS/SSL 协议)。

5、数字签名与证书体系 (Digital Signature & PKI)

1)数字签名 (Digital Signatures)流程:

  1. 发送方对消息计算哈希值。
  2. 发送方用私钥加密该哈希值,这个加密后的哈希就是签名
  3. 发送方将消息和签名一起发出。
  4. 接收方用发送方的公钥解密签名,得到原始哈希值H1。
  5. 接收方对消息重新计算哈希值H2。
  6. 对比H1和H2,若相同,则验证成功(证明消息完整且来自发送方)。

2)常见签名组合

  1. RSA-based: SHA256withRSA (推荐), SHA1withRSA (弃用)
  2. ECC-based: ECDSA
  3. 国密: SM2withSM3

3)公钥基础设施 (PKI) & 数字证书

核心问题

如何信任一个公钥属于其声称的主人?

解决方案

4)数字证书与CA

  • 证书: 将实体身份(域名、公司名)与其公钥绑定,并由CA用私钥签名后的文件。

  • 信任链: 操作系统/浏览器内置根证书 -> 信任根CA -> 根CA签名中间CA -> 中间CA签名终端证书。

  • 企业实践

    • 使用 Let’s Encrypt 等服务自动化申请和管理免费SSL证书。
    • 内部系统使用私有CA签发证书,并将根证书部署到所有客户端信任库中。
    • 监控证书有效期,实现自动续期,避免服务中断。

四、综合应用

1、算法选择:

  • 哈希:SHA-256 or SHA-3
  • 对称加密:AES-256-GCM
  • 密钥交换:ECDHE
  • 签名:ECDSA or RSA(2048+)

2、密钥管理

严禁硬编码密钥,使用专业的密钥管理服务(KMS),如 AWS KMS, Azure Key Vault, HashiCorp Vault。密钥的生命周期管理(生成、存储、轮换、销毁)比算法本身更重要


3、数据加密:

  1. 静态数据(数据库): 应用层或数据库透明加密。
  2. 传输中数据: 全站HTTPS。
  3. 选择经过审计的库: 如 Libsodium, Tink,避免自己实现密码学逻辑。

4、SSL/TLS协议:

密码学应用的集大成者。

握手流程密钥交换 (ECDHE) -> 身份认证 (证书) -> 对称加密通信 (AES-GCM)。