《信息安全工程实践二》实践报告。
东北大学软件学院。
一、程序实践概述。
1、题目名称:linux操作系统及其相关命令,linux编程基础。
linux程序设计基础。
2、时间进度:
12学时。3、开发环境:
ubantu
二、问题分析。
1、功能说明:
熟练掌握如下linux命令。
系统信息命令:who,w,du,du,df等。
文件操作命令:touch,cp,mv,rm,find,grep,cat,more,sort等。
目录操作命令:ls,dir,mkdir,rmdir,cd
进程操作命令:ps,top,cal,last,whereis,date
网络操作命令:ping,write,telnet,ftp,talk
vi命令。编程实现快速排序算法;
实现文本文件拷贝函数copy(f_source, f_target);即实现如下功能:
copy f1 f2
以上程序执行后当前目录会形成一个新的文件f2,且其内容与f1完全一致。
编写一个程序,要求:输入n个学生的学号和成绩,并保存在文本文件中,对学生成绩进行排序并把排序后的结果输出到文件中,同时在屏幕上输出高于平均成绩的学生的学号和成绩。
编写一个程序找出串str1和串str2的所有最长公共子串。
从文件中读出整数,将其中不同整数及其出现次数,按整数由大到小的顺序输出到文件中。要求:采用2叉有序树做为存储结构。(选作)
2、解决方案:
利用ppt中所提供的相关函数使用解决问题。
三、方案设计。
1、模块结构:
模块功能图和模块描述。
根据用户输入数组进行快速排序,然后输出排序后的数组。
用户创建f1,然后运行函数生成f2
根据用户输入学生的数据,生成原数据stu文本以及根据成绩进行排序并把排序后的结果输出到score文本中,在屏幕上输出高于平均成绩的学生的学号和成绩。
根据用户输入的两个字符串,找出最长公共子串。
读出文件中的整数,将其中不同整数及其出现次数,按整数由大到小的顺序输出到文件中。
2、数据结构:
int a[10]
file *fp1,*fp2
struct student
sort(a, i);
sort(a+i+1, num-i-1);
while((c=fgetc(fp1))!eof)
for(i=0;i a[i]=student[i].score;
sort(a,m);
for(i=0;i for(j=0;j if(a[i]==student[j].score)
fp=fopen(""w+")
fwrite(&student1,sizeof(student1),1,fp);
fclose(fp);
for(i=0;i for(j=0;jstrcpy(a, "0");
p=i;q=j;
while(s1[p]==s2[q]&&s2[p]!=0)
四、调试记录。
给出测试用例。
五、创新说明。
用户可以自行定义数据,根据用户输入的数组进行排序。
将f1的内容同时在屏幕上输出,用户可以直接查看文件内容。
用户可以自行定义学生个数以及在屏幕上输入学生数据,并且将成绩单独放到另一数组排序后根据序号对结构体排序。
用户可以输入任一字符串进行对比。
一、程序实践概述。
1、题目名称:
socket编程基础。
1)时间服务器。
2)远程文件备份服务器。
2、时间进度:
8学时。3、开发环境:
ubantu
二、问题分析。
1、功能说明:
① 编程实现时间服务器。
编写一个网络时间服务器timeserver,该服务器能应具有如下功能:
够为网络上的用户提供时间服务,即为网络用户返回服务器的当前时间;
记录发出请求的网络用户的ip地址(保存到文件中),格式如下:
ip地址请求时间。
编写时间服务客户端timeclient,该客户端能够向服务器发送时间服务请求,并把获得的时间返回给用户。
编程实现远程文件备份服务器。
分别采用tcp或udp协议编写一个远程数据备份服务器,运行客户端将本地文件备份到远程的服务器中。
服务器的功能:接受客户端请求,把客户端的文件进行备份(可以备份到指定的文件夹)。
客户端的功能:与远程服务器进行连接,在连接后把本地的文件发送给远程备份服务器。
设计并实现带身份认证的远程数据备份服务器(选作)
在实验②的基础上增加身份管理和认证功能:
2、解决方案:
服务器端过程就是socket->bind->listen->accept->read,write
对于客户端则是socket->connect->read,write
三、方案设计。
1、模块结构:
2、数据结构:
文件操作,time_t t,socket
文件操作,socket
3、 总体流程:
4、关键算法:
time_t t;
if(argc!=2) /获得ip地址。
if((he = gethostbyname(ar**[1]))null)
if((sockfd = socket(af_inet, sock_stream, 0)) 1)
bzero(&server, sizeof(server));
= af_inet;
= htons(port);
= *struct in_addr *)he->h_addr);
if(connect(sockfd, (struct sockaddr *)server, sizeof(server)) 1)
recv(sockfd,(void *)t,sizeof(time_t),0);
printf("time is %s",ctime(&t));
信息安全工程实践
信息安全工程实践二 实践报告。东北大学软件学院。一 程序实践概述。1 题目名称 linux操作系统及其相关命令,linux编程基础。linux程序设计基础。2 时间进度 12学时。3 开发环境 ubantu 二 问题分析。1 功能说明 熟练掌握如下linux命令。系统信息命令 who,w,du,du...
信息安全工程实践
安全编程。基于usbkey的软件授权编程实验。实验内容 了解usbkey的使用和工作原理。掌握通过usbkey控制软件启动和加密的简单程序。实验原理 usbkey是一种插在计算机usb口上的软硬件结合的设备,usbkey内置单片机或智能卡芯片,具有一定的存储空间和运算处理能力,使得usbkey具有判...
信息安全工程方案
课程名称。小组名称。学生姓名。学生学号。所在系。所学专业。年月日。第1章信息安全管理概述。对信息安全与管理的基本概念予以阐述,让我们知道信息安全管理的目的以及要在实施时所遵循的规范与原则。第2章信息安全管理标准。这章主要对国外信息安全管理标准与我国信息安全管理标准的阐述和具体介绍,国外的主要介绍了 ...