信息安全课设--哈工大
- 格式:doc
- 大小:532.50 KB
- 文档页数:10
信息与网络安全课程设计一、课程背景信息安全和网络安全已经成为现代社会的重要议题,随着互联网的飞速发展,人们对于信息和网络安全的需求越来越高。
信息与网络安全课程作为计算机科学与技术专业的重要课程之一,旨在培养学生在计算机信息和网络安全领域的综合素质和技能。
二、教学目标本课程旨在使学生了解信息和网络安全的基本概念、技术和实践,包括现代密码学、数字证书、基本安全模型、网络攻击与防范措施等方面的内容,使其具备以下能力:1.掌握现代密码学基础知识及其应用技巧。
2.理解数字证书、公钥基础设施以及其在网络和信息系统中的应用。
3.分析和设计信息和网络安全模型,并对不同模型进行评估和选择。
4.熟悉基本的网络攻击和防范手段。
5.掌握网络安全实践的基本方法和技能。
三、教学内容1. 信息安全基础•信息安全基础概念和原则•信息攻击和防御的基本原理•常见威胁和攻击方式2. 现代密码学•对称加密算法•非对称加密算法•消息摘要算法•数字签名和认证3. 数字证书和PKI•数字证书的基本原理和应用•PKI系统的结构和性能•数字证书的管理和使用4. 认证与访问控制•认证的基本原理和方法•访问控制模型和技术•网络身份验证机制5. 网络安全管理•安全管理的基本原则和实践•安全管理的流程和方法•安全管理的评估和测试6. 网络攻击与防范•网络攻击的类型和特点•网络攻击与防范技术•常见的网络安全工具和软件四、教学方法本课程采用讲授、案例研讨、实验和课堂小组讨论等多种教学方法。
其中,实验和案例研讨占据了重要的教学内容,能够帮助学生更好地理解和掌握信息和网络安全的实际应用。
五、教学评估本课程的评估方式主要包括课堂作业、实验报告、小组讨论以及期末考试。
具体评分标准和比例如下:•课堂作业:30%•实验报告:30%•小组讨论:20%•期末考试:20%六、教材参考与资源教材参考:•《信息安全技术基础》•《计算机与网络安全》•《网络与信息安全综合教程》教学资源:•实验室设备和环境•网络安全实验平台•各种安全工具和软件七、总结信息和网络安全课程设计面向计算机科学与技术专业的学生,其重要性不言而喻。
系 专业 班 学号 姓名2 引言随着网络的发展,互联网技术的应用日益增强,随之而来的是一系列与网络安全相关的问题:如对主机的攻击,网络上传输的信息被截取、篡改、重发等,由此,它对网络应用的进一步推广构成了巨大威胁,于是数据加密便成了软件项目开发的重要之处。
数据加密技术不仅具有保证信息机密性的信息加密功能,而且具有数字签名、秘密分存、系统安全等性能。
因而可以保障信息的机密性、完整性和准确性,防止信息被窃取、篡改、伪造和假冒。
因此本系统运用了MD5数据加密技术。
同时,在竞争日趋激烈的今天,只有实行对数据加密的加强管理,建设性提高信息安全在网络中的地位,以至在竞争中求生存,以期更好地发展下去。
3 摘要近年来,随着电脑的普与,互联网技术的发展与互联网信息市场的不断完善,网络已经成为人们学习生活不可或缺的一部分,在人们获取知识、了解社会方面更是扮演着重要角色,社会的各行各业都离不开互联网。
本设计尝试用架构一个基于MD5的用户登录系统,本文从理论和实践两个角度出发,论文首先较为详尽地介绍了系统设计的有关概念与技术,特别深入介绍了在系统开发过程中用到的开发平台、开发语言以与MD5数据加密的介绍,接着对基于MD5的用户登录系统的可行性与需求进行了分析,最后对系统的主要页面、数据库、应用程序的设计与实现作了较为详细的讲解。
本系统是在Microsoft SQL Server 2005和Microsoft Visual Studio 2008开发平台实现的,其主要功能有:管理员具有登录、查询、修改删除信息功能普通用户具有注册、登录、查询、修改信息功能等。
论文在撰写过程中,力求将理论与实践应用相结合,对各种理论进行阐述的同时配合系统从实际应用和操作技巧上加以说明,希望能够更充分地体现到这些知识与技术在本系统中的应用与实现。
关键词:信息加密;c#语言;MD5加密;登录系统。
目录1 试题 .......................................................................... 错误!未定义书签。
《信息安全技术课程设计》教学大纲
Information Security Technology Course Design 课程编码:TX204040 适用专业:信息安全
先修课程:无学分数:2
总学时数:28 实验(上机)学时:28
考核方式:院系考
一、课程性质和任务
为提高学生对信息安全相关技术的理解及应用能力,增强实践操作能力,组织学生对所学的信息安全相关技术进行系统的专业实践,理论联系实际,最终完成课程设计报告。
二、教学组织形式及各阶段时间安排
三、教学内容及要求
四、实践教学所需设备、材料及条件
五、考核办法与成绩评定
成绩考核由以下及部分组成:各项报告完成情况、设计任务完成情况、设计论文完成情况、实验结果情况,平时上机记录情况,和指导老师沟通情况、实验室老师报告。
综合以上各项分别给出优、良、中、及格、不及格成绩。
六、建议教材及参考资料
信息安全概论
计算机文化基础课程教材
安全操作系统。
信息系统安全课程设计报告课题名称: OpenSSL 非对称加密提交文档学生姓名:提交文档学生学号:同组成员名单:指导教师姓名:指导教师评阅成绩:指导教师评阅意见:. .提交报告时间: 2014年 6 月 10日1.课程设计目标了解OpenSSL非对称加密算法的背景知识,并实现加密解密。
2.分析与设计(1)实现方法:编程语言为C++语言。
编程方法:根据算法要求编写代码。
(2)利用OpenSSL命令制作生成密钥:#include <stdlib.h>#include <stdio.h>#include <string.h>#include <openssl/pem.h>#include <openssl/rsa.h>int main(){char plain[256]="啦啦啦啦啦";char encrypted[1024];char decrypted[1024];const char* pub_key="public.pem";const char* priv_key="private.pem";printf("%s\n",plain);int len=strlen(plain);BIO *pBio = BIO_new_file(pub_key,"r");if(pBio==NULL){printf("failed to open pub_key file %s!\n", pub_key);return -1;}RSA* rsa1= PEM_read_bio_RSA_PUBKEY(pBio, NULL, NULL, NULL);if(rsa1==NULL){printf("unable to read public key!\n");return -1;}BIO_free_all(pBio);int outlen=RSA_public_encrypt(len, (unsigned char *)plain,(unsigned char *)encrypted, rsa1,RSA_PKCS1_PADDING);printf("%d\n",outlen);encrypted[outlen]='\0';printf("%s\n",encrypted);FILE* fp=fopen("out.txt","w");fwrite(encrypted,1,outlen,fp);fclose(fp);pBio = BIO_new_file(priv_key,"r");if(pBio==NULL){printf("failed to open priv_key file %s!\n", pub_key);return -1;}RSA *rsa2 = PEM_read_bio_RSAPrivateKey(pBio, NULL, NULL, NULL);if(rsa2==NULL){printf("unable to read private key!\n");return -1;}BIO_free_all(pBio);outlen=RSA_private_decrypt(outlen,(unsigned char *)encrypted,(unsigned char *)decrypted, rsa2,RSA_PKCS1_PADDING);decrypted[outlen]='\0';printf("%s\n",decrypted);return 0;}(3)手动产生公钥:#include <stdlib.h>#include <stdio.h>#include <string.h>#include <openssl/pem.h>#include <openssl/rsa.h>int main(){char plain[256]="rtre";char encrypted[1024];char decrypted[1024];const char* pub_key="public2.pem";const char* priv_key="private2.pem";const int g_nBits = 1024;printf("%s\n",plain);int len=strlen(plain);RSA *rsa1 = RSA_generate_key(g_nBits,RSA_F4,NULL,NULL);if (rsa1 == NULL){printf("rsa_generate_key error\n");return -1;}BIO *pBio = BIO_new_file(pub_key,"w");if (pBio == NULL){printf("BIO_new_file %s error\n", pub_key);return -1;}PEM_write_bio_RSAPublicKey(pBio,rsa1);BIO_free_all(pBio);int outlen=RSA_public_encrypt(len, (unsigned char *)plain,(unsigned char *)encrypted, rsa1,RSA_PKCS1_PADDING);printf("%d\n",outlen);encrypted[outlen]='\0';printf("%s\n",encrypted);FILE* fp=fopen("out.txt","w");fwrite(encrypted,1,outlen,fp);fclose(fp);pBio = BIO_new_file(priv_key,"w");if (pBio == NULL){printf("BIO_new_file %s error\n", priv_key);return -1;}PEM_write_bio_RSAPrivateKey(pBio,rsa1,NULL,NULL,NULL,NULL,NULL);BIO_free_all(pBio);outlen=RSA_private_decrypt(outlen,(unsigned char *)encrypted,(unsigned char *)decrypted, rsa1,RSA_PKCS1_PADDING);decrypted[outlen]='\0';printf("%s\n",decrypted);return 0;}3.总结RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击,已被ISO 推荐为公钥数据加密标准,学习这个算法让我对加密和解密的知识有了更加深入的理解。
2019年硕士研究生入学考试大纲考试科目名称:网络与信息安全基础考试科目代码:[837]本考试科目考试时间180分钟,满分150分。
包括计算机网络及信息安全基础两部分,每部分各75分。
计算机网络部分(75分)一、考试要求掌握计算机网络的基本概念、基本原理和基本方法;掌握计算机网络的体系结构和典型网络协议,了解典型网络的组成和特点,理解典型网络设备的工作原理;掌握socket编程基本技术;能够运用计算机网络的基本概念、基本原理和基本方法进行网络系统的分析、设计和应用。
注:考试内容以参考书目1为主。
二、考试内容1)计算机网络体系结构的概念a:报文交换基本概念b: TCP/IP体系结构c: IP地址,子网2)应用层a: Web与HTTPb: DNSc: SMTP3)传输层a: UDPb: TCPc: 拥塞控制4)socket编程a: UDP编程b: TCP编程c: 原始套接字编程5)网络层a:链路状态路由协议b:距离向量路由协议c: BGP6)链路层a:ARPb:WIFIc: CDMA三、试卷结构1)题型结构a:填空题(0—15分)b:选择题(0—30分)c:简答题(0—30分)d:问答题(0—30分)注:题型分数在以上范围内浮动,总分为75分四、参考书目1.James F. Kurose, and Keith W. Ross,计算机网络-自顶向下方法(原书第6版),机械工业出版社. 20142. 谢希仁. 计算机网络(第6版). 电子工业出版社,2013信息安全部分(75分)一、考试要求要求考生全面掌握信息安全领域的基本内涵、概念、原理和方法,系统深入地理解密码学基本理论、身份认证、访问控制、计算机病毒与网络入侵、防火墙与入侵检测、安全传输协议、风险评估与控制理论、信息安全标准与法律法规,掌握信息安全服务的逻辑设计与基本技术路线,理解各种信息安全服务之间的相互关系,建立信息安全体系的整体概念。
二、考试内容1)信息安全的基本概念a: 信息安全知识体系结构b:信息的基本安全属性c: 信息保障d: 安全服务与机制2)密码学基础a: 密码分类、作用与基本设计原理b: 对称密钥密码与DESc: 公开密钥密码、DH密钥交换协议与RSAd:散列函数原理及作用3) 身份认证与访问控制a: 基于对称密钥的认证设计与kerberos协议b: 基于公开密钥的认证设计与PKI理论c: 三种典型的访问控制模型及实现机制d: Windows系统网络认证及访问控制4)计算机病毒与网络入侵a: 传统计算机病毒、蠕虫病毒、木马病毒的特点、原理与防治b: 拒绝服务攻击的特点及典型攻击机理c: 欺骗类攻击的特点与典型攻击d:利用型攻击的特点及缓冲区溢出原理5)防火墙、入侵检测与安全传输协议a: 防火墙理论与netfilter结构原理b: 入侵检测理论与snorts结构原理c: IPSec与SSL协议的组成及工作原理d: SET协议体系与关键技术6)安全风险管理与法律法规a: 信息系统风险评估与控制b: CC标准与BS7799c: 信息安全道德与法律法规三、试卷题型结构a: 填空题( 0-20分 )b: 选择题( 0-20分 )b: 简答题( 0-30分)c: 计算与综合设计题( 0-30分)四、参考书目1.翟健宏,信息安全导论,科学出版社,2011.072.刘建伟等,网络安全——技术与实践,清华大学出版社,2011.07。
信息安全课程设计(论文)说明书题目:网络嗅探器的设计与实现学院:专业:姓名:学号:指导教师:2011年月日摘要随着网络技术的飞速发展,以及越来越多的信息资源放在了网上,网络安全问题越来越被人们所重视,其安全性和可靠性也越发重要。
嗅探技术作为网络安全攻防中最基础的技术,它既可以用于获取网络中传输的大量的敏感信息,又可以用来进行网络管理。
但同时它又有另一方面的影响,即攻击者可以利用它来监听网络中的数据,达到非法获得信息的目的。
因此对网络嗅探器的研究具有重要意义,分析其通过获取网络包得流向和内容等信息,从而进行网络安全分析和网络威胁应对。
本课程设计是关于网络嗅探器的简单设计与实现,同时对网络嗅探技术进行了简要分析,研究了网络数据包的捕获机制,以VS2010为开发平台,使用Windows环境下的网络数据包捕获开发库WinPcap认真学习和掌握网络嗅探器工作原理,设计出一个嗅探器程序,使其实现网络层抓包,并对获得包的源和目的地址、端口、协议等进行分析及显示,实现简单的包嗅探器功能。
关键字:网络嗅探数据包捕获数据包分析网络协议 WinPcap VS2010目录1、引言 (1)1.1 开发背景 (1)1.2 开发意义 (1)1.3 正文安排 (1)2、系统分析 (2)2.1 需求分析 (2)2.1.1 功能需求 (2)2.1.2 适用范围 (2)2.1.3 基本思路 (2)2.1.4 使用环境 (2)2.1.5 可行性分析 (2)2.2 技术分析 (2)2.2.1 嗅探原理 (2)2.2.2 捕获机制 (3)2.2.3 WinPcap 技术 (3)3、程序设计与实现 (4)3.1 主要流程 (4)3.2 总体规划 (4)3.3 函数说明 (4)3.4 分块设计 (6)3.4.1 获得网卡列表信息 (6)3.4.2 数据包捕获 (7)3.4.2 数据包过滤 (7)3.4.2 数据包分析 (8)4、问题分析及测试 (9)4.1 问题分析 (9)4.2 测试 (10)5、结论 (11)5.1 设计心得 (11)5.1 谢辞 (11)参考文献 (12)附录(源程序) (13)1、引言1.1 开发背景随着网络技术的迅速发展,加速了全球信息化进程,各种重要数据在网上的传播日益普遍,使得网络安全问题越来越为人们所关注。
信息安全技术教程课程设计一、课程设计背景随着互联网技术的快速发展与广泛应用,以及信息化进程的不断加快,信息安全问题日益成为社会的关注焦点。
信息安全强国建设已成为国家战略,信息安全技术的培养缺口巨大,急需高素质的信息安全技术人才。
为培养具有信息安全专业知识与技能的人才,我们设计了本门信息安全技术教程课程。
二、课程设计目标本门课程旨在通过讲授信息安全基础理论知识以及应用技术,提高学生关于信息安全的意识和实践能力,培养学生较为完整的信息安全理论体系,掌握信息安全评价与风险管理的方法,熟悉信息安全解决方案的设计与实现。
三、教学内容与课时安排1. 信息安全基础理论知识•信息安全概述(2课时)•密码学基础(4课时)•认证与授权(4课时)•安全漏洞分析(4课时)2. 信息安全应用技术•网络安全(8课时)•数据库安全(6课时)•应用系统安全(6课时)3. 实践教学•网络安全漏洞扫描与修复实践(6课时)•数据库安全实践(6课时)•应用系统安全测试实践(6课时)四、教学方法本门课程采用讲授与实践相结合的教学方法。
理论课程主要采用讲授方式,引导学生理解信息安全基础理论知识,为后续实践课程打下坚实基础。
实践教学通过组织学生完成一系列针对性项目实践,让学生感受实际操作过程中安全威胁的实质、掌握专业实践技能。
五、评估方式本门课程的评估方式主要分为两个方面:1. 课堂表现及作业(占70%)•课堂表现(出勤情况、发言、互动等)(20分)•课程作业(平时作业、小组作业等)(50分)2. 课程项目实践(占30%)•各项实践完成情况(30分)六、课程教材与参考资料1. 教材符合教学要求的信息安全技术教学参考书或教材。
2.参考资料•电子政务安全实务. 程伟峰等编高等教育出版社,2017•信息安全学习指南. 单安军,等编凤凰出版传媒集团,2017•信息安全体系建设. 王磊,等编清华大学出版社,2016七、总结本门课程是信息安全技术专业的一门必修课,它是一门综合性的课程,在信息安全行业起着至关重要的作用。
西安理工大学计算机科学与工程学院<<信息安全>>课程设计指导书编著:吕林涛胡元义王义铭2011年12月1课程设计的目的《信息安全》课程在计算机网络工程等专业教学计划中,是一门重要的专业技术课。
它主要介绍计算机网络信息安全的基本理论和关键技术。
《信息安全》课程设计的目的是,为进一步强化本课程基本理论和关键技术学习的效果,使学生能够真正掌握计算机网络信息安全技术,并进一步加深信息安全的基本概念理解,达到真正掌握设计和维护信息安全的网络体系及其应用系统的基本手段和常用方法,提高学生的动手能力和分析、解决问题的能力。
为社会培养信息安全专业的具有很强的动手能力和创新精神的复合型高级人才。
学生毕业后能够从事信息安全技术的研究开发,能进行计算机信息安全系统(包括局域网、广域网、无线网)及其应用软件系统的规划、设计、实施、维护。
2 课程设计的内容与要求《信息安全》课程设计的内容有:掌握现代信息系统中存在的安全威胁及防范措施;掌握有关安全体系结构与模型,基本的密码知识和密码应用;掌握基本的身份认证技术、网防火墙技术、病毒与黑客攻击的防御技术,通用系统的安全增强技术。
掌握E_mail与Web系统的安全防护技术;了解信息安全的新技术和发展趋势。
课设题目(任选一题目)题目1:网上购物系统1.系统要求(1)系统主要完成功能1)显示各销售商品对应的详细信息2)向购物车中添加购买的商品①显示购买商品的清单,主要包括商品编号,商品名,单价,数量,并能计算出合计;②管理购物车中的商品,例如:修改、删除;③某种商品数量不足时,能显示警告提示。
3)结帐①用户登录;②显示用户相关信息,并验证用户ID的有效性;③付帐形式,转入相应的结帐系统;④打印购买的商品清单及用户信息。
4)注册用户用户信息主要包括用户ID,用户名,密码,E_MAIL等。
5)管理员的管理①管理员密码修改;②各个用户的管理;③新增商品的添加、修改、删除;④商品数量低于一定值,显示提示信息;⑤设置打折商品等优惠服务。
信息安全密码课程设计一、课程目标知识目标:1. 让学生理解信息安全的基本概念,掌握密码学的基本原理;2. 使学生掌握不同类型的加密算法,了解其优缺点及应用场景;3. 帮助学生了解密钥管理的重要性,掌握基本的密钥管理方法。
技能目标:1. 培养学生运用加密算法解决实际信息安全问题的能力;2. 提高学生分析、设计安全密码系统的能力;3. 培养学生运用所学知识进行信息安全风险评估的能力。
情感态度价值观目标:1. 培养学生对信息安全领域的兴趣,激发他们探索密码学奥秘的热情;2. 增强学生的信息安全意识,使他们认识到保护个人隐私和数据安全的重要性;3. 培养学生团队合作精神,提高他们在团队中沟通、协作的能力。
课程性质:本课程为信息技术课程,旨在帮助学生建立信息安全意识,掌握密码学的基本知识和技能。
学生特点:学生具备一定的计算机操作能力,对信息安全有一定了解,但密码学知识较为陌生。
教学要求:结合实际案例,采用讲授、讨论、实践相结合的教学方式,注重培养学生的动手能力和解决问题的能力。
通过本课程的学习,使学生能够将所学知识应用于实际生活中,提高信息安全防护能力。
教学过程中,将目标分解为具体的学习成果,以便进行教学设计和评估。
二、教学内容1. 信息安全概述- 信息安全的重要性- 信息安全的基本概念2. 密码学基础- 密码学的发展历程- 加密、解密和密钥的概念- 对称加密算法(如AES、DES)- 非对称加密算法(如RSA、ECC)3. 加密算法及应用- 常见加密算法的特点及优缺点- 加密算法在实际应用中的选择- 加密算法在信息安全领域的应用案例4. 密钥管理- 密钥生成、分发和存储- 密钥生命周期管理- 密钥泄露和破解的风险评估5. 信息安全风险评估- 风险评估的基本概念和方法- 常见的信息安全风险- 风险评估在实际案例中的应用6. 实践环节- 使用加密软件进行文件加密和解密- 搭建简单的密码通信系统- 分析并改进实际信息安全案例中的密码系统教学内容安排和进度:第1-2周:信息安全概述、密码学基础第3-4周:加密算法及应用第5-6周:密钥管理第7-8周:信息安全风险评估第9-10周:实践环节教学内容与教材关联性:本教学内容紧密围绕教材中关于信息安全密码学的基础知识和应用,结合实际案例,帮助学生系统地掌握信息安全密码学的基本理论和实践技能。
H a r b i n I n s t i t u t e o f T e c h n o l o g y a t W e i h a i防火墙与入侵检测课程设计报告课程名称:防火墙与入侵检测设计题目:混合型简易防火墙院系:计算机科学与技术学院班级:设计者:学号:指导教师:需要源程序请联系本人设计时间:2012年11月11日--2012年11月22日哈尔滨工业大学(威海)二零一二年十一月哈尔滨工业大学(威海)计算机学院《防火墙与入侵检测课程设计》验收及成绩评定表(项目组)哈尔滨工业大学(威海)课程设计任务书目录一、软硬件运行环境 (2)二、项目研究背景与意义 (2)1.背景意义: (2)2.需求分析: (2)三、关键技术及解决方案 (3)1.程序框架: (3)2.函数入口及调用关系: (3)3.程序控制基本流程图: (4)4.程序主要代码: (5)四、测试 (14)1.在程序调试阶段遇到的问题: (14)2.问题及难点所在: (14)3.运行结果: (14)(1)TCP 80端口的测试结果: (14)(2)拦截指定Udp截图 (15)(2)拦截指定IP :172.31.159.156 (15)(3)拦截指定类型的ICMP 报文 (16)五、总结(收获与体会) (16)一、软硬件运行环境●硬件推荐配置个人微型计算机●软件运行环境Windows xp系统二、项目研究背景与意义1.背景意义:个人PC机在上网时很可能无意间访问了恶意的网络页面而导致计算机被植入恶意插件或木马,严重影响上网浏览的质量,使个人计算机安全遭受严重危险。
设计出适合个人的小型防火墙可以对个人计算机设置各种基本的网络访问规则,过滤不受信任的网络数据,阻止对不受信任的网站的访问,从而阻止恶意插件或木马。
有效防止网络攻击,保护个人计算机上网安全。
2.需求分析:a.能够对IP层进行按照数据包的源和目的地址进行筛选,过滤不安全的网络交互。
b.能够实现对TCP连接的控制,通过控制源和目的端口对TCP连接进行检测,可以对按照规则设置的端口进行数据包拦截,阻止TCP的正常连接。
信息安全算法课程设计一、教学目标本课程旨在让学生了解和掌握信息安全算法的基本概念、原理和应用,提高他们分析问题和解决问题的能力,培养他们具有良好的信息安全和算法素养。
知识目标:使学生了解信息安全算法的基本概念、分类和应用场景;掌握常见的安全算法如加密算法、散列算法、数字签名算法等;了解信息安全算法在现实生活中的应用。
技能目标:培养学生运用信息安全算法解决实际问题的能力;提高学生使用相关工具和软件进行信息安全算法分析和设计的能力。
情感态度价值观目标:培养学生对信息安全算法的兴趣,增强他们的自信心和责任感;使学生认识到信息安全算法在保护信息安全中的重要性,提高他们的信息安全意识。
二、教学内容本课程的教学内容主要包括信息安全算法的基本概念、分类和应用场景,以及常见的安全算法。
1.信息安全算法的基本概念:包括信息安全算法的定义、特点和作用等。
2.信息安全算法的分类:包括加密算法、散列算法、数字签名算法等。
3.信息安全算法的应用场景:包括网络通信、数据保护、身份认证等。
4.常见的安全算法:包括DES、AES等加密算法,MD5、SHA-1等散列算法,RSA、ECC等数字签名算法。
三、教学方法本课程采用多种教学方法,包括讲授法、讨论法、案例分析法、实验法等,以激发学生的学习兴趣和主动性。
1.讲授法:通过讲解信息安全算法的基本概念、原理和应用,使学生掌握相关的知识。
2.讨论法:通过分组讨论,让学生深入理解信息安全算法的原理和应用,提高他们的分析问题和解决问题的能力。
3.案例分析法:通过分析实际案例,使学生了解信息安全算法在现实生活中的应用,提高他们运用信息安全算法解决实际问题的能力。
4.实验法:通过动手实验,让学生掌握常见的安全算法的使用方法,提高他们使用相关工具和软件进行信息安全算法分析和设计的能力。
四、教学资源本课程选择和准备适当的教学资源,包括教材、参考书、多媒体资料、实验设备等,以支持教学内容和教学方法的实施,丰富学生的学习体验。
H a r b i n I n s t i t u t e o f T e c h n o l o g y a t W e i h a iWebMail 解析作者:院系:计算机科学与技术班级:学号:指导老师:需要源程序的留下联系方式哈尔滨工业大学(威海)二零一二年六月目录1.前言 (3)2.涉及的协议简介: (3)2.1HTTP协议简介: (3)2.2 TCP/IP协议简介: (4)3.程序设计思想: (4)4.程序函数设计: (5)5. webmail监控源程序 (5)6. 相应截图及说明 (9)21.前言随着网络的发展和普及,浏览网页、QQ聊天、电子留言、电子邮件己经深入人们的生活。
在众多的现代通信方式中,电子邮件(E- mail)己经成为了其中的重要组成部分。
当电子邮件给人们带来极大便利的同时,也带来了一系列的不安全因素:有害信息的广泛传播、国家和企业机密的泄露等。
为了控制和减少这些不安全因素的发生,需要建立一系列的安全机制。
对传输内容的监控是较为重要的一种,在监控的过程中,对传输内容的还原又是最重要的一步。
此次实验目的是捕获webmail的登录账号与密码等信息。
2.涉及的协议简介:2.1HTTP协议简介:超文本传送协议 (HTTP) 是一种通信协议,它允许将超文本标记语言(HTML) 文档从 Web 服务器传送到 Web 浏览器。
HTML 是一种用于创建文档的标记语言,这些文档包含到相关信息的链接。
您可以单击一个链接来访问其它文档、图像或多媒体对象,并获得关于链接项的附加信息。
HTTP工作在TCP/IP协议体系中的TCP协议上。
客户机和服务器必须都支持 HTTP,才能在万维网上发送和接收HTML 文档并进行交互。
HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。
它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。
前一段时间用的是 HTTP/1.0,现在WWW中使用的是HTTP/1.1。
而且HTTP-NG(Next Generation of HTTP)的建议已经提出。
HTTP主要特征:1.支持客户/服务器模式。
2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。
请求方法常用的有GET、HEAD、POST。
每种方法规定了客户与服务器3联系的类型不同。
由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。
3.灵活:HTTP允许传输任意类型的数据对象。
正在传输的类型由Content-Type加以标记。
4.无连接:无连接的含义是限制每次连接只处理一个请求。
服务器处理完客户的请求,并收到客户的应答后,即断开连接。
采用这种方式可以节省传输时间。
5.无状态:HTTP协议是无状态协议。
无状态是指协议对于事务处理没有记忆能力。
缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。
另一方面,在服务器不需要先前信息时它的应答就较快。
2.2 TCP/IP协议简介:Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,Internet 最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。
TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。
协议采用了4层的层级结构,一层都呼叫它的下一层所提供的网络来完成自己的需求。
通俗而言:TCP 负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。
而IP是给因特网的每一台电脑规定一个地址。
3.程序设计思想:1.解析http,还原出tcp报文。
2.解析tcp,还原出ip报文。
3.解析ip报文。
4.查找post报文,找到username和password,把其中的参数打印出4来。
5.分析目的地址,源地址以及端口。
6.设置循环,进行捕包。
4.程序函数设计:1.http协议数据包解析函数:void http_callback。
2.tcp协议数据包解析函数:void tcp_protocol_packet_callback。
3.ip协议数据包解析函数:void ip_protocol_packet_callback。
4.以太网数据包解析:void ethernet_protocol_packet_callback。
5. webmail监控源程序#include "packet.h"#include <stdio.h>void http_callback(u_char *arg,const struct pcap_pkthdr* pcaket_header,const u_char* packet_content,u_int len){const u_char* p = packet_content + 14 + 20 + len ;char buf[1025];char buf1[1025];int i = 0;u_char* ps = strstr(p,"POST");if(ps != NULL ){while(*ps++ && i < 12){if(*ps == '\n')i++;printf("%c",*ps);}}//找到username出现的位置ps = strstr(p,"username=");if(ps != NULL){//printf("%s",ps);5sscanf(ps,"username=%[^&]&password=%[^&]&",buf,buf1);printf("username:%s\npassword:%s\n",buf,buf1);}printf("-----------------------------------------------------\n");}void tcp_protocol_packet_callback(u_char *argument,const struct pcap_pkthdr* packet_header,const u_char* packet_content){struct tcp_header *tcp_protocol;u_int head_length;u_short source_port;u_short destination_port;tcp_protocol = (struct tcp_header *)(packet_content+14+20);source_port = ntohs(tcp_protocol->tcp_source_port);destination_port = ntohs(tcp_protocol->tcp_destination_port);head_length = tcp_protocol->tcp_offset*4;printf("source port:%d\n",source_port);printf("destination port:%d\n",destination_port);switch(destination_port){case 80:http_callback(argument,packet_header,packet_content,head_length);break;default:break;}}void ip_protocol_packet_callback(u_char * argument,const struct pcap_pkthdr * packet_header,const u_char * packet_content){struct ip_header * ip_protocol;ip_protocol = (struct ip_header*)(packet_content+14);printf("source address :%s\n",inet_ntoa(ip_protocol->ip_source_address));6printf("destination address :%s\n",inet_ntoa(ip_protocol->ip_destination_address));//如果是TCP协议switch(ip_protocol->ip_protocol){case 6:tcp_protocol_packet_callback(argument,packet_header,packet_content);break;default:break;}}void ethernet_protocol_packet_callback(u_char *argument,const struct pcap_pkthdr * packet_header,const u_char * packet_content){u_short ethernet_type;struct ether_header *ethernet_protocol;ethernet_protocol = (struct ether_header *)packet_content;ethernet_type = ntohs(ethernet_protocol->ether_type);//如果是IP数据包,则作进一步处理switch(ethernet_type){case 0x0800:printf("-----------------------------------------------------\n");ip_protocol_packet_callback(argument,packet_header,packet_content);break;default:break;}}int main(){pcap_t *pcap_handle;char error_content[PCAP_ERRBUF_SIZE];char *net_interface;struct bpf_program bpf_filter;// 设置过滤字符串char bpf_filter_string[] = "tcp port 80";7bpf_u_int32 net_mask;bpf_u_int32 net_ip;//获取可用的网络设备net_interface = pcap_lookupdev(error_content);pcap_lookupnet(net_interface,&net_ip,&net_mask,error_content);//打开设备pcap_handle = pcap_open_live(net_interface,20480,1,0,error_content);//编译过滤规则pcap_compile(pcap_handle,&bpf_filter,bpf_filter_string,0,net_ip);pcap_setfilter(pcap_handle,&bpf_filter);//是否为以太网if(pcap_datalink(pcap_handle) != DLT_EN10MB)return;//循环捕包pcap_loop(pcap_handle,-1,ethernet_protocol_packet_callback,NULL);pcap_close(pcap_handle);}896. 相应截图及说明1. 编译产生可执行文件watchwebmail 。