华北电力大学-网络信息安全综合实验报告
华北电力大学-网络信息安全综合实验报告
综合实验报告( 2013 -- 2014 年度第 1 学期)名称:网络信息安全综合实验题目:RSA公钥加密解密院系:计算机系班级:网络工程学号:学生姓名:指导教师:李天设计周数: 1 周成绩:日期:2013年1月18日一、综合实验的目的与要求要求:了解RSA产生公钥和私钥的方法,掌握RSA 的加密、解密过程,编写程序设计RSA 加解密工具。
RSA加解密参考:RSA的安全性依赖于大数分解,公钥和私钥都是两个大素数(大于100个十进制位)的函数。
据猜测,从一个密钥和密文推断出明文的难度等同于分解两个大素数的积。
密钥的产生:1. 选择两个保密的大素数p和q;2. 计算n=p*q和欧拉函数值E(n)=(p-1)(q-1);3. 选一整数e,且满足1<e<E(n)和gcd(E(n),e)=1;4. 计算d,且满足d*e=1 mod E(n);5. 公钥为{e, n},私钥{d, n}。
二、RSA算法的描述1.RSA 依赖大数运算,目前主流RSA 算法都建立在1024位的大数运算之上。
而大多数的编译器只能支持到64位的整数运算,即我们在运算中所使用的整数必须小于等于64位,即:0xffffffffffffffff,也就是18446744073709551615,这远远达不到RSA 的需要,于是需要专门建立大数运算库来解决这一问题。
最简单的办法是将大数当作数组进行处理,也就是将大数用0—9这十个数字组成的数组进行表示,然后模拟人们手工进行―竖式计算‖的过程编写其加减乘除函数。
但是这样做效率很低,因为二进制为1024位的大数其十进制也有三百多位,对于任何一种运算,都需要在两个有数百个元素的数组空间上做多重循环,还需要许多额外的空间存放计算的进退位标志及中间结果。
另外,对于某些特殊的运算而言,采用二进制会使计算过程大大简化,这种大数表示方法转化成二进制显然非常麻烦,所以在某些实例中则干脆采用了二进制数组的方法来记录大数,这样效率就更低了。
华北电力大学计算机网络实验报告
计算机网络实验报告( 2012--2013年度第二学期)实验名称:计算机网络实验(课程设计) 院系:控制与计算机工程学院班级:软件1002 班学生姓名:汪豪学号:20成绩:指导教师:设计周数:1周2013年6月目录实验一数据链路层:以太网帧的构成 0一、实验目的 0二、实验环境配置 0三、实验原理 (1)1.两种不同的MAC帧格式 (1)2. MAC层的硬件地址 (1)四、实验方法与步骤 (1)练习一:编辑并发送LLC帧 (1)练习二:编辑并发送MAC广播帧 (2)练习三:领略真实的MAC帧 (2)练习四:理解MAC地址的作用 (2)五、实验结果与数据处理 (3)练习一:编辑并发送LLC帧 (3)实验截图: (3)六、讨论与结论 (8)1、对实验结果、实验过程中的问题及处理方法等进行分析和讨论。
(8)2、思考题: (8)实验二网络层:地址转换协议ARP (9)一、实验目的 (9)二、实验环境配置 (9)三、实验原理 (9)1、使用IP协议的以太网中ARP报文格式 (9)2、ARP地址解析过程 (10)四、实验方法与步骤 (10)练习一:领略真实的ARP(同一子网) (11)练习二:编辑并发送ARP报文(同一子网) (11)练习三:跨路由地址解析(不同子网) (12)五、实验结果与数据处理 (12)六、讨论与结论 (16)1、对实验结果、实验过程中的问题及处理方法等进行分析和讨论。
(16)2、思考题 (17)实验三网络层:网际协议IP (18)一、实验目的 (18)二、实验环境配置 (18)三、实验原理 (19)1、IP报文格式 (19)2、IP分片 (19)3、IP路由表 (19)4、路由选择过程 (20)四、实验步骤 (20)练习一:编辑并发送IP数据报 (20)练习二:特殊的IP地址 (21)练习三:IP数据报分片 (23)练习四:子网掩码与路由转发 (23)五、实验结果与数据处理 (24)练习一:编辑并发送IP数据报 (24)练习二:特殊的IP地址 (24)练习三:IP数据报分片 (25)练习四:子网掩码与路由转发 (25)六、讨论与结论 (26)一、实验目的 (27)二、实验环境配置 (27)三、实验原理 (27)目的不可达报文 (27)源端抑制报文 (28)超时报文 (28)参数问题 (29)改变路由 (29)回送请求和回答 (29)时间戳请求和回答 (29)地址掩码请求和回答 (29)路由询问和通告 (30)四、实验方法与步骤 (30)练习一:运行Ping命令 (30)练习二:ICMP查询报文 (30)练习三:ICMP差错报文 (31)五、实验结果与数据处理 (33)六、讨论与结论 (36)1、对实验结果、实验过程中的问题及处理方法等进行分析和讨论。
网络信息安全实验报告 (2)范文精简处理
网络信息安全实验报告 (2)网络信息安全实验报告 (2)1. 实验目的本次实验旨在通过对网络信息安全的实际操作,加深对网络信息安全的理论知识的理解,并学习常见的网络信息安全攻防技术。
2. 实验环境和工具操作系统:Windows 10虚拟机:VirtualBox网络安全软件:Wireshark、Nmap、Metasploit3. 实验内容本次实验分为三个部分,分别是网络流量分析、主机扫描和漏洞利用。
3.1 网络流量分析在这一部分实验中,我们使用Wireshark工具对网络流量进行分析。
我们通过Wireshark捕获了一段时间内的网络流量数据,然后对数据进行分析。
我们从捕获的网络流量数据中提取了HTTP请求和响应的信息,分析了其中的URL、请求方法、状态码等内容。
通过对网络流量数据的分析,我们能够了解到网络通信过程中潜在的风险和安全问题。
3.2 主机扫描在这一部分实验中,我们使用Nmap工具对目标主机进行扫描。
Nmap是一款常用的网络扫描工具,能够提供目标主机的网络服务信息。
我们通过Nmap扫描了目标主机的开放端口和运行的服务信息,并对扫描结果进行了分析。
通过分析扫描结果,我们可以获取到目标主机的网络拓扑结构和可能存在的安全隐患。
3.3 漏洞利用在这一部分实验中,我们使用Metasploit工具对目标主机进行漏洞利用。
Metasploit是一个集成了各种漏洞利用代码的工具,能够帮助我们进行渗透测试和漏洞检测。
我们在目标主机中故意设置了一个漏洞,在使用Metasploit进行漏洞利用的过程中,成功获取到了目标主机的管理员权限。
通过这个实验,我们深入了解了漏洞利用的原理和方法,并加深了对网络安全的认识。
4. 实验通过这次实验,我们对网络信息安全的理论知识有了更深入的了解,也通过实际操作加深了对网络安全攻防技术的掌握。
我们学会了使用Wireshark对网络流量进行分析,能够从中提取出有价值的信息。
我们还学会了使用Nmap对目标主机进行扫描,能够获取到目标主机的网络服务信息。
网络信息安全实验报告 (2)
网络信息安全实验报告 (2)网络信息安全实验报告 (2)实验背景网络信息安全是保护计算机网络系统免受未经授权的访问、破坏、修改或泄露的活动的过程。
随着互联网的普及和信息技术的迅猛发展,网络信息安全问题日益突出,对于保护个人隐私和企业机密至关重要。
对网络信息安全进行实验和研究具有重要意义。
实验目的本实验旨在:1. 了解常见的网络攻击和防御手段;2. 通过实践操作,掌握网络信息安全的基本原理和技术;3. 培养信息安全意识和应对能力。
实验内容1. 网络攻击类型在实验中,我们了解了以下常见的网络攻击类型:攻击DDoS 攻击网络钓鱼恶意软件攻击SQL 注入攻击社会工程学攻击2. 防御手段我们学习了一些常见的网络信息安全防御手段:防火墙权限控制数据加密安全补丁管理网络流量监控安全培训和意识教育3. 实验操作在本次实验中,我们实践操作了以下内容:1. 实验了如何使用防火墙设置网络安全规则;2. 通过模拟 DDoS 攻击,了网络防御能力;3. 分析了实际情况下的网络钓鱼攻击,并提出了相应的防御策略;4. 研究了恶意软件的传播方式和防御措施;5. 了解了 SQL 注入攻击的原理,并编写了防御代码;6. 学习了社会工程学攻击的案例,并讨论了防范措施。
实验结果与分析通过本次实验,我们掌握了网络信息安全的基本原理和技术,并实践了相应的操作。
我们深入了解了各种网络攻击类型和防御手段,提高了对网络信息安全的认识和应对能力。
实验通过本次实验,我们进一步认识到网络信息安全的重要性,并学习了一些常见的防御手段。
在实践操作中,我们发现防御网络攻击需要综合运用多种技术手段,并不断更新和升级,以应对不断变化和进化的威胁。
,我们也认识到网络信息安全是一个复杂而庞大的领域,需要不断深入研究和学习,提高自身的技术水平和综合能力。
改进建议在今后的实验中,可以进一步拓展实验内容,涉及更多的网络攻击类型和防御手段。
可以加强实践操作,提供更多的场景和案例,培养实际应用能力。
华北电力大学网络综合实验
综合实验报告( 2013 -- 2014 年度第二学期)名称:网络综合实验题目:端口扫描程序和天气查询院系:计算机系班级:学号:学生姓名:指导教师:李丽芬刘晓峰曹锦纲设计周数: 2 周成绩:日期:2014年6月14日一、目的与要求1.任务:设计并实现一个端口扫描程序,检测某个IP或某段IP的计算机的端口工作情况。
2.目的:加深对课堂讲授知识的理解,熟练掌握基本的网络编程技术和方法,建立网络编程整体概念,使得学生初步具有研究、设计、编制和调试网络程序的能力。
3.要求:熟悉有关定义、概念和实现算法,设计出程序流程框图和数据结构,编写出完整的源程序,基本功能完善,方便易用,操作无误。
4.学生要求人数:1人。
二、主要内容1.编写一个端口扫描程序,能够显示某个IP或某段IP的计算机的某一个或某些端口是否正在工作。
基本工作过程如下:(1) 设定好一定的端口扫描范围;(2) 设定每个端口扫描的次数,因为有可能有的端口一次扫描可能不通;(3) 创建socket,通过socket的connect方法来连接远程IP地址以及对应的端口;(4) 如果返回false,表示端口没有开放,否则端口开放。
三、进度计划四、设计成果要求1.完成规定的实验任务,保质保量;2.完成综合实验报告,要求格式规范,内容具体而翔实,应体现自身所做的工作,注重对实验思路的归纳和对问题解决过程的总结。
五、考核方式1.平时成绩+验收答辩+实验报告;2.五级分制。
3.学生姓名:艾壮指导教师:李丽芬刘晓峰曹锦纲2014 年6月14日(2)天气查询1目的与要求1.1任务:利用Web Service技术实现天气预报查询。
1.2目的:学习在网络应用程序中创建和使用Web服务。
Web Service由于其跨平台的优越性,被越来越多的网站所重用。
了解其实现原理及使用方法,有利于了解未来的网络开发技术。
1.3要求:利用Web Service 技术,实现一个查询实时天气预报的网站,要求界面美观,方便易用;通过课程设计学生应该具备初步分析、设计和开发网络应用软件的能力,具备分析与检查软件错误、解决和处理实验结果的能力。
网络技术基础实验报告(华北电力大学)1
网络技术基础实验报告实验环境VB 6.0实验名称实验一:熟悉VB环境及UDP通信实验程序的设计实验目的1.通过实验熟悉VB语言开发平台。
2.通过实验进一步理解UDP通信协议,掌握UDP通信协议的特点。
实验原理在TCP/IP模型中,UDP为网络层以上和应用层以下提供了一个简单的接口。
UDP只提供数据的不可靠传递,它一旦把应用程序发给网络层的数据发送出去,就不保留数据备份(所以UDP有时候也被认为是不可靠的数据报协议)。
UDP在IP数据报的头部仅仅加入了复用和数据校验(字段)。
用户数据文报协议 (UDP) 是一个无连接协议。
跟 TCP 的操作不同,计算机并不建立连接。
另外,UDP应用程序可以是客户机,也可以是服务器。
传输层为了传输数据,首先要设置本机的使用协议和本机端口号。
然后,本机计算机只需将RemoteHost设置为需要聊天的计算机的Internet地址,并将RemotePort属性设置为跟需要聊天的计算机的LocalPort属性相同的端口,并调用SendData方法来发送信息。
最后,本台计算机使用 DataArrival事件内的 GetData 方法来获取对方计算机已发送的信息。
应用层UDP TCPIP各种网络接口实验内容实验步骤:1.用自己的名字建立子目录。
2.进入VB6.0,双击StandardEXE。
3.出现标准窗体,调整窗体大小到适当尺寸。
4.工程名改为UdpTest,窗体名改为FrmMain, 窗体的caprion属性改为“聊天程序”。
5.添加TextBox控件,名字改为IPAdr,Text属性为空,用以输入聊天对象的IP地址。
6.添加两个Lable控件,一个作为背景色,一个作为前景色,属性改为对方“IP地址”,为了使文字在lable的正中央,调整两个lable的叠放位置。
7.添加CommandButton控件,Caption属性改为“确定”,用以确定IP地址。
实验内容8.添加TextBox控件,名字改为TextRecieve,Text属性为空,MultiLine属性为True,ScrollBars属性为2,用以显示接受聊天内容。
网络与信息安全实验报告
网络与信息安全实验报告一、实验目的通过本次实验,对网络与信息安全领域中常见的攻击手段进行学习和实践,了解网络安全的重要性,提高网络安全意识和技能,加强信息安全保护能力。
二、实验工具1. Wireshark:用于网络流量的抓取和分析;2. Burp Suite:用于网络应用的漏洞扫描和攻击。
三、实验内容1.ARP欺骗攻击在实验环境中,使用ARP欺骗攻击工具发送伪造的ARP响应包,将网关的MAC地址欺骗为攻击者的MAC地址,使得目标主机发送的数据包会通过攻击者的机器。
2.DNS欺骗攻击在实验环境中,使用DNS欺骗攻击工具发送伪造的DNS响应包,将合法的域名解析到攻击者控制的IP地址上,使得用户访问合法网站时会被重定向到攻击者的网站。
3.DOS攻击在实验环境中,使用DOS攻击工具发送大量无效的数据包或占用大量资源的请求,使得目标系统的服务不可用。
四、实验结果与分析1.ARP欺骗攻击在实验中,通过发送ARP欺骗攻击工具生成的ARP响应包,成功将网关的MAC地址欺骗为攻击者的MAC地址。
在Wireshark中可以看到目标主机发送的数据包会通过攻击者的机器。
2.DNS欺骗攻击在实验中,通过发送DNS欺骗攻击工具生成的DNS响应包,成功将合法的域名解析到攻击者控制的IP地址上。
在Wireshark中可以看到用户访问合法网站时会被重定向到攻击者的网站。
3.DOS攻击在实验中,通过发送DOS攻击工具生成的大量无效数据包或占用大量资源的请求,成功使得目标系统的服务不可用。
通过对目标系统的网络流量进行分析,可以观察到网络流量骤增,且大部分请求无效,导致网络拥堵和服务不可用。
五、总结与建议通过本次实验,深入了解了网络与信息安全领域中常见的攻击手段,了解到网络安全的重要性。
在实践过程中,能够观察到攻击者是如何利用这些手段进行攻击和入侵的。
在进行网络与信息安全保护时,需要加强对网络设备和应用程序的安全配置,及时更新补丁和防火墙规则,加密敏感信息传输,使用强密码并定期更换,定期备份重要数据,加强对员工的安全教育和培训等,以提高网络安全保护能力。
网络信息安全综合实验报告
网络信息安全综合实验任务书一、目的与要求根据实验内容的要求和实验安排,要求学生在掌握网络信息安全基本知识的基础上,能够设计出相应的软件,并且熟练地运用各种网络信息安全技术和手段,发现并解决各类安全问题,维护网络及操作系统的安全。
二、主要内容实验一对称密码算法DES的实现对称密码算法是数据加密常用的一种方法,具有算法公开、加密效率高等特点,也是密码学研究的基础,其中的典型代表当属DES。
实验二非对称密码算法RSA的实现非对称密码算法在密钥管理、数字签名等领域起着重要的作用,其基于难解的数学问题而提出,具有公私钥对,密钥分配简单而且安全,其中典型的代表当属RSA。
实验三综合扫描及安全评估利用常见的一些扫描工具可以检测本系统及其它系统是否存在漏洞等安全隐患,给出全面而完善的评估报告,帮助管理员发现存在的问题,进而采取有力措施予以弥补,从而提高系统的安全性能。
实验四网络攻防技术矛与盾的关系告诉我们,在研究网络安全技术时,只着眼于安全防范技术是远远不够的,知己知彼方能百战不殆,因此,很有必要同时研究攻击与防范技术,才能更有效地解决各种威胁。
实验五 Windows系统安全配置方案作为网络节点,操作系统安全成为网络信息安全首先应予考虑的事务,然而人们往往忽视了OS 的安全性。
其实,OS的安全不只体现在密码口令上,这仅仅是最基本的一个方面。
除此之外,服务、端口、共享资源以及各种应用都很有可能存在着安全隐患,因此,应采取相应措施设置完善的本地安全策略,并使用防病毒软件、防火墙软件甚至入侵检测软件来加强系统的安全。
其中实验一和实验二要求编程实现,可直接调用相关功能函数完成。
实验三至实验五可在机房的网络信息安全综合实验系统上完成。
三、进度计划四、实验成果要求1.要求程序能正常运行,并实现任务书要求功能。
2.完成实验报告,要求格式规范,内容具体而翔实,应体现自身所作的工作,注重对设计思路的归纳和对问题解决过程的总结。
五、考核方式平时成绩+程序验收+实验报告。
网络与信息安全技术实验报告
网络与信息安全技术实验报告一、实验目的随着信息技术的飞速发展,网络与信息安全问题日益凸显。
本次实验的目的在于深入了解网络与信息安全技术的原理和应用,通过实际操作和实验分析,提高对网络攻击与防御的认识和应对能力,增强信息安全意识,为保障网络环境的安全稳定奠定基础。
二、实验环境本次实验在以下环境中进行:1、操作系统:Windows 10 专业版2、实验软件:Wireshark 网络协议分析工具、Nmap 端口扫描工具、Metasploit 渗透测试框架等三、实验内容与步骤(一)网络数据包捕获与分析1、打开 Wireshark 软件,选择合适的网络接口进行数据包捕获。
2、在捕获过程中,访问了一些常见的网站,如百度、淘宝等,并进行了文件下载操作。
3、停止捕获后,对捕获到的数据包进行分析。
重点关注了 TCP 三次握手、HTTP 请求与响应、DNS 查询等过程。
通过分析 TCP 三次握手,了解了建立连接的过程和相关标志位的变化。
对 HTTP 请求与响应的分析,掌握了网页访问时的数据传输格式和内容。
DNS 查询的分析有助于了解域名解析的过程和机制。
(二)端口扫描与服务探测1、运行 Nmap 工具,对目标主机进行端口扫描。
2、设定了不同的扫描参数,如全端口扫描、特定端口扫描等。
3、对扫描结果进行分析,确定目标主机开放的端口以及可能运行的服务。
发现开放的端口如80(HTTP)、443(HTTPS)、22(SSH)等。
根据端口对应的服务,初步评估目标主机的安全性。
(三)漏洞利用与渗透测试1、利用 Metasploit 框架,选择了一些常见的漏洞模块进行测试。
2、对目标主机进行了漏洞扫描,发现了一些可能存在的安全漏洞。
3、尝试利用漏洞获取系统权限,如通过弱口令漏洞登录系统。
四、实验结果与分析(一)网络数据包捕获与分析结果1、 TCP 三次握手过程正常,标志位的变化符合标准协议。
2、 HTTP 请求与响应中,未发现明显的异常数据传输,但部分网站的响应时间较长,可能与网络拥堵或服务器负载有关。
网络安全综合实验
网络安全综合实验网络安全综合实验报告一、实验目的:1. 了解网络安全的基本概念和背景知识;2. 学习和掌握常见网络攻击手段和防御方法;3. 探索网络安全实践中的应用技巧和注意事项。
二、实验环境:1. 操作系统:Windows 10;2. 实验工具:Kali Linux、Wireshark。
三、实验步骤:1. 安装和配置Kali Linux:在虚拟机软件上创建虚拟机,并安装Kali Linux操作系统。
打开终端,配置网络设置,确保虚拟机与主机能够进行网络通信。
2. 了解网络攻击手段:学习和了解常见的网络攻击手段,如:ARP欺骗、DNS劫持、DDoS攻击等,并了解其原理和防御措施。
3. 进行ARP欺骗实验:a. 使用Wireshark抓取网络数据包。
b. 在Kali Linux中使用arpspoof命令进行ARP欺骗攻击,将被攻击主机的ARP表中的网关IP地址与攻击者主机的MAC地址进行绑定。
c. 观察被攻击主机与网关之间的通信变化,分析受欺骗主机的网络连接情况和性能。
4. 进行DNS劫持实验:a. 在Kali Linux中安装并配置dnsmasq服务,将其设置为本地DNS服务器。
b. 修改被攻击主机的DNS设置,将其DNS服务器地址指向Kali Linux主机。
c. 在Kali Linux中配置dnsmasq使其对特定的域名进行劫持,并将其解析IP地址改为攻击者的IP地址。
d. 观察被攻击主机访问被劫持域名时的重定向情况,分析劫持后的影响和防御方法。
5. 进行DDoS攻击实验:a. 在Kali Linux中安装hping3工具,用于进行TCP Flood攻击。
b. 在Kali Linux中使用hping3命令进行TCP Flood攻击,向目标主机发送大量的TCP请求包,使其服务不可用。
c. 观察目标主机的服务是否受到干扰,分析攻击效果和防御方法。
四、实验总结:通过本次综合实验,我对网络安全的概念和基本知识有了更深入的理解。
网络安全综合实习报告
网络安全综合实习报告
一、实习背景及目的
本次实习是为了增强对网络安全知识的理解和应用能力,透过实践掌握网络安全技术和策略,并能够熟练应用相关工具进行网络安全防护和检测。
通过该实习,提高网络安全意识,保障个人和企业网络安全。
二、实习过程及实践任务
1. 渗透测试
在实习过程中,进行了渗透测试实践,通过模拟黑客攻击的方式,对服务器、网络设备等进行渗透测试,发现并修复存在的安全漏洞。
2. 恶意代码分析
通过对恶意代码的分析,了解特定恶意代码的行为和传播方式,并提供相应的对策和防范措施。
3. 网络监控与入侵检测
利用网络监控工具和入侵检测系统,对网络进行实时监控,发现异常行为并采取相应的应对措施,保证网络安全。
4. 安全日志分析
对网络设备、服务器等的安全日志进行分析,发现和排查潜在的安全威胁,及时采取解决方案,提高对网络安全问题的应对能力。
5. 应急响应和事件处理
在实习中模拟应急响应和事件处理流程,掌握应急响应的要点和流程,提高对网络安全事件的应对能力。
三、实习收获与总结
通过实习,我深刻认识到网络安全的重要性,增强了网络安全意识,并掌握了一定的网络安全知识和技能。
在实践中,我学会了运用渗透测试、恶意代码分析、网络监控与入侵检测等技术手段,提高了网络安全防护能力。
同时,通过安全日志分析和应急响应的实践,增强了对网络安全事件的处理能力。
总结起来,本次网络安全综合实习使我对网络安全有了更深入的了解,不仅提高了实践能力,也让我认识到在网络世界中,保障个人和企业的网络安全至关重要,任何一个细小的漏洞都可能导致巨大的损失。
我将会持续学习和提高,为网络安全贡献自己的力量。
网络信息安全实验报告 (2)
网络信息安全实验报告 (2)网络信息安全实验报告 (2)引言网络信息安全是当前社会中一个重要的议题。
随着互联网的普及和发展,网络攻击和信息泄露事件频频发生,给个人、组织和国家带来了严重的损失。
为了增强对网络信息安全的认识和应对能力,本实验通过模拟网络攻击和防御的场景,探究了网络信息安全的相关问题。
本文将详细介绍实验的目的、实验环境、实验过程、实验结果与分析以及结论等内容。
实验目的本实验的主要目的是通过实际操作,深入理解网络信息安全的基本概念、攻击与防御的原理,并通过实验验证不同防御措施的有效性。
实验环境本次实验使用了一台配置性能较高的个人电脑,操作系统为Windows 10。
实验过程中使用了网络模拟工具、安全防护工具和虚拟机等软硬件设备。
实验过程1. 设置实验环境- 安装虚拟机软件- 配置虚拟机网络2. 实验一:模拟网络攻击- 使用Kali Linux进行网络扫描- 使用Metasploit进行远程漏洞利用- 使用社交工程进行信息获取3. 实验二:网络防御措施- 配置防火墙规则- 安装杀毒软件并进行扫描- 加强用户密码强度4. 分析实验结果- 统计网络攻击的次数和方式- 比较不同防御措施的效果实验结果与分析在实验过程中,成功模拟了多种网络攻击,并进行了相应的防御措施。
通过统计实验结果,我们发现:- 使用Kali Linux进行网络扫描,可以获取目标主机的网络拓扑和开放端口信息。
- 使用Metasploit进行漏洞利用,在未及时更新系统补丁的情况下,可成功入侵目标主机。
- 社交工程是获取敏感信息的常见手段,通过发送钓鱼邮件可以获取用户的用户名和密码等重要信息。
在防御措施方面,我们采取了以下措施:- 配置了防火墙规则,限制了开放端口和外部访问。
- 安装了杀毒软件,并进行了定期扫描。
- 加强了用户密码强度,设置了复杂密码策略。
经过实验对比,我们发现以上防御措施可以有效减少网络攻击的发生和影响。
结论通过本次实验,我们对网络信息安全有了更深入的理解。
网络信息安全实验报告 (2)
网络信息安全实验报告 (2)网络信息安全实验报告 (2)1. 研究背景网络信息安全是当今社会的重要议题之一。
随着互联网的普及和应用,网络攻击的威胁也日益增加。
为了保护个人隐私和重要机密信息的安全,网络信息安全技术得到了广泛的关注和研究。
本实验旨在通过模拟网络攻击和防御的场景,探索网络信息安全的实际应用和解决方案。
2. 实验目的本实验旨在通过实际操作和模拟攻击的方式,深入了解网络信息安全的基本原理和实践技术,并掌握常见的网络攻击和防御手段。
3. 实验内容3.1 实验环境搭建在实验开始之前,我们需要搭建一个适合实验的网络环境。
这个环境应该包括一个实验主机和一台攻击主机。
实验主机用于模拟正常的网络通信,而攻击主机用于模拟网络攻击。
3.2 模拟网络攻击在实验环境搭建完成之后,我们将进行一系列网络攻击的模拟实验。
这些攻击包括但不限于:DDoS攻击、SQL注入攻击、网络钓鱼攻击等。
通过模拟这些攻击,我们可以深入理解攻击的原理和技术,并学习如何应对和防御这些攻击。
3.3 实验报告撰写在实验进行过程中,我们需要记录实验过程和实验结果。
在实验结束后,我们将根据实验记录撰写实验报告。
这个报告需要包括实验目的、实验内容、实验结果和分析等内容。
4. 实验结果与分析在实验过程中,我们成功模拟了各种网络攻击,并记录了实验数据和分析结果。
通过对实验数据的分析,我们发现某些网络攻击可能会导致严重的安全风险,而其他一些攻击则可以通过一定的防御手段来减轻风险。
5. 实验通过本次实验,我们加深了对网络信息安全的理解,学习了网络攻击和防御的基本原理和技术。
我们也认识到网络安全问题的重要性,以及制定有效安全策略的必要性。
6. 参考文献[1] John D. Network Security: Private Communication ina Public World. Pearson Education, 2007.[2] Stallings W. Cryptography and Network Security: Principles and Practice. Pearson Education, 2010.。
网络信息安全实验报告 (2)
网络信息安全实验报告 (2)网络信息安全实验报告 (2)1.研究目的和背景1.1 研究目的本实验旨在通过实际操作探究网络信息安全的相关概念、技术和方法,并分析实验过程中可能出现的安全风险和对策,加深对网络信息安全的理解和实践能力。
1.2 研究背景随着互联网的快速发展和普及,网络信息安全问题日益凸显。
恶意软件、网络钓鱼、黑客攻击等安全威胁层出不穷,对个人、企业和国家信息安全产生了严重影响。
因此,加强网络信息安全的研究和实践具有重要意义。
2.实验设计和步骤2.1 实验设计本实验通过模拟网络环境,结合实际案例和技术手段,进行网络信息安全实验。
主要包括以下几个方面:________●防火墙配置与管理●攻击检测与防范●密码安全与管理●网络监控与日志分析2.2 实验步骤a. 防火墙配置与管理1.建立网络拓扑,并配置防火墙设备。
2.设定防火墙策略,包括允许和禁止的网络流量。
3.验证防火墙的有效性,并进行必要的调整和优化。
b. 攻击检测与防范1.使用网络安全设备或软件,对网络进行漏洞扫描。
2.模拟常见的攻击行为,如 DoS 攻击、SQL 注入。
3.分析攻击行为,提供相应的防范措施。
c. 密码安全与管理1.设计一个强密码策略,并应用于网络设备和应用系统。
2.检查密码安全性,如密码长度、复杂度等。
3.介绍密码管理工具,如密码管理器和双因素认证。
d. 网络监控与日志分析1.安装和配置网络监控工具,实时监测网络流量和行为。
2.收集和分析网络日志,发现异常活动和可能的安全威胁。
3.根据分析结果制定相应的安全措施和应对方案。
3.实验结果与讨论3.1 实验结果通过实验,我们得到了以下结果:________●防火墙配置与管理能有效地限制非法访问和恶意流量。
●攻击检测与防范技术能够提前发现并阻止潜在的安全威胁。
●使用强密码策略和密码管理工具可以提高密码安全性。
●网络监控和日志分析能够及时发现和处理安全事件。
3.2 结果讨论根据实验结果,我们可以进一步讨论以下问题:________●防火墙的配置是否合理,并针对具体环境进行调整?●攻击检测与防范技术存在哪些局限性和可改进之处?●密码安全策略是否满足实际需求,如何进行改进?●如何通过网络监控和日志分析提高网络安全的效果和响应能力?4.安全风险和对策分析4.1 安全风险在实验过程中,可能存在以下安全风险:________●网络流量过大,导致防火墙无法正常工作。
网络信息安全试验报告(2)
网络信息安全试验报告-RSA加密算法的实现姓名:拓慧玲学号:20907210专业:09信管2班指导老师:吕林涛一、实验目的通过本次实验,掌握RSA算法的基本思想。
使用C语言实现RSA算法,并且可以对简单数字串进行加密、解密。
二、实验原理通过查阅资料,了解RSA算法基本思想。
首先, 找出三个数, p, q, r, 其中p, q 是两个相异的质数, r 是与(p-1)(q-1) 互质的数。
p, q, r 这三个数便是private key(私钥)接著, 计算m, r*m == 1 mod (p-1)(q-1)..... 这个m 一定存在, 因为r 与(p-1)(q-1) 互质, 用辗转相除法就可以得到了.....再来, 计算n = pq....... m, n 这两个数便是public key(公钥)。
编码过程是:若明文为a, 将其看成是一个大整数, 假设 a < n....如果 a >= n 的话, 就将a 表成s 进位(s <= n, 通常取s = 2^t),则每一位数均小於n, 然后分段编码......接下来, 计算b == a^m mod n, (0 <= b < n),b 就是编码后的密文......解码的过程是, 计算 c == b^r mod pq (0 <= c < pq),如果第三者进行窃听时, 他会得到几个数: m, n(=pq), b。
他如果要破解的话, 必须想办法得到r。
. 所以, 他必须先对n 作质因数分解。
但是n往往是非常大的数,同时还有两个非常的大质数p, q, 使第三者作因数分解时发生困难。
对方往往很难破解出明文。
三、实验源码#include<stdio.h>#include<math.h>#include<string.h>int getd(int p, int q,int e){int qn,d=1;qn=(p-1)*(q-1);while(d){if(d*e%qn==1) return(d);else d++;}}/*getd*/int power(int a,int b){int mut=1;while(b!=0){mut*=a;b--;}return mut;}/*power*/int jiemi(int e,int n,int p){int q;q=power(p,e)%n;return q;}/*jiemi*/int jiami(int e,int n,int p){int q;q=power(p,e)%n;return q;}/*jiami*/int main(){int prime1,prime2,p;int d,e,n,miwen,minwen;int getd(int p,int q,int e);printf("请输入两个大的素数和公钥,e和n \n");scanf("%d%d%d",&prime1,&prime2,&e);n=prime1*prime2;printf("n为%d \n",n);d=getd(prime1,prime2,e);printf("私有密钥是%d\n",d);/*其中e和n为共钥,d为私钥*/ printf("请输入要加密的数字串\n");scanf("%d",&p);while(p!=0){miwen=jiami(e,n,p);printf("加密的数值是%d",miwen);minwen = jiemi (d,n,miwen);printf("\n\n解密后的数值为; %d \n",minwen);scanf("%d",&p);break;}}四、实验结果五、实验总结通过此次实验,我了解了公钥密码体制的基本思想,基本掌握了公钥密码体制RSA。
网络信息安全实验报告 (2)
网络信息安全实验报告 (2)1. 引言网络信息安全是网络领域中非常重要的一个问题。
在实际的网络环境中,网络中存在着各种各样的安全隐患和威胁。
为了保障网络的安全性,实验室进行了网络信息安全实验,并撰写了本报告,对实验过程和结果进行详细的描述和分析。
2. 实验目的本次实验主要目的如下:了解网络信息安全的基本概念和原理;掌握几种常见的网络安全攻防技术;分析网络中的安全隐患和威胁,并提出相应的解决方案。
3. 实验环境与工具实验环境:使用Linux操作系统搭建实验环境;实验工具:使用Wireshark、Nmap、Metasploit等工具进行网络信息收集和攻击模拟。
4. 实验内容4.1 网络信息收集,我们通过使用Nmap工具对目标网络进行主机扫描和端口扫描,获取目标主机的信息和开放端口情况。
然后,我们使用Wireshark对网络流量进行监测和分析,了解网络中的数据流动情况。
4.2 网络漏洞扫描在获取了目标网络的信息之后,我们使用漏洞扫描工具对目标系统进行漏洞扫描,发现目标系统中存在的安全漏洞和弱点。
我们也对目标网络的服务进行渗透测试,尝试获取未授权的信息和权限。
4.3 攻击模拟与防御在了解了目标网络中存在的安全隐患和漏洞之后,我们使用Metasploit等工具进行渗透攻击模拟,验证目标系统的安全性,并提出相应的防御措施和建议。
5. 实验结果与分析通过网络信息收集和漏洞扫描,我们成功获取了目标系统的信息和发现了一些安全漏洞。
在攻击模拟中,我们成功利用了某些漏洞进行了渗透攻击,并获得了一定的权限。
我们根据实验结果提出了相应的防御建议。
6. 实验通过本次实验,我们对网络信息安全有了更深入的了解,并学习了一些常见的网络安全攻防技术。
实验结果也让我们看到了网络世界中的各种安全隐患和威胁,以及如何防范和应对这些威胁。
在的工作中,我们将进一步加强对网络安全的意识,不断学习和应用最新的安全技术,为网络的安全稳定发展做出贡献。
网络信息安全实验报告 (2)
网络信息安全实验报告 (2)网络信息安全实验报告1.实验目的1.1 掌握网络信息安全的基本概念和原理。
1.2 了解网络攻击的常见类型和防范措施。
1.3 学习使用网络安全工具进行漏洞扫描和安全测试。
2.实验设备2.1 计算机A:用于模拟攻击者的角色。
2.2 计算机B:用于模拟被攻击者的角色。
2.3 安全工具:例如Nmap、Wireshark、Metasploit等。
3.实验过程3.1 确保计算机A和计算机B处于同一局域网中。
3.2 使用Nmap进行端口扫描,寻找计算机B可能存在的漏洞。
3.3 使用Wireshark对网络流量进行监控,分析可能存在的攻击行为。
3.4 使用Metasploit进行渗透测试,尝试攻击计算机B并获取敏感信息。
3.5 记录实验过程中的关键步骤和结果。
4.实验结果分析4.1 端口扫描结果显示计算机B存在漏洞,例如开放了未授权的远程登录端口。
4.2 Wireshark监控到了攻击者对计算机B的密码尝试。
4.3 Metasploit成功获取了计算机B中的敏感信息。
5.安全防范措施5.1 及时更新操作系统和应用程序的补丁,修复已知的安全漏洞。
5.2 配置防火墙和入侵检测系统,监控和限制网络流量。
5.3 使用强密码,并定期更换密码。
5.4 对关键数据进行加密存储。
5.5 培训员工意识网络安全的重要性,并加强员工的安全意识教育。
附件:无法律名词及注释:1.远程登录端口:指用于从远程计算机登录另一个计算机的特定端口。
2.Wireshark:一款网络流量分析工具,用于抓取网络数据包以进行安全分析。
3.Metasploit:一款开源的渗透测试工具,用于模拟攻击行为并测试系统的安全性。
4.补丁:指软件开发商发布的修复软件中存在的安全漏洞的补丁程序。
5.防火墙:一种网络安全设备,用于监视和控制网络流量,保护网络免受未经授权的访问。
6.入侵检测系统:一种监控网络流量和系统日志,检测异常Activity和操纵的安全设备。
网络信息安全实验报告
一、实验目的随着互联网技术的飞速发展,网络信息安全已成为国家安全、社会稳定和人民生活的重要组成部分。
为了提高我国网络信息安全防护能力,本实验旨在通过实践操作,让学生掌握网络信息安全的基本知识和技能,了解常见的网络攻击手段和防御方法,提高网络安全意识。
二、实验内容1. 网络攻击实验(1)实验目的:了解常见的网络攻击手段,掌握防御方法。
(2)实验内容:利用Kali Linux操作系统,使用Metasploit框架进行网络攻击实验,包括端口扫描、漏洞扫描、攻击实验等。
(3)实验步骤:① 安装Kali Linux操作系统。
② 安装Metasploit框架。
③ 进行端口扫描,查找目标主机的开放端口。
④ 进行漏洞扫描,发现目标主机的安全漏洞。
⑤ 进行攻击实验,模拟实际攻击过程。
2. 网络防御实验(1)实验目的:掌握网络安全防御方法,提高网络安全防护能力。
(2)实验内容:利用Windows防火墙和NAT技术进行网络防御实验。
(3)实验步骤:① 在Windows系统中开启防火墙。
② 配置防火墙规则,禁止非法访问。
③ 使用NAT技术隐藏内部网络,提高网络安全。
3. 网络加密实验(1)实验目的:了解网络加密技术,掌握加密算法的使用。
(2)实验内容:使用对称加密算法DES和RSA进行加密实验。
(3)实验步骤:① 使用DES算法对数据进行加密和解密。
② 使用RSA算法对数据进行加密和解密。
4. 入侵检测实验(1)实验目的:了解入侵检测技术,掌握入侵检测系统的使用。
(2)实验内容:使用Snort入侵检测系统进行实验。
(3)实验步骤:① 安装Snort入侵检测系统。
② 配置Snort规则,定义检测目标。
③ 监控网络流量,分析入侵行为。
5. 木马防御实验(1)实验目的:了解木马攻击原理,掌握木马防御方法。
(2)实验内容:使用杀毒软件进行木马防御实验。
(3)实验步骤:① 安装杀毒软件。
② 对系统进行病毒扫描,查杀木马。
③ 定期更新病毒库,提高杀毒软件的防御能力。
网络信息安全实验报告
网络信息安全实验报告一、实验目的随着信息技术的飞速发展,网络已经成为人们生活和工作中不可或缺的一部分。
然而,网络信息安全问题也日益凸显,给个人、企业和国家带来了严重的威胁。
本次实验的目的是通过实际操作和分析,深入了解网络信息安全的重要性,掌握常见的网络攻击手段和防御方法,提高网络信息安全意识和防范能力。
二、实验环境本次实验在实验室的局域网环境中进行,使用了以下设备和软件:1、计算机:若干台,安装了 Windows 操作系统和常用的网络安全工具。
2、网络设备:路由器、交换机等,用于构建实验网络。
3、网络安全工具:Wireshark、Nmap、Metasploit 等。
三、实验内容(一)网络扫描与探测使用 Nmap 工具对目标网络进行扫描,获取网络拓扑结构、主机信息、开放端口等。
通过分析扫描结果,了解目标网络的安全状况,发现潜在的安全漏洞。
(二)漏洞利用利用 Metasploit 框架,针对目标系统中存在的漏洞进行攻击实验。
例如,针对常见的操作系统漏洞、Web 应用漏洞等,尝试获取系统权限、窃取敏感信息等。
(三)网络监听与分析使用 Wireshark 工具对网络流量进行监听和分析。
捕获数据包,分析其中的协议、源地址、目的地址、数据内容等,发现异常的网络通信行为,如网络攻击、数据泄露等。
(四)防火墙配置与测试在实验网络中配置防火墙,设置访问控制策略,阻止非法访问和攻击。
测试防火墙的有效性,观察其对网络攻击的防御能力。
(五)密码破解与加密尝试使用常见的密码破解工具,对弱密码进行破解。
同时,学习使用加密算法对敏感信息进行加密,保护数据的安全性。
四、实验步骤及结果(一)网络扫描与探测1、打开 Nmap 工具,输入目标网络的 IP 地址范围。
2、选择扫描类型,如全面扫描、端口扫描等。
3、启动扫描,等待扫描结果。
4、分析扫描结果,发现目标网络中存在多台主机,开放了多个端口,如 80(HTTP)、22(SSH)、443(HTTPS)等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
.综合实验报告( 2013 -- 2014 年度第 1 学期)名称:网络信息安全综合实验题目:RSA公钥加密解密院系:计算机系班级:网络工程学号:学生姓名:指导教师:李天设计周数: 1 周成绩:日期: 2013年1月18日一、综合实验的目的与要求要求:了解RSA产生公钥和私钥的方法,掌握RSA 的加密、解密过程,编写程序设计RSA 加解密工具。
RSA加解密参考:RSA的安全性依赖于大数分解,公钥和私钥都是两个大素数(大于100个十进制位)的函数。
据猜测,从一个密钥和密文推断出明文的难度等同于分解两个大素数的积。
密钥的产生:1. 选择两个保密的大素数p和q;2. 计算n=p*q和欧拉函数值E(n)=(p-1)(q-1);3. 选一整数e,且满足1<e<E(n)和gcd(E(n),e)=1;4. 计算d,且满足d*e=1 mod E(n);5. 公钥为{e, n},私钥{d, n}。
二、RSA算法的描述1.RSA 依赖大数运算,目前主流RSA 算法都建立在1024位的大数运算之上。
而大多数的编译器只能支持到64位的整数运算,即我们在运算中所使用的整数必须小于等于64位,即:0xffffffffffffffff,也就是18446744073709551615,这远远达不到RSA 的需要,于是需要专门建立大数运算库来解决这一问题。
最简单的办法是将大数当作数组进行处理,也就是将大数用0—9这十个数字组成的数组进行表示,然后模拟人们手工进行“竖式计算”的过程编写其加减乘除函数。
但是这样做效率很低,因为二进制为1024位的大数其十进制也有三百多位,对于任何一种运算,都需要在两个有数百个元素的数组空间上做多重循环,还需要许多额外的空间存放计算的进退位标志及中间结果。
另外,对于某些特殊的运算而言,采用二进制会使计算过程大大简化,这种大数表示方法转化成二进制显然非常麻烦,所以在某些实例中则干脆采用了二进制数组的方法来记录大数,这样效率就更低了。
一个有效的改进方法是将大数表示为一个n 进制数组, n 可以取值为 2 的16次方,即0x1000,假如将一个二进制为1024位的大数转化成0x1000进制,它就变成了64位,而每一位的取值范围就不是二进制的0—1或十进制的0—9,而是0-0xffff,我们正好可以用一个无符号整数来表示这一数值。
所以1024位的大数就是一个有64个元素的unsigned int 数组,针对unsigned int数组进行各种运算所需的循环规模至多64次而已。
而且0x10000 进制与二进制,对于计算机来说,几乎是一回事,转换非常容易。
加法: A=Sum[i=0 to p](A[i]*0x10000**i) ;B=Sum[i=0 to q](B[i]*0x10000**i),p>=q ;C=Sum[i=0 to n](C[i]*0x10000**i)=A+B。
如果用carry[i]记录每次的进位则有:C[i]=A[i]+B[i]+carry[i-1]-carry[i]*0x10000,其中carry[-1]=0。
若A[i]+B[i]+carry[i-1]>0xffffffff,则carry[i]=1;反之则carry[i]=0,若carry[p]=0,则n=p;反之则n=p+1。
减法与加法同理。
因此: C[i]=Sum[j=0 to q](A[i-j]*B[j])+carry[i-1]-carry[i]*0x10000,其中carry[-1]=0,carry[i]=(Sum[j=0 to q](A[i-j]*B[j])+carry[i-1])/0x10000,n=p+q-1,若carry[n]>0,则n=n+1,C[n]=carry除法设A=Sum[i=0 to p](A[i]*0x10000**i) ,B=Sum[i=0 to q](B[i]*0x10000**i),p>=q, C=Sum[i=0 to n](C[i]*0x10000**i)=A/B。
由于无法将B 对A “试商”,我们只能转换成B[q]对A[p]的试商来得到一个近似值,所以我们不能够直接计算C。
但是,我们可以一步一步地逼近C。
显然,(A[p]/B[q]-1)*0x10000**(p-q)<C,令X=0,重复A=A-X*B,X=X+(A[p]/B[q]-1)*0x10000**(p-q),直到A<B。
则有 X=C。
1、选取长度相等的两个大素数p和q,计算其乘积:n = pq然后随机选取加密密钥e,使e和(p–1)(q–1)互素。
最后用欧几里德扩展算法计算解密密钥d,以满足ed = 1(mod(p–1) ( q–1))即d = e–1 mod((p–1)(q–1))e和n是公钥,d是私钥2、加密公式如下: ci = mi^e(mod n)3、解密时,取每一密文分组ci并计算:mi = ci^d(mod n)Ci^d =(mi^e)^d = mi^(ed) = mi^[k(p–1)(q–1)+1 ]= mi mi^[k(p–1)(q–1)] = mi *1 = mi4、消息也可以用d加密用e解密三、编程思路编程思路总共分为以下部分:1、检验两个数是否互素;2、由欧拉公式算出相应的密钥d;3、实现幂函数的取余,从而得以进行解密或加密。
4、实现主要函数编写。
实现RSA算法。
并加解密。
说明:为了方便实现,分组可以小一点,比如两个字母一组。
(1).选择两个大的素数p和q(典型情况下为1024位)(2).计算n = p * q 和 z =(p-1)*(q-1).(3).选择一个与z互素的数,将它称为d(4).找到e,使其满足e*d = 1 mod z提前计算出这些参数以后,我们就可以开始执行加密了。
首先将明文分成块,使得每个明文消息P落在间隔0*P<n中。
为了做到这一点,只要将明文划分成k位的块即可,这里k是满足2^k<n的最大整数。
为了加密一个消息P,只要计算C=P^e(mod n) 即可。
为了解密C,只要计算P=C^d(mod n)即可。
可以证明,对于指定范围内的所有P,加密盒解密互为反函数。
为了执行加密,你需要e和n;为了执行解密,你需要d和n。
因此,公钥是有(e,n)对组成,而私钥是有(d,n)对组成。
实例:根据已知参数:p=3,q=11,M=2,计算公私钥,并对明文进行加密,然后对密文进行解密。
由题意知:n = p * q=33,z =(p-1)*(q-1)=20,选d=7,计算得e=3,所以C=M^e(mod n)=8M=C^d(mod n)=2四、主要程序说明1.关键环节1.求模逆元的扩展欧几里德算法原理:正整数a和b满足sn*a + tn*b =(a,b),当(a,b)=1 时,sn = a^-1 mod b其中 s0 = 1,s1 = 0,sj = (sj-2) –(qj-1)*s(j-1;t0 = 0,tj = (tj-2) –(qj-1)*t(j-1) 输入大数 a和b输出:a^-1 mod b 或0(不存在逆元)(1)s0 = 1,s1 = 0(2)while b>0 do1.1q = a/b;s2 = s0-q*s1;1.2s0 = s1;s1 = s2;1.3t = b;b = a%b;a = t;(3)if a=1 return s0;else return 0;2.明文(数值)长度要小于key_N,才符合RSA算法,否则很容易出错,我选择了一个大于key_N的明文,发现经过验证并不符合RSA算法。
那么,处理那些明文(数值)很大的办法就是将明文分成一小段一小段,否则,解密的信息必然是一堆乱码(除非原明文数值并不大)。
分成一小段之后,然后利用加密公式和解密公式对其进行处理,这样得到的结果就是准确结果了。
2.主要函数公钥和私钥的生成void generate_key()(1)首先利用strongprime函数生成两个素数key_P_Q[0],key_P_Q[1],然后利用multiply 函数得到key_N = key_P_Q[0] * key_P_Q[1],用subtract函数和add函数实现 key_Z = (key_P_Q[0] - 1 ) * (key_P_Q[1] – 1) = key_N –(key_P_Q[0] + key_P_Q[1]) + 1。
(2)随机生成一个密钥key_D,然后利用extend_gcd函数求同余方程key_D *key_E mod key_Z = 1。
得到key_E,作为公钥。
(3)至此将公钥(key_N,key_E)写入文件中,将私钥(key_N,key_D)写入文件中保存。
加密信息void encode_information()将加密的信息长度判断是否大于key_N的长度,如果大于key_N的长度,应该将加密信息分成一小段一小段,各小段长度均小于key_N长度,然后利用读取已经保存在文件中的公钥和私钥,对加密信息每小段每小段进行加密,并将加密信息密文存放到加密文件中。
加密将用到的函数为powmod(key_P,key_E,key_N,key_C)。
解密信息void decode_information()解密信息和加密信息采用同样的道理,即利用保存好的密钥对密文一段一段进行解密。
解密将用到的函数为Powmod(key_C,key_D,key_N,key_P)五、实验结果(1)公钥长度为1024位进行验证:图(1)生成公钥和私钥图(2)加密文件e:\20042432\1.txt,并显示加密文件中信息图(3)解密文件,并显示解密文件中信息图(4)选择键。
可以选择4程序结束图(5)e:\20042432\1.txt加密后的密文(2)公钥长度为2048位进行验证:图(6)生成公钥和私钥图(7)对e:\20042432\2.txt文本文件进行加密图(8)对加密密文e:\20042432\key_C.dat进行解密,并存放在e:\222.txt中,并在屏幕上显示解密后的信息。
图(9)图中可以看到其中原明文信息为2.txt,对它加密后key_P_Q.dat中存放两个大素数,key_N.dat存放两个素数相乘后的结果。
Key_D为随机生成的与key_Z(存放在key_Z.dat文件中)(即key_Z = key_N – key_P_Q[0] – key_P_Q[1] + 1)互素的大整数,存放在key_D.dat文件中。
key_E为解同余方程后的大数,存放在key_E.dat文件中。
其中key_C为加密后的明文信息,存放在key_C.dat文件中,并在解密时对这个密文文件进行解密。