您好,欢迎来到投聚财经。
搜索
您的当前位置:首页密码学课程设计AES

密码学课程设计AES

来源:投聚财经




课程设计题目:

对称加密算法AES学生姓名:

专业:信息工程

级:
学 号:
指导教师:



2014518





目录
一、实验题目........................

二、实验目的.....................2三、实验要求......................4四、实现思路...... 5

五、实验调试和结果 ?7

六、实验小结...... ??8







,、实验题目
对称加密算法AES

:、实验目的

本次课程设计的主要目的是综合运用所学的密码学知

识解决一个比较实际的信息安全问题,侧重对加密和解密应用。

AES(The Advanced Encryption Standard)是美国国家

标准与技术研究所用于加密电子数据的规范。它被预期能成

为人们公认的加密包括金融、电信和数字信息的方法。本文展示了 AES的概貌并解析了它使用的算法。包括一个完整的C#实现和加密.NET数据的举例。在读完本文后你将能用AES加密、测试基于AES的软件并能在你的系统中

使用AES加密。

美国国家标准与技术研宄所(NIST)2002526日建立了新的高级数据加密标准(AES)规范。本文中我将提供一个用C#编写的的能运行的AES实现,并详细解释到底什么是AES以及编码是如何工作的。我将向您展示如何用AES加密数据并扩展本文给出的代码来开发一个商业级质

量的AES类。我还将解释怎样把AES结合到你的软件系统中去和为什么要这么做,以及如何测试基于AES的软件。





注意本文提供的代码和基于本文的任何其它的实现都

在联邦加密模块出口控制的适用范围之内(详情请参看CommercialEncryption Export Controls )

AES是一个新的可以用于保护电子数据的加密算法。明确地说,AES是一个迭代的、对称密钥分组的密码,它可以使用128192256位密钥,并且用128(16字节)分组加密和解密数据。与公共密钥密码使用密钥对不

同,对称密钥密码使用相同的密钥加密和解密数据。通过分

组密码返回的加密数据的位数与输入数据相同。迭代加密使用一个循环结构,在该循环中重复置换(permutations) 和替换(substitutions)输入数据。Figure1显示了 AES
192位密钥对一个16位字节数据块进行加密和解密的情形。

三、实验要求

密钥长度:128

ECB/CBC/PCBC/CTR/CTS/CFB/CFB8

to

CFB128/OFB/OBF8to OFB128

式:

Nopadding/PKCS5Padding/ISO10126Padding





AES算法是基于置换和代替的

[换是数据的重新排列,

而代替是用一个单元数据替换另一个。AES使用了几种不 同的技术来实现置换和替换。为了阐明这些技术,让我们用 Figure 1所示的数据讨论一个具体的AES加密例子。下面 是你要加密的128位值以及它们对应的索引数组:
00 11 22 33 44 55 66 77 88 99 aa bb cc dd ee ff
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
192位密钥的值是:
00 01 02 03 04 05 06 07 08 09 0a Ob 0c Od Oe Of 10 11
12 13 14 15 16 17

01234567 10 1112 13 14 15 16 17 18 19 20 21

22 23

按照要求完成。
四、实现思路

(1)密码学中的高级加密标准(Advanced Encryption Standard,

AES),又称Rijndael力口密法,是美国联邦

采用的一种区块加密标准。这个标准用来替代原先的
DES,己经被多方分析且广为全世界所使用。经过五年的甄
选流程,高级加密标准由美国国家标准与技术研宄院
(NIST)20011126日发布于FIPS PUB



197,并在2002526曰成为有效的标准。2006







年,高级加密标准已然成为对称密钥加密中最流行的算法之 该算法为比利时密码学家JoanDaemenVincent

Rijmen所设计,结合两位作者的名字,以Rijndael之命

名之, 投稿高级加密标准的甄选流程HRhinedoH' )

(Rijdael的发音近

AES是美国国家标准技术研究所NIST旨在取代DES21世纪的加密标准。

AES的基本要求是,采用对称分组密码,密钥长度的
少支持为128192256,分组长度128位,算法应
易于各种硬件和软件实现。1998NIST幵始AES第一
轮分析、测试和征集,生了 15个候选算法。1999
3月完成了第二轮AES2的分析、测试。2000102 日美国正式宣布选中比利时密码学家Joan Daemen

Vincent Rijmen提出的一种密码算法RIJNDAEL
作为AES.在应用方面,尽管DES在安全上是脆弱的,但由于快速DES芯片的大量生产,使得DES仍能暂 时继续使用,为提高安全强度,通常使用密钥的三级 DESo但是DES迟早要被AES代替。流密码较之分
组密码在理论上成熟且安全,但未被列入下一代加密标准。

AES加密数据块和密钥长度可以是128比特、192比特、





256比特中的任意一个。

AES加密有很多轮的重复和变换。大致步骤如下:1、密钥扩展(KeyExpansion),
2、初始轮(InitialRound),
3、重复轮(Rounds),每一轮又包括:SubBytesShiftRowsMixColumnsAddRoundKey,
4、最终轮(FinalRound),最终轮没有MixColumns

Encryption DES-Data
Standard,即数据加密算法。是
IBM公司于1975年研宄成功并公幵发表的。DES算法的入口参数有三个:KeyDataMode。其中Key8个字节共位,是DES算法的工作密钥;Data也为8个字节位,是
要被加密或被解密的数据;ModeDES的工作方式,有两种 加密或解密。

DES算法把位的明文输入块变为位的密文输出块,它所使用的密钥也是位。

(2)流程





甲方

4发送加密教掮0 :使用密钼对数据解密o

1构建密钼0

2公布密钥0

3使用密钼对教振加密0

五、实验调试和结果

加密后数据:hexStr:null

解密后数据:byte[]:{65,69,83,-54解密后数据:string:AES数据
/ 实验小结
对加密解密有了更深的了解

-3^-66^35}

Copyright © 2019- tjwe.cn 版权所有

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务