江南大學現(xiàn)代遠程教育 考試大作業(yè) 信息安全概論_第1頁
江南大學現(xiàn)代遠程教育 考試大作業(yè) 信息安全概論_第2頁
江南大學現(xiàn)代遠程教育 考試大作業(yè) 信息安全概論_第3頁
江南大學現(xiàn)代遠程教育 考試大作業(yè) 信息安全概論_第4頁
江南大學現(xiàn)代遠程教育 考試大作業(yè) 信息安全概論_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

江南大學現(xiàn)代遠程教育考試大作業(yè)

考試科目:《信息安全概論》

一、大作業(yè)題目(內容)

題目:基于信息隱藏的加密通信軟件(或系統(tǒng))

目的:當前人們在工作和生活中過度依賴QQ、微信等即時通信手段,甚至用其傳輸

商業(yè)和單位機密信息,這很容易造成信息泄漏。為此,急需一種保障類似通信安全的方法

和軟件。

要求實現(xiàn)的功能:(1)實現(xiàn)基本通信;(2)實現(xiàn)加密傳輸,對待傳輸?shù)拿舾袛?shù)據(jù)進行先

加密后隱藏。將加密后的敏感數(shù)據(jù)隱寫到用戶選定的圖片中去,第三方無論通過什么途徑

獲得該圖片,保證信息都是安全的,從而實現(xiàn)了對敏感信息通信傳輸?shù)陌踩U?;?)逆

向解密。獲得圖片加密特性,通過解密算法獲取圖片隱寫信息。

大作業(yè)具體要求:

1.項目必須為一個基本完整的設計;

2.項目設計報告書旨在能夠清晰準確地闡述(或圖示)該項目(或方案);

3.作品報告采用A4紙撰寫。除標題外,所有內容必需為宋體、小四號字、

1.25倍行距;

4.項目設計報告邏輯嚴明、條理清晰。

5.項目設計報告不少于5頁;

6.在規(guī)定時間以報告形式提交。

基于加密的即時通信系統(tǒng)設計

1.1.系統(tǒng)功能概述

根據(jù)自己的實際水平,以及即時聊天的流程需求,基于安全的即時聊天系

統(tǒng)應該由服務器端模塊、客戶端模塊、RSA加密解密模塊、DES加密解密模塊、

數(shù)字簽名和驗證模塊5部分組成。

根據(jù)實際情況,服務端和客戶端除了主界面的設計不一樣之外,其余的

RSA加密解密模塊、DES加密解密模塊、數(shù)字簽名和驗證模塊都采用一樣的設

計。

各功能模塊的設計如下:

(1)服務器模塊服務端模塊有消息顯示文本框、消息發(fā)送文本框、顯示

具體的加密消息等功能

(2)客戶端模塊客戶端模塊有消息顯示文本框、消息發(fā)送文本框、顯示

具體的加密消息,以及連接相應的服務器的IP地址等功能

(3)RSA加密解密模塊RSA加密解密模塊可以生成RSA密鑰對,對數(shù)據(jù)

進行加密、解密,公鑰、私鑰的導出等功能。

(4)DES加密解密模塊DES加密解密模塊可以生成DES密鑰,對數(shù)據(jù)進

行加密、解密,對密鑰進行導出等功能。

(5)數(shù)字簽名和驗證模塊數(shù)字簽名和驗證模塊可以對數(shù)據(jù)利用

MD5WithRSA進行數(shù)字簽名,并且對簽名進行驗證。

1.2.系統(tǒng)需求分析

關于即時通信方式,現(xiàn)在社會上流行很多軟件,如風靡全中國的QQ,以

及世界上也廣為流行的MSNo我們就暫且不談論這些巨大商業(yè)型的即時通信

軟件。

基于學習的原則,此次設計的基于安全的即時通信系統(tǒng)具有以下基本功

能:

良好的操作界面。界面設計良好,操作簡單,容易上手,人機交互界面友

好。

實現(xiàn)加密解密功能。能夠對數(shù)據(jù)進行RSA非對稱加密解密,DES對稱加密

解密。實現(xiàn)數(shù)字簽名功能。

能夠對數(shù)據(jù)進行數(shù)字簽名,驗證信息的完整性和安全性。系統(tǒng)運行穩(wěn)定,

安全可靠,出現(xiàn)錯誤可以提示相應的錯誤信息。

系統(tǒng)退出。

該系統(tǒng)整體上看,分為五個模塊:服務器模塊、客戶端模塊、RSA加密解

密模塊、DES加密解密模塊、數(shù)字簽名以及簽名驗證模塊。整個基于安全的

即時通信軟件的功能結構如下圖所示:

服務器端結構客戶湍端結構

2.各模塊簡介

2.1服務器端模塊

服務器模塊,實現(xiàn)對客戶端的鏈接請求,可以顯示發(fā)送的信息,發(fā)送的加

密信息等內容:

國赧勢曲玉子安知郎外昨-□X

|泊口易示:

消息編粕:

服務器端實現(xiàn)密鑰傳遞,消息傳遞,線程啟動等代碼:

定義輸入輸出流如下:

