信息安全技术Word格式文档下载.docx
- 文档编号:21328463
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:15
- 大小:159.75KB
信息安全技术Word格式文档下载.docx
《信息安全技术Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《信息安全技术Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。
Hill加密算法实验。
设a~z的编号为0~25,明文P=“HILL”,密码K=1234,用Hill加密算法求出密文C。
实验数据
程序见附页2:
实验总结
通过本次实验,对Hill算法的思想有了进一步的认识和理解,在运用程序实现Hill算法功能时,主要考虑了密钥K使用一个二维数组来存储,而明文则使用分组的方式进行存储,根据密钥的长度来进行分组,在进行加密时更加方便和准确。
此加密方式运用了线性代数的知识矩阵相乘,也对过去学过的知识进行了复习。
指导教师意见
签名:
年月日
程序
Hill算法:
#include<
stdio.h>
iostream.h>
cstring>
voidmain()
{
inta[100][100];
intb[100];
intlength=0;
intk[2][2];
k[0][0]=1,k[0][1]=2,k[1][0]=3,k[1][1]=4;
charp[100];
cout<
<
"
请输入明文P:
endl;
intz;
gets(p);
z=(strlen(p)+1)/2;
intn=0;
for(inti=0;
i<
z;
i++)
{
for(intj=0;
j<
2;
j++)//分组
{
a[i][j]=p[n++]-97;
}
}
for(i=0;
b[length++]=(k[0][0]*a[i][0]+k[0][1]*a[i][0])%26;
b[length++]=(k[1][0]*a[i][1]+k[1][1]*a[i][1])%26;
密文为:
;
for(intq=0;
q<
length;
q++)
cout<
char(b[q]+97);
}
专业:
班级:
RSA算法的加/解密实验
1.掌握非对称密码加密体制的基本原理和用途;
2.掌握RSA算法及其对信息的加密
3.了解ElGamal密码体制和椭园曲线密码(ECC)体制
1.先计算出d、e、n再计算出密文C。
2.要求列出计算过程。
3.要求编程实现(语言不限)。
4.要求提交程序清单和程序运行结果。
用RSA算法对信息加密和解密。
设p=3,q=11,明文P=5,求出密文C。
程序见附页3:
通过本次实验,对RSA算法的加密解密思想有了进一步的认识和理解,在运用C++实现算法时,起初取e值是采用rand()函数,但经过验证,rand()产生的并非真正的随机数,所以对取e值的算法进行了修改,得到了正确的结果,在取d值时,采用取余为0,在整除的方法,加密解密都使用了mod函数,只是传递的参数不一样而已。
程序:
RSA算法:
stdlib.h>
intgcd(inta,intb);
intmod(inta,intb,intc);
intp,q,n,m;
intd[100];
请输入p:
cin>
>
p;
请输入q:
q;
n=p*q;
n值为:
n<
m=(p-1)*(q-1);
inte1[100];
intj;
intk=0;
for(j=2;
m;
j++)
while(true)
if(gcd(j,m)!
=1)
break;
else
e1[k++]=j;
inte=e1[0];
取e值为:
e<
inty=0;
for(intx=0;
x<
x++)
if((x*m+1)%e!
=0)
break;
else
d[y++]=(x*m+1)/e;
取d值为:
d[0]<
intz,c;
请输入明文Z:
c=mod(z,e,n);
密文c为:
c<
z=mod(c,d[0],n);
解密的明文为:
z<
intgcd(inta,intb)
while(b)
inttemp=b;
b=a%b;
a=temp;
returna;
intmod(inta,intb,intc)
{
intm;
m=a;
if(b<
2)
if(b==0)
m=1%c;
m=m%c;
else
for(inti=2;
b+1;
m=(m*a)%c;
returnm;
数字签名实验
1.掌握数字签名的基本原理
2.掌握用RSA算法及其应用技术
1.计算出A、B双方的公开密钥和秘密密钥。
2.发送方A:
用其自身的用户代号(101)作为身份向B发出一数字签名消息,实验要求用B的公开密钥进行加密。
3.接收方B:
对该数字签名进行解密和身份验证。
4.要求列出计算。
5.要求编程实现(语言不限)。
6.要求提交程序清单和程序运行结果。
用RSA算法进行数字签名。
设用户A和用户B的用户代号分别为101和102。
并设:
用户A:
p=11q=17
用户B:
p=7q=11
程序见附页5:
通过本次实验,对数字签名的基本思想有了进一步的认识和理解,对明文进行2次加密,同时包含了验证信息,在使用C++实现算法时,得益于在以前的实验中已经对RSA算法有了一定的了解程度,所以在数字签名的实验中,没有遇到太多的问题,主要就是对明文的2次加密的顺序和解密的顺序进行了思考,最近达到了实验的目的。
数字签名:
#include<
Structnode
inta[5];
};
node*jsmy(chars);
chars,s1;
请输入用户名称:
s;
node*a=jsmy(s);
int*p=(int*)a;
intf[100];
5;
f[i]=*(p++);
//cout<
f[i]<
"
}//发送方:
f[5]={n,p,q,d,e};
s1;
node*b=jsmy(s1);
int*q=(int*)b;
intm[100];
for(intj=0;
m[j]=*(q++);
m[j]<
}//接收方:
c[5]={n,p,q,d,e}
intn;
请输入发送方用户代号:
n;
intc=mod(n,f[3],f[0]);
//发送方私钥加密
一次加密密文为:
intc1=mod(c,m[4],m[0]);
//接受方的公钥加密
二次加密密文为:
c1<
发送的密文为:
intmw1=mod(c1,m[3],m[0]);
//接收方私钥解密
一次解密密文为:
mw1<
intmw=mod(mw1,f[4],f[0]);
//发送方公钥解密
二次解密密文为:
mw<
最终解密后的明文为:
node*jsmy(chars)
intd1[100];
if(gcd(j,m)!
break;
else
e1[k++]=j;
inte=e1[2];
d1[y++]=(x*m+1)/e;
intd=d1[0];
d<
用户"
s<
的公开密钥为:
{"
"
}"
的私有密钥为:
p<
node*a=(node*)malloc(sizeof(node));
a->
a[0]=n;
a[1]=p;
a[2]=q;
a[3]=d;
a[4]=e;
if(b<
if(b==0)
m=1%c;
m=m%c;
软件防火墙安装与配置实验
1.掌握防火墙的工作原理;
2.掌握个人软件防火墙的安装与配置。
任选一款软件个人防火墙进行实验
软件的下载,安装及使用
装有WINDOWSXP系统的计算机一台
1.下载个人软件防火墙;
2.安装个人软件防火墙;
3.配置个人软件防火墙。
1.安装个人软件防火墙;
2.配置个人软件防火墙。
经过本次实验,我了解了瑞星个人防火墙的下载、安装及使用,对瑞星个人防火墙这个软件有了一定的了解,并使用瑞星个人防火墙对计算机系统进行了防火墙设置,具体设置体现在实验数据中。
木马克星软件的应用实验
1.了解木马的基本原理和危害性;
2.掌握木马克星的下载、安装和应用。
掌握木马克星的下载、安装和应用。
软件的下载安装及使用
装有WINDOWSXP的计算机一台
1.下载木马克星软件
2.安装木马克星软件;
3.用木马克星查杀木马。
1.木马克星软件的下载
2.木马克星的安装;
经过本次实验,我了解了木马克星的下载、安装及使用,对木马克星这个软件有了一定的了解,并使用木马克星对计算机系统进行了木马查杀,经过检验,计算机系统是安全的。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息 安全技术