• 教案下载
  • 语文教案
  • 数学教案
  • 英语教案
  • 政治教案
  • 物理教案
  • 化学教案
  • 历史教案
  • 地理教案
  • 生物教案
  • 音乐教案
  • 体育教案
  • 美术教案
  • 信息技术教案
  • 班会教案
  • 学生评语
  • 师德论文
  • 说课稿
  • 教学反思
  • 幼教资料
  • 您现在的位置:站轩范文网 > 教案大全 > 历史教案 > 正文

    【AVR单片机的RC5和RC6算法比较与改进】 单片机原理及接口技术

    来源:站轩范文网 时间:2018-08-25
    摘要:RC5及RC6是两种新型的分组密码。AVR高速嵌入式单片机功能强大,在无线数据传输应用方面很有优势。本文基于Atmega128高速嵌入式单片机,实现RC5和RC6加密及解密算法,并对算法进行汇编语言的优化及改进。根据实验结果。对两种算法的优热点进行比较和分析。

        关键词:Atmega128 RC5 RC6 分组密码 混合密钥 Flash

    引言

    在无线局域网中,传输的介质主要是无线电波和红外线,任何具有接收能力的窍听者都有可能拦截无线信道中的数据,掌握传输的内容,造成数据泄密。因此,对于无线局域网来说,数据的加密是关键技术之一。

    AVR高速嵌入式单片机是8位RISC MCU,执行大多数指令只需一个时钟周期,速度快(8MHz AVR的运行速度约等于200MHz C51的运行速度);32个通用寄存器直接与ALU相连,消除和运算瓶颈。内嵌可串行下载或自我编程的Flash和EPPROM,功能繁多,具有多种运行模式。

    依照IEEE1999年发布的802.11无线局域网协议标准,采用Atmel公司的Atmega128高速嵌入式单片机,开发无线数据传输装置。为了实现无线数据传输时的安全性,同时尽可能节省成本,采用软件进行加密、解密。这就对算法的简法性、高速性及适应性提出了很高的要求。RC5和RC6两种新型的分组加密算法能够比较好地满足上述的要求。

    1 RC5及RC6算法

    1.1 RC5及RC6的参数

    RC5及RC6是参数变量的分组算法,实际上是由三个参数确定的一个加密算法族。一个特定的RC5或者RC6可以表示为RC5-w/r/b或者RC6-w/r/b。其中这三个参数w、f和b分别按照表1所列定义。

    表1 RC5及RC6算法参数定义

    参  数 定  义 常  用 w 以比特表示的字的尺寸 16,32,64 r 加密轮数 0~255 b 密钥的字节长度 0~255

    1.2 RC5及RC6字运算部件

    RC5及RC6均由三部分组成,分别为混合密钥生成过程、加密过程和解密过程。在这两种算法中,共使用了六种基本运算:

    ①模2w加法运算,表示为“+”;

    ②模2w减法运算,表示为“-”;(范文先生网www.fwsir.com收集整理)

    ③逐位异或运算,表示为+;

    ④循环左移,字a循环左移b比特表示为“a<<<b”;

    ⑤循环右移,字a循环右移b比特表示为“a>>>b”;

    ⑥模2w乘法,表示为“×”。

    RC5算法运用了上述的①~⑤运算部分,RC6算法使用了上述所有的运算部件。

    1.3 RC5算法

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

    S[0]=Pw

    for i=1 to t-1 do

    S[i]=S[i-1]+Qw

    输入比特数大小为8,密钥长度为b的用户密钥K[0]至K[b-1]

    转换K[0]至K[b-1]为数组长度为c,比特数为w的L[]数组

    i=j=0 x=y=0

    [1] [2] [3] [4] [5] 下一页

    推荐访问:AVR单片机的RC5和RC6算法比较与改进 avr单片机教程 avr单片机型号