- 23
- 0
- 约1.14万字
- 约 24页
- 2022-03-01 发布于浙江
- 举报
PAGE
PAGE 1
c语言实现RC5分组密钥算法的应用
加密解密 1、创建密钥组 RC5算法加密时使用了2r+2个密钥相关的的32位字: ,这里r表示加密的轮数。创建这个密钥组的过程是特别简单的但也是直接的,首先将密钥字节拷贝到32位字的数组L中(此时要留意处理器是little-endian挨次还是big-endian挨次),假如需要,最终一个字可以用零填充。然后利用线性同余发生器模2初始化数组S: 对于i=1到2(r+1)-1: (本应模 ,本文中令w=32) 其中对于16位字32位分组的RC5,P=0xb7e1 Q=0x9e37 对于32位字和64位分组的RC5,P=0xb7e15163 Q=0x9e3779b9 对于64位字和128位分组,P=0xb7151628aed2a6b Q=0x9e3779b97f4a7c15 最终将L与S混合,混合过程如下: i=j=0 A=B=0 处理3n次(这里n是2(r+1)和c中的最大值,其中c表示输入的密钥字的个数) 2、加密处理 在创建完密钥组后开头进行对明文的加密,加密时,首先将明文分组划分为两个32位字:A和B(在假设处理器字节挨次是little-endian、w=32的状况下,第一个明文字节进入A的最低字节,第四个明文字节进入A的最高字节,第五个明文字节进入B的最低字节,以此类推),其中操作符《《《表示循环左移,加运算是模 (本应模 ,本文中令w=32)的。 输出的密文是在(寄存器)A和B中的内容 3、解密处理 解密也是很简单的,把密文分组划分为两个字:A和B(存储方式和加密一样),这里符合》》》是循环右移,减运算也是模 (本应模 ,本文中令w=32)的。 RSA试验室花费了相当的时间来分析64位分组的RC5算法,在5轮后统计特性看起来特别好。在8轮后,每一个明文位至少影响一个循环。对于5轮的RC5,差分攻击需要 个选择明文;对10轮需要 个;对于12轮需要 个;对15轮需要 个。而对于64位的分组只有 个可能的明文,所以对于15轮或以上的RC5的差分攻击是失败的。在6轮后线性分析就是平安的了,Rivest推举至少12轮,甚至可能是16轮。这个轮数可以进行选择。 RC5 分组密钥算法 C语言实现 [cpp] view pl(ai)n copy/*RC5 C代码实现 w/r/b=32/12/16 基本的RC5 3种算法组成,即密钥扩展算法、加密算法和解密算法。故RC5的C语言实现也由以下几个部分构成。 1、 参数的定义 */ #include 《stdlib.h》 #include 《stdio.h》 #include 《string.h》 #include 《math.h》 int w=32;//字长 32bit 4字节 int r=12;//12;//加密轮数12 int b=16;//主密钥(字节为单位8bit)个数 这里有16个 int t=26;//2*r+2=12*2+2=26 int c=4; //主密钥个数*8/w = 16*8/32 typedef unsigned long int FOURBY(TE)INT;//四字节 typedef unsigned short int TWOBYTEINT;//2字节 typedef unsigned char BYTE; void Ini(TI)alKey(unsigned char* KeyK,int b); void generateChildKey(unsigned char* KeyK,FOURBYTEINT* ChildKeyS); void Encipher(FOURBYTEINT* In,FOURBYTEINT* Out,FOURBYTEINT* S); void Decipher(FOURBYTEINT* In,FOURBYTEINT* Out,FOURBYTEINT* S); #define NoOfData 4 /**2、循环移位函数 由于在生成子密钥,加密,解密过程中都要进行循环移位,故要首先定义循环以为函数。 * 循环左移和右移函数 * x : 被循环的数 * y : 将要循环的位数 */ #define ROT
您可能关注的文档
最近下载
- 工程建设强制性条文-电力工程部分.pdf VIP
- 医科大学2020-2021学年第一学期期末考试护理专业《人体解剖学》B卷.docx VIP
- 搞笑小品剧本《台湾导演》台词完整版 笑傲江湖崔大笨.docx VIP
- 2026湖北省东风汽车集团股份有限公司采购管理部招聘6人备考题库精编答案详解.docx VIP
- PDA TR26 液体灭菌过滤指南 (2025,中文).pdf VIP
- 高考英语3500词频表.pdf VIP
- 110kV武骏专用变电站工程--变压器110kV中性点成套装置招标文件(技术规范专用部分).doc VIP
- 母鸡萝丝去散步.pdf VIP
- 火电工程限额设计参考造价指标(2020年送审).docx VIP
- 2023年高考语文专题复习:《诗经》 诗歌鉴赏 讲义(含练习题及答案).pdf VIP
原创力文档

文档评论(0)