pubIickeyThread(SocketsRSA,SocketsDES)throwslOException{

ObjOSDES=newObjectOutputStream(sDES.getOutputStreamO);//DES

密鑰的輸出流

ObjOSRSA=newObjectOutputStream(sRSA.getOutputStream());//服務

器端的RSA公鑰輸出流

ObjISRSA=newObjectInputStream(sRSA.getInputStream());〃接收客

戶端的RSA公鑰輸入流

)

初始化個通信端口,并啟動接受監(jiān)聽線程:

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();

newrecThread(serverMsg.accept()).start();//啟動接收監(jiān)聽線程

)

catch(Exceptione){

System,out.printIn(<6server.accept:+e);

1

服務器端選擇“顯示加解密信息”單選框時,消息顯示框顯示的經(jīng)過加密

的消息的代碼如下:

實現(xiàn)代碼如下:if(detaiIShow,isSeIected()){

msgShowArea.append(“接》攵至U的力口密信息:”+byteToBinary(eData)+

“\n");

msgShowArea.append(“接收到的加密簽名:"+byteToBinary(eSData)+

“\n");

msgShowArea.append(uMD5WithRSA簽名信息:”+byteToBinary(sData)

+“\n”);

2.2客戶端模塊

客戶端模塊實現(xiàn)對服務器端的鏈接如下:

privatevoidconnectServer(StringserverAddress){//連接月艮務器

try(

clientMsg=newSocket(serverAddress,msgPort);

clientRSA=newSocket(serverAddress,RSAPort);

clientDES=newSocket(serverAddress,DESPort);

if(cIientMsg.isBound()==true&&

clientRSA.isBoundO==true&&

cIientDES.isBoundO==true){

msgShowArea.append("成功連接服務器!"+"\n");

newkeyThread(clientRSA,clientDES).start();//接收密鑰線程

newrecThread(clientMsg).start();//接收信息線程}eIse{

msgShowArea.append("連接失敗!”+“\n”);}

}catch(Exceptione){

System.out.println(連接出錯:”+e);

)

客戶端保存相應的密鑰的代碼如下,以下只是其中一個例子:

。侯4a尸8史塔:工件

Fikfl=MFilK滋購場蚊:因淑麟板

也的啦X峻fouu=*也出唬誨⑥):

洋廣㈤子F筮絲

”U:LE?觸好返輟器必燃g(。.矍典S蟆C):

foutlcloseO:/,S*S3Zf??±^

S%:H8:思感£「保有害戶疏紀鑰至了件:,.門.滕鼎蜘毆0):

客尸疏鰥金iCSOT警的代08下,

岫比v°W螟爆麴典融蝴5》W3tWE£

R{

b/e匚diu?§e^?:0.:

b"?二裝3"Sis^CheekSi5n(£吃淳嫂泰胺貶則C,d*3.

::二£?退0窩螃BST.“:,

bl?二。裊?懣RS.齦痣廖EC"四科

<5^iS$5(酗:

敢源賤如;*?:

期璉學:

毀底爆flusM

裁圓戲第9KMecl£y:■.聯(lián)線刈?黑限0.3:

」K?:K.—

公?迂,信息..(頰?\");

怒?2RI:9然;:曲&4:?反「'feMS&te蛔4?H;

典酶贓黔KURX三百維W"-雙陲KK懶場-":

保存客戶餓私鑰到文件:F:\java\jiami\PrivateKey.datSSJ^te;極■公第敖忠129闌的?聞啾C?lenrh。):

保存客戶端公鑰至j文件:F:\java\jiami\PublicKey.dat聯(lián)幽至美■冬凝51";

保存服務器公鑰到文存:F:\java\jiami\serverPBK.dat}e?tehCExc9tionb){

SystatoatS2ti2Sf浪」b);

保存DE5密主解及件:F:\java\jiand\keyDE5.dat?

}:}

2.3RSA加密解密模塊

該模塊主要是利用JAVA自帶的SECURITY安全庫中的方法進行密鑰的生成

和管理,以及對數(shù)據(jù)進行加密,解密。RSA對數(shù)據(jù)的加密如下:

2.4DES加密解密模塊

DES密鑰的生成如下:

—7/實現(xiàn)於Aimaj

public?ta:icbyte匚ic^e^deykey.Pwlicle^gublicle^)throwsExceprionf

〃金求Cipher對象,覆可Cipher的舞浪翅變萬法并得受清來特關的名將傳送看

Ciphercipher?

〃荀始化ci而er

ciph?.ini^CCiiher.TOAPJDDE.盛煦蛉

return(citfier.■Rrapikey));

}

Rsa交筮揩的解答加下:

publicstaticley期以颯/〃實爽雙解空

bE0

PrivstelerprivsteKey,

StringTrapcedXeyAlrxiThai.

in:鷲冽嘮變然感物hronExcep:ion{

Ciphercipher=Cipher.§etlnstsnceCRSA,);

cipher,ini:(Cirher.INTHA^JfODH.privatelayj;

金名—bl:冬裝的己色.

return(cicher.-XTrapiTraredKe/,vrsippedleyAlgcri:\vrap時dXe/T/pe');

}

2.5數(shù)字簽名模塊

對數(shù)據(jù)進行簽名

publicstaticbrteZSign'^ivcrfe^k.bzt

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論