RC5

密码学中,RC5是一种简单的对称密钥块密码。由Ronald Rivest在1994年设计,RC5是一种参数化算法,具有可变的块大小、可变的密钥大小和可变的轮数。"RC"是"Rivest Cipher"的缩写,或者说是"Ron's Code"的缩写。

为了提供不同的安全和效率水平;RC5具有可变的块大小(32、64或128位)、可变的密钥大小(0至2040位)和可变的轮数(0至255)。最初建议选择的参数是块大小为64位,密钥为128位,轮数为12轮。

RC5的一个关键特征是使用与数据相关的旋转;RC5的目标之一是研究和评估作为密码学基元的块密码器的操作。RC5还包括一些模块加法和eXclusive OR(Xor)。算法的总体结构是一个类似Feistel的网络。加密解密例程可以用几行代码来指定。然而,密钥计划比较复杂,使用基本上是单向函数来扩展密钥,e黄金比率的二进制扩展都是"我袖子里没什么数字"的来源。算法的简单性加上数据依赖性旋转的新颖性,使RC5成为密码分析者研究的一个吸引人的课题。

密码分析

12轮RC5(64位块)容易受到使用244个选定明文的差分攻击。建议18-20轮作为足够的保护。

拥有该算法专利的RSA安全公司为破解用RC5加密的密码文本提供了一系列1万美元的奖金,但这些竞赛已于2007年5月停止。其中一些挑战问题已经由Distributed.net组织利用分布式计算来解决。Distributed.net已经用56位和64位密钥对RC5信息进行了强行加密,现在正在研究破解72位密钥。按照目前的速度(截至2008年11月12日),大约需要1000年的时间来测试每一个可能的密钥来完成这个项目。

问题和答案

问:什么是RC5?
答:RC5是罗纳德-里弗斯特于1994年设计的一种简单的对称密钥区块密码。

问:"RC "代表什么?
答:"RC "代表 "Rivest Cipher",或者说 "Ron's Code"。

问:RC5的参数是什么?
答:RC5的参数包括可变的块大小(32、64或128位)、可变的密钥大小(0至2040位)和可变的轮数(0至255)。最初建议的选择是区块大小为64位,密钥为128位,轮数为12轮。

问:该算法的一般结构是什么?
答:该算法的一般结构是一个类似Feistel的网络。

问:密钥计划有多复杂?
答:密钥计划比较复杂,使用一个基本上是单向的函数扩展密钥,以二进制扩展作为数字的来源。
问:为什么RC5对密码学家有吸引力?
答:算法的简单性加上数据依赖性旋转的新颖性,使RC5成为吸引密码学家研究的对象。

AlegsaOnline.com - 2020 / 2023 - License CC3