文档库 最新最全的文档下载
当前位置:文档库 › 网络安全课程设计模板 -DES算法

网络安全课程设计模板 -DES算法

网络安全课程设计模板 -DES算法
网络安全课程设计模板 -DES算法

网络安全课程设计

课题名称DES算法程序实现

院系电子与信息工程学院计算机系

班级网络工程

学号

姓名

指导老师

起止周次2017-2018学年第二学期第10-18周

一、课题设计目标

提高学生在网络安全方面综合运用理论知识解决实际问题的能力。使学生得到一次科学研究工作的初步训练,懂得网络加密/解密的方法和实现、网络相关安全工具的使用方法与网络攻击的防范

二、课题设计任务

a、对称密码算法的理论学习

b、利用VC/C/C++/Java(任意一种)实现DES算法,要求,有界面,输入明文,点击加密,可实现加密,把明文转变为密文;点击解密,可实现解密,即把密文转变为明文。

三、课题设计硬件环境

带有Windows操作系统的计算机。

四、课题设计软件环境

VS2010编译环境

五、设计步骤及代码

1.算法描述

DES算法的流程如图1-1和1-2所示。首先把明文分成若干个64bit的分组,算法一个分组作为输入,通过一个初始置换(IP)将明文分组分成左半部分(L0)和右半部分(R0)各位32比特。然后进行16轮完全相同的运算,这些运算称为函数f,在运算过程中数据与密钥相结合。经过16轮运算后,左、右两部分合在一起经过一个末置换(初始转换的逆置

换IP-1),输出一个64bit的密文分组。

2.程序源代码

#include

#include

using namespace std;

const static char ip[] = { //IP置换

58, 50, 42, 34, 26, 18, 10, 2,

60, 52, 44, 36, 28, 20, 12, 4,

62, 54, 46, 38, 30, 22, 14, 6,

64, 56, 48, 40, 32, 24, 16, 8,

57, 49, 41, 33, 25, 17, 9, 1,

59, 51, 43, 35, 27, 19, 11, 3,

61, 53, 45, 37, 29, 21, 13, 5,

63, 55, 47, 39, 31, 23, 15, 7

};

const static char fp[] = { //最终置换

40, 8, 48, 16, 56, 24, 64, 32,

39, 7, 47, 15, 55, 23, 63, 31,

38, 6, 46, 14, 54, 22, 62, 30,

37, 5, 45, 13, 53, 21, 61, 29,

36, 4, 44, 12, 52, 20, 60, 28,

35, 3, 43, 11, 51, 19, 59, 27,

34, 2, 42, 10, 50, 18, 58, 26,

33, 1, 41, 9, 49, 17, 57, 25

};

const static char sbox[8][64] = { //s_box

/* S1 */

14, 4, 13, 1, 2, 15, 11, 8, 3, 10, 6, 12, 5, 9, 0, 7, 0, 15, 7, 4, 14, 2, 13, 1, 10, 6, 12, 11, 9, 5, 3, 8,

4, 1, 14, 8, 13, 6, 2, 11, 15, 12, 9, 7, 3, 10, 5, 0, 15, 12, 8, 2, 4, 9, 1, 7, 5, 11, 3, 14, 10, 0, 6, 13,

/* S2 */

15, 1, 8, 14, 6, 11, 3, 4, 9, 7, 2, 13, 12, 0, 5, 10, 3, 13, 4, 7, 15, 2, 8, 14, 12, 0, 1, 10, 6, 9, 11, 5,

0, 14, 7, 11, 10, 4, 13, 1, 5, 8, 12, 6, 9, 3, 2, 15, 13, 8, 10, 1, 3, 15, 4, 2, 11, 6, 7, 12, 0, 5, 14, 9,

/* S3 */

10, 0, 9, 14, 6, 3, 15, 5, 1, 13, 12, 7, 11, 4, 2, 8, 13, 7, 0, 9, 3, 4, 6, 10, 2, 8, 5, 14, 12, 11, 15, 1, 13, 6, 4, 9, 8, 15, 3, 0, 11, 1, 2, 12, 5, 10, 14, 7, 1, 10, 13, 0, 6, 9, 8, 7, 4, 15, 14, 3, 11, 5, 2, 12,

/* S4 */

7, 13, 14, 3, 0, 6, 9, 10, 1, 2, 8, 5, 11, 12, 4, 15, 13, 8, 11, 5, 6, 15, 0, 3, 4, 7, 2, 12, 1, 10, 14, 9, 10, 6, 9, 0, 12, 11, 7, 13, 15, 1, 3, 14, 5, 2, 8, 4, 3, 15, 0, 6, 10, 1, 13, 8, 9, 4, 5, 11, 12, 7, 2, 14,

/* S5 */

2, 12, 4, 1, 7, 10, 11, 6, 8, 5, 3, 15, 13, 0, 14, 9, 14, 11, 2, 12, 4, 7, 13, 1, 5, 0, 15, 10, 3, 9, 8, 6, 4, 2, 1, 11, 10, 13, 7, 8, 15, 9, 12, 5, 6, 3, 0, 14, 11, 8, 12, 7, 1, 14, 2, 13, 6, 15, 0, 9, 10, 4, 5, 3,

/* S6 */

12, 1, 10, 15, 9, 2, 6, 8, 0, 13, 3, 4, 14, 7, 5, 11, 10, 15, 4, 2, 7, 12, 9, 5, 6, 1, 13, 14, 0, 11, 3, 8, 9, 14, 15, 5, 2, 8, 12, 3, 7, 0, 4, 10, 1, 13, 11, 6,

4, 3, 2, 12, 9, 5, 15, 10, 11, 14, 1, 7, 6, 0, 8, 13,

/* S7 */

4, 11, 2, 14, 15, 0, 8, 13, 3, 12, 9, 7, 5, 10, 6, 1, 13, 0, 11, 7, 4, 9, 1, 10, 14, 3, 5, 12, 2, 15, 8, 6, 1, 4, 11, 13, 12, 3, 7, 14, 10, 15, 6, 8, 0, 5, 9, 2,

6, 11, 13, 8, 1, 4, 10, 7, 9, 5, 0, 15, 14, 2, 3, 12,

/* S8 */

13, 2, 8, 4, 6, 15, 11, 1, 10, 9, 3, 14, 5, 0, 12, 7, 1, 15, 13, 8, 10, 3, 7, 4, 12, 5, 6, 11, 0, 14, 9, 2,

7, 11, 4, 1, 9, 12, 14, 2, 0, 6, 10, 13, 15, 3, 5, 8,

2, 1, 14, 7, 4, 10, 8, 13, 15, 12, 9, 0, 3, 5, 6, 11 };

const static char rar[] = { //压缩置换

14, 17, 11, 24, 1, 5,

3, 28, 15, 6, 21, 10,

23, 19, 12, 4, 26, 8,

16, 7, 27, 20, 13, 2,

41, 52, 31, 37, 47, 55,

30, 40, 51, 45, 33, 48,

44, 49, 39, 56, 34, 53,

46, 42, 50, 36, 29, 32

};

