云计算百科
云计算领域专业知识百科平台

5个与众不同的分组加密算法的设计与分析

5个与众不同的分组加密算法的设计与分析

下面给出 5 个概念性全新分组加密算法设计。先郑重说明:
这些算法均未经过任何公开密码分析、同行评审或标准化验证,不能用于真实安全场景。 它们的目标是展示“风格迥异”的设计思路,而不是声称安全。真实系统应使用 AES、ChaCha20、SM4 等成熟算法。

名称

核心风格

分组

密钥

轮数

TidalRCA

可逆元胞自动机 + 潮汐双缓冲

128 bit

256 bit

24

LatinMaze

拟群 / 正交拉丁方

128 bit

256 bit

16

HelixDNA

DNA 双螺旋 / 密码子替换

128 bit

256 bit

20

TensorNet

张量收缩 / GF(2^16) 矩阵

256 bit

512 bit

12

QuantumWalk

离散量子行走 / 可逆逻辑

128 bit

256 bit

18


1. TidalRCA:潮汐可逆元胞自动机分组密码

核心思想

把 128 bit 状态看成一个 16×8 的二进制细胞矩阵。每一轮像“潮汐”一样,奇偶行采用不同方向的可逆元胞更新,再叠加列混合和密钥注入。它不是传统 SPN,也不是标准 Feistel,而是“矩阵细胞自动机 + 潮汐方向交替”。

参数

  • 分组:128 bit
  • 密钥:256 bit
  • 轮数:24
  • 轮密钥:每轮 128 bit
  • 状态:16×8 位矩阵

轮函数

