# §03.2_对称密码算法（私钥密码）

LLMS index: [llms.txt](/wikis/llms.txt)

---

### 对称加密算法总结
![](/wikis/_resources/%C2%A73.2_%E5%AF%B9%E7%A7%B0%E5%AF%86%E7%A0%81%E7%AE%97%E6%B3%95%EF%BC%88%E7%A7%81%E9%92%A5%E5%AF%86%E7%A0%81%EF%BC%89/85329a7b762190e55ace1777ef747453_MD5.png)

**DES有效密钥长度56位。**

3DES当k1与k3相同（一般情况下），密钥长度为56*2=112位。其他两种情况密钥可能为56、168.

以上五种，仅RC4/5为流加密算法，加密速度快。（ZUC、X.20也是流密码）其余都是分组加密 （DES、AES、SM4等）

流密码算法密钥流不可以重复使用，如果重复使用则可以通过抓取明文序列和密文序列的方式异或出密钥流，从而破解密文序列（已知明文攻击）

#### 国密

1、ZUC算法为流加密，密钥长度128比特，由128比特种子密钥和128比特IV共同作用生成32比特的密钥流，工作模式为**加密算法128-EEA3，完整性保护算法128-EIA3

2、SM4算法为分组密码，为配合WAPI无线局域网标准，分组长度128比特，密钥长度128比特，适用范围较广，可以等同替换AES-128，32轮密钥

3、SM1分组算法，算法不公开，分组和密钥128bit。安全芯片、智能IC卡、智能密码钥匙等

4、SM7分组算法，算法不公开。

TIP 2347已成为国际标准（2的部分内容不是国际标准）。

依据GB/T 17964 《信息安全技术 分组密码算法的工作模式》定义了9种工作模式，其中ECB、CBC、CTR最为常用。CTR存在已知明文攻击（分组密码工作模式软考已删减，密评考察）

### DES加密过程（S盒）
![](/wikis/_resources/%C2%A73.2_%E5%AF%B9%E7%A7%B0%E5%AF%86%E7%A0%81%E7%AE%97%E6%B3%95%EF%BC%88%E7%A7%81%E9%92%A5%E5%AF%86%E7%A0%81%EF%BC%89/13b222d8780dba094d8d1528674ee8f7_MD5.png)

输出的行 为输入的首位和末位的拼接 对应的十进制

输出的列 为输入的余下位 对应的十进制

### 3DES有效密钥
![](/wikis/_resources/%C2%A73.2_%E5%AF%B9%E7%A7%B0%E5%AF%86%E7%A0%81%E7%AE%97%E6%B3%95%EF%BC%88%E7%A7%81%E9%92%A5%E5%AF%86%E7%A0%81%EF%BC%89/128dff8df54b132c86bf888e2f20a302_MD5.png)

E加密**encryption**  
D解密**decode**

###