const static char ei[] = { //扩展置换

32, 1, 2, 3, 4, 5,

4, 5, 6, 7, 8, 9,

8, 9, 10, 11, 12, 13,

12, 13, 14, 15, 16, 17,

16, 17, 18, 19, 20, 21,

20, 21, 22, 23, 24, 25,

24, 25, 26, 27, 28, 29,

28, 29, 30, 31, 32, 1

};

const static char Pzh[]={ //P置换

16, 7, 20, 21,

29, 12, 28, 17,

1, 15, 23, 26,

5, 18, 31, 10,

2, 8, 24, 14,

32, 27, 3, 9,

19, 13, 30, 6,

22, 11, 4, 25

};

const static char Keyrar[]={

57, 49, 41, 33, 25, 17, 9,

1, 58, 50, 42, 34, 26, 18,

10, 2, 59, 51, 43, 35, 27,

19, 11, 3, 60, 52, 44, 36,

63, 55, 47, 39, 31, 23, 15,

7, 62, 54, 46, 38, 30, 22,

14, 6, 61, 53, 45, 37, 29,

21, 13, 5, 28, 20, 12, 4

};

bool key[16][48]={0},/*rekey[16][48],*/

char key_in[8];

void ByteToBit(bool *Out,char *In,int bits) //字节到位的转换

