龙源期刊网 .cn
AES算法的研究与实现
作者:陈彦龙 杨立波
来源:《中国科教创新导刊》20xx年第28期
摘 要:本文主要介绍了AES算法的基本原理及其结构,分析了AES算法的结构特点,并在提高数据吞吐量和运行效率方面对其结构进行优化设计。
关键词:AES 轮变换 密钥扩展 数据加密 数据解密
中图分类号:TP309 文献标识码:A 文章编号:1673-9795(2012)10(a)-0034-02
西京学院数学软件实验任务书
实验六实验报告
一、实验名称:非线性方程的二分法,迭代法,松弛迭代法,Aitken迭代法,Steffensen迭代法。
二、实验目的:进一步熟悉理解掌握最速下降法与共轭梯度法解法思路熟悉非线性方程的二分法,迭代法,松弛迭代法,Aitken迭代法,Steffensen迭代法,提高matlab编程能力。
三、实验要求:非线性方程,应用二分法,迭代法,松弛迭代法,Aitken迭代法,Steffensen迭代法编程求解非线性方程的数值解。
四、实验原理:
1.二分法:
设函数在区间上连续,而且,则在区间上至少有一个根。
首先确定有限区间:依据零点定理。设 ,且,则方程 在区间上至少有一个根。如果在上恒正或恒负,则此根唯一。
令若,则为有根区间,否则为有根区间。记新的有根区间为,
则且;对重复上述做法得:且
设所求的根为,则,即,由得
取为的近似解。
2.不动点迭代法
对于非线性方程:常常可以化成等价的方程可以选取一个初始近似值,构造迭代序列
如此产生序列。这种迭代方法称为不动点迭代,或Picard 迭代。这个原理看似很容易直观理解,但是却有相当深刻的数学内涵,数学系的学生在泛函分析与微分方程理论等多门专业课程里都会遇到。如果连续,而且,则是的一个不动点。因此为方程的一个根。
3.Aitken加速迭代
由初值出发,计算出后,便可在曲线上找到两个点。将这两点所在的直线与直线的交点设为,则点满足:解得:,将视为新的初值,重复上述步骤可得,由此产生迭代公式,。
4.Steffensen迭代法
该迭代法解方程可以看成是另一种不动点迭代:其中迭代函数为得到迭代公式为:
;
五、实验内容:
%二分法解非线性方程
function er_fen(f,a,b,esp);
f1=subs(f,a);
f2=subs(f,b);
if f1*f2>0
disp('该方程在【a,b】上无解!');
elseif f1==0
root=a;
elseif f2==0
root=b;
else
a0=a;
b0=b;
A=[];
while abs((b0-a0)/2)>=esp
half=(a0+b0)/2;
fa=subs(f,a0);
fb=subs(f,b0);
fhalf=subs(f,half);
if fhalf==0
root=half;
break;
elseif fa*fhalf<0
b0=half;
else
a0=half;
end
A=[A,half];
end
root=(b0+a0)/2;
end
root
A
%不动点迭代(Picard迭代)
function [x,time]=Picard(f,x0,tol)
%结果给出迭代次数
%x0 为迭代初值
%tol 为误差容限
if(nargin==2)
tol=1.0e-5;
end
wucha=0.5; %设置误差初值
x1=x0; %x1 与x0 为前后两次计算结果
time=0; %用于记录迭代次数
while(wucha>tol)
x1=subs(f,x0)+x0;
%迭代计算
wucha=abs(x1-x0);
x0=x1; % 更新x0的值在循环中这一句非常重要
time=time+1;
%记下迭代次数
end
x=x1;
%Aitken加速收敛方法
function [gen,time]=Aitken(func,x0,tol)
if(nargin==2)
tol=1.0e-5;
end
gen=x0;
x(1:2)=[0,0];
t=0; %记录迭代次数
m=0;
x2=x0;
wucha=0.1; %设置误差初值
while(wucha>tol)
t=t+1; %记下累积一次迭代次数
x1=x2;
temp=gen;
gen=subs(func,temp)+temp;
x(t)=gen;
%迭代超过两次使用 Aitken加速
if(t>2)
m=m+1;
x2=x(m)-(x(m+1)-x(m))^2/(x(m+2)-2*x(m+1)+x(m));
%给出两次迭代误差
wucha=abs(x2-x1);
end
end
gen=x2;
%Steffensen加速方法计算非线性方程
function [gen,time]=Steffensen(fun,x0,tol)
%如果缺省误差参数,默认为10 的-5次方
if(nargin==2)
tol=1.0e-5;
end
%设置误差初值
time=0; %记迭代次数
wucha=0.1; %设置前后两次迭代的误差
gen=x0;
while(wucha>tol)
x1=gen;
y=subs(fun,x1)+x1;
z=subs(fun,y)+y;
%加速公式
gen=x1-(y-x1)^2/(z-2*y+x1);
wucha=abs(gen-x1);
time=time+1; %迭代加一次的记录
end
gen; %计算结果
六、实验结果:
>> syms x;er_fen(sin(x),-2,1,1.0e-2)
root =
-0.0020
A =
-0.5000 0.2500 -0.1250 0.0625 -0.0313 0.0156
-0.0078 0.0039
关于20xx年拟录取硕士研究生现实表现档案材料调取和录取通知书发放等有关事项的说明点击数24198更新时间20xx67165853…
20xx年东南大学硕士研究生现实表现情况备注1以下考生须填写此表应届毕业生含成人应届定向或委培考生2请于20xx年05月20日前按…
现实表现复审表请就该考生思想政治品德的现实表现工作学习科研能力及外语水平等方面作说明请于5月10日前将此表寄送广州市五山华南理工大…
实验报告AES加密算法一实验环境1硬件配置酷睿i3cpu2G内存2使用软件1操作系统windows7旗舰版2软件工具visualc…
四川大学计算机学院软件学院实验报告学号姓名专业班级第10周轮密钥加当前分组和扩展密钥的一部分进行按位异或四代码实现cryptogr…
AES实验报告本次实验分工卢上游密钥扩展keyexpansionkeyexpansionInv主程序main文件读写FileWri…
集美大学计算机工程学院实验报告课程名称指导教师实验项目名称AES加密解密算法实验项目编号班级姓名学号组号实验成绩上机实践日期上机实…
数学与计算机学院密码学实验报告年级20xx级学号20xx432133姓名王祥辉成绩专业网络工程实验地点主楼502指导教师常卓实验项…