信息与网络安全实验报告(信管)

合集下载

网络信息安全实验报告 (2)范文精简处理

网络信息安全实验报告 (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对目标主机进行扫描,能够获取到目标主机的网络服务信息。

信息管理与信息系统专业网络安全实习报告

信息管理与信息系统专业网络安全实习报告

信息管理与信息系统专业网络安全实习报告一、引言在信息时代,网络安全成为了一个重要的议题。

为了深入了解网络安全领域的实践和应用,我参加了信息管理与信息系统专业的网络安全实习。

本报告将对我在实习过程中的经历、所学到的知识和技能进行总结和归纳。

二、实习内容1. 实习公司介绍我选择了某知名互联网公司作为网络安全实习的场所。

该公司在信息安全领域拥有丰富的经验和技术实力,为我提供了一个理想的学习环境。

2. 实习任务在实习期间,我主要负责参与公司的网络安全项目,包括系统漏洞扫描、入侵检测与防御、安全事件响应等方面的工作。

通过与公司的安全团队合作,我学习到了许多实用的网络安全技术和方法。

3. 实习成果在实习期间,我通过实际操作和团队合作,成功完成了一些网络安全相关的任务。

例如,我参与了一个系统漏洞扫描项目,使用专业的扫描工具对公司内部的服务器进行了全面的扫描和分析,并及时修复了发现的漏洞。

此外,我还参与了公司的安全事件响应项目,对一次网络攻击进行了追溯和分析,并采取了相应的应对措施。

这些实践经验对我的网络安全技能提升起到了积极的促进作用。

三、实习收获1. 知识学习通过实习,我深入了解了网络安全领域的相关知识,包括网络攻击与防御、密码学、漏洞与漏洞利用等方面的内容。

我学习到了许多网络安全工具的使用方法,并掌握了一些实用的技巧和策略。

2. 技能提升在实习期间,我通过与安全团队的合作,提升了自己的网络安全技能。

我学会了使用漏洞扫描工具、入侵检测系统以及安全监控工具等,能够及时发现和处理网络安全威胁。

同时,我也学习到了网络安全事件响应的流程和方法,提高了自己的应急处理能力。

3. 团队合作在实习期间,我与公司的安全团队紧密合作,共同完成了各项任务。

通过与团队成员的交流和合作,我学会了分享经验、相互支持,并培养了良好的沟通与协作能力。

四、实习感悟通过这次网络安全实习,我深刻认识到网络安全对于企业和个人的重要性。

网络安全不仅关乎信息的保护,更是保障了整个社会的稳定和发展。

网络信息安全实验报告 (2)

网络信息安全实验报告 (2)

网络信息安全实验报告 (2)网络信息安全实验报告 (2)实验背景网络信息安全是保护计算机网络系统免受未经授权的访问、破坏、修改或泄露的活动的过程。

随着互联网的普及和信息技术的迅猛发展,网络信息安全问题日益突出,对于保护个人隐私和企业机密至关重要。

对网络信息安全进行实验和研究具有重要意义。

实验目的本实验旨在:1. 了解常见的网络攻击和防御手段;2. 通过实践操作,掌握网络信息安全的基本原理和技术;3. 培养信息安全意识和应对能力。

实验内容1. 网络攻击类型在实验中,我们了解了以下常见的网络攻击类型:攻击DDoS 攻击网络钓鱼恶意软件攻击SQL 注入攻击社会工程学攻击2. 防御手段我们学习了一些常见的网络信息安全防御手段:防火墙权限控制数据加密安全补丁管理网络流量监控安全培训和意识教育3. 实验操作在本次实验中,我们实践操作了以下内容:1. 实验了如何使用防火墙设置网络安全规则;2. 通过模拟 DDoS 攻击,了网络防御能力;3. 分析了实际情况下的网络钓鱼攻击,并提出了相应的防御策略;4. 研究了恶意软件的传播方式和防御措施;5. 了解了 SQL 注入攻击的原理,并编写了防御代码;6. 学习了社会工程学攻击的案例,并讨论了防范措施。

实验结果与分析通过本次实验,我们掌握了网络信息安全的基本原理和技术,并实践了相应的操作。

我们深入了解了各种网络攻击类型和防御手段,提高了对网络信息安全的认识和应对能力。

实验通过本次实验,我们进一步认识到网络信息安全的重要性,并学习了一些常见的防御手段。

在实践操作中,我们发现防御网络攻击需要综合运用多种技术手段,并不断更新和升级,以应对不断变化和进化的威胁。

,我们也认识到网络信息安全是一个复杂而庞大的领域,需要不断深入研究和学习,提高自身的技术水平和综合能力。

改进建议在今后的实验中,可以进一步拓展实验内容,涉及更多的网络攻击类型和防御手段。

可以加强实践操作,提供更多的场景和案例,培养实际应用能力。

网络安全实验报告[共五篇]

网络安全实验报告[共五篇]

网络安全实验报告[共五篇]第一篇:网络安全实验报告实验一:网络扫描实验【实验目的】了解扫描的基本原理,掌握基本方法,最终巩固主机安全【实验内容】1、学习使用Nmap的使用方法2、学习使用漏洞扫描工具【实验环境】1、硬件 PC机一台。

2、系统配置:操作系统windows XP以上。

【实验步骤】1、端口扫描1)解压并安装ipscan15.zip,扫描本局域网内的主机2)解压nmap-4.00-win32.zip,安装WinPcap运行cmd.exe,熟悉nmap命令(详见“Nmap详解.mht”)。

