保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

AVR单片机的RC5和RC6算法比较与改进


S[i]=(S[i]+x+y)<<<3;X=S[i];i=(i+1)mod t

L[j]=(L[j]+x+y)<<<(x,y);X=L[j];j=(j+1)modC

其中c=[b×8/w]方括号表示上取整运算,t=2r+2,当w分别为16、32、64时,常数Pw、Qw分别如表2所列。

表2 常数Pw、Qw取值表

W 16 32 64 Pw 0xB7E1 0xB7E15163 0xB7E151628AED2A6B Qw 0x9E37 0x9E3779B9 0x9E3770B97F4A7C15

(2)RC5加密算法过程的伪代码表示

Input(A,B)

A=A+S(0)B=B+S[1]

for i=1 to r do

A=((A+B)<<<B)+S[2i]

B=((B+A)<<<A)+S[2i+1]

Output(A,B)

其中初始的A、B分别为要加密的两个比特数为w的数据,最终的A、B分别为加密好的两个比特数为w的数据。

(3)RC5解密算法过程的伪代码表示

Input(A,B)

for i=r down to 1 do

B=((B-S[2i+1])>>>A)+A

A=((A-S[2i])>>>B)+B

A=A-S[0] B=B-S[1]

Output (A,B)

其中初始A、B中的数据就是已经加密了的比特数为w的数据,最终的A、B中的数据为解密后的比特数为w的数据。

1.4 RC6算法

(1)RC6算法混合密钥生成过程伪代码表示

RC6混合密钥生成过程与RC5相同,只是t的取值为2r+4。

(2)RC6加密算法过程伪代码表示

Input(A,B,C,D)

B=B+S[0]D=D+S[1]

for i=1 to r do

t=(B×(2B+1))<<<log2w

u=(D×(2D+1))<<<1og2w

A=((A+t)<<<t)+S[2i]

C=((C+u)<<<u)+S[2i+1]

(A,B,C,D)=(B,C,D,A)

《AVR单片机的RC5和RC6算法比较与改进(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/153252.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。