江南大学现代远程教育考试大作业信息安全概论.doc

江南大学现代远程教育考试大作业信息安全概论.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PAGE

PAGE3

江南大学现代远程教育考试大作业

考试科目:《信息安全概论》

大作业题目(内容)

题目:基于信息隐藏的加密通信软件(或系统)

目的:当前人们在工作和生活中过度依赖QQ、微信等即时通信手段,甚至用其传输商业和单位机密信息,这很容易造成信息泄漏。为此,急需一种保障类似通信安全的方法和软件。

要求实现的功能:(1)实现基本通信;(2)实现加密传输,对待传输的敏感数据进行先加密后隐藏。将加密后的敏感数据隐写到用户选定的图片中去,第三方无论通过什么途径获得该图片,保证信息都是安全的,从而实现了对敏感信息通信传输的安全保障;(3)逆向解密。获得图片加密特性,通过解密算法获取图片隐写信息。

大作业具体要求:

1.项目必须为一个基本完整的设计;

2.项目设计报告书旨在能够清晰准确地阐述(或图示)该项目(或方案);

3.作品报告采用A4纸撰写。除标题外,所有内容必需为宋体、小四号字、1.25倍行距;

4.项目设计报告逻辑严明、条理清晰。

5.项目设计报告不少于5页;

6.在规定时间以报告形式提交。

基于加密的即时通信系统设计

1.1.系统功能概述

根据自己的实际水平,以及即时聊天的流程需求,基于安全的即时聊天系统应该由服务器端模块、客户端模块、RSA加密解密模块、DES加密解密模块、数字签名和验证模块5部分组成。

根据实际情况,服务端和客户端除了主界面的设计不一样之外,其余的RSA加密解密模块、DES加密解密模块、数字签名和验证模块都采用一样的设计。

各功能模块的设计如下:

(1)服务器模块服务端模块有消息显示文本框、消息发送文本框、显示具体的加密消息等功能

(2)客户端模块客户端模块有消息显示文本框、消息发送文本框、显示具体的加密消息,以及连接相应的服务器的IP地址等功能

(3)RSA加密解密模块RSA加密解密模块可以生成RSA密钥对,对数据进行加密、解密,公钥、私钥的导出等功能。

(4)DES加密解密模块DES加密解密模块可以生成DES密钥,对数据进行加密、解密,对密钥进行导出等功能。

(5)数字签名和验证模块数字签名和验证模块可以对数据利用MD5WithRSA进行数字签名,并且对签名进行验证。

1.2.系统需求分析

关于即时通信方式,现在社会上流行很多软件,如风靡全中国的QQ,以及世界上也广为流行的MSN。我们就暂且不谈论这些巨大商业型的即时通信软件。

基于学习的原则,此次设计的基于安全的即时通信系统具有以下基本功能:

良好的操作界面。界面设计良好,操作简单,容易上手,人机交互界面友好。

实现加密解密功能。能够对数据进行RSA非对称加密解密,DES对称加密解密。实现数字签名功能。

能够对数据进行数字签名,验证信息的完整性和安全性。系统运行稳定,安全可靠,出现错误可以提示相应的错误信息。

系统退出。

该系统整体上看,分为五个模块:服务器模块、客户端模块、RSA加密解密模块、DES加密解密模块、数字签名以及签名验证模块。整个基于安全的即时通信软件的功能结构如下图所示:

2.各模块简介

2.1服务器端模块

服务器模块,实现对客户端的链接请求,可以显示发送的信息,发送的加密信息等内容:

服务器端实现密钥传递,消息传递,线程启动等代码:

定义输入输出流如下:

publickeyThread(SocketsRSA,SocketsDES)throwsIOException{

ObjOSDES=newObjectOutputStream(sDES.getOutputStream());//DES密钥的输出流

ObjOSRSA=newObjectOutputStream(sRSA.getOutputStream());//服务器端的RSA公钥输出流

ObjISRSA=newObjectInputStream(sRSA.getInputStream());//接收客户端的RSA公钥输入流

}

初始化个通信端口,并启动接受监听线程:

try{

serverKeyRSA=newSKey_RSA();//生成服务器端RSA密钥

SKey_DESskeyDES=newSKey_DES();

keyDES=skeyDES.getSecretKey();//生成DES密钥

serverMsg=newServerSocket(msgPort);//通信端口

serverRSA=newServerSocket(RSAPort);//RSA钥匙传递端口

serverDES=newServerSocket(DESPort);//DES密钥传递端口new

keyThread(serverRSA.accept(),serverDES.accept()).start(

文档评论(0)

159****1944 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档