3)试图做以下扫描:扫描局域网内存活主机,扫描某一台主机或某一个网段的开放端口扫描目标主机的操作系统试图使用Nmap的其他扫描方式,伪源地址、隐蔽扫描等2、漏洞扫描解压X-Scan-v3.3-cn.rar,运行程序xscan_gui.exe,将所有模块选择扫描,扫描本机,或局域网内某一台主机的漏洞【实验背景知识】1、扫描及漏洞扫描原理见第四章黑客攻击技术.ppt2、NMAP使用方法扫描器是帮助你了解自己系统的绝佳助手。

象Windows 2K/XP 这样复杂的操作系统支持应用软件打开数百个端口与其他客户程序或服务器通信,端口扫描是检测服务器上运行了哪些服务和应用、向Internet或其他网络开放了哪些联系通道的一种办法,不仅速度快,而且效果也很不错。

Nmap被开发用于允许系统管理员察看一个大的网络系统有哪些主机以及其上运行何种服务。

它支持多种协议的扫描如UDP,TCP connect(),TCP SYN(half open), ftp proxy(bounce attack),Reverse-ident, ICMP(ping sweep), FIN, ACK sweep,Xmas Tree, SYN sweep,1 和Null扫描。

可以从SCAN TYPES一节中察看相关细节。

Nmap还提供一些实用功能如通过tcp/ip来甄别操作系统类型、秘密扫描、动态延迟和重发、平行扫描、通过并行的PING侦测下属的主机、欺骗扫描、端口过滤探测、直接的RPC扫描、分布扫描、灵活的目标选择以及端口的描述。

网络安全管理实验报告

网络安全管理实验报告

网络安全管理实验报告一、实验背景在当前数字化信息社会中,网络安全问题日益突出,各种网络攻击和数据泄漏事件频频发生,给个人、组织和国家的信息安全带来了严重威胁。

因此,网络安全管理变得尤为重要。

本次实验旨在通过模拟网络攻击和应对,探讨网络安全管理的方法和策略。

二、实验环境在实验中,我们搭建了一个包含服务器、防火墙、网络入侵检测系统(IDS)和网络安全管理系统的网络环境。

通过设置虚拟机和网络设备来模拟实际网络环境,以便进行实验操作和分析。

三、实验过程1. 模拟网络攻击:我们首先对网络环境进行了弱密码攻击、端口扫描和拒绝服务(DDoS)攻击等常见攻击手段的模拟,以测试网络设备和系统的弱点和稳定性。

