存在多种构造伪随机排列和伪随机函数的方法。随机 Feistel 密码也称为 Luby-Rackoff 分组密码,是用于构造分组密码的对称结构。Feistel 网络的好处是相同的结构可用于加密和解密,并且两者都包括以固定次数迭代运行一个称为“轮函数”的函数。从随机函数或随机排列构建伪随机排列研究最多的方法是 r 轮 Feistel 构造。Feistel 构造从实用角度来看很重要,因为它被用于开发许多分组密码,如 DES [ 2 ]、3DES [ 2 ] 和 Simon [ 7 ]。我们研究了对 Feistel 方案的一般攻击,其中我们假设内部轮函数 f 1 , ... , fr 是随机选择的。 Feistel 方案的明文消息用 [ L, R ] 表示,代表左和右,经过 r 轮后的密文消息用 [ S, T ] 表示。Feistel 方案的第一轮以 [ L, R ] 作为输入,输出 [ R, L ⊕ f ( R )],其中 fa 是 n 位到 n 位的秘密函数。Benes 方案是两个称为“蝴蝶”方案的组合。它允许从 n 位到 n 位的随机函数构造一个 2 n 位到 2 n 位的伪随机函数。对于许多密码原语(例如散列和伪随机函数),将输出长度加倍是有用的,即使加倍变换不可逆。Benes 方案的明文消息用 [ L, R ] 表示,代表左和右,密文消息用 [ S, T ] 表示。
有多种方法可以构建伪随机排列和伪随机函数。随机 Feistel 密码也称为 Luby–Rackoff 分组密码,是用于构建分组密码的对称结构。 Feistel 网络的优点是相同的结构可用于加密和解密,两者都包括以固定次数迭代运行一个称为“轮函数”的函数。从随机函数或随机排列构建伪随机排列研究最多的方法是 r 轮 Feistel 构造。Feistel 构造从实用角度来看很重要,因为它用于开发许多分组密码,如 DES [ 2 ]、3DES [ 2 ]。我们研究对 Feistel 方案的一般攻击,其中我们假设内部轮函数 f 1 , . . . , fr 是随机选择的。Feistel 方案的明文消息用 [ L, R ] 表示,代表左和右,应用 r 轮后的密文消息用 [ S, T ] 表示。Feistel 方案的一轮以 [ L, R ] 作为输入,输出 [ R, L ⊕ f ( R )],其中 f 是 n 位到 n 位的秘密函数。Benes 方案是两个方案的组合,称为“蝴蝶”。它允许从 n 位到 n 位的随机函数构造一个 2 n 位到 2 n 位的伪随机函数。对于许多加密原语(例如散列和伪随机函数),将输出长度加倍是有用的,即使加倍变换不可逆。
当每个回合的键控f函数仅与圆形键K I相差,并且假设没有歧义,我们将简单地表示f i = f(i)k i(x)。在经典环境中,已经证明,2分支平衡的Feistel-F结构成为R≥3的安全伪随机排列(PRP),当F(1)k 1时,R≥4的安全强伪随机置换(SPRP)。。。,f(r)k r是安全的prfs和k 1,。。。,k r在Random [19] 8中独立和均匀地选择。然而,在量子设置中,kuwakado和morii表明,可以通过量子选择的plaintext攻击(QCPA)在多项式时间内区分3圆平衡的Feistel结构。也就是说,3轮平衡的Feistel结构不是量子伪随机置换(QPRP)。随后的几部作品扩展了Kuwakado和Morii的区别。例如,有些人已经对平衡的Feistel结构产生了量子键恢复攻击[9,13],并显示了对广义Feistel结构的量子攻击[8,12,21]。此外,在[14]中的4轮平衡Feistel结构上构建了多项式QCCA区分剂。但是,到目前为止,很少有研究人员专注于Feistel结构的重要变体:Feistel结构9。