{

int i;

for(i=0;i

Out[i]=(In[i/8]>>(i%8))&1;

}

void BitToByte(char *Out,bool *In,int bits) //位到字节转换

{

for(int i=0;i

Out[i]=0;

for(i=0;i

Out[i/8]|=In[i]<<(i%8); //"|="组合了位操作符和赋值操作符的功能}

void Xor(bool *InA,const bool *InB,int len) //按位异或

{

for(int i=0;i

InA[i]^=InB[i];

}

void keyfc(char *In) //获取密钥函数

{

int i,j=0,mov,k;

bool key0[56],temp,keyin[64];

ByteToBit(keyin,In,64); //字节到位的转换

for(i=0;i<56;i++) //密钥压缩为56位

key0[i]=keyin[Keyrar[i]-1];

for(i=0;i<16;i++) //16轮密钥产生

{

if(i==0||i==1||i==8||i==15)

mov=1;

else

mov=2;

for(k=0;k

{

for(int m=0;m<8;m++)

{

temp=key0[m*7];

for(j=m*7;j

key0[j]=key0[j+1];

key0[m*7+6]=temp;

}

temp=key0[0];

for(m=0;m<27;m++)

key0[m]=key0[m+1];

key0[27]=temp;

temp=key0[28];

for(m=28;m<55;m++)

key0[m]=key0[m+1];

key0[55]=temp;

}

for(j=0;j<48;j++) //压缩置换并储存

key[i][j]=key0[rar[j]-1];

}

}

void DES(char Out[8],char In[8],bool MS)//加密核心程序,ms=0时加密,反之解密{

bool MW[64],tmp[32],PMW[64]; //注意指针

bool kzmw[48],keytem[48],ss[32];

int hang,lie;

ByteToBit(PMW,In,64);

for(int j=0;j<64;j++)

{

MW[j]=PMW[ip[j]-1]; //初始置换

}

bool *Li=&MW[0],*Ri=&MW[32];

for(int i=0;i<48;i++) //右明文扩展置换kzmw[i]=Ri[ei[i]-1]; //注意指针

if(MS==0) //DES加密过程

{

for(int lun=0;lun<16;lun++)

{

for(i=0;i<32;i++)

ss[i]=Ri[i];

for(i=0;i<48;i++) //右明文扩展置换kzmw[i]=Ri[ei[i]-1]; //注意指针for(i=0;i<48;i++)

keytem[i]=key[lun][i]; //轮密钥Xor(kzmw,keytem,48);

/*S盒置换*/

for(i=0;i<8;i++)

{

hang=kzmw[i*6]*2+kzmw[i*6+5];

lie =kzmw[i*6+1]*8+kzmw[i*6+2]*4+kzmw[i*6+3]*2+kzmw[i*6+4];

tmp[i*4+3]=sbox[i][(hang+1)*16+lie]%2;

tmp[i*4+2]=(sbox[i][(hang+1)*16+lie]/2)%2;

tmp[i*4+1]=(sbox[i][(hang+1)*16+lie]/4)%2;

tmp[i*4]=(sbox[i][(hang+1)*16+lie]/8)%2;

}

for(int i=0;i<32;i++) //P置换

Ri[i]=tmp[Pzh[i]-1];

Xor(Ri,Li,32); //异或

for(i=0;i<32;i++) //交换左右明文

{

Li[i]=ss[i];

}

}

for(i=0;i<32;i++)

{

tmp[i]=Li[i];

Li[i]=Ri[i];

Ri[i]=tmp[i];

}

for(i=0;i<64;i++)

PMW[i]=MW[fp[i]-1];

BitToByte(Out,PMW,64); //位到字节的转换

}

else //DES解密过程

{

for(int lun=15;lun>=0;lun--)

{

for(i=0;i<32;i++)

ss[i]=Ri[i];

for(int i=0;i<48;i++) //右明文扩展置换kzmw[i]=Ri[ei[i]-1]; //注意指针for(i=0;i<48;i++)

keytem[i]=key[lun][i]; //轮密钥Xor(kzmw,keytem,48);

/*S盒置换*/

for(i=0;i<8;i++)

{

hang=kzmw[i*6]*2+kzmw[i*6+5];

lie =kzmw[i*6+1]*8+kzmw[i*6+2]*4+kzmw[i*6+3]*2+kzmw[i*6+4];

tmp[i*4+3]=sbox[i][(hang+1)*16+lie]%2;

tmp[i*4+2]=(sbox[i][(hang+1)*16+lie]/2)%2;

tmp[i*4+1]=(sbox[i][(hang+1)*16+lie]/4)%2;

tmp[i*4]=(sbox[i][(hang+1)*16+lie]/8)%2;

}

for(i=0;i<32;i++) //P置换

Ri[i]=tmp[Pzh[i]-1];

Xor(Ri,Li,32); //异或

for(i=0;i<32;i++) //交换左右明文

{

Li[i]=ss[i];

}

}

for(i=0;i<32;i++)

{

tmp[i]=Li[i];

Li[i]=Ri[i];

Ri[i]=tmp[i];

}

for(i=0;i<64;i++)

PMW[i]=MW[fp[i]-1];

BitToByte(Out,PMW,64); //位到字节的转换

}

}

void main()

{

char Ki[8],jm[8],final[8];

int i0;

cout<<"请输入密钥(8字节):"<

for(i0=0;i0<8;i0++)

cin>>Ki[i0];

keyfc(Ki);

cout<<"请输入明文:"<

for(i0=0;i0<8;i0++)

cin>>jm[i0];

DES(final,jm,0);

cout<<"加密后:"<

for(i0=0;i0<8;i0++)

cout<

cout<

cout<<"解密后:"<

DES(jm,final,1); //解密for(i0=0;i0<8;i0++)

cout<

cout<

}

3.运行结果验证

1.加密字母:

2.加密汉字:

六、总结及展望

本次实验主要考察对DES的理解程度和编程熟练度。

实验的过程中遇到了相当多的问题,不会的就查阅资料,资料不懂就百度,请教老师,同学。这次实验虽然比较累,但是我和我的同伴们却乐在其中,学习虽苦,但劳动带来的快乐却无与伦比,这次实验收获颇丰,知识理论上的,体验上的,各方面的,最重要的是明白了团队合作的重要性。

七、参考资料

《信息安全基础》

《网络安全课程设计实验指导书》

百度查找相关知识点

网络安全协议课程设计-IPsec隧道协议的安全分析与改进

《网络安全协议》 课程设计 题目IPsec隧道协议的安全分析与改进班级 学号 姓名 指导老师 2015年 7 月 4 日

目录 一、概述 (2) 1.1课程设计的目的 (2) 1.2课程设计的内容 (2) 1.3课程设计的要求 (3) 二、问题分析 (3) 2.1系统需求 (3) 2.2 GRE协议分析 (3) 2.3 IPsec协议分析 (4) 三、协议漏洞 (5) 3.1协议漏洞解决措施 (5) 3.2协议漏洞解决详解 (5) 四、协议完善具体实现 (6) 4.1实现分析 (6) 4.2 GRE实现流程分析 (8) 4.3简单设备设置 (10) 五、案安全性分析 (11) 六、程设计心得、总结 (11) 七、参考文献 (12)

一、概述 网络如若想实现交流传输,必须以网络协议为载体进行。而网络协议(Network Protcol)是控制计算机在网络介质上进行信息交换的规则和约定。网络协议通常会被按OSI参考模型的层次进行划分。OSI参考模型是国际标准化组织制定的网络体系结构参考模型,提供各种网络互联的标准,共分七层:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,会话层、表示层和应用层往往被合并称为高层。当前的计算机网络的体系结构是以TCP/IP协议为主的Internet结构。伴随着网络的诞生近几年频繁出现的安全事故引起了各国计算机安全界的高度重视,计算机网络安全技术也因此出现了日新月异的变化。安全核心系统、VPN安全隧道、身份认证、网络底层数据加密和网络入侵主动监测等越来越高深复杂的安全技术极大地从不同层次加强了计算机网络的整体安全性。网络安全的实现首先需要网络协议的安全,但是网络协议都是人为写的,存在先天的不足与缺陷,以至于只能慢慢实践发现并给与补充。这里先谈一下VPN中的GRE协议。GRE(Generic Routing Encapsulation,通用路由封装)协议是由Cisco和Net-smiths等公司于1994年提交给IETF(Internet Engineering Task Force,网络工程工作小组)的,标号为RFC1701和RFC1702。GRE协议规定了如何用一种网络协议去封装另一种网络协议的方法,是一种最简单的隧道封装技术,它提供了将一种协议的报文在另一种协议组成的网络中传输的能力。GRE协议就是一种应用非常广泛的第三层VPN隧道协议。GRE隧道使用GRE协议封装原始数据报文,基于公共IP网络实现数据的透明传输。GRE隧道不能配置二层信息,但可以配置IP地址。本文从GRE协议的工作原理入手,从安全性角度出发,详细分析了GRE隧道协议的不足与缺陷,最后提出了相关的安全防护方案。 1.1课程设计的目的 详细分析IPsec隧道协议不支持对多播和广播的加密的不足,并针对其漏洞设计实施完善可行的策略。 1.2课程设计的内容 将GRE与IPsec结合使用,弥补IPsec不能保护组播数据的缺陷。因为GRE可以封装组播数据并在GRE隧道中传输,所以对于诸如路由协议、语音、视频等组播

DES算法实验报告

DES算法实验报告 姓名:学号:班级: 一、实验环境 1.硬件配置:处理器(英特尔Pentium双核E5400 @ 2.70GHZ 内存:2G) 2.使用软件: ⑴操作系统:Windows XP 专业版32位SP3(DirectX 9.0C) ⑵软件工具:Microsoft Visual C++ 6.0 二、实验涉及的相关概念或基本原理 1、加密原理 DES 使用一个 56 位的密钥以及附加的 8 位奇偶校验位,产生最大 64 位的分组大小。这是一个迭代的分组密码,使用称为 Feistel 的技术,其中将加密的文本块分成两半。使用子密钥对其中一半应用循环功能,然后将输出与另一半进行“异或”运算;接着交换这两半,这一过程会继续下去,但最后一个循环不交换。DES 使用 16 个循环,使用异或,置换,代换,移位操作四种基本运算。 三、实验内容 1、关键代码 ⑴子密钥产生

⑵F函数以及加密16轮迭代 2、DES加密算法的描述及流程图 ⑴子密钥产生 在DES算法中,每一轮迭代都要使用一个子密钥,子密钥是从用户输入的初始密钥产生的。K是长度为64位的比特串,其中56位是密钥,8位是奇偶校验位,分布在8,16,24,32,40,48,56,64比特位上,可在8位中检查单个错误。在密钥编排计算中只用56位,不包括这8位。子密钥生成大致分为:置换选择1(PC-1)、循环左移、置换选择2(PC-2)等变换,分别产生16个子密钥。 DES解密算法与加密算法是相同的,只是子密钥的使用次序相反。 ⑵DES加密算法 DES密码算法采用Feistel密码的S-P网络结构,其特点是:加密和解密使用同一算法、

网络安全课程设计

上海应用技术学院课程设计任务书 指导教师(签名):舒明磊教研室主任(签名):荣祺2014年7 月1 日2014年7 月1 日

1. 课程设计目的和要求 1.1目的 本课程设计是计算机科学与技术专业、网络工程专业重要的实践性环节之一,是在学生学习完《密码学与网络安全技术》课程后进行的一次全面的综合练习。通过课程设计,使学生熟练掌握计算机网络安全知识的基本概念和原理,熟悉了解网络安全的基本技术和攻防方法,培养学生将专业理论知识和工程技术应用有机结合的高级应用能力,使学生具备从事网络管理维护和信息安全管理方向的职业的基本素质和技能,提高设计文档的撰写能力。 1.2要求 (1) 分析课程设计题目的要求; (2) 要求在设计的过程中,完成清晰的功能设计; (3) 要求系统架构合理,模块划分清晰; (4) 对于程序设计课题,应编写程序代码,调试程序使其能正确运行;对于操作应用课 题,应有清楚明确的执行步骤和过程; (5) 设计完成后提交课程设计报告(按学校要求装订)、报告的电子文档和程序源代码 文件。 2、课程设计任务内容 设计主要内容如下 (1)根据任务要求,选择了T1、T2、T3、T4、T5和T6题目。其中T1要求完成敏感信 息搜集;T2要求完成加解密编程;T3要求完成SQL Server安全设置;T4要求完成 FTP密码与OE账户嗅探;T5要求完成批处理脚本编写与验证蠕虫病毒;T6要求 完成FAT32文件恢复。 (2)最终提供的主操作界面应该为便于操作和使用,文档结构清晰简洁,内容完整准确。 (3)最后提交的课程设计成果包括: a)课程设计报告打印稿; b)课程设计报告电子稿; c)源程序文件; d)可执行文件。 3、详细设计 3.1敏感信息搜集 3.2加解密编程 3.2.1、利用Bouncy Castle API对数据进行Encoding and Decoding 1.首先编写DESEncrypto.java文件 在D盘根目录下建立一个DESEncrypto.txt文本文件,接下来把后缀名改成DESEncrypto.java 如下图所示:

网络安全课程设计报告书

网络安全课程设计 --------------------企业网络搭建 组长: 成员: 成员:

项目规划目录 1.企业网络现状及设计目标(需求分析) 1.1概述 1.2实际网络的特点及目前企业网络优缺点分析 1.3设计目标 2. 要解决的几个关键问题 2.1研究设计中要解决的问题 2.2针对现在网络中出现的网络安全问题,本课题所作的改善设计 3. 系统设计关键技术 3.1.目标具体实现中采用的关键技术及分析 3.2设计实现的策略和途径描述 3.3 设计模型及系统结构(新的拓扑图) 4. 系统实现技术 概述 4.1物理设备安全 4.2 VPN技术 4.3 访问控制列表与QOS技术 4.4服务器的安全

1.1概述 中国国内目前的企业需要的网络安全产品不仅仅是简单的安装,更重要的是要有针对复杂网络应用的一体化解决方案,如:网络安全、病毒检测、网站过滤等等。其着眼点在于:国内外领先的厂商产品;具备处理突发事件的能力;能够实时监控并易于管理;提供安全策略配置定制;是用户能够很容易地完善自身安全体系。 然而,有网络的地方就有安全的问题。过去的网络大多是封闭式的,因而比较容易确保其安全性,简单的安全性设备就足以承担其任务。然而,当今的网络已经发生了变化,确保网络的安全性和可用性已经成为更加复杂而且必需的任务。用户每一次连接到网络上,原有的安全状况就会发生变化。所以,很多企业频繁地成为网络犯罪的牺牲品。因为当今网络业务的复杂性,依靠早期的简单安全设备已经对这些安全问题无能为力了。 网络攻击在迅速地增多 网络攻击通常利用网络某些内在特点,进行非授权的访问、窃取密码、拒绝服务等等。 考虑到业务的损失和生产效率的下降,以及排除故障和修复损坏设备所导致的额外

AES密码学课程设计(C语言实现)

成都信息工程学院课程设计报告 AES加密解密软件的实现 课程名称:应用密码算法程序设计 学生姓名:樊培 学生学号:2010121058 专业班级:信息对抗技术101 任课教师:陈俊 2012 年6月7日

课程设计成绩评价表

目录 1、选题背景 (4) 2、设计的目标 (4) 2.1基本目标: (4) 2.2较高目标: (5) 3、功能需求分析 (5) 4、模块划分 (6) 4.1、密钥调度 (6) 4.2、加密 (8) 4.2.1、字节代替(SubBytes) (8) 4.2.2、行移位(ShiftRows) (10) 4.2.3、列混合(MixColumn) (11) 4.2.4、轮密钥加(AddRoundKey) (13) 4.2.5、加密主函数 (14) 4.3、解密 (16) 4.3.1、逆字节替代(InvSubBytes) (16) 4.3.2、逆行移位(InvShiftRows) (17) 4.3.3、逆列混合(InvMixCloumns) (17) 4.3.4、轮密钥加(AddRoundKey) (18) 4.3.5、解密主函数 (18) 5.测试报告 (20) 5.1主界面 (20) 5.2测试键盘输入明文和密钥加密 (20) 5.3测试键盘输入密文和密钥加密 (21) 5.3测试文件输入明文和密钥加密 (22) 5.4测试文件输入密文和密钥加密 (22) 5.5软件说明 (23) 6.课程设计报告总结 (23) 7.参考文献 (24)

1、选题背景 高级加密标准(Advanced Encryption Standard,AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。该算法为比利时密码学家Joan Daemen和Vincent Rijmen所设计,结合两位作者的名字,以Rijndael 之命名之,投稿高级加密标准的甄选流程。(Rijndael的发音近于 "Rhine doll") 严格地说,AES和Rijndael加密法并不完全一样(虽然在实际应用中二者可以互换),因为Rijndael加密法可以支援更大范围的区块和密钥长度:AES的区块长度固定为128 位元,密钥长度则可以是128,192或256位元;而Rijndael使用的密钥和区块长度可以是32位元的整数倍,以128位元为下限,256位元为上限。加密过程中使用的密钥是由Rijndael 密钥生成方案产生。大多数AES计算是在一个特别的有限域完成的。 截至2006年,针对AES唯一的成功攻击是旁道攻击 旁道攻击不攻击密码本身,而是攻击那些实作于不安全系统(会在不经意间泄漏资讯)上的加密系统。2005年4月,D.J. Bernstein公布了一种缓存时序攻击法,他以此破解了一个装载OpenSSL AES加密系统的客户服务器[6]。为了设计使该服务器公布所有的时序资讯,攻击算法使用了2亿多条筛选过的明码。有人认为[谁?],对于需要多个跳跃的国际互联网而言,这样的攻击方法并不实用[7]。 Bruce Schneier称此攻击为“好的时序攻击法”[8]。2005年10月,Eran Tromer和另外两个研究员发表了一篇论文,展示了数种针对AES的缓存时序攻击法。其中一种攻击法只需要800个写入动作,费时65毫秒,就能得到一把完整的AES密钥。但攻击者必须在执行加密的系统上拥有执行程式的权限,方能以此法破解该密码系统。 虽然高级加密标准也有不足的一面,但是,它仍是一个相对新的协议。因此,安全研究人员还没有那么多的时间对这种加密方法进行破解试验。我们可能会随时发现一种全新的攻击手段会攻破这种高级加密标准。至少在理论上存在这种可能性。 2、设计的目标 2.1基本目标: (1)在深入理解AES加密/解密算法理论的基础上,能够设计一个AES加密/解密软件系统,采用控制台模式,使用VS2010进行开发,所用语言为C语言进行编程,实现加密解密; (2)能够完成只有一个明文分组的加解密,明文和密钥是ASCII码,长度都为16个字符(也就是固定明文和密钥为128比特),输入明文和密钥,输出密文,进行加密后,能够进

校园网络安全课程设计

1 校园网络安全威胁 1.1校园网简介 珠海大学的校园网承载着学校的教务、行政、教学、图书资料、对外联络等方面事的务处理,它的安全状况影响着学校的教学、教务、行政管理、对外交流等活动。在珠海大学网络建成的初期,安全问题可能还不突出,随着应用的深入,校园网上各种数据会急剧增加。潜在的安全缺陷和漏洞、恶意的攻击等造成的问题开始频繁出现。 1.2网络攻击及缺陷 校园网受到的攻击以及安全方面的缺陷主要有: 1.有害信息的传播 校园网与Internet融为一体,师生都可以通过校园网络在自己的机器上进入Internet。目前Internet上充斥着各种信息。有些有毒的信息违反人类的道德标准和有关法律法规,对师生的危害非常大。如果安全措施不好,会让这些信息在校园内传播。 2.病毒破坏 通过网络传播的病毒无论实在传播速度、破坏性和传播范围等方面都是单机病毒所不能比拟的。特别是在学校接入广域网后,为外界病毒进入学校大开方便之门,下载的程序和电子邮件都有可能带有病毒,而且网络病毒的变异速度加快,攻击机理复杂,必须不断更新病毒库。 3.恶意入侵 学校涉及的机密不是很多,来自外部的非法访问的可能性要少一些,关键是内部的非法访问。一些学生可能会通过入侵的手段破坏教务系统,扰乱教学工作秩序。 4.恶意破坏 对计算机硬件系统和软件系统的恶意破坏,这包括对网络设备和网络系统两

个方面的破坏。网络设备包括服务器、交换机、集线器、路由器、通信媒体、工作站等,它们分布在整个校园内,不可能24小时专人看管,故意的或非故意的某些破坏,会造成校园网络全部或部分瘫痪。 另一方面是利用黑客技术对校园网络系统进行破坏。表现在以下几个方面:对学校网站的主页面进行修改,破坏学校的形象;向服务器发送大量信息使整个网络瘫痪;利用学校的邮件服务器转发各种非法信息等。 5.口令入侵 通过网络监听非法得到用户口令,或使用口令的穷举攻击非法获得口令入侵,破坏网络。 2 校园网网络拓扑结构 珠海大学的校园网由四个物理区域组成:办公大楼、图书馆大楼、实验楼、教学楼。在整个网络中,各信息点按功能又划分为行政办公、实验教室、普通教室、中心管理机房、电子阅览室等不同区域,各区域与互联网连接的目的也是不一样的,对特定区域,与互联网连接将受到一定限制。校园网采用千兆到楼,百兆到桌面的全交换网络系统,覆盖到实验楼、行政楼、图书馆、广播楼、教学楼,共计光纤链路10余条,交换机80余台,网络信息点2800多个。整个系统包括一批高性能网络交换机、路由器、防火墙、入侵检测、存储、备份和安全认证软件、网络版杀毒软件。 当前在各种网络系统的建设中使用最多的是星型拓扑结构,虽然星型拓扑结构的网络在布线和网络设备的花费多一些,不过目前各种硬件设备已经非常便宜了,这种花费是可以承受的。因而它的优点也是十分突出的,主要是当网络中某个节点出现故障时不会影响整个网络的运行,这使得网络从总体上可以提供高度的可靠性和沉佘性,这个性能十分适合校园网这种应用环境,也是校园网的建设中必须要求做到的。 根据校园网的需求分析及建设目标,本设计方案采用交换式千兆以太网作为主干,百兆交换到桌面。网络拓扑采用星型树结构,网络中心的交换机使用堆叠方式连接。

网络安全课设Kerberos实验报告

附件《网络安全课程设计》实验报告格式 2012-2013学年第2学期 《网络安全课程设计》实验报告3 实验名称:实验18 安全协议之Kerberos协议 完成时间: 2014-6-4(练习三) 姓名:石心刚学号:110342124 姓名:何伊林学号:110342106 姓名:白冠军学号:110342101 姓名:尹新来学号:110342136 姓名:饶明艺学号:110342122 指导教师:崔鸿班级:110342A

实验目的 1.了解身份认证的原理及其重要意义 2.学习Kerberos身份认证全过程 3.学会在Linux下配置Kerberos身份认证系统 系统环境 Linux 网络环境 交换网络结构 实验工具 krb5 v1.6.2 实验步骤 本练习主机A~F为一组。实验角色说明如下: 首先使用“快照X”恢复Linux系统环境。 一.配置主KDC 在此过程中,将使用以下配置参数: 领域名称= https://www.wendangku.net/doc/452419741.html,LAB DNS 域名= https://www.wendangku.net/doc/452419741.html,lab 主KDC = https://www.wendangku.net/doc/452419741.html,lab admin 主体= admin/admin admin主体密码:admin 数据库管理密码:jlcss (1)首先为主KDC改名,编辑/etc/sysconfig/network文件,把HOSTNAME改为kdc1,保存后重启系统。 (2)配置/etc/resolv.conf文件使本机找到DNS服务器,修改内容如下。 其中domain后面用来标识DNS域名,nameserver后面则用来标识DNS服务器的IP地址。在本实验中我们就以“应用服务器”作为DNS服务器,它的全限制域名是https://www.wendangku.net/doc/452419741.html,lab,IP可以根据实验情况进行调整。 (3)主KDC配置时钟同步服务ntpd。Kerberos服务对于时间同步的要求是很高的,

DES算法Java实现源代码

package des; /** * 加密过程: * 1.初始置换IP:将明文顺序打乱重新排列,置换输出为64位。 * 2.将置换输出的64位明文分成左右凉拌,左一半为L0,右一半称为R0,各32位。 * 3。计算函数的16轮迭代。 * a)第一轮加密迭代:左半边输入L0,右半边输入R0:由轮函数f实现子密钥K1对R0的加密, * 结果为32位数据组f(R0,K1), * b)第二轮加密迭代:左半边输入L1=R0,右半边输入R1=L0⊕f(R0,K1),由轮函数f实现子密钥 * K2对R1的加密,结果为32位数据组f(R1,K2),f(R1,K2)与L1模2相加,得到一个32为数据组L1⊕f(R1,K2). * c)第3到16轮迭代分别用密钥K3,K4……K16进行。4.再经过逆初始置换IP-1,将数据打乱重排,生成64位密文。 * * 子密钥生成过程: * 1.将64位的密钥经过PC-1置换生成56位密钥。 * 2.将56位的密钥分成左右两部分,分别进行移位操作(一共进行16轮),产生16个56位长度的子密钥。 * 3.将16个56位的子密钥分别进行PC-2置换生成16个48位的子密钥。 * * 轮函数f的工作过程: * 1.在第i次加密迭代过程中,扩展置换E对32位的Ri-1的各位通过置换表置换为48位的输出。 * 2.将该48位的输出与子密钥Ki进行异或操作,运算结果经过S盒代换运算,得到一个32位比特的输出。 * 3。该32位比特输出再经过P置换表进行P运算,将其各位打乱重排,生成32位的输出。 * * author Ouyang * */ public class Des { int[] byteKey; public Des(int[] byteKey) { this.byteKey = byteKey; } private static final int[] IP = { 58, 50, 42, 34, 26, 18, 10, 2, 60, 52, 44, 36, 28, 20, 12, 4, 62, 54, 46, 38, 30, 22, 14, 6, 64, 56, 48,

网络安全课程设计报告

中原工学院计算机学院《网络安全程序》课程设计报告 题目:基于des加密的聊天程序 班级:网络124班

目录 第1章绪论____________________________________________________ 3 1.1 des加密背景______________________________________________ 3 1.2 聊天程序设计背景 _________________________________________ 4第2章加密原理________________________________________________ 5 2.1 des简介__________________________________________________ 5 2.2 des加密原理______________________________________________ 5 2.3 des加密过程______________________________________________ 7第3章聊天程序设计____________________________________________ 8 3.1 TCP/IP协议_______________________________________________ 8 3.2 客户机/服务器模式 ________________________________________ 8 3.3 Socket ___________________________________________________ 9第4章系统设计_______________________________________________ 11 4.1 开发语言及环境 __________________________________________ 11 4.2 需求分析 ________________________________________________ 11 4.2.1 功能需求分析__________________________________________ 11 4.2.2 数据需求分析__________________________________________ 11 4.2.3 性能需求分析__________________________________________ 12 4.2.4 运行需求分析__________________________________________ 12 4.3 程序流程图 ______________________________________________ 13 4.4 模块设计 ________________________________________________ 14 4.4.1 服务器________________________________________________ 14 4.4.2 客户端________________________________________________ 15 第5章程序测试_______________________________________________ 17 5.1 运行结果________________________________________________ 17 第6章总结___________________________________________________ 21参考文献______________________________________________________ 21

网络与信息安全技术课程设计指导

潍坊科技学院 网络安全技术及应用课程设计指导书 2018年10月9日

一.课程设计目的 本实践环节是网络安全类专业重要的必修实践课程,主要要求学生掌握网络安全相关的原理和技术以及在网络安全实践中的应用。本课程设计的目的如下。 1)培养学生掌握文献检索、资料查询及运用现代网络技术获取网络安全相关知识和网络的基本方法; 2)使学生在真正理解和掌握网络安全的相关理论知识基础上,动手编写安全程序,通过系统和网络的安全性设计,加密算法、计算机病毒、恶意 代码的分析与设计等实践锻炼,解决一些实际网络安全应用问题,同时 了解本专业的前沿发展现状和趋势; 3)使学生具备设计和实施网络安全相关实验的能力以及相应的程序设计能力,具备对实验结果进行分析,进而进行安全设计、分析、配置和管理 的能力。 二.课程设计题目 (一)定题部分 任选下列一个项目进行,查阅相关文献、了解相关的系统,要求完成系统需求规约文档、系统分析模型文档、系统设计模型文档、系统测试设计文档、系统编码和测试报告。 以下题目任选,但是要达到工作量和代码量的要求,如果不能达到,可以融合几部分的内容。一些功能如果有其他的方法实现,也可以不按照指导书的要求。此外,还可以对常用的安全软件的功能延伸和改进。自由选题不能设计一些不良程序,比如游戏类,不过可以设计监控,限制玩游戏的程序。 1、局域网网络侦听和数据包截取工具 文档要求 系统分析,包括问题的描述、需求确定、系统要完成的主要功能、解决的实际问题等 系统设计,包括系统的逻辑模型、模块划分、处理过程等 系统实现,按照系统设计的结构分模块实现,要求给出程序的功能说明 程序实现要求

des课程设计

DES加解密算法的实现 一、DES算法的概述 DES(Data Encryption Standard)是由美国IBM公司于20世纪70年代中期的一个密码算(LUCIFER)发展而来,在1977年1月15日,美国国家标准局正式公布实施,并得到了ISO的认可,在过去的20多年时间里,DES被广泛应用于美国联邦和各种商业信息的保密工作中,经受住了各种密码分析和攻击,有很好的安全性。然而,目前DES算法已经被更为安全的Rijndael算法取代,但是DES 加密算法还没有被彻底的破解掉,仍是目前使用最为普遍的对称密码算法。所以对DES的研究还有很大价值,在国内DES算法在POS、ATM、磁卡及智能卡(IC卡)、加油站、高速公路收费站等领域被广泛应用,以此来实现关键的数据保密,如信用卡持卡人的PIN码加密传输,IC卡与POS机之间的双向认证、金融交易数据包的MAC 校验等,均用到DES算法。 DES算法是一种采用传统的代替和置换操作加密的分组密码,明文以64比特为分组,密钥长度为64比特,有效密钥长度是56比特,其中加密密钥有8比特是奇偶校验,DES的加密和解密用的是同一算法,它的安全性依赖于所用的密钥。它首先把需要加密的明文划分为每64比特的二进制的数据块,用56比特有效密钥对64比特二进制数据块进行加密,每次加密可对64比特的明文输入进行16 轮的替换和移位后,输出完全不同的64比特密文数据。由于DES 算法仅使用最大为64比特的标准算法和逻辑运算,运算速度快,密

钥容易产生,适合于在大多数计算机上用软件快速实现,同样也适合于在专用芯片上实现。 二、DES算法描述 DES算法的加密过程首先对明文分组进行操作,需要加密的明文分组固定为64比特的块。图2-1是DES加密算法的加密流程。图2-2是密钥扩展处理过程。

计算机网络安全课程标准

计算机网络安全课程标 准 集团标准化小组:[VVOPPT-JOPP28-JPPTL98-LOPPNN]

《计算机网络安全》课程标准 1.课程定位与设计思路 1.1课程定位 《计算机网络安全》是计算机相关专业针对中小型网络管理岗位能力进行培养的一门核心课程。本课程构建于计算机网络技术与应用、网络设备配置与管理、网络服务架构和实现等课程基础上,通过引入游戏教学,从踩点扫描、入侵系统、种植后门、清除日志等工作过程开展教学,主要培养学生综合应用能力,能学以致用,完成一个企业网络安全的维护,同时也培养其团队合作意识、创新精神、职业素质,使之成为计算机网络安全技术方面的应用型专门技术人员。本课程在第5学期开设,54课时。 1.2设计思路 1.2.1本课程标准设计的总体思路 按照“由与网络技术领域职业相关的行动体系中的全部行动领域,按教学要求归纳形成学习领域,具体化后设计学习情境”的整体思路,进行课程开发。具体要求如下:(1)对实际工作岗位的工作任务进行分析; (2)按职业资格标准进行工作任务归纳; (3)按照从简单对复杂、单一到综合、低级到高级的认知规律进行学习性任务归纳; (4)采用资讯、决策、计划、实施、检查、评价的六步法进行工作过程系统化课程方案的构建; (5)课程方案的具体化,制定课程标准,完成学习情境和学习单元的设计。 1.2.2学习情境设计的基本依据 该课程是以计算机网络技术专业就业面向网络管理、网络应用岗位工作任务所需的相关专业知识与必要技能为依据设计的。遵循从简单对复杂、单一到综合、低级到高级的认知规律路径选

择以网络安全基础、网络攻击、木马和病毒、系统安全、防火墙和入侵检测作为学习情境,各学习情境的教学过程以行动为导向,以学生为主体,基于工作过程来完成。” 1.2.3学习子情境设计的逻辑线索 该课程先通过网络安全基础情境了解信息安全在行业中的各个标准,以及信息安全的现有社会环境基础。再通过网络攻击、木马和病毒等情境对各类的入侵手段进行学习领会,在了解完常见的入侵手段之后,对服务器操作系统安全的加固、以及通过对防火墙和入侵检测技术的应用,达到有针对的部署企业网络安全。根据这一思路主体,整个学习情境分为:网络安全基础、网络攻击、木马和病毒、系统安全、防火墙和入侵检测五个情境。 2.课程目标 2.1知识目标 (1)掌握计算机网络的基本概念以及网络的拓扑结构 (2)理解协议分析的基本原理和方法 (3)掌握网络扫描和网络监听的原理和方法 (4)掌握密码攻击的技术 (5)理解系统漏洞攻击的方法 (6)了解木马的原理,掌握木马的使用和防范措施 (7)掌握计算机及网络系统及WEB网站的安全性问题 (8)掌握邮件加密的基本技术 (9)了解计算机病毒的相关知识和相关技术 (10)熟悉防火墙和入侵检测 2.2能力目标 学生通过该门课程的学习,能对一定规模的企业网络进行网络安全的渗透检测以及网络整体运行安全的评估,会熟练使用各类扫描、防黑软件等预防工具对存在安全隐患的网络进行整改。具备一定的实施企业网络安全的软、硬件部署能力。 2.2.1专业能力 (1)能按项目需求进行中小型网络安全的规划与设计,设备选型,及资金预算 (2)能按项目需求规划和设计具有一定可行性的中小型网络安全建设方案 (3)能熟练完成网络安全设备的连接和网络配置 (4)能熟练地对该中小型网络安全项目进行测试,并对常见的故障进行排查 2.2.2社会能力: (1)具有良好的职业道德和敬业精神 (2)具有较强的团队合作的意识

DES加密解密课程设计报告

D E S加密解密课程设计报 告 Prepared on 22 November 2020

成都信息工程学院课程设计报告 DES算法加密与解密的设计与实现课程名称:密码算法程序设计 学生姓名: 学生学号: 专业班级: 任课教师: XX年 XX 月 XX 日

目录

1背景 DES算法概述 DES(Data Encryption Standard)是由美国IBM公司于20世纪70年代中期的一个密码算(LUCIFER)发展而来,在1977年1月15日,美国国家标准局正式公布实施,并得到了ISO的认可,在过去的20多年时间里,DES被广泛应用于美国联邦和各种商业信息的保密工作中,经受住了各种密码分析和攻击,有很好的安全性。然而,目前DES算法已经被更为安全的Rijndael算法取代,但是DES加密算法还没有被彻底的破解掉,仍是目前使用最为普遍的对称密码算法。所以对DES的研究还有很大价值,在国内DES算法在POS、ATM、磁卡及智能卡(IC卡)、加油站、高速公路收费站等领域被广泛应用,以此来实现关键的数据保密,如信用卡持卡人的PIN 码加密传输,IC卡与POS机之间的双向认证、金融交易数据包的MAC校验等,均用到DES算法。 DES算法是一种采用传统的代替和置换操作加密的分组密码,明文以64比特为分组,密钥长度为64比特,有效密钥长度是56比特,其中加密密钥有8比特是奇偶校验,DES的加密和解密用的是同一算法,它的安全性依赖于所用的密钥。它首先把需要加密的明文划分为每64比特的二进制的数据块,用56比特有效密钥对64比特二进制数据块进行加密,每次加密可对64比特的明文输入进行16轮的替换和移位后,输出完全不同的64比特密文数据。由于DES算法仅使用最大为64比特的标准算法和逻辑运算,运算速

校园网络安全设计方案

校园网络安全设计方案 一、安全需求 1.1.1网络现状 随着信息技术的不断发展和网络信息的海量增加,校园网的安全形势日益严峻,目前校园网安全防护体系还存在一些问题,主要体现在:网络的安全防御能力较低,受到病毒、黑客的影响较大,对移动存储介质的上网监测手段不足,缺少综合、高效的网络安全防护和监控手段,削弱了网络应用的可靠性。因此,急需建立一套多层次的安全管理体系,加强校园网的安全防护和监控能力,为校园信息化建设奠定更加良好的网络安全基础。 经调查,现有校园网络拓扑图如下:

1.1.2应用和信息点

1.2.现有安全技术 1.操作系统和应用软件自身的身份认证功能,实现访问限制。2.定期对重要数据进行备份数据备份。

3.每台校园网电脑安装有防毒杀毒软件。 1.3.安全需求 1.构建涵盖校园网所有入网设备的病毒立体防御体系。 计算机终端防病毒软件能及时有效地发现、抵御病毒的攻击和彻底清除病毒,通过计算机终端防病毒软件实现统一的安装、统一的管理和病毒库的更新。 2. 建立全天候监控的网络信息入侵检测体系 在校园网关键部位安装网络入侵检测系统,实时对网络和信息系统访问的异常行为进行监测和报警。 3. 建立高效可靠的内网安全管理体系 只有解决网络内部的安全问题,才可以排除网络中最大的安全隐患,内网安全管理体系可以从技术层面帮助网管人员处理好繁杂的客户端问题。 4. 建立虚拟专用网(VPN)和专用通道 使用VPN网关设备和相关技术手段,对机密性要求较高的用户建立虚拟专用网。 二.安全设计 1.1设计原则 根据防范安全攻击的安全需求、需要达到的安全目标、对应安全机制所需的安全服务等因素,参照SSE-CMM("系统安全工程能力成熟模型")和ISO17799(信息安全管理标

网络安全技术课程设计报告

信息工程系 课程设计报告书 2015-2016学年第2学期 系部:信息工程系 专业:计算机网络专业 班级:14计算机网络1班 课程名称:网络安全技术 姓名学号: 起迄日期: 6月10日-6月24日 课程设计地点:实验楼C211 指导教师:庄晓华 下达任务书日期: 2015 年06月16日

一、内容要求 独立设计一个小型网络的安全方案,采用的安全技术可以包括以下几种:加密技术、认证技术、VPN技术、防火墙技术、防病毒系统等局域网核心服务功能。其中必须用Packet Tracer实现的功能为防火墙技术的配置与管理或网络安全隔离。 二、评分标准 (一)网络安全方案评分标准(40分) 网络安全方案及测试报告(40分) 1、网络安全方案2000字(30分) 1)相关概念定义准确。(10分) 2)安全方案叙述完整清晰。(10分) 3)设计合理,符合实际应用需求。(10分) 2、测试报告(10分) 确定测试结果是否符合设计要求,完成测试总结报告。 (二)网络设备系统配置评分标准(60 分) 1、系统设计(10分) 1、在Packet Tracer中实现,要求:网络设备选型合理,(5分) 2、网络设备连接,要求:正确使用连接介质(5分)。 2、网络设备配置(40分) 1、PC机、服务器配置,要求:能作必要TCP/IP属性设置(10分) 2、网络设备接口配置,要求:正确配置端口,实现网络连通。(10分) 3、网络安全配置,要求:实现设定的网络安全防护(20分) 3、安全防护测试(10分) 使用正确测试方法,步骤完整.(10分) 三、设计要求: 1、所有PC机的默认网关地址中第四个数为学生学号,如“a.b.c.学号” (注意:PC机的地址不能与此默认网关地址冲突)。 2、所有网络设备、PC机的名称以学生姓名开头,如“azgSW1”。 四、设计成果形式及要求: 1、提交网络安全方案(.doc文档),文件命名格式:学号姓名.doc, 如01安志国.doc。 2、提交Packet Tracer文档(.pkt文档),文件命名格式:学号姓名.pkt, 如01安志国.pkt。