2. 防火墙配置:针对模拟攻击中暴露的安全漏洞,我们设置了防火墙规则来限制网络流量,防止恶意攻击和未经授权的访问。

3. IDS监测:网络入侵检测系统负责监控网络流量,识别异常行为和潜在的攻击,及时发出警报并记录相应日志。

4. 安全策略优化:通过对实验过程中的攻击和防御数据进行分析,我们调整和优化了网络安全管理策略,提高了网络的整体安全性。

四、实验结果经过一系列的实验操作和分析,我们成功防护了模拟攻击,并取得了以下成果:1. 防火墙有效拦截了弱密码攻击和DDoS攻击,并在攻击行为发生时及时进行阻断处理,确保了网络的正常运行。

2. IDS系统准确地识别了入侵行为,并发出了警报通知管理员,使其能够及时采取应对措施,防止进一步的损失。

3. 通过对安全策略的优化和调整,网络整体的安全性得到了提升,防御效果显著。

五、实验总结通过本次网络安全管理实验,我们深刻认识到网络安全对于信息社会的重要性,也更加明确了网络安全管理的重要性和复杂性。

在未来的工作中,我们将继续学习和研究网络安全领域的知识,不断提升网络安全管理能力,为网络安全事业做出贡献。

综上所述,本次网络安全管理实验取得了一定的成果,但也暴露了一些不足之处。

我们将持续学习和改进,不断提升网络安全管理水平,为建设安全可靠的网络环境而努力奋斗。

网络与信息安全实验报告

网络与信息安全实验报告

网络与信息安全实验报告一、实验目的通过本次实验,对网络与信息安全领域中常见的攻击手段进行学习和实践,了解网络安全的重要性,提高网络安全意识和技能,加强信息安全保护能力。

二、实验工具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.完成实验报告,要求格式规范,内容具体而翔实,应体现自身所作的工作,注重对设计思路的归纳和对问题解决过程的总结。

五、考核方式平时成绩+程序验收+实验报告。

信息与网络安全实验报告(信管)

信息与网络安全实验报告(信管)

《网络信息安全》实验报告姓名陈申鹏学号 ********** 专业信息管理与信息系统班级 14信管指导教师实验一传统密码算法一、实验目的及任务通过编程实现替代密码算法和置换密码算法,加深对古典密码体制的了解,为深入学习密码学奠定基础。

二、实验环境运行Windows操作系统的PC机,具有C语言编译环境。

三、实验原理古典密码算法历史上曾被广泛应用,大都比较简单,使用手工和机械操作来实现加密和解密.它的主要应用对象是文字信息,利用密码算法实现文字信息的加密和解密.下面介绍两种常见的具有代表性的古典密码算法,以帮助读者对密码算法建立一个初步的印象.1. 替代密码替代密码算法的原理是使用替代法进行加密,就是将明文中的字符用其它字符替代后形成密文。

例如:明文字母a,b,c,d ,用D,E,F,G做对应替换后形成密文.替代密码包括多种类型,如单表替代密码,多明码替代密码,多字母替代密码,多表替代密码。

下面我们介绍一种典型的单表替代密码,恺撒(caesar)密码,又叫循环移位密码。

它的加密方法,就是将明文中的每个字母用此字符在字母表中后面第k个字母替代。

它的加密过程可以表示为下面的函数:E(m)=(m+k) mod n其中:m为明文字母在字母表中的位置数;n为字母表中的字母个数;k为密钥;E(m)为密文字母在字母表中对应的位置数.例如:对于明文字母H,其在字母表中的位置数为8,设k=4,则按照上式计算出来的密文为L:E(8) = (m+k) mod n = (8+4) mod 26 = 12 = L2. 置换密码置换密码算法的原理是不改变明文字符,只将字符在明文中的排列顺序改变,从而实现明文信息的加密。

置换密码有时又称为换位密码.矩阵换位法是实现置换密码的一种常用方法。

它将明文中的字母按照给的顺序安排在一个矩阵中,然后用根据密钥提供的顺序重新组合矩阵中字母,从而形成密文。

