网络安全程序设计第一讲.ppt
《网络安全程序设计第一讲.ppt》由会员分享,可在线阅读,更多相关《网络安全程序设计第一讲.ppt(55页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、网络安全程序设计网络安全程序设计 第一讲第一讲 网络安全程序设计上海电力学院上海电力学院 计算机科学与技术学院计算机科学与技术学院网络安全程序设计网络安全程序设计 第一讲第一讲 本课程参考资料必读书籍必读书籍必会工具必会工具参考书参考书网络安全程序设计网络安全程序设计 第一讲第一讲 本课程对学生的要求课程目的:在理解网络安全基本技术和原理、标准密码算法的基础上,提升网络安全编程实践能力,能进行Socket编程,学会使用流行的网络安全包CryptoAPI和OpenSSL进行网络安全编程。课堂讲授+实验教学 课下实践(由于实验课时有限,需同学们课下花精力实践。)平时成绩:考勤+课堂实验。课程成绩:
2、平时成绩(30%)和期末大作业(70%)。网络安全程序设计网络安全程序设计 第一讲第一讲 本课程需具备的基础网络安全基础知识 网络基本知识,TCP/IP协议,安全威胁截获,篡改,抵赖,黑客攻击,病毒 安全需求-机密性,完整性,可用性,不可抵赖性。密码学基础 密码学基本概念,对称密码机制,公钥密码体制,密钥管理,消息鉴别与数字签名、数字证书与PKI的原理及应用。主要的网络安全技术 安全扫描技术,网络安全协议,防火墙技术,入侵检测 主流编程语言 C,C+网络安全程序设计网络安全程序设计 第一讲第一讲 第一章 概述-网络安全必要性1.技术层面 Internet已不再是计算机人员和军事部门进行科研的领
3、域,而是变成了一个开发和使用信息资源的覆盖全球的信息海洋,覆盖了社会生活的方方面面,构成了一个信息社会的缩影。安全性问题是困扰Internet用户发展的主要因素。计算机病毒、网络蠕虫的广泛传播,计算机网络黑客的恶意攻击,DDOS攻击的强大破坏力、网上窃密和犯罪的增多,使得网络安全性问题关系到未来网络应用的深入发展。随着云计算、新型通信网络出现,信息安全不断面临新挑战。网络安全程序设计网络安全程序设计 第一讲第一讲 2.社会层面 网络安全是一个关系到国家安全和社会稳定的重要问题。其重要性正随着全球信息化的步伐与日俱增。在我国,国家高度重视网络空间安全保障工作,网络信息安全上升至国家战略。2013
4、年11月12日 中国共产党中央国家安全委员会成立。2014年2月2日中央网络安全和信息化领导小组成立,习近平指出网络安全和信息化是事关国家安全和国家发展、事关广大人民群众工作生活的重大战略问题。网络安全程序设计网络安全程序设计 第一讲第一讲 2015年1月23日中共中央政治局召开会议,审议通过国家安全战略纲要,指出要做好各领域国家安全工作,大力推进国家安全各种保障能力建设,把法治贯穿于维护国家安全的全过程。2015年4月20日国家安全法(草案)二审稿增加了国家“建设国家网络与信息安全保障体系,提升网络与信息安全保护能力”、“维护国家网络空间主权”的规定。2015年7月1日,第十二届全国人民代表
5、大会常务委员会第十五次会议通过新的国家安全法。网络安全程序设计网络安全程序设计 第一讲第一讲 网络安全编程 网络安全本身理论性和实践性都很强,掌握了网络安全相关的基本概念、基本原理后可以运用到实际的工程中。在实际应用中,需要针对实际应用环境开发一些特定应用程序以提供相应的安全服务,而这时掌握一些实用的网络安全编程工具就显得尤为重要。网络安全程序设计网络安全程序设计 第一讲第一讲 几种常见网络安全开发包1.CryptoAPI2.OpenSSL3.Crypto+4.网络数据包捕获开发包Libpcap和WinPcap,WireShark5.网络入侵开发包 Libnids6.防火墙开发包 NetFil
6、eter 7.安全电子邮件开发包 Sendmail网络安全程序设计网络安全程序设计 第一讲第一讲 网络安全程序设计的主要内容 网络安全程序设计的基础知识,具体包括:网络协议,操作系统,Socket编程以及Visual C+编程的核心技术。根据密码学的经典算法,基于网络安全开发包Crypto,OpenSSL以及不使用网络安全开发包进行密码学编程。网络扫描器的设计、防火墙和入侵检测系统设计。应用系统安全编程,包括安全WEB程序设计和安全电子邮件编程。(根据课时可能进行调整。)网络安全程序设计网络安全程序设计 第一讲第一讲 网络安全程序设计基础(一)1.协议基础-OSI参考模型 网络安全程序设计网络
7、安全程序设计 第一讲第一讲 OSI 7层模型数据传输网络安全程序设计网络安全程序设计 第一讲第一讲 OSI 安全体系结构网络安全程序设计网络安全程序设计 第一讲第一讲 TCP/IP模型网络安全程序设计网络安全程序设计 第一讲第一讲 操作系统1.Linux操作系统2.Windows操作系统网络安全程序设计网络安全程序设计 第一讲第一讲 网络安全组成 客户端安全 在客户端部分主要涉及具体用户使用网络的安全完全问题。例如,个人数据的安全性。用户把计算机连入网络后,其就是一个客户端。要保证个人数据的安全,需要建立良好的使用网络的习惯。还有一些比较常用的软件,例如文字处理软件、媒体播放器软件、电子邮件接
8、收和阅读软件,也容易受到威胁。网络安全程序设计网络安全程序设计 第一讲第一讲 网络安全组成服务器安全 服务器方面的安全性也至关重要,很多重要的数据都放在服务器里面。对于重要数据的保护则需要更加强大的安全措施,例如使用专业的防火墙设备、入侵检测系统、安全扫描系统,针对特定服务器的保护系统。最常用的客户端和服务器系统是Web 浏览器和Web 服务器系统,它们的安全性在网络安群内容中占据重要的地位,针对Web浏览器和Web服务器的攻击数量庞大,种类繁多,危害性也很大。网络安全程序设计网络安全程序设计 第一讲第一讲 网络安全组成-网络设施安全 网络设施的安全保护重要的网络设备,例如路由器交换机等重要设
9、备,防止由于故障例如停电以及其他自然灾害造成系统瘫痪、电源故障会造成设备断电,导致操作系统引导失败或数据信息丢失等。网络安全程序设计网络安全程序设计 第一讲第一讲 套接字编程套接字概念 套接字(套接字(Socket)是用来实现主机和主机通信的一个接口,)是用来实现主机和主机通信的一个接口,通过它可以完成主机间的通信操作,它屏蔽了底层的协议,通过它可以完成主机间的通信操作,它屏蔽了底层的协议,让用户能够实现各种类型的通信操作。它的出现,为网络应让用户能够实现各种类型的通信操作。它的出现,为网络应用程序的编写提供了极大的方便。它是网络通信中应用程序用程序的编写提供了极大的方便。它是网络通信中应用程
10、序对应的进程和网络协议之间的接口。对应的进程和网络协议之间的接口。网络安全程序设计网络安全程序设计 第一讲第一讲 进程与套接字 网络安全程序设计网络安全程序设计 第一讲第一讲 套接字是一个双向通信设备,可用于同一台主机上不同进程之间的通信,也可用于沟通位于不同主机的进程。套接字是所有进程间通信方法中唯一允许跨主机通信的方式。Internet 程序,如Te l n e t、rlogin、FTP、talk 和万维网都是基于套接字的。网络安全程序设计网络安全程序设计 第一讲第一讲 套接字主要参数 端口:定义:一种抽象的软件结构,应用程序通过系统调用与某端口建立连接后,传输层给该端口的数据都被相应的进
11、程接收,相应的进程发给传输层的数据都通过该端口输出端口号:一个整形标示符,来表示端口,取值为065535,1024以下的端口保留给预定义的服务注意:TCP/IP传输层的两个协议TCP与UDP是完全独立的两个软件模块,因此各自端口独立,也就是说TCP/UDP可以拥有相同的端口号IP 地址:所谓IP地址就是给每个连接在Internet上的主机分配的一个32bit地址。按照TCP/IP协议规定,IP地址用二进制来表示,每个IP地址长32bit,比特换算成字节,就是4个字节网络安全程序设计网络安全程序设计 第一讲第一讲 套接字分类(1)流套接字(SOCK_STREAM)流套接字用于提供面向连接、可靠的
12、数据传输服务。流套接字之所以能够实现可靠的数据服务,原因在于其使用了传输控制协议,即TCP(The Transmission Control Protocol)协议。(2)数据报套接字(SOCK_DGRAM)数据报套接字提供了一种无连接的服务。数据报套接字使用UDP(User Datagram Protocol)协议进行数据的传输。由于数据报套接字不能保证数据传输的可靠性,对于有可能出现的数据丢失情况,需要在程序中做相应的处理。(3)原始套接字(SOCK_RAW)原始套接字(SOCKET_RAW)允许对较低层次的协议直接访问,比如IP、ICMP协议,它常用于检验新的协议实现,或者访问现有服务中
13、配置的新设备,网络安全程序设计网络安全程序设计 第一讲第一讲 连接过程网络安全程序设计网络安全程序设计 第一讲第一讲 客户机/服务器模式 在TCP/IP网络中两个进程间的相互作用的主机模式是客户机/服务器模式(Client/Server model)。该模式的建立基于以下两点:1、非对等作用;2、通信完全是异步的。客户机/服务器模式在操作过程中采取的是主动请示方式:首先服务器方要先启动,并根据请示提供相应服务:(过程如下)(1)打开一通信通道并告知本地主机,它愿意在某一个公认地址上接收客户请求。(2)等待客户请求到达该端口。(3)接收到重复服务请求,处理该请求并发送应答信号。(4)返回第二步,
14、等待另一客户请求(5)关闭服务器。网络安全程序设计网络安全程序设计 第一讲第一讲 客户方:(1)打开一通信通道,并连接到服务器所在主机的特定端口。(2)向服务器发送服务请求报文,等待并接收应答;继续提出请求(3)请求结束后关闭通信通道并终止。根据连接启动的方式以及本地套接字要连接的目标,套接字之间的连接过程可以分为三个步骤:服务器监听,客户端请求,连接确认。网络安全程序设计网络安全程序设计 第一讲第一讲 基本套接字1.创建套接字socket()2.指定本地地址bind()3.建立套接字连接connect()和accept()4.监听连接listen()5.数据传输send()与recv()6.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络安全 程序设计 第一
限制150内