输入状态 X,轮密钥 RK[r]

  • 密钥加
    X = X XOR RK[r]
  • 潮汐 CA 层
    对每一行:

    • 偶数行:分成两个 4 bit 半字节,分别过 S0。
    • 奇数行:分成两个 4 bit 半字节,分别过 S1。
    • 然后整行循环左移 r mod 8 位。
      S0/S1 是密钥生成的 4 bit 可逆 S 盒。
  • 列混合层
    对每一列取 16 bit 列向量 c,做 GF(2) 上的可逆线性变换:
    c = c XOR (c <<< 1) XOR (c <<< 3)
    其中 <<< 是 16 bit 循环左移。该矩阵需选择为可逆,否则解密失败。
  • 全局比特置换
    使用轮密钥控制的 P 盒打乱 128 个比特位置。
  • 解密时逆序执行:逆 P 盒、逆列混合、逆行移位、逆 S 盒、异或轮密钥。

    密钥调度

    主密钥 256 bit 输入 SHAKE256,输出:

    • 24 个 128 bit 轮密钥;
    • 两个 4 bit S 盒的种子;
    • 24 个 P 盒种子。
      S 盒通过 Fisher-Yates 从 16 个元素生成,并检查差分均匀性。

    安全性分析

    • 差分攻击:4 bit S 盒理想差分均匀性为 4。若 S 盒随机生成,需检查是否存在高概率差分。24 轮可提供足够扩散,但未验证。
    • 线性攻击:4 bit S 盒线性偏差应控制在较低水平。列混合层提供比特扩散。
    • 扩散:潮汐 CA 层局部扩散,列混合层全局扩散。通常 6–8 轮可达全扩散。
    • 相关密钥:轮密钥由 SHAKE 派生,降低简单相关密钥风险。
    • 缺点:CA 层扩散偏慢,软件实现中比特置换可能较慢;若 S 盒查表,存在缓存侧信道风险。

    风格独特性

    潮汐”奇偶行反向更新 + 可逆元胞自动机矩阵,区别于传统 AES 式 SPN。


    2. LatinMaze:拟群与正交拉丁方分组密码

    核心思想

    用 256 阶拟群运算代替传统 S 盒。拟群 (Q, *) 满足:固定任一输入,输出是双射。因此天然可逆。密钥决定一个或多个拉丁方,轮函数在“拉丁方迷宫”中穿行。

    参数

    • 分组:128 bit
    • 密钥:256 bit
    • 轮数:16
    • 状态:16 个字节
    • 线性层:GF(2^8) 上 4×4 MDS 矩阵

    拟群构造

    从主密钥经 SHAKE256 生成:

    • 两个 256 字节置换 S1, S2;
    • 一个 256 字节置换 T。

    定义拟群:
    L[x][y] = T[ S1[x] XOR S2[y] ]

    对固定 xy -> L[x][y] 是双射;对固定 yx -> L[x][y] 也是双射。因此 L 是一个拉丁方,* 是拟群运算。

    轮函数

    状态为 16 字节 a0…a15

  • 密钥加
    每个字节异或轮密钥字节。
  • 拟群层
    将 16 字节分成 8 对 (a,b)。交替做:

    • (a,b) -> (a, L[a][b])
    • (a,b) -> (b, L[a][b])
      因为固定第一个参数时,第二个参数到输出是双射,所以可逆。
  • MDS 线性层
    将 16 字节视为 GF(2^8) 上 4×4 矩阵,左乘可逆 MDS 矩阵 M。MDS 矩阵保证分支数至少 5。
  • 字节置换
    按轮密钥进行 16 字节置换。
  • 解密:逆字节置换、逆 MDS、逆拟群、异或轮密钥。

    密钥调度

    主密钥经 SHAKE256 输出每轮:

    • 16 字节轮密钥;
    • 拟群种子;
    • MDS 矩阵种子;
    • 置换种子。
      MDS 矩阵通过 GF(2^8) 上的 Vandermonde 矩阵构造,并验证可逆。

    安全性分析

    • 差分攻击:拟群差分概率取决于 T 和 S1/S2。若 T 随机,差分分布较均匀。但线性拟群结构可能被代数攻击利用,需要额外非线性。
    • 线性攻击:MDS 层提供强扩散,拟群层提供非线性。
    • 积分攻击:16 轮可抵抗基础积分攻击,但需验证高阶积分。
    • 相关密钥:轮密钥由哈希派生,较好。
    • 缺点:256×256 拟群表占 64 KB,缓存侧信道风险高;若用循环群构造会退化线性。

    风格独特性

    以“拟群/拉丁方”作为核心非线性部件,不是传统 S 盒。


    3. HelixDNA:DNA 双螺旋分组密码

    核心思想

    把 128 bit 映射成 64 个 DNA 碱基,每个碱基 2 bit。轮函数模拟 DNA 双螺旋:互补、交叉、移位、密码子替换。注意:DNA 编码本身不提供安全,只是状态表示和扩散风格。

    参数

    • 分组:128 bit
    • 密钥:256 bit
    • 轮数:20
    • 状态:64 个碱基,每个碱基 {A,C,G,T}
    • 密码子 S 盒:6 bit -> 6 bit,共 64 项置换

    轮函数

  • 动态编码选择
    根据轮密钥选择 8 种 DNA 编码规则之一,将 2 bit 映射到碱基。例如:
    00=A, 01=C, 10=G, 11=T,但每轮可换。
  • 互补层
    对每个碱基,根据密钥位决定是否互补:
    A<->T, C<->G。
  • 双螺旋置换
    将 64 碱基排成 2×32:

    • 链 1 左循环移位 r1;
    • 链 2 右循环移位 r2;
    • 然后按列交换部分碱基。
  • 密码子替换
    将 64 碱基分成 21 个三联体 + 1 个碱基。每个三联体是 6 bit,过密钥生成的 64 项 S 盒。
  • 密钥加
    将碱基序列按当前编码解码回 128 bit,异或轮密钥。
  • 解密逆序执行。

    密钥调度

    主密钥经 SHAKE256 生成:

    • 每轮编码规则;
    • 互补掩码;
    • 两个移位量;
    • 列交换掩码;
    • 64 项密码子 S 盒种子。

    安全性分析

    • 差分攻击:6 bit S 盒差分均匀性目标为 4–8。双螺旋置换提供扩散。
    • 线性攻击:6 bit S 盒线性偏差需检查。20 轮提供足够混淆。
    • 表示安全:DNA 编码只是双射,不改变信息论安全性。
    • 侧信道:S 盒查表有缓存风险;可考虑 bitsliced 实现。
    • 缺点:速度可能慢于纯比特算法,编码/解码开销大。

    风格独特性

    生物 DNA 双螺旋交叉 + 密码子替换,视觉和结构上与传统分组密码差异极大。


    4. TensorNet:张量收缩与 GF(2^16) 矩阵分组密码

    核心思想

    把 256 bit 状态看成 GF(2^16) 上的 4×4 矩阵。每轮做“张量收缩”式线性层:Y = A · X · B。这本质是左右乘可逆矩阵,但用张量网络语言描述。非线性层用字节 S 盒。适合硬件并行。

    参数

    • 分组:256 bit
    • 密钥:512 bit
    • 轮数:12
    • 状态:4×4 矩阵,每个元素 16 bit
    • GF(2^16) 不可约多项式:x^16 + x^5 + x^3 + x + 1

    轮函数

    状态 X 为 4×4 GF(2^16) 矩阵。

  • 密钥加
    X = X XOR RK[r],其中 RK[r] 也是 4×4 矩阵。
  • 张量收缩线性层
    Y = A[r] · X · B[r]
    A[r]、B[r] 是 4×4 GF(2^16) 可逆矩阵。
  • 非线性层
    将每个 16 bit 元素拆成高 8 bit 和低 8 bit,分别过两个 8 bit S 盒 S0, S1,再合并。
  • 矩阵转置 / 置换
    若轮号为奇数,转置矩阵;否则按密钥做元素置换。
  • 解密:
    X = A[r]^{-1} · Y · B[r]^{-1},再逆非线性、逆置换。

    密钥调度

    512 bit 主密钥经 SHAKE256 输出:

    • 每轮两个 4×4 可逆矩阵;
    • 两个 8 bit S 盒种子;
    • 元素置换种子。
      矩阵通过随机生成后高斯消元验证可逆。

    安全性分析

    • 差分攻击:8 bit S 盒差分均匀性目标为 8–16。左右矩阵乘法提供强扩散。
    • 线性攻击:GF(2^16) 矩阵乘法扩散快,12 轮可能足够。
    • 代数攻击:GF(2^16) 结构可能带来代数关系,需检查。
    • 性能:GF(2^16) 乘法较慢,但可查表或硬件优化。
    • 缺点:矩阵求逆和乘法开销大;表查找侧信道风险。

    风格独特性

    用张量网络/矩阵乘积态视角组织线性层,而不是传统 MixColumns。


    5. QuantumWalk:离散量子行走与可逆逻辑分组密码

    核心思想

    用“量子行走”的图置换和可逆逻辑门构造经典分组密码。虽然不是真正量子加密,但借用离散量子行走的硬币层、移位层、受控门结构。所有操作都是经典可逆置换。

    参数

    • 分组:128 bit
    • 密钥:256 bit
    • 轮数:18
    • 状态:32 个半字节,排成 4×8 网格
    • 可逆门:4 bit S 盒、Margolus 置换、Toffoli 门

    轮函数

  • 硬币层
    对每个半字节应用密钥控制的 4 bit S 盒,即 16 项置换。
  • 图移位层
    将 32 个半字节视为 4×8 网格。分成 2×2 Margolus 块。每块内做密钥控制的 4 个半字节可逆置换。
    例如:(a,b,c,d) -> (a, b XOR f(a), c XOR f(b), d XOR f(c)),其中 f 是固定 4 bit 函数。
  • 受控 Toffoli 层
    对相邻半字节 (a,b,c):
    c = c XOR (a & b)
    这是可逆的,因为再次异或相同值即可恢复。
  • 密钥加
    整个 128 bit 状态异或轮密钥。
  • 解密逆序执行:逆密钥加、逆 Toffoli、逆 Margolus、逆 S 盒。

    密钥调度

    主密钥经 SHAKE256 生成:

    • 每轮 32 个 4 bit S 盒种子;
    • Margolus 块置换掩码;
    • Toffoli 连接模式;
    • 128 bit 轮密钥。

    安全性分析

    • 差分攻击:Toffoli 门非线性强,但 4 bit S 盒差分需检查。
    • 线性攻击:图移位和 Toffoli 层提供扩散,18 轮可抵抗基础线性分析。
    • 积分攻击:半字节结构可能导致积分性质,需增加轮数或改进扩散。
    • 性能:Toffoli 门可用位运算实现,硬件友好;软件可能较慢。
    • 缺点:结构复杂,安全性未验证;Margolus 块边界可能限制扩散。

    风格独特性

    量子行走 + 可逆逻辑门,完全不同于传统 S 盒/P 盒结构。


    总体评价与警告

    这 5 个设计分别覆盖:

  • 可逆元胞自动机:TidalRCA
  • 拟群/拉丁方:LatinMaze
  • DNA 生物启发:HelixDNA
  • 张量网络/GF(2^16):TensorNet
  • 量子行走/可逆逻辑:QuantumWalk
  • 它们都具备:

    • 明确分组、密钥、轮函数;
    • 可逆解密流程;
    • 密钥调度思路;
    • 初步差分/线性/相关密钥分析。

    但必须再次强调:
    密码算法的安全性只能通过长期、公开、大量的密码分析来验证。 上述算法没有经过任何实际攻击测试,可能存在致命缺陷。任何生产系统都不应使用它们,而应选择 AES、ChaCha20、SM4 等经过验证的标准算法。

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 5个与众不同的分组加密算法的设计与分析
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!