例如,明文为attack begins at five,密钥为cipher,将明文按照每行6列的形式排在矩阵中,形成如下形式:a t t a c kb e g i n sa t f i v e根据密钥cipher中各字母在字母表中出现的先后顺序,给定一个置换:1 2 3 4 5 6F= 11 4 5 32 6根据上面的置换,将原有矩阵中的字母按照第1列,第4列,第5列,第3列,第2列,第6列的顺序排列,则有下面形式:a a c t t kb i n g e sa i v f t e从而得到密文:abatgftetcnvaiikse其解密的过程是根据密钥的字母数作为列数,将密文按照列,行的顺序写出,再根据由密钥给出的矩阵置换产生新的矩阵,从而恢复明文.四、实验步骤(1)根据实验原理部分对替代密码算法的介绍,自己创建明文信息,并选择一个密钥k,编写替代密码算法的实现程序,实现加密和解密操作.(2)根据实验原理部分对置换密码算法的介绍,自己创建明文信息,并选择一个密钥,编写置换密码算法的实现程序,实现加密和解密操作.五、实验结果实验结果截图六、实验思考题1:替代密码的原理是什么?2:置换密码的原理是什么?七、程序源代码#include<stdio.h>#include<math.h>#include<string.h>#define N 500int main(){int i=0,k,m,n,l;char str1[N],str2[N];printf("......this is a procedure....\n");printf("please input a word(M):");gets(str1);printf("please input the secret key(K):");scanf("%d",&k);m=strlen(str1);printf("the lengh is %d\n",m);printf("\n*\n*\n***\n*\n*\n");printf("secret(C) is :");for(i=0;i<m;i++){n=(int)str1[i];if(str1[i]==' '){printf(" ");str2[i]=str1[i];}else if(n>96&&n<123){n=(n-97+k)%26;if(n<0)n=26+n;l=(char)(n+97);printf("%c",l);str2[i]=l;}else if(n>64&&n<91){n=(n-65+k)%26;if(n<0)n=26+n;l=(char)(n+97);printf("%c",l);str2[i]=l;}}str2[i]='\0';printf("\n\nthe lengh is %d",strlen(str2));printf("\n\n*\n*\n***\n*\n*\n");printf("when the secret is '%s',\nword is......:\n",str2); printf("\n");m=strlen(str2);for(i=0;i<m;i++){n=(int)str2[i];if(str2[i]==' '){printf(" ");}else if(n>96&&n<123){n=(n-97-k)%26;if(n<0)n=26+n;l=(char)(n+97);printf("%c",l);}else if(n>64&&n<91){n=(n-65-k)%26;if(n<0)n=26+n;l=(char)(n+97);printf("%c",l);}}str1[i]='\0';return 0;}实验二RSA加解密算法的实现一、实验目的及任务:掌握RSA加密算法的加解密过程。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《网络信息安全》实验报告姓名陈申鹏学号 ********** 专业信息管理与信息系统班级 14信管指导教师实验一传统密码算法一、实验目的及任务通过编程实现替代密码算法和置换密码算法,加深对古典密码体制的了解,为深入学习密码学奠定基础。

二、实验环境运行Windows操作系统的PC机,具有C语言编译环境。

三、实验原理古典密码算法历史上曾被广泛应用,大都比较简单,使用手工和机械操作来实现加密和解密.它的主要应用对象是文字信息,利用密码算法实现文字信息的加密和解密.下面介绍两种常见的具有代表性的古典密码算法,以帮助读者对密码算法建立一个初步的印象.1. 替代密码替代密码算法的原理是使用替代法进行加密,就是将明文中的字符用其它字符替代后形成密文。

例如:明文字母a,b,c,d ,用D,E,F,G做对应替换后形成密文.替代密码包括多种类型,如单表替代密码,多明码替代密码,多字母替代密码,多表替代密码。

下面我们介绍一种典型的单表替代密码,恺撒(caesar)密码,又叫循环移位密码。

它的加密方法,就是将明文中的每个字母用此字符在字母表中后面第k个字母替代。

