对称密码中的Feistel网络详解
1. 代数系统相关概念回顾
在代数系统中,有几个重要的概念需要我们先了解:
- 对于问题“一个由集合、一个单位元、两种运算以及第一种运算的逆运算组成的代数系统是什么”,答案是群(Group)。因为群满足集合、单位元、运算以及逆运算等条件。
- 而“一个由集合、每种运算都有一个单位元、两种运算以及它们各自的逆运算组成的代数系统是什么”,答案是域(Field)。
- 整数集关于乘法不是一个群,因为整数集中并非每个元素都有乘法逆元(例如整数 2 在整数集中没有乘法逆元)。
- 自然数集关于加法不是整数集的子群,因为自然数集不满足子群的所有条件,比如对于加法逆元,自然数集中除 0 外其他元素没有在自然数集中的加法逆元。
- 如果 (a | b) 且 (a | c),那么 (a) 能整除 (b) 和 (c) 的线性组合,即 (a | (mb + nc)),其中 (m) 和 (n) 为任意整数。
- 具有交换性质的群是阿贝尔群(Abelian Group)。
- 用来衡量计算机算法性能的过程是算法分析。
2. 对称密码概述
对称密码是一种使用相同密钥进行加密和解密的算法。这就如同用同一把钥匙来锁门和开门一样,加密和解密使用的是同一把“钥匙”(密钥)。与非对称密码相比,对称密码具有速度快、使用较小密钥就能达到相同安全级别的优势。
对称密码主要分为两种类型:
- 块密码(Block Ciphers) :将数据分块进行加密,常见的块大小为 64 位,像 AES 算法使用 128 位的块。现代块密码通过替换和置换的组合来实现
超级会员免费看
订阅专栏 解锁全文

2313

被折叠的 条评论
为什么被折叠?



