密码学中,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成为密码分析者研究的一个吸引人的课题。