它的加密过程可以表示为下面的函数:E(m)=(m+k) mod n其中:m为明文字母在字母表中的位置数;n为字母表中的字母个数;k为密钥;E(m)为密文字母在字母表中对应的位置数.例如:对于明文字母H,其在字母表中的位置数为8,设k=4,则按照上式计算出来的密文为L:E(8) = (m+k) mod n = (8+4) mod 26 = 12 = L2. 置换密码置换密码算法的原理是不改变明文字符,只将字符在明文中的排列顺序改变,从而实现明文信息的加密。

置换密码有时又称为换位密码.矩阵换位法是实现置换密码的一种常用方法。

它将明文中的字母按照给的顺序安排在一个矩阵中,然后用根据密钥提供的顺序重新组合矩阵中字母,从而形成密文。

例如,明文为attack begins at five,密钥为cipher,将明文按照每行6列的形式排在矩阵中,形成如下形式:a t t a c kb e g i n sa t f i v e根据密钥cipher中各字母在字母表中出现的先后顺序,给定一个置换:1 2 3 4 5 6F= 11 4 5 32 6根据上面的置换,将原有矩阵中的字母按照第1列,第4列,第5列,第3列,第2列,第6列的顺序排列,则有下面形式:a a c t t kb i n g e sa i v f t e从而得到密文:abatgftetcnvaiikse其解密的过程是根据密钥的字母数作为列数,将密文按照列,行的顺序写出,再根据由密钥给出的矩阵置换产生新的矩阵,从而恢复明文.四、实验步骤(1)根据实验原理部分对替代密码算法的介绍,自己创建明文信息,并选择一个密钥k,编写替代密码算法的实现程序,实现加密和解密操作.(2)根据实验原理部分对置换密码算法的介绍,自己创建明文信息,并选择一个密钥,编写置换密码算法的实现程序,实现加密和解密操作.五、实验结果实验结果截图六、实验思考题1:替代密码的原理是什么?2:置换密码的原理是什么?七、程序源代码#include<stdio.h>#include<math.h>#include<string.h>#define N 500int main(){int i=0,k,m,n,l;char str1[N],str2[N];printf("......this is a procedure....\n");printf("please input a word(M):");gets(str1);printf("please input the secret key(K):");scanf("%d",&k);m=strlen(str1);printf("the lengh is %d\n",m);printf("\n*\n*\n***\n*\n*\n");printf("secret(C) is :");for(i=0;i<m;i++){n=(int)str1[i];if(str1[i]==' '){printf(" ");str2[i]=str1[i];}else if(n>96&&n<123){n=(n-97+k)%26;if(n<0)n=26+n;l=(char)(n+97);printf("%c",l);str2[i]=l;}else if(n>64&&n<91){n=(n-65+k)%26;if(n<0)n=26+n;l=(char)(n+97);printf("%c",l);str2[i]=l;}}str2[i]='\0';printf("\n\nthe lengh is %d",strlen(str2));printf("\n\n*\n*\n***\n*\n*\n");printf("when the secret is '%s',\nword is......:\n",str2); printf("\n");m=strlen(str2);for(i=0;i<m;i++){n=(int)str2[i];if(str2[i]==' '){printf(" ");}else if(n>96&&n<123){n=(n-97-k)%26;if(n<0)n=26+n;l=(char)(n+97);printf("%c",l);}else if(n>64&&n<91){n=(n-65-k)%26;if(n<0)n=26+n;l=(char)(n+97);printf("%c",l);}}str1[i]='\0';return 0;}实验二RSA加解密算法的实现一、实验目的及任务:掌握RSA加密算法的加解密过程。

二、实验环境VC或TC编程环境;主机操作系统为Windows2000或Windows XP。

三、实验原理RSA加密算法是一种非对称加密算法。

在公钥加密标准和电子商业中RSA被广泛使用。

