网络安全编程—2011800627—马晶

网络安全编程—2011800627—马晶

ID:14332408

大小:319.27 KB

页数:13页

时间:2018-07-28

网络安全编程—2011800627—马晶_第1页
网络安全编程—2011800627—马晶_第2页
网络安全编程—2011800627—马晶_第3页
网络安全编程—2011800627—马晶_第4页
网络安全编程—2011800627—马晶_第5页
资源描述:

《网络安全编程—2011800627—马晶》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、三峡大学网络安全编程学院:计算机与信息学院班级:20121122姓名:马晶学号:2011800627指导老师:黄婷日期:2015年6月28日目录一.背景3二.课程目标3三.基本要求3四.RSA加密算法简介3五.RSA加密算法原理4六.系统功能分析:5七.系统设计6(一)算法设计61)rsa算法62)网络通信73)数字签名8(二)运行截图8(1)客户端界面设计8(2)服务器界面设计9(3)对消息进行加密9(4)对消息进行解密10八.核心源码10加密方法10解密方法11客户端发送消息11九.总结:12提出问题:12

2、解决问题:12十.心得体会:12十一.参考文献:13一.背景随着信息化的发展,人们在信息传递,数据共享等方面的要求越来越高。但与此同时,数据的保密、个人的隐私保护也越来越困难,迫使人们不得不采取相应的措施来提高信息的安全性。在此条件下,加密技术应运而生。加密作为一把系统安全的钥匙,是实现信息安全的重要手段之一,正确的使用加密技术可以确保信息的安全。二.课程目标本课程主要是让学生掌握常用安全机制的使用,如何提高代码的安全性,重点要求学生掌握网络安全原理和技术在实践中的应用。本课程设计的目的是使学生在理论学习的基础

3、上,动手编写程序,通过应用所学习的知识,来解决一些实际网络安全应用问题。在此基础上,真正理解和掌握网络安全的相关理论,具备程序设计的能力。三.基本要求任务:通过建立客户端与服务器端,实现两者之间的网络通信了解网络通信的基本原理与流程,同时实现数据传输过程中的加密解密、数字签名等网络安全功能,掌握网络安全的基本知识。功能要求:1.实现用户之间的网络通信;2.实现用户密钥的生成、管理和安全分发;3.实现对数据内容的对称保密通信,并实现内容的签名和认证。四.RSA加密算法简介RSA公钥加密算法是1977年由罗纳德·李

4、维斯特(RonRivest)、阿迪·萨莫尔(AdiShamir)和伦纳德·阿德曼(LeonardAdleman)一起提出的。当时他们三人都在麻省理工学院工作。RSA就是他们三人姓氏开头字母拼在一起组成的。RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击,已被ISO推荐为公钥数据加密标准。今天只有短的RSA钥匙才可能被强力方式解破。到2008年为止,世界上还没有任何可靠的攻击RSA算法的方式。只要其钥匙的长度足够长,用RSA加密的信息实际上是不能被解破的。但在分布式计算和量子计算机

5、理论日趋成熟的今天,RSA加密安全性受到了挑战。RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但是想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。五.RSA加密算法原理RSA公开密钥密码体制。所谓的公开密钥密码体制就是使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。在公开密钥体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的加密算法E和解密算法D也都是公开的。虽然解密密钥SK是由公开密钥PK

6、决定的,但却不能根据PK计算出SK。六.系统功能分析:客户端1开始启动程序服务端客户端2接收消息分发消息是使用文档中的独特引言吸引读者的注意力,或者使用此空间强调要点。要在此页面上的任何位置放置此文本框,只需拖动它即可。]发送消息发送消息结束RSA加密算法生成密钥对公钥加密私钥解密七.系统设计(一)算法设计1)rsa算法设计的核心部分仍是算法的核心部分,根据RSA算法的原理,生成密钥对,然后设计加密算法和解密算法1.字符加解密数据流图明文明文传输密文加密密钥解密密钥解密加密明文明文传输密文加密密钥解密密钥解密加

7、密明文明文传输密文加密密钥解密密钥解密加密1.一级数据流图2.二级数据流图2)网络通信服务器启动时即建立并启动等待客户端联机时线程,然后每当有客户端要联机时。程序便在建立一个可以等待客户端联机的线程,利用维护客户端联机时线程未读取客户端付来的消息,然后将此消息加入一个广播队列中,接着由广播消息到客户端的线程来广播队列中的消息的消息给每一个客户端。3)数字签名(二)运行截图(1)客户端界面设计(2)服务器界面设计(3)对消息进行加密(4)对消息进行解密八.核心源码加密方法publicstaticStringenc

8、rypt(Stringsource)throwsException{generateKeyPair();/**将文件中的公钥对象读出*/ObjectInputStreamois=newObjectInputStream(newFileInputStream(PUBLIC_KEY_FILE));Keykey=(Key)ois.readObject();ois.close();/**得到C

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。