2000年10月2日,美国国家标准与技术研究所宣布采用Rijndael算法作为高级加密标准,并于2002年5月26日正式生效,AES算法将在今后很长一段时间内,在信息安全中扮演重要角色。因此,对AES算法实现的研究就成为了国内外的热点,会在信息安全领域得到广泛的应用。用FPGA实现AES算法具有快速、灵活、开发周期短等优点。 本论文就是针对AES加、解密算法在同一片FPGA中的优化实现问题,在深入分析了AES算法的整体结构、基本变换以及加、解密流程的基础上,对AES算法的加、解密系统的FPGA优化设计进行了研究。主要内容为: 1.确定了实现方案以及关键技术,在比较了常用的结构后,采用了适合高速并行实现AES加、解密算法的结构——内外混合的流水线结构,并给出了总体的设计框图。由于流水线结构不适用于反馈模式,为了达到较高的运算速度,该系统使用的是电码本模式(ECB)的工作方式; 2.对各个子模块的设计分别予以详细分析,结合算法本身和FPGA的特点,采用查表法优化处理了字节代换运算,列混合运算和密钥扩展运算。同时,考虑到应用环境的不同,本设计支持数据分组为128比特,密钥长度为128比特、192比特以及256比特三种模式下的AES算法加、解密过程。完成了AES加、解密算法在同一片FPGA中实现的这个系统的优化设计; 3.利用QLJARTUSII开发工具进行代码的编写工作和综合编译工作,在 MODELSIM中进行仿真并给出仿真结果,给出了各个模块和整个设计的仿真测试结果; 4.和其他类似的设计做了横向对比,得出结论:本设计在保证了速度的基础上实现了资源和速度的均衡,在性能上具有较大的优势。
上传时间: 2013-05-25
上传用户:wcl168881111111
4位八段数码管的十进制加计数仿真实验,程序采用汇编语言编写。此程序在仿真软件上与EDN-51实验板上均通过。仿真图中的数码管位驱动采用74HC04,如按EDN-51板上用想同的PNP三极管驱动在仿真软件上则无法正常显示。程序共分5块,STAR0为数据初始化,STAR2为计数子程序,STAR3为4位数码管动态显示子程序,STAR4为按键扫描子程序,STS00是延时子程序。由于EDN-51实验板上没装BCD译码器,所以编写程序比较烦琐。 程序如下: ORG 0000H LJMP STAR0 ;转程序 SRAR0ORG 0200H ;程序地址 0200HSTAR0: CLR 00 ;位 00 清 0 MOV P1,#0FFH ;#0FFH-->P1 MOV P2,#0FH ;#0FH-->P2 MOV P0,#0FFH ;#0FFH-->P0 MOV 30H,#00H ;#00H-->30H MOV 31H,#00H ;#00H-->30H MOV 32H,#00H ;#00H-->30H MOV 33H,#00H ;#00H-->30H LJMP STAR3 ;转程序 SRAR3STAR2: MOV A,#0AH ;#0AH-->A INC 30H ;30H+1 CJNE A,30H,STJE ;30H 与 A 比较,不等转移 STJE MOV 30H,#00H ;#00H-->30H INC 31H ;31H+1 CJNE A,31H,STJE ;31H 与 A 比较,不等转移 STJE MOV 31H,#00H ;#00H-->31H INC 32H ;32H+1 CJNE A,32H,STJE ;32H 与 A 比较,不等转移 STJE MOV 32H,#00H ;#00H-->32H INC 33H ;33H+1 CJNE A,33H,STJE ;33H 与 A 比较,不等转移 STJE MOV 33H,#00H ;#00H-->33H MOV 32H,#00H ;#00H-->32H MOV 31H,#00H ;#00H-->31H MOV 30H,#00H ;#00H-->30HSTJE: RET ;子程序调用返回STAR3: MOV R0,#30H ;#30H-->R0 MOV R6,#0F7H ;#0F7H-->R6SMG0: MOV P1,#0FFH ;#0FFH-->P1 MOV A,R6 ;R6-->A MOV P1,A ;A-->P1 RR A ;A向右移一位 MOV R6,A ;A-->R6 MOV A,@R0 ;@R0-->A ADD A,#04H ;#04H-->A MOVC A,@A+PC ;A+PC--> MOV P0,A ;A-->P0 AJMP SMG1 ;转程序 SMG1SDATA: DB 0C0H,0F9H,0A4H,0B0H,99H DB 92H,82H,0F8H,80H,90H SMG1: LCALL STAR4 ;转子程序 SRAR4 LCALL STS00 ;转子程序 STS00 INC R0 ;R0+1 CJNE R6,#07FH,SMG0 ;#07FH 与 R6 比较,不等转移 SMG0 AJMP STAR3 ;转程序 SRAR3STAR4: JNB P2.0,ST1 ;P2.0=0 转 ST1 CLR 00 ;位 00 清 0 SJMP ST3 ;转ST3ST1: JNB 00,ST2 ;位 00=0 转 ST2 SJMP ST3 ;转 ST3ST2: LCALL STAR2 ;调子程序 STAR2 SETB 00 ;位 00 置 1ST3: RET ;子程序调用返回ORG 0100H ;地址 0100HSTS00: MOV 60H,#003H ;#003H-->60H (211)DE001: MOV 61H,#0FFH ;#0FFH-->61H (255)DE002: DJNZ 61H,DE002 ;61H 减 1 不等于 0 转 DE002 DJNZ 60H,DE001 ;60H 减 1 不等于 0 转 DE001 RET ;子程序调用返回 END ;结束 上次的程序共有293句,经小组成员建议,本人经几天的研究写了下面的这个程序,现在的程序用了63句,精简了230句。功能没有减。如谁有更简练的程序,请发上来,大家一起学习。 4位八段数码管的十进制加计数仿真实验(含电路图和仿真文件)
上传时间: 2013-10-11
上传用户:sssl
在VC环境下采用希尔密码体制加密、解密和破译。该软件实现了输入任意长度的密钥对文件进行加密和解密,解密密钥和密文保存在文件中。如果有完整的明文和对应的密文可是实现破译功能,即得出加密密钥。
上传时间: 2013-12-09
上传用户:hphh
工作时用C#编写的WPS密码测试工具,主要用于测试与MSO文件兼容(IO)而写的.功能主要是由MSO文件加密.WPS打开,再由WPS加密,再由MSO打开.每个加密都是根据文件加密类型来加的,此代码.与普遍的加密解密是不同的.所以不适用于需要加密解密的代码参考
上传时间: 2015-08-09
上传用户:zhengjian
控件作用: 自动创建SQL数据库(可以同时间创建多个数据库) 控件用法: 1:添加数据库(可以添加多个数据库)选择相应的数据库. 2:添加SQL文件(创建数据表,视图,过程.可从SQL文件中加载) 3:添加基础数据库基础默认数据(可从SQL文件中加载) 4:保存并退出 调用方法 : cCreateDBV21.Execute 其它 : cCreateDB(进度显示)
上传时间: 2013-12-25
上传用户:diets
Speedframework--基于类型元数据的羽量级ORM.完全基于Java类型元数据和反射机制同时不需要任何对象关系映射配置文件的轻量级ORM框架,它充分利用了类型本身的信息,使用Metadata Reflector完全消除了映射文件所带来的维护成本 除了支持直接对象存储加载等操作,同时也支持使用SQL进行数据库操作,Speed框架直接推导用户所提供的SQL以实现数据库操作,同时也提供轻量级对象标识缓存和查询缓存,有效提高了系统性能
标签: Speedframework ORM Metadata Java
上传时间: 2013-12-15
上传用户:BOBOniu
JAVA实现的聊天工具,可以容纳最多10个用户 1.本系统需要JDK1.5 或更高版本的支持。 2.serverDatabase为服务器端的数据文件. 若使用现有数据,可用帐号:1, 密码:zwz,登录服务器端系统 登录后可查到所有已注册用户的信息,每个用户的密码都与其姓名相同。 3.由于客户端之间的通讯不通过服务器转发,所以每台机器只能正常能运行一个客户端(虚拟机可以提供测试平台). 与另一客户端成功通讯之前,必须首先把对方加为好友。 4.主要制作时间: 06.2.21 - 06.4.9
标签: serverDatabase JAVA 1.5 JDK
上传时间: 2015-09-16
上传用户:SimonQQ
可选择硬盘中的特定文件加密解密,包含DES算法对操作密码加密、采用BlowFish算法对文件数据进行加密
上传时间: 2013-12-26
上传用户:yepeng139
Account.java 主要用于用户的增删改数据(用户名+帐户余额)存于E盘accountdata.txt文件中 Bank.java 主要用于用户的增删改数据(用户名+卡号+密码)存于E盘bankdata.txt文件中 AtmAccount.java 用户的界面设计 AtmBank.java 管理员的界面设计 AtmMain.java 程序运行的主类(画面加载后从这里运行) JWindowDemo.java 加载画面 atm.jpg 加在画面时用到的图片...自己可以改换
标签: java accountdata Account 用户
上传时间: 2013-12-04
上传用户:水口鸿胜电器
DES算法要求加密密钥和解密密钥一致。密钥所需的字节数祖长度为8位。基于对需求的理解,密钥由客户设定,在加密和解密的时候,在服务器端输入一密钥达到文件的加密需求,在终端输入同一密钥达到加密文件的解密需求。 DES加密的时候,最后一位长度不足64的,它会自动填补到64,那么在我们进行字节数组到字串的转化过程中,可以把它填补的不可见字符改变了,所以时常引发系统抛出异常。为此,在处理过程中,我们需要把一些信息编码保存起来,使之保证数据完整性。故在des.Des类中运用到了convert4CharTo64bit方法。
上传时间: 2016-08-09
上传用户:bruce5996