RSA是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔、(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。

当时他们三人都在麻省理工学院工作。

RSA就是他们三人姓氏开头字母拼在一起组成的。

RSA算法的可靠性基于分解极大的整数是很困难的。

假如有人找到一种很快的分解因子的算法的话,那么用RSA加密的信息的可靠性就肯定会极度下降。

但找到这样的算法的可能性是非常小的。

今天只有短的RSA钥匙才可能被强力方式解破。

到2008年为止,世界上还没有任何可靠的攻击RSA算法的方式。

只要其钥匙的长度足够长,用RSA加密的信息实际上是不能被解破的。

1、公钥和私钥的产生假设Alice想要通过一个不可靠的媒体接收Bob的一条私人讯息。

她可以用以下的方式来产生一个公钥和一个密钥:➢随意选择两个大的质数p和q,p不等于q,计算N=p*q。

➢根据欧拉函数,不大于N且与N互质的整数个数为(p-1)(q-1)➢选择一个整数e与(p-1)(q-1)互质,并且e小于(p-1)(q-1)➢用以下这个公式计算d:d× e ≡ 1 (mod (p-1)(q-1))➢将p和q的记录销毁。

e是公钥,d是私钥。

d是秘密的,而N是公众都知道的。

Alice将她的公钥传给Bob,而将她的私钥藏起来。

2、加密消息假设Bob想给Alice送一个消息m,他知道Alice产生的N和e。

他使用起先与Alice约好的格式将m转换为一个小于N的整数n,比如他可以将每一个字转换为这个字的Unicode码,然后将这些数字连在一起组成一个数字。

假如他的信息非常长的话,他可以将这个信息分为几段,然后将每一段转换为n。

他可以将n加密为c:计算c并不复杂。

Bob算出c后就可以将它传递给Alice。

3、解密消息Alice得到Bob的消息c后就可以利用她的密钥d来解码。

她可以将c转换为n,得到n后,她可以将原来的信息m重新复原。

ed ≡ 1 (mod p-1)和ed ≡ 1 (mod q-1)。

(因为p和q是不同的质数)四、实验步骤1、求素数p和q2、求公钥(e,n):e与ψ(n) = (p-1)(q-1)互质3、求私钥(d,n):d× e ≡ 1 (mod (p-1)(q-1))4、加密过程:c=(Me)mod n5、解密过程:m=(Cd)mod n五、实验结果找两个素数 : p=43 q=59n=p*q=2537 ,t=(p-1)*(q-1)=2436寻找 e 满足 e<t 并且 e 和 t 互素,找到 e=13 ,寻找 d 使 e*d%t ==1 得到 d=9371:加密 m = 134,得C=2:解密C= ,得m=134实验结果截图:六、思考题RSA算法主要有哪几部分?七、RSA源程序(仅供参考)//RSA算法的C程序实现#include<stdio.h>int candp(int a,int b,int c)//数据处理函数,实现幂的取余运算{int r=1;b=b+1;while(b!=1){r=r*a;r=r%c;b--;}printf("%d\n",r);return r;}int fun(int x,int y)//公钥e与t的互素判断{int t;while(y){t=x;x=y;y=t%y;}if(x==1)return 0;//x与y互素时返回0elsereturn 1;//x与y不互素时返回1}void main(){intp,q,e,d,m,n,t,c,r;printf("请输入两个素数p,q:");scanf("%d%d",&p,&q);n=p*q;printf("计算得n为%3d\n",n);t=(p-1)*(q-1);//求n的欧拉数printf("计算得t为%3d\n",t);printf("请输入公钥e:");scanf("%d",&e);if(e<1||e>t||fun(e,t)){printf("e不合要求,请重新输入:");//e<1或e>t或e与t不互素时,重新输入scanf("%d",&e);}d=1;while(((e*d)%t)!=1)d++;//由公钥e求出私钥dprintf("经计算d为%d\n",d);printf("加密请输入1\n");//加密或解密选择printf("解密请输入2\n");scanf("%d",&r);switch(r){case 1:printf("请输入明文m:");//输入要加密的明文数字scanf("%d",&m);c=candp(m,e,n);printf("密文为%d\n",c);break;case 2:printf("请输入密文c:");//输入要解密的密文数字scanf("%d",&c);m=candp(c,d,n);printf("明文为%d\n",m);break;}}。

相关文档
最新文档