第一篇:网络工程规划与集成课程设计
武 汉 长 江 工 商 学 院
工学院·计算机技术系
项 目名 称: 中学 校园 计算机 网络
系统 的设 计
学 生姓 名: 学
号 :
班 级 : 指 导教 师:
2011 年 12 月 2 日
桂礼 超 20082506 08801
陈涛、柯 赟
目 录 需求分析.........................................................................................................................1 1.1 需求明确...................................................................................................................1 1.2 IP 地址的规划............................................................................................................1 2 主要技术介绍...................................................................................................................2 2.1 虚拟局域网(VLAN).................................................................................................2 2.2 访问控制列表(ACL)................................................................................................2 2.3 网络地址转换(NAT)..............................................................................................2 2.4 点对点协议(PPP).....................................................................................................2 2.5 路由信息协议(RIP)..................................................................................................2 3 实验内容和步骤..............................................................................................................3 3.1 实验拓扑图及说明......................................................................................................3 3.2 实验步骤及主要配置..................................................................................................4 4 网络测试.......................................................................................................................5 4.1 部门之间的连通测试....................................................................................................5 4.2服务器的连通测试......................................................................................................6 4.3 内网连接 I NTERNET 的测试.......................................................................................7 4.4 外网访问 WEB 服务器测试........................................................................................7 5 课程设计小结.................................................................................................................8 参考文献...........................................................................................................................9
网络工程规划课程设计报告 需求分析
1.1 需求明确
本课程设计将根据某一学校建设网络的需求,验室对该网络进行模拟搭建与测试。
背景描述: 该单位需要建设网络的场所包括多媒体机房、心。计算机主要分布如下:
(一)基本需求
1.根据 用途 需按不 同区域 划分子 网进 行管理,合理 规划网 络的 IP 地 址(采用 192.168.0.0~192.168.10.0 之间的私有网络地址)。
2.根据规划的 IP 地址进行 VLAN 划分,以便于网络管理。3.配置正确的路由,保证主机之间可以相互访问。4.搭建 Web 服务器以及 FTP 服务器。5.内网中除多媒体机房外可以访问 可访问 Web 服务器。
6.内网所有主机通过 NAT 方式接入到 Internet。
(二)扩充需求
1.网络服务器的访问量较大,服务器区域到核心交换机提供冗余链路,以增加带宽 2.出口路由器与对端路由器之间通过 PPP 链路链接,采用 PAP 认证 3. 为方便学生使用自带笔记本从机房上网,方式分配。
设计一个中型的计算机网络系统,并在实
教学办公室、行政办公室以及信息 中
个多媒体机房各为 60 台;教学办公 30 台;行政办公 30 台;
Web 服务器和 FTP 服务器各 1 台。从 ISP 申请到的公网 IP 地址为 202.69.10.3~202.69.10.5。
FTP 服务器,外网不能访问 FTP 服务器; 内外网均
每个机房提供无线接入,IP 地址采用 DHCP 1.2 IP 地址的规划
通过对需求的分析,决定采用星型网络拓朴结构,星型拓朴结构为现在较为流行的一种 网络结构,它是以一台中心处理机(通信设备)为主而构成的网络,其它入网机器仅与该中 心处理机之间有直接的物理链路,中心处理机采用分时或轮询的方法为入网机器服务,央节点的要求比较高。
在局域网中需要合理的划分
所有 的数据必须经过中心处理机。由于所有节点的往外传输都必须经过中央节点来处理,因此,对中
IP,在该实验中 IP 的划分如表 1-1 所示:
表 1-1 局域网 IP 划分及 VLAN情况
VLAN名称 vlan10 vlan20 vlan30 vlan40 vlan50 vlan60
IP 网段
默认网关 192.168.1.1 192.168.2.1 192.168.3.1 192.168.4.1 192.168.5.1 192.168.6.1
说明 多媒体 办公中心 行政办公 信息中心 FTP server Web server
192.168.1.0/24 192.168.2.0/24 192.168.3.0/24 192.168.4.0/24 192.168.5.0/24 192.168.6.0/24
网络工程规划课程设计报告 主要技术介绍
2.1 虚拟局域网(VLAN)
VLAN(Virtual Local Area Network)的中文名为 “虚拟局域网 ”。是在一个物理网络上划 分出来的逻辑网络,是一种将局域网设备逻辑地而不是物理的划分成一个网段,拟工作的技术。通过使用 理 PC 机之间的相互通信。
VLAN 将四个部门分别划分到不同的
从而实现虚
VLAN,这样就可以便于管
2.2 访问控制列表(ACL)
访问控制列表(Access Control List,ACL)是路由器和交换机接口的指令列表,用来控 制端口进出的数据包。ACL 适用于所有的被路由协议,如 控制。在该实验中使用
IP、IPX、AppleTalk 等。这张表
中包含了匹配关系、条件和查询语句,表只是一个框架结构,其目的是为了对某种访问进行
ACL 用来控制多媒体机房的网段(192.168.1.0), 再在 VLAN50 里面运
FTP 服务器。用该控制列表,这样就能保证多媒体机房不能访问
2.3 网络地址转换(NAT)
网络地址转换(NAT,Network Address Translation)属接入广域网(WAN)技术,是一种将私 有(保留)地址转化为合法 IP 地址的转换技术,它被广泛应用于各种类型 和各种类型的网络中。原因很简单,够有效地避免来自网络外部的攻击,来内网访问外网的地址转换。
NAT 不仅完美地解决了
Internet 接入方式
IP 地址不足的问题,而且还能
NAT 是用
隐藏并保护网络内部的计算机。
该实验中式样了静态N
AT和动态NAT,静态NAT是用来让外网访问WEB服务器的配置,而动态
2.4 点对点协议(PPP)
点对点协议(PPP)为在点对点连接上传输多协议数据包提供了一个标准方法。初设计是为两个对等节点之间的 二层协议,即 SLIP。
PAP:是 PPP 协议集中的一种链路控制协议,主要是通过使用 2 次握手提供一种对等 结点的建立认证的简单方法,这是建立在初始链路确定的基础上的。
完成链路建立阶
段之后,对等结点持续重复发送 ID/ 密码给验证者,直至认证得到响应或连接终止。一种用来同步调制连接的数据链路层协议(PPP 最
IP 流量传输提供一种封装协议。在 TCP-IP 协议集中它是
OSI 模式中的第二层),替代了原来非标准的第
2.5 路由信息协议(RIP)
路由信息协议(RIP)是一种在网关与主机之间交换路由选择信息的标准。RIP 的特点 :
RIP 是一种
内部网关协议。在国家性网络中如当前的因特网,拥有很多用于整个网络的路由选择协议。
网络工程规划课程设计报告
(1)仅和相邻的路由器交换信息。那么这两个路由器是相邻的。
如果两个路由器之间的通信不经过另外一个路由器,RIP 协议规定,不相邻的路由器之间不交换信息。秒,然后路由器根据收到的路由信息更新(2)路由器交换的信息是当前本路由器所知道的全部信息。即自己的路由表。(3)按固定时间交换路由信息,如,每隔 路由表。实验内容和步骤
3.1 实验拓扑图及说明
在需求的基础上设计实验拓扑图,实验为了方便和简洁,要取其一来进行配置,其实验拓扑图如下图所示:个多媒体机房在实验中只需
图 3-1 实验拓扑图
该拓扑主要采用了星型结构,用一台核心三层交换机实现校园内巨大数据的快速转发。在核心交换机上分配
VLAN 用来控制四个部门的通讯,同时配置了
ACL 用来控制多媒体机
提高访问内网服
Web
NAT 转换技术,来实现内网主机的上网问题;
WEB 服务器 IP : 192.168.6.10
WEB 服务器,其外网 房对FTP服务器的访问; 在连接服务器的链路上使用冗余链路实现备份,务器的可靠性;在接入路由器上,通过 其中: FTP 服务器 IP : 192.168.5.10 使用静态 NAT 来实现外网对其的访问;在多媒体机房,使用无线
AP 提供无线设备的接入。
多媒体机房的无线 AP 采用 dhcp 方式分配 ip 地址。默认网关: 192.168.1.1 在外网 IP 的划分中,由于 IP 的个数有限,且考虑到外网要访问 IP 的分配如下:
202.69.10.3 应用在出口路由器的外网接口上,实现与外网的连通。202.69.10.4 通过 NAT 来实现内网连接 internet 的地址转换。
202.69.10.5 通过静态 nat 到 web 服务器上,实现外网对 web 服务器的访问
网络工程规划课程设计报告
3.2 实验步骤及主要配置
根据上面的实验拓扑图构建好实验连路图。的划分如下:
第一模块:完成内网四个部门之间的相互连通 第二模块:实现四个部门与服务器之间的连通 第三模块:完成内网主机通过
四模块:控制多媒体机房对
NAT 与外网的连通 第FTP 服务器的访问控制
VLAN 的划分,trunk 口
在实验过程中主要是分模块完成的,其模块
在实验的过程中,分别对上面的四个模块进行配置,使用到了 的配置,NAT 的配置,ACL 的控制。配置的命令参考书上的。
在做这次实验中用到了很多配置,其中主要配置如下:
1、VLAN 的划分 Switch(config)#vlan 2 Switch(config)#int vlan 2 Switch(config-if)#ip accress 192.168.2.1 255.255.255.0 Switch(config)#intface f0/4 Switch(config-if)#switchport access vlan 2
2、核心交换机上 trunk 口的配置 Switch(config)#int f0/2 Switch(config-if)#switchport trunk encapsulation dot1q Switch(config-if)#switchport mode trunk Switch(config-if)#channel-group 1 mode active Switch(config)#int f0/7 Switch(config-if)#switchport trunk encapsulation dot1q Switch(config-if)#switchport mode trunk Switch(config-if)#channel-group 1 mode active
3、核心交换机上静态路由及
RIP 协议的配置
Switch(config)#ip route 0.0.0.0 0.0.0.0 192.168.5.1 Switch(config)#router rip Switch(config-router)#network 192.168.2.0 Switch(config-router)#network 192.168.3.0 Switch(config-router)#network 192.168.4.0 Switch(config-router)#network 192.168.5.0 Switch(config-router)#network 192.168.6.0 Switch(config-router)#network 192.168.7.0 Switch(config-router)#network 192.168.8.0
4、核心交换机上
ACL 的配置
Switch(config)#access-list 1 deny 192.168.2.0 0.0.0.255 Switch(config)#access-list 1 permit any Switch(config)#intface vlan 6 Switch(config-if)#ip access-group 1 out
5、出口路由器上 NAT 的配置 Router#config terminal Router(config)#ip nat pool np 202.69.10.4 202.69.10.4 netmask 255.255.255.0
网络工程规划课程设计报告
Router(config)#access-list 1 permit any Router(config)#in nat inside source list 1 pool np overload Router(config)#int f1/0 Router(config-if)#ip address 192.168.5.1 255.255.255.0 Router(config-if)#ip nat inside Router(config-if)#no shutdown Router(config)#int s2/0 Router(config-if)#ip address 202.69.10.3 255.255.255.0 Router(config-if)#ip nat outside Router(config-if)#no shutdown 网络测试
4.1 部门之间的连通测试
通过三层交换机的路由功能,在不同
图 4-1 VLAN 之间的连同测试
VLAN 的PC机可以相互通信,如图 4-1 所示:
网络工程规划课程设计报告
4.2服务器的连通测试
其中多媒体机房受到ACL的控制不能访问FTP服务器,如下图所示: PC能访问WEB及FTP服务器,如图
图 4-2 内网访问服务器的测试
其他部门的
4-2 所示:
多媒体机房不能访问FTP服务器,如图
4-3 所示
图 4-3 多媒体机房访问服务器的测试
网络工程规划课程设计报告
4.3 内网连接 Internet 的测试
内网通过 NAT 转换,可以与外网之间进行通信,如下图
图 4-4 内网与 Internet 的测试
4-4 所示:
4.4 外网访问 WEB 服务器测试
外网通过静态 NAT 的配置能访问 WEB 服务器,如图 4-5 所示:
图 4-5 外网访问 WEB的测试
网络工程规划课程设计报告 课程设计小结
课程设计是培养我们综合运用所学知识,发现、提出、分析、解决问题的一个过程,是 对我们所学知识及综合能力的一次考察。
随着科学技术日新月异的不断发展,计算机网络也
在不断的变化发展当中,这就要求我们用相应的知识来武装自己,完全的解决很多实际上的问题。
夯实基础,为将来走向工
这样才 作岗位,贡献社会做好充分的准备。
通过这次课程设计,我很深刻的理解了课本上的知识不 能
我们计算机系的同学更应该将手动与实际相结合,能更好的消化课本上的知识,不断的提升自己的专业知识水准。
这次的课程设计我完成基本的功能,在扩展功能中做了增加冗余链路来增加带宽的功 能。在做课程设计之前,我觉得好难,好神奇一样,但我现在看来,这次课程设计不是很难,这次课程设计就相当于是把这几次的实验集中了,当然也 感觉如果平时把实验认真的做好,要好好的理解才能把他们都相互连通起来。
在这次课程设计中,我从不知道怎么着手做到能完全做完并且理解,我相信我学到了很 多东西。开始的时候不知道怎么划分 在做
VLAN 及划分 VLAN 的作用,只知道问别人就照着做,ACL,经过认真查看 在做的过程中我慢慢体会到了
VLAN 的作用,同时也通过这次试验我理解了VLAN及其 作用。
ACL 时,开始产生了一个误解,认为只能在路由器上配置
参考书和问老师及同学才把
网络的开始。
ACL 弄明白。现在我也明白路由协议的作用和配置,也明白了 路由的原理。我相信在以后的网络学习中,这次实验的经验对我来说是很宝贵的,同时也是 我学习
网络工程规划课程设计报告
参考文献
[1] 梁广民.思科网络实验室路由、交换实验指南 [2] 石炎生.计算机网络工程实用教程(第二版)社,2002.6 [4] 潘新民.计算机通信技术.北京:电子工业出版社,2002.6 [5] 李成忠.计算机网络原理与设计.北京: 高等教育出版社,2002.5
.北京: 电子工业出版社,2009.5.北京:
电子工业出版社,2009.1
.北京:
清华大学出版 [3] Andraw S.Tanenbaum.计算机网络工程实用教程(第二版)
[6] 钟小平、张金石.(第 2 版).9
北京:人民邮电出版社,2004.10
网络服务器配置与应用 网络工程规划课程设计报告
附录:
1、核心交换机的配置文件 Building configuration...Current configuration : 2171 bytes!version 12.2 no service timestamps log datetime msec no service timestamps debug datetime msec no service password-encryption!hostname Switch!ip routing!interface FastEthernet0/1 no switchport ip address 192.168.0.18 255.255.255.0 duplex auto speed auto!interface FastEthernet0/2!interface FastEthernet0/3 switchport access vlan 10!interface FastEthernet0/4 switchport access vlan 20 switchport mode access!interface FastEthernet0/5 switchport access vlan 30!interface FastEthernet0/6 switchport access vlan 40!interface FastEthernet0/7 channel-group 1 mode active switchport trunk encapsulation dot1q switchport mode trunk!interface FastEthernet0/8
网络工程规划课程设计报告
channel-group 1 mode active switchport trunk encapsulation dot1q switchport mode trunk!interface FastEthernet0/9!interface FastEthernet0/10!interface FastEthernet0/11!interface FastEthernet0/12!interface FastEthernet0/13!interface FastEthernet0/14!interface FastEthernet0/15!interface FastEthernet0/16!interface FastEthernet0/17!interface FastEthernet0/18!interface FastEthernet0/19!interface FastEthernet0/20!interface FastEthernet0/21!interface FastEthernet0/22!interface FastEthernet0/23!interface FastEthernet0/24!interface GigabitEthernet0/1!interface GigabitEthernet0/2!interface Port-channel 1 switchport trunk encapsulation dot1q switchport mode trunk!
网络工程规划课程设计报告
interface Vlan1 no ip address!interface Vlan10 ip address 192.168.1.1 255.255.255.0!interface Vlan20 ip address 192.168.2.1 255.255.255.0!interface Vlan30 ip address 192.168.3.1 255.255.255.0!interface Vlan40 ip address 192.168.4.1 255.255.255.0
!interface Vlan50 ip address 192.168.5.1 255.255.255.0 ip access-group 1 out ip nat outside!interface Vlan60 ip address 192.168.6.1 255.255.255.0
!router rip network 192.168.0.0 network 192.168.1.0 network 192.168.2.0 network 192.168.3.0 network 192.168.4.0 network 192.168.5.0 network 192.168.6.0!ip classless ip route 0.0.0.0 0.0.0.0 192.168.0.20!access-list 1 deny 192.168.1.0 0.0.0.255 access-list 1 permit any!line con 0 line vty 0 4 login!
网络工程规划课程设计报告
End
2、出口路由器的配置文件
Router#show run Building configuration...Current configuration : 936 bytes!version 12.2 no service timestamps log datetime msec no service timestamps debug datetime msec no service password-encryption!hostname Router!interface FastEthernet0/0 no ip address duplex auto speed auto shutdown!interface FastEthernet1/0 ip address 192.168.0.20 255.255.255.0 ip nat inside duplex auto speed auto!interface Serial2/0 ip address 202.69.10.3 255.255.255.0 ip nat outside
!interface Serial3/0 no ip address shutdown!interface FastEthernet4/0 no ip address shutdown!interface FastEthernet5/0 no ip address shutdown!router rip
网络工程规划课程设计报告
network 192.168.0.0!ip nat pool np 202.69.10.4 202.69.10.4 netmask 255.255.255.0 ip nat inside source list 1 pool np overload ip nat inside source static 192.168.6.10 202.69.10.5 ip classless ip route 0.0.0.0 0.0.0.0 202.69.10.10!access-list 1 permit any!no cdp run!line con 0 line vty 0 4 login!
网络工程规划课程设计报告
网络工程规划与集成课程设计
成绩评定
成绩评定:
(百分制)指导教师签字: 检查时间: 系部签章:
年
月 日
第二篇:《多媒体集成课程设计》文档
多媒体集成课程设计
多媒体集成课
程
设
计
姓名:_________
班级:__________
学号:__________
多媒体集成课程设计
一、目的与要求
(可参考考核要求写)
二、作品简介
(包含作品的主题、关键画面截图,采用了哪些软件开发制作,运用了哪些技术等)
三、素材的收集与制作
(介绍素材的收集和加工制作)
四、设计步骤
(主要介绍作品制作的步骤,要求图文并茂)
五、心得体会
(简单讲讲本次课程设计的感受和收获)
第三篇:网络工程规划
一、网络工程师的职业优势
1、最具增值潜力的职业,掌握企业核心网络架构、安全技术,具有不可替代的竞争优势
2、新型网络人才缺口大,27%的行业增长速度导致网络人才年缺口达30万,高薪高福利成为必然
3、可实现专业零基础入行,4-10个月的强化训练和职业化引导,就可成为企业急需的技能型网络人才
4、就业面广,一专多能,实践经验适用于各个领域
5、增 值潜力大,职业价值随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨
6、职业发展前景广阔,网络工程师到项目经理仅一步之遥,从容晋升Manager
二、网络工程师解读
网络工程师是通过学习和训练,掌握网络技术的理论知识和操作技能的网络技术人员。网络工程师能够从事计算机信息系统的设计、建设、运行和维护工作。具体来说,我们可以从企业信息化的岗位体系中作一些了解。
企业(或政府)信息化过程中需要以下四种人:
1、企业信息化主管:负责信息化建设中的目标与方案决策,信息化建设中的方向研究;
2、工程技术人员:负责信息化系统的设计、建设,包括设备、系统、数据库、应用系统的建设;
3、运行维护人员:负责信息化系统的运行、维护、管理以及基本的开发;
4、操作应用人员:主要应用信息化系统进行本职工作。
三、网络工程师职业规划过程
主要有以下几步:两年以上的小型企业→四年左右的中型企业→大型企业或跨国集团公司
第一步,小企业的网络管理员(系统管理员);
第二步,进入大中型企业,同样的网络管理工作,工资就可能完全不同了,一般都在5000元以上。做了部门经理时,还可以高达8000元或以上;
第三步,学习更全面的知识成为普通的网络工程师工资就高达4000元以上; 第四步,学习更全面的知识成为专业的网络工程师,如网络存储工程师、网络安全工程师的工资就可以达8000元以上,做大型企业或专业网络公司IT经理的工资就更高了,基本在万元以上。
四、网络工程师职业发展
(一)、管理员工作在中小企业,涵盖网络基础设施管理、网络操作系统管理、网络应用系统管理、网络用户管理、网络安全保密管理、信息存储备份管理和网络机房管理等几大方向。这些管理涉及到多个领域,每个领域的管理又有各自特
定的任务。
(二)、工程师工作在网络公司或者大中型企业。在网络公司中主要任务是设计并建设;在大中型企业中的主要任务是运营和维护。网络工程师其实是一个包括许多种工种的职业,不同的网络工程师工种对从业的人员的要求也不一样,对从业人员的网络管理水平的要求差别很大。专业网络工程师主要有:网络系统设计师、网络工程师、系统工程师、网络安全工程师、数据存储工程师等。
1、普通网络工程师 工作职责描述:高级网络管理员,在大企业中或是在网络公司工作;维护公司网络设备,保证公司骨干网络正常工作;对主流的网络设备非常了解。职位要求:扎实而又全面的网络知识功底;多年专业网络管理经验;对产品性能和最新技术掌握很好。
2、普通系统工程师工作职责描述:高级网络管理员,在大企业中或是在网络公司工作;维护并保证系统工作正常;对流行的OS非常了解;对系统故障的解决有丰富的经验 职位要求:扎实而又全面的网络知识功底;多年专业网络管理经验;对新OS系统和最新技术掌握很好。
3、网络系统设计师工作职责描述:公司需要建设网络,主要根据要求进行设计,客户能满意;设计项目达到全面、高的实用性和可用性;网络系统设计师是一个综合性的工种;网络和系统方面都有很好的经验。职位要求:扎实而又全面的网络知识功底;多年专业网络管理、设计经验;对网络核心技术掌握很好
4、网络存储工程师工作职责描述:主要工作在一些大的数据需要量大的公司如银行、电视台、IDC中心;有效管理公司海量数据,有存储设备测试、评估环境、系统咨询、实施指导、测试、培训、相关解决方案;灾难恢复。职位要求:有多年的网络管理经验;熟悉一些常用数据库软件;有网络存储理论知识,包括存储基础、技术及网络存储高级技术;熟悉主流存储、备份厂商的产品线;具有良好的撰写需求分析、解决方案、PPT、系统软硬件配置等方案的能力
5、网络安全工程师工作职责描述:主要保护网络安全;保护网站、邮件等服务器安全;合理布置网络结构和网络产品;对企业能进行安全评估和防护 工作要求:有多年的网络管理经验;熟悉多种网络安全技术,对各种主流的安全产品(如防火墙、防病毒、入侵检测等)有较好的理论基础和实践经验,了解各种安全产品(例如FireWall、VPN、防病毒产品、IPS等)的特点、使用方法及常用的调试技巧;精通Windows、Linux等系统环境,能进行维护管理和故障分析
(三)、专家
1、技术专家工作描述:某一行业的专家、顾问、权威;如果的确非常喜爱技术工作,而不擅长和喜欢与人沟通,则可以完全专注于自身的领域,以发展成为行业资深专家为方向和目标;发展过程比较漫长,任何一个领域的顶尖技术人才都需要长期的行业经验的累积和个人孜孜不倦的投入;优势是越老越吃香,当别人随着年龄的逐步增长而开始担心饭碗问题时,你则渐入佳境,开始进入职业发展的黄金时期。工作要求:全面的网络技术;对新技术有深刻的认识,所以要求有极强的学习能力
2、项目经理工作内容:融合技术和管理的复合性人才;参与项目谈判;项目目标和项目财务指标;划分工作内容并合理分配;指导网络工程师;控制工作的进度,按计划完成项目;组织项目会议 职位要求:多年的网络工程师经验;希望做管理;需要自己学习项目管理知识。
3、技术主管 工作任务描述: 带领技术团队创造更多的价值;在信息方面参与公司的规划和计划 职位要求:技术全面;有管理能力
第四篇:网络课程设计
湖南第一师范学院信息科学与工程系
题 目
学生姓名学 号专业班级指导教师 课程设计报告
中小型企业网络搭建 王欢 计网(1)班 王建军、李科峰
2010 年 6 月 8 日
03080130822 08
中小型企业网络搭建
一.需求分析 1.二.网络结构设计
1.网络技术选型
根据需求,采用以太网技术(快速以太网、交换式以太网、千兆位以太网)进行组网。
以太网技术:以太网的技术成熟、成本较低、互操作性强、易于使用和管理、可扩充性强.设计中利用到的其他技术如下:
VLAN技术:控制广播风暴、提高网络整体安全性、网络管理简单、提高性能等优点。
第三层交换技术:一方面支持VLAN之间通信;另一方面交换技术减少了数据包的碰撞问题。支持VLAN的交换机配合第三层功能不但具有很高的性能,而且具有充分的弹性,因此,是最好的选择 网络的冗余技术:提高网络的可靠性;链路冗余既可提高可靠性,又能均衡负载; 缺点:不适应重负荷应用环境,实时性差,存在冲突域; 动态路由协议OSPF技术: STP技术:
以太网通道技术:
广域网技术(PPP协议):
2.网络拓扑设计
3.命令配置
1.基本信息配置
SW1的基本信息配置(SW2、RT1、RT3的基本配置与SW1相同)Switch>enable //进入特权模式
Switch#config terminal //进入全局配置模式 Switch(config)#hostname SW3 //配置主机名
SW1(config)#no ip domain-lookup //禁用域名查找
SW1(config)#line console 0 //进入Console线路模式
SW1(config-line)#logging synchronous //配置Console信息显示自动换行 SW1(config-line)#no login //配置口Console登录不认证 SW1(config-line)#privilege level 15 //配置为最高特权级别 SW1(config-line)#line vty 0 4 // 进入Vty线路模式 SW1(config-line)#no login //配置Telnet登录不认证
SW1(config-line)#privilege level 15 //配置为最高特权级别,enable不需要密码
//企业总部网络
2.二层网络全局配置(1)SW1的vlan配置
SW1(config)#vtp mode transparent//配置为透明模式 SW1(config)#vlan 8-12 SW1(config-vlan)#exit SW1#show vlan //查看vlan信息
(2)STP根网桥配置
SW1(config)#spanning-tree vlan 8 priority 0 SW1(config)#spanning-tree vlan 10 priority 0 SW2(config)#spanning-tree vlan 11 priority 0
(3)STP备份根网桥配置
SW1(config)#spanning-tree vlan 8 priority 4096 SW1(config)#spanning-tree vlan 11 priority 4096 SW2(config)#spanning-tree vlan 10 priority 4096 //按vlan编号来部署STP实现负载分担:SW1为vlan 8和vlan10的根网桥,vlan 11的备份根网桥;SW2则为vlan8和vlan10的备份根网桥,vlan 11的根网桥。
3.二层网络接口配置
(1)交换机SW1-SW2间链路捆绑
SW1(config)#interface range fa0/1-2 //以太网接口1和2,注意1后面要空格 SW1(config-if-range)#switchport trunk encapsulation dot1q SW1(config-if-range)#switchport mode trunk SW1(config-if-range)#switchport trunk allowed vlan all SW1(config-if-range)#channel-group 2 mode on//手动捆绑:组2 SW2(config)#interface range fa0/1-2 //以太网接口1和2,注意1后面要空格 SW2(config-if-range)#switchport trunk encapsulation dot1q SW2(config-if-range)#switchport mode trunk SW2(config-if-range)#switchport trunk allowed vlan all SW2(config-if-range)#channel-group 2 mode on//手动捆绑:组2
SW1#show etherchannel summary//查看以太网通道信息
(2)SW1的二层接口配置
SW1(config)#interface fa0/2 SW1(config-if)#switchport mode access SW1(config-if)#switchport access vlan 12 SW1(config-if)#spanning-tree portfast //配置成Portfast端口,加快收敛速度。
(3)SW2的二层接口配置
SW2(config)#interface fa0/10 SW2(config-if)#switchport mode access SW2(config-if)#switchport access vlan 10 SW2(config-if)#spanning-tree portfast //配置成Portfast端口,加快收敛速度。
SW2(config)#interface fa0/11 SW2(config-if)#switchport mode access SW2(config-if)#switchport access vlan 11 SW2(config-if)#spanning-tree portfast //配置成Portfast端口,加快收敛速度。
SW2(config)#interface fa0/12 SW2(config-if)#switchport mode access SW2(config-if)#switchport access vlan 11 SW2(config-if)#spanning-tree portfast //配置成Portfast端口,加快收敛速度。
(4)SW2的网管配置
SW2(config)#interface vlan 8 SW2(config-if)#ip address 192.168.8.130 255.255.255.128 SW2(config-if)#no shutdown SW2(config-if)#exit SW2(config)#ip default-gateway 192.168.8.129
SW1#show spanning-tree brief//查看STP简要信息
4.三层网络接口配置
(1)SW1的三层网络接口配置
SW1(config)#ip routing //启动三层交换机的路由功能 SW1(config)#interface vlan 8 //Vlan 8 的路由点
SW1(config-if)#ip address 192.168.8.129 255.255.255.128 SW1(config-if)#no shutdown SW1(config-if)#exit SW1(config)#interface vlan 10 //Vlan 10 的路由点 SW1(config-if)#ip address 192.168.10.1 255.255.255.0 SW1(config-if)#no shutdown SW1(config-if)#exit SW1(config)#interface vlan 11 //Vlan 11的路由点 SW1(config-if)#ip address 192.168.11.1 255.255.255.0 SW1(config-if)#no shutdown SW1(config-if)#exit SW1(config)#interface vlan 12 //Vlan 12的路由点
SW1(config-if)#ip address 192.168.12.1 255.255.255.0 SW1(config-if)#no shutdown SW1(config-if)#exit
SW1#show ip int brief //查看接口简要信息
(2)SW1-RT1的三层链路配置
SW1(config)#interface fa0/3 //上连接口:上连RT的E0/0 SW1(config-if)#no switchport //配置接口为三层接口 SW1(config-if)#ip address 192.168.1.1 255.255.255.248 SW1(config-if)#no shutdown
RT1(config)#interface ethernet 1/1 RT1(config-if)#ip address 192.168.1.2 255.255.255.248
RT1(config-if)#no shutdown
SW1#show ip interface brief //查看接口简要信息,查看接口是否配置成功。RT1#show ip interface brief //查看接口简要信息,查看接口是否配置成功。SW1#ping 192.168.1.2//ping 对端,检测链路是否连通。RT1#ping 192.168.1.1//ping 对端,检测链路是否连通。
5.边界网络对接(静态路由配置)
SW1(config)#ip route 0.0.0.0 0.0.0.0 192.168.1.2 RT1(config)#ip route 192.168.0.0 255.255.0.0 192.168.1.1
//企业分部网络
6.RT1的Loopback0配置、局域网接口配置及测试
RT1(config)#interface loopback 0 //配置回环接口 0 RT1(config-if)#ip address 192.168.0.1 255.255.255.255//配置回环接口的IP地址
RT1(config)#interface ethernet 1/2//配置局域网接口 RT1(config-if)#ip address 192.168.2.1 255.255.255.0 RT1(config-if)#no shutdown//开启端口 RT1(config-if)#exit
RT1#show ip int brief //查看所有接口的信息
7.RT3的Loopback0配置、局域网接口配置及测试
RT3(config)#interface loopback 0 //配置回环接口 0 RT3(config-if)#ip address 192.168.0.3 255.255.255.255//配置回环接口的IP地址
RT3(config)#interface ethernet 1/3//配置局域网接口 RT3(config-if)#ip address 192.168.3.1 255.255.255.0 RT3(config-if)#no shutdown//开启端口 RT3(config-if)#exit
RT3show ip int brief //查看所有接口的信息
8.RT1-RT3的广域网链路配置及测试 RT1(config)#interface serial 0/0 RT1(config-if)#clock rate 1000000 //DCE端配置时钟速率,1Mbps RT1(config-if)#bandwith 1000 //接口逻辑带宽,用于计算接口的开销值,单位kbps;在实际项目中,接口逻辑带 宽应配置成与接口物理带宽一致且两端的bandwith 必须一致。RT1(config-if)#encapsulation ppp //配置数据链路层封装 RT1(config-if)#ip address 192.168.0.1 255.255.255.252 RT1(config-if)#no shutdown //打开接口
RT1(config-if)#end
RT3(config)#interface serial 0/0 RT3(config-if)#bandwith 1000 //接口逻辑带宽,用于计算接口的开销值,单位kbps;在实际项目中,接口逻辑带 宽应配置成与接口物理带宽一致且两端的bandwith 必须一致。RT3(config-if)#encapsulation ppp//配置数据链路层封装 RT3(config-if)#ip address 192.168.0.3 255.255.255.252 RT3(config-if)#no shutdown RT3(config-if)#end
RT1#show ip interface brief //查看接口简要信息 RT3#show ip interface brief //查看接口简要信息
9.OSPF路由配置
(1)RT1的OSPF配置
RT1(config)#router ospf 1 //开启OSPF进程1,标识不同的OSPF的进程。RT1(config-router)#router-id 1.1.1.1 //手动配置OSPF Router-ID
RT1(config-router)#network 192.168.0.1 0.0.0.0 area 0//发布Loopback 0。这里的0.0.0.0是采用的反掩码形式表是,area 0表示骨干区域。RT1(config-router)#network 192.168.1.0 0.0.0.7 area 0 RT1(config-router)#network 192.168.0.4 0.0.0.3 area 0 RT1(config-router)#network 192.168.2.0 0.0.0.255 area 0 RT1(config-router)#passive-interface e2/1 //为业务网段配置被动接口 RT1(config-router)#passive-interface e1/1
(2)RT3的OSPF配置
RT3(config)#router ospf 1 //开启OSPF进程1,标识不同的OSPF的进程。RT3(config-router)#router-id 3.3.3.3 //手动配置OSPF Router-ID
RT3(config-router)#network 192.168.0.3 0.0.0.0 area 0//发布Loopback 0。这里的0.0.0.0是采用的反掩码形式表是,area 0表示骨干区域。RT3(config-router)#network 192.168.0.4 0.0.0.3 area 0 RT3(config-router)#network 192.168.3.0 0.0.0.255 area 0 RT3(config-router)#passive-interface e3/1 //为业务网段配置被动接口
3.子网划分及IP分配方案
4.网络服务器规划
三.网络设备选型 四.网络软件选型
第五篇:网络课程设计
南 华 大 学
网 络 安
题目:RSA加解密算法 姓名 学号:
导师: 全
非对称加密算法的实现
非对称密码系统即公钥密码系统,主流分为基于大整数分解难度,基于离散
一、设计内容、算法原理
对数计算难度和椭圆曲线公钥密码三类。本次实验主要介绍RSA、ELG加密。
二、RSA 1).RSA公钥密码算法原理和过程:
Alice要求Bob将信息m用RSA方法加密传送回来,Alice找到大素数p,q, 令n=pq, 取a>1满足(a,(n))1,再找d使得da1(mod(n)),然后
Alice将n、a作为加密密钥(公钥)发送给Bob, 这里p,q,d,(n)都是私钥,要求保密,用作解密。
Bob 将原文m< 这里大素数要求足够大,通常要求是大于100位的十进制数。有资料表明,几十位的素数构造的RSA公钥密码系统是不安全的。因为位数较多,加密效率就不 dd并将密文m(modn),aadadEA传送给 Alice。 得到原文 DA(EA)EA(m)mm(n)k1m(modn)够高,因此,通常用来加密对称密码的密钥,例如,加密序列密码的密钥。 Maple简介:Maple是一个具有强大符号运算能力、图形处理能力的交互式计算机代数系统,它可以进行各种科学计算和数学推理,它的高精度数值计算能力对于处理大数的计算和素性判定有其独特的功能。它适合于所有需要科学计算的人.。 RSA算法可以实现数字签名。B向A进行签名,则 1、B不能否认进行了签名 2、A不能篡改B的签名 设A(如网站)的公钥为EA,私钥为DA B(签名者)的公钥为 EB,私钥为DB,B的原文m, B用DB作用m , 得到DB(m),再用A提供的EA作用,得到 EA(DB(m))C,B将C和EB发给A, A收到后,先用DA作用于C再用EB作用 EB(DA(C))B不能否认进行了签名,因为AEB(DA(EA(DB(m))。)这时,m用B提供的EB算出;A不能篡改B的签名,因为B可以用A提供的EA和DB算出,而A不知道DB,改动后算不出上面等式。2)、RSA公钥密码算法程序流程 1、A的准备工作 (1)产生两个u到v位的随机数,如果是偶数,则加1,然后判别是否是素数,如果是,赋值给p,q(2)令n=pq, t=(p-1)(q-1);(3)找1amin{p1,q1} 满足(a,t)1,找一个不能整除t的素数,依次试除。 (4)解ax1(modt)相当于求解 tyax1,将 t,a辗转相除,得到 n利用P01,P1q1,PkqkPk1Pk2,x(1)Pn,再除以q1,q2,,qn,给d(5)将公钥 n,a发送给B 2、B的加密过程 t,再赋值(1) 原文m长度设为56位,远小于n,保证了(m, n)=1, 加密得到密文sm(modn),分am为十进制数字和字符串两种情况 (2)将密文s传送给 A。 3、A的解密过程 A收到s后,计算 先分别求解 dms(modn)dd得到原文m。直接计算速度太慢,且溢出,b1s(modp,)b2s(modq),然后利用孙子定理解同余式组 xb1(modp),xb2(modq),它的解xM1M1'b1M2M2'b2(modn)就是原文。 2反复利用 d[d]r来计算 m(modp)可以大大加快运行速度。 d3)、基于RSA算法的数字签名程序流程 B向阿A进行数字签名。只需A和B都拥有密钥生成、加密和解密程序。A运行密钥生成程序,将公钥EA ={n,a}发给B, 将私钥DA密。 B运行密钥生成程序,将公钥EB ={n1,a1}发给A, 将私钥DB保密。 B计算 签名m< A收到后,先计算DA(C)(C)d(DB)(ma1d1{p,q,d,(n)}保 {p1,q1,d1,(n1)}再计算C(DB)(modn)并m(modn1),d1a((DB))DBadadDB(n)k1再计算 DB(modn),)ma1a1d1m(n1k)得到签名m(modn1)1m。 三、ELG 四、设计过程、设计的特点和结果、心得 1)、密钥生成 选出一个大素数 p 选出 d 作为群G < Zp*, >中的一个成员,使得 1 d p 2 选出 e1作为群 G < Zp*, > 中的一个本原根 e2 e1d mod p C 2P e2r)mod p // C1和C2是密文 Public_key (e1, e2, p)// 公开宣布 Private_key d //保密 2)、解密 P C2(C1d)1] mod p // P 是明文 3)、证明 C2(C1d)1] mod p =P e2r)(e1dr)1 mod p = P 五、实现环境 Windows xp Maple13 + mapletoolbox+matlab 混合编程 六、编写的源程序代码 1、RSA_System RSA_SYSTEM.m function varargout = RSA_SYSTEM(varargin) gui_Singleton = 1; gui_State = struct('gui_Name', mfilename,...'gui_Singleton', gui_Singleton,...'gui_OpeningFcn', @RSA_SYSTEM_OpeningFcn,...'gui_OutputFcn', @RSA_SYSTEM_OutputFcn,...'gui_LayoutFcn', [] ,...'gui_Callback', []);if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1});end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});else gui_mainfcn(gui_State, varargin{:});end function RSA_SYSTEM_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;X = imread('back.jpg'); subplot('position',[-0.00,-0.3,1.0,1.6]);imagesc(X);colormap(gray);axis image off; guidata(hObject, handles); function varargout = RSA_SYSTEM_OutputFcn(hObject, eventdata, handles)varargout{1} = handles.output; function primeP_Callback(hObject, eventdata, handles) function primeP_CreateFcn(hObject, eventdata, handles)if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');end function primeQ_Callback(hObject, eventdata, handles) function primeQ_CreateFcn(hObject, eventdata, handles)if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');end function phN_Callback(hObject, eventdata, handles) function phN_CreateFcn(hObject, eventdata, handles)if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');end function publicN_Callback(hObject, eventdata, handles) function publicN_CreateFcn(hObject, eventdata, handles)if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');end function PruducPrime_Callback(hObject, eventdata, handles) P=maple('nextprime(rand(10^120)())');Q=maple('nextprime(rand(10^120)())');N=P*Q; phN=(Q-1)*(P-1); set(handles.primeP,'String',char(P))set(handles.primeQ,'String',char(Q))set(handles.publicN,'String',char(N))set(handles.phN,'String',char(phN))set(handles.Private_Key,'Enable','on');set(handles.Selecte_String,'Enable','on');set(handles.SelecteNum,'Enable','on');%计算私钥d global d e e=2^16+1;format rat E=1/e;setmaple('e',e);setmaple('E',E);setmaple('n2',phN);setmaple('n',N); d=maple('convert(E,rational)mod n2');setmaple('d',d); function SelecteNum_Callback(hObject, eventdata, handles) [FileName,PathName,FilterIndex] = uigetfile;if FilterIndex~=0 global m im=importdata(strcat(PathName,FileName));is=isa(im,'cell');if is==0 m=csvread(strcat(PathName,FileName));set(handles.Num_Secret,'Enable','on');end if is==1 msgbox('请选择数字型文件!','警告:');end end function Num_Secret_Callback(hObject, eventdata, handles) fidout=fopen('密文.txt','w');global m for i=1:length(m)M=m(i); setmaple('m',M); C=maple('Power(m,e)mod n'); fprintf(fidout,'%snn',char(C)); end msgbox('恭喜!你已成功加密,产生文件为“密文.txt”','温馨提示:');set(handles.Num_CodeBreak,'Enable','on'); function Num_CodeBreak_Callback(hObject, eventdata, handles) %以下是解密过程 fidin=fopen('密文.txt');fidout=fopen('明文.txt','w'); while ~feof(fidin) % 判断是否为文件末尾 tline=fgetl(fidin); % 从文件读行 if isempty(tline)==0 %若该行非空 midvar=sscanf(tline,'%f'); setmaple('C',tline); m=maple('Power(C,d)mod n') fprintf(fidout,'%snn',char(m)); end continue % 如果是非数字继续下一次循环 end fclose(fidout); msgbox('恭喜!你已成功解密,产生文件为“明文.txt”','温馨提示:');set(handles.Num_CodeBreak,'Enable','off');set(handles.Num_Secret,'Enable','off'); function Selecte_String_Callback(hObject, eventdata, handles) [FileName,PathName,FilterIndex] = uigetfile;if FilterIndex~=0 global path path=strcat(PathName,FileName); set(handles.String_Secret,'Enable','on');end function String_Secret_Callback(hObject, eventdata, handles) global path a=importdata(path,'%s');is=isa(a,'double');if is ~= 1 b=cell2mat(a);mm=double(b); fidout1=fopen('密文1.txt','w');for i=1:length(mm)M=mm(i); setmaple('m',M); C=maple('convert((Power(m,e)mod n),binary)');fprintf(fidout1,'%snn',char(C)); end msgbox('恭喜!你已成功加密,产生文件为“密文1.txt”','温馨提示:');set(handles.String_CodeBreak,'Enable','on');end if is==1 msgbox('请选择字符型文件!','警告:');set(handles.String_Secret,'Enable','off');end function String_CodeBreak_Callback(hObject, eventdata, handles) fidin=fopen('密文1.txt');fidout=fopen('明文1.txt','w'); while ~feof(fidin) % 判断是否为文件末尾 tline=fgetl(fidin); % 从文件读行 if isempty(tline)==0 %若该行非空 midvar=sscanf(tline,'%f'); setmaple('C',tline); m=maple('Power(convert(C,decimal,binary),d)mod n'); m=double(m); m=char(m); fprintf(fidout,'%s',m); end continue % 如果是非数字继续下一次循环 end fclose(fidout); msgbox('恭喜!你已成功解密,产生文件为“明文1.txt”','温馨提示:');set(handles.String_CodeBreak,'Enable','off');set(handles.String_Secret,'Enable','off'); function Private_Key_Callback(hObject, eventdata, handles)global d set(handles.privateKey,'String',char(d)); function privateKey_Callback(hObject, eventdata, handles) function privateKey_CreateFcn(hObject, eventdata, handles)if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');end %------function Open_Callback(hObject, eventdata, handles)uiopen; %------function Close_Callback(hObject, eventdata, handles)close(gcf); %------function ELG_Callback(hObject, eventdata, handles)ELG_SYSTEM delete(handles.RSA_SYSTEM); 2、ELG_System ELG_SYSTEM.m function varargout = ELG_SYSTEM(varargin) gui_Singleton = 1; gui_State = struct('gui_Name', mfilename,...'gui_Singleton', gui_Singleton,...'gui_OpeningFcn', @ELG_SYSTEM_OpeningFcn,...'gui_OutputFcn', @ELG_SYSTEM_OutputFcn,...'gui_LayoutFcn', [] ,...'gui_Callback', []);if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1});end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});else gui_mainfcn(gui_State, varargin{:});end function ELG_SYSTEM_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;X = imread('key.jpg'); subplot('position',[-0.00,-0.4,1.4,1.7]);imagesc(X);colormap(gray);axis image off; guidata(hObject, handles); function varargout = ELG_SYSTEM_OutputFcn(hObject, eventdata, handles) varargout{1} = handles.output; %------function Open_Callback(hObject, eventdata, handles) uiopen; %------function Close_Callback(hObject, eventdata, handles) close(gcf); %------function RSA_Callback(hObject, eventdata, handles) RSA_SYSTEM delete(handles.ELG_SYSTEM); function primeP_Callback(hObject, eventdata, handles) function primeP_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');end function public_ha_Callback(hObject, eventdata, handles) function public_ha_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');end function Produce_PublicKey_Callback(hObject, eventdata, handles) function ProduecPublicKey_Callback(hObject, eventdata, handles) global xa p ha p=maple('m := proc(n)global a, q;for a do q := nextprime((rand(10^n))());if isprime(4*q+1)= true then break end if end do;4*q+1 end proc;m(150)');setmaple('p',p); set(handles.primeP,'String',char(p));xa=maple('rand(10^100)()');setmaple('xa',xa); ha=maple('2 &^ xa mod p');setmaple('ha',ha); set(handles.public_ha,'String',char(ha));set(handles.PrivateOut,'Enable','on');set(handles.Select_String,'Enable','on');set(handles.Select_Num,'Enable','on'); function Select_Num_Callback(hObject, eventdata, handles) [FileName,PathName,FilterIndex] = uigetfile;if FilterIndex~=0 global m im=importdata(strcat(PathName,FileName));is=isa(im,'cell');if is==0 m=csvread(strcat(PathName,FileName));set(handles.Code_Num,'Enable','on');end if is==1 msgbox('请选择数字型文件!','警告:');end end function Code_Num_Callback(hObject, eventdata, handles) fidout=fopen('密文.txt','w');global m for i=1:length(m)M=m(i); setmaple('m',M); k=maple('rand(10^150)()');setmaple('k',k);U=maple('2 &^ k mod p');v=maple('ha &^ k mod p');setmaple('v',v);V=maple('m*v mod p'); fprintf(fidout,'%sn',char(U));fprintf(fidout,'%snn',char(V));end msgbox('恭喜!你已成功加密,产生文件为“密文.txt”','温馨提示:');set(handles.Break_Num,'Enable','on'); function Break_Num_Callback(hObject, eventdata, handles) %以下是解密过程 fidin=fopen('密文.txt');fidout=fopen('明文.txt','w'); while ~feof(fidin) % 判断是否为文件末尾 tline=fgetl(fidin); % 从文件读行 if isempty(tline)==0 %若该行非空 t1line=''; midvar=sscanf(tline,'%f'); t1line=tline; tline=fgetl(fidin); midvar=sscanf(tline,'%f'); setmaple('C1',t1line); setmaple('C2',tline); m=maple('convert(C2/C1 &^ xa, rational)mod p'); fprintf(fidout,'%snn',char(m)); end continue % 如果是非数字继续下一次循环 end fclose(fidout); msgbox('恭喜!你已成功解密,产生文件为“明文.txt”','温馨提示:');set(handles.Code_Num,'Enable','off');set(handles.Break_Num,'Enable','off'); %---Executes on button press in Select_String.function Select_String_Callback(hObject, eventdata, handles) [FileName,PathName,FilterIndex] = uigetfile;if FilterIndex~=0 global path path=strcat(PathName,FileName); set(handles.Code_String,'Enable','on');end %---Executes on button press in Code_String.function Code_String_Callback(hObject, eventdata, handles) global path a=importdata(path,'%s');is=isa(a,'double');if is ~= 1 b=cell2mat(a);mm=double(b); fidout1=fopen('密文1.txt','w');for i=1:length(mm)M=mm(i); setmaple('m',M); k=maple('rand(10^150)()');setmaple('k',k); U=maple('convert(2 &^ k mod p,binary)');v=maple('ha &^ k mod p');setmaple('v',v); V=maple('convert(m*v mod p,binary)');fprintf(fidout1,'%sn',char(U)); fprintf(fidout1,'%snn',char(V)); end msgbox('恭喜!你已成功加密,产生文件为“密文1.txt”','温馨提示:');set(handles.Break_String,'Enable','on');end if is==1 msgbox('请选择字符型文件!','警告:'); set(handles.Break_String,'Enable','off');end %---Executes on button press in Break_String.function Break_String_Callback(hObject, eventdata, handles) fidin=fopen('密文1.txt');fidout=fopen('明文1.txt','w'); while ~feof(fidin) % 判断是否为文件末尾 tline=fgetl(fidin); % 从文件读行 if isempty(tline)==0 %若该行非空 t1line=''; midvar=sscanf(tline,'%f'); t1line=tline; tline=fgetl(fidin); midvar=sscanf(tline,'%f'); setmaple('C1',t1line); setmaple('C2',tline); % m=maple('Power(convert(C2,decimal,binary),d)mod n'); m=maple('convert(convert(C2,decimal,binary)/convert(C1,decimal,binary)&^ xa, rational)mod p'); m=double(m); m=char(m); fprintf(fidout,'%s',m); end continue % 如果是非数字继续下一次循环 end fclose(fidout); msgbox('恭喜!你已成功解密,产生文件为“明文1.txt”','温馨提示:');set(handles.Code_String,'Enable','off');set(handles.Break_String,'Enable','off'); %---Executes on button press in PrivateOut.function PrivateOut_Callback(hObject, eventdata, handles) global xa set(handles.Private_Key,'String',char(xa)); function Private_Key_Callback(hObject, eventdata, handles) function Private_Key_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');end 附:RSA运行演示(ELG类似)