Camellia 型方案的伪随机性
Pseudorandomness of Camellia-Like Scheme
-
摘要: 相对于公钥密码体制, 分组密码 在许多方面还很不成熟。公钥密码体制的安全性通常建立在难解数学问题的计算复杂性上,而目前 分组密码 的安全性实际上完全建立在经验主义的基础上。它们被认为是安全的,是因为目前没有对它们的有效攻击。而作为在各种安全系统中起着重要作用的密码算法,这种状况显然是大家不愿意看到的;因此,从可证明安全的角度探讨 分组密码的安全性有着很重要的理论意义。 可证明安全理论在分组密码中的研究始于 Luby 和 Rackoff 对 DES 的工作,他们形式化地描述了分组密码的密码特性,依据不同的攻击,定义了伪随机置换和超伪随机置换的概念。如果分组密码对选择明文是安全的,则称它是伪随机的。如果分组密码对选择明 / 密文是安全的,则称它是超伪随机的。 Luby 和 Rackoff 的主要结果是:如果轮函数是伪随机函数,则 3 轮 Feistel 结构是伪随机的, 4 轮 Feistel 是超伪随机的。可证明安全理论使得分组密码设计中的某些取舍有一定的理论根据,也可以将设计安全分组密码这样一个大问题归结为某些小规模的问题,比如轮函数、 S- 盒的设计;因此,国际上已将可证明安全作为评价一个密码方案的重要指标。 Camellia 是欧洲密码大计划 NESSIE 的最终获胜者 ,并且是日本政府选定的用于电子政务的密码算法,它采用的整体结构是 Feistel 结构。 Luby 和 Rackoff 是假定每个轮函数是随机的,不考虑轮函数的设计;而本文仅假定 Camellia 算法的非线性模块是随机的,降低假设条件,这样假定更接近算法本身的特性。本文首先证明了 5 轮 Camellia 型结构对适应性攻击是伪随机的;然后证明了 8 轮 Camellia 型结构对适应性攻击是超伪随机的;最后讨论了如何构造更有效的 Camellia 型方案,指出如果每一轮仅用一个随机函数,则无论轮数如何增长,也不能使 Camellia 型方案是伪随机的;并给出了一个如何用 8 个随机函数构造伪随机 Camellia 型方案的方法。 可证安全理论研究的是分组密码理想状态下的安全性,不关注具体算法的安全性,更多的是对设计准则的研究;设计安全的分组密码就是尽可能逼近理想状态,逼近的过程就是不断的降低假设条件。本文通过不过降低假设条件,研究 Camellia 型结构的伪随机性,为实用 Camellia 型方案的设计提供理论基础。Abstract: Luby and Rackoff idealized DES by replacing each round function with one large random function. In this paper, the author idealizes Camellia by replacing each S-box with one small random function, which is namedCamellia-like scheme. It is then proved that five-round Camellia-like scheme is pseudorandom and eight-round Camellia-like scheme is super-pseudorandom for adaptive adversaries. Further the paper considers more efficient construction of Camellia-like scheme, and discusses how to construct pseudorandom Camellia-like scheme from less random functions.