DES算法及其程序实现

DES算法及其程序实现 一.D ES算法概述 ①DES算法为密码体制中的对称密码体制,又被成为美国数据加密标准,是1972年美国IBM公司研制的对称密码体制加密算法。明文按64位进行分组,密钥长64位,密钥事实上是56位参与DES运算(第8、16、24、32、40、48、56、64位是校验位,使得每个密钥都有奇数个1)分组后的明文组和56位的密钥按位替代或交换的方法形成密文组的加密方法。 ②DES算法的特点:分组比较短、密钥太短、密码生命周期短、运算速度较慢。 ③DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位,整个算法的主流程图如下: 二.D ES算法的编程实现 #include #include using namespace std;

const static char ip[] = { //IP置换 58, 50, 42, 34, 26, 18, 10, 2, 60, 52, 44, 36, 28, 20, 12, 4, 62, 54, 46, 38, 30, 22, 14, 6, 64, 56, 48, 40, 32, 24, 16, 8, 57, 49, 41, 33, 25, 17, 9, 1, 59, 51, 43, 35, 27, 19, 11, 3, 61, 53, 45, 37, 29, 21, 13, 5, 63, 55, 47, 39, 31, 23, 15, 7 }; const static char fp[] = { //最终置换 40, 8, 48, 16, 56, 24, 64, 32, 39, 7, 47, 15, 55, 23, 63, 31, 38, 6, 46, 14, 54, 22, 62, 30, 37, 5, 45, 13, 53, 21, 61, 29, 36, 4, 44, 12, 52, 20, 60, 28, 35, 3, 43, 11, 51, 19, 59, 27, 34, 2, 42, 10, 50, 18, 58, 26, 33, 1, 41, 9, 49, 17, 57, 25 }; const static char sbox[8][64] = { //s_box /* S1 */ 14, 4, 13, 1, 2, 15, 11, 8, 3, 10, 6, 12, 5, 9, 0, 7, 0, 15, 7, 4, 14, 2, 13, 1, 10, 6, 12, 11, 9, 5, 3, 8, 4, 1, 14, 8, 13, 6, 2, 11, 15, 12, 9, 7, 3, 10, 5, 0, 15, 12, 8, 2, 4, 9, 1, 7, 5, 11, 3, 14, 10, 0, 6, 13, /* S2 */ 15, 1, 8, 14, 6, 11, 3, 4, 9, 7, 2, 13, 12, 0, 5, 10, 3, 13, 4, 7, 15, 2, 8, 14, 12, 0, 1, 10, 6, 9, 11, 5, 0, 14, 7, 11, 10, 4, 13, 1, 5, 8, 12, 6, 9, 3, 2, 15, 13, 8, 10, 1, 3, 15, 4, 2, 11, 6, 7, 12, 0, 5, 14, 9, /* S3 */ 10, 0, 9, 14, 6, 3, 15, 5, 1, 13, 12, 7, 11, 4, 2, 8, 13, 7, 0, 9, 3, 4, 6, 10, 2, 8, 5, 14, 12, 11, 15, 1, 13, 6, 4, 9, 8, 15, 3, 0, 11, 1, 2, 12, 5, 10, 14, 7, 1, 10, 13, 0, 6, 9, 8, 7, 4, 15, 14, 3, 11, 5, 2, 12, /* S4 */ 7, 13, 14, 3, 0, 6, 9, 10, 1, 2, 8, 5, 11, 12, 4, 15, 13, 8, 11, 5, 6, 15, 0, 3, 4, 7, 2, 12, 1, 10, 14, 9, 10, 6, 9, 0, 12, 11, 7, 13, 15, 1, 3, 14, 5, 2, 8, 4, 3, 15, 0, 6, 10, 1, 13, 8, 9, 4, 5, 11, 12, 7, 2, 14,

网络安全课程设计要求

计算机网络安全技术课程设计工作安排依据教学计划要求,2010~2011学年第二学期,计0841、0842、0953-0954 网络方向学生完成《计算机网络安全技术》课程设计,具体内容如下: 1.教学目的 计算机网络安全技术课程是本科计算机专业网络方向的必修专业课程。它的任务是:通过本课程的教学,使学生具备从事网络信息安全工作的基本知识和基本技能,掌握黑客攻击与防御的基本技巧,并能根据现代计算机安全事业的发展进行继续学习,为计算机安全领域培养高素质的劳动者。 通过对本次实践环节的课程设计,使学生掌握网络安全的基本理论、技术和方法,熟练掌握主要的网络攻击与防御技术。 课程设计应达到以下教学目的: 1)掌握对称加密算法软件设计的基本内容和设计方法,并能培养进行规范化软件设计能力; 2)编程设计与实现常用的网络攻防工具; 3)掌握操作系统的常用的安全策略实现系统安全控制与防护; 4)采用一种或多种网络安全技术的方法与手段实现应用设计。 二、课程设计内容及学时分配 本课程为实践性教学环节,以学生在实验室做实验为主,同时辅以实验理论的讲授和教师实际演示。具体安排如下。 1.实验室讲授和演示:(半天) 理解计算机网络安全技术课程设计的目的、内容、任务和要求,演示基本网络攻防过程,以及安全防御的基本方法。 2.图书馆查找资料:(半天) 3.课堂实验:(其余时间) 主要以学生独立做课程设计为主,指导教师应在实验室及时指导和纠正错

误,同时对已部分完成实验的同学进行检查。 3.设计内容参考 1)计算机网络安全现状分析; 2)加密技术在网络安全中的应用; 3)网络操作系统的安全访问策略研究; 4)PGP研究、实现与应用; 5)SSL在网络协议传输中的应用; 6)主流攻击技术分析; 7)木马的植入方法及防范措施的研究; 8)嗅探器技术在网络安全中的应用。 4.设计要求 1)课程设计题目选取须符合课程设计目的要求; 2)题目可以自行选定; 3)课程设计提交论文,要求:不少于20页(A4纸打印); 7)课程设计分散进行。 4.课程设计计划安排 1)指导教师 刘君玲、王延松、戴红、马玉萍 2)时间 2010-2011学年第二学期第十七周至第十九周 3)地点 新实验楼423室 5、成绩评定

相关文档
相关文档 最新文档