2017-2018-2 20165228 實驗五 《網絡編程與安全》實驗報告

1、實驗報告封面

課程:Java程序設計 班級:1652班 姓名:蘇祚堃 學號:20165228html

指導教師:婁嘉鵬 實驗日期:2018年5月28日java

實驗時間:15:30 - 17:50 實驗序號:實驗五算法

實驗名稱:網絡編程與安全編程

實驗要求:數組

一、掌握Java Socket的相關內容;
二、學會創建客戶端與服務器端之間的聯繫;
三、學習並應用密碼學的相關內容
嚴禁抄襲,有該行爲者實驗成績歸零,並附加其餘懲罰措施。安全

2、實驗內容及步驟

提交點1:

要求:

兩人一組結對編程:服務器

  1. 參考http://www.cnblogs.com/rocedu/p/6766748.html#SECDSA
  2. 結對實現中綴表達式轉後綴表達式的功能 MyBC.java
  3. 結對實現從上面功能中獲取的表達式中實現後綴表達式求值的功能,調用MyDC.java
  4. 上傳測試代碼運行結果截圖和碼雲連接網絡

    運行結果:


提交點2:

要求:

結對編程:1人負責客戶端,一人負責服務器學習

  1. 注意責任歸宿,要會經過測試證實本身沒有問題
  2. 基於Java Socket實現客戶端/服務器功能,傳輸方式用TCP
  3. 客戶端讓用戶輸入中綴表達式,而後把中綴表達式調用MyBC.java的功能轉化爲後綴表達式,把後綴表達式經過網絡發送給服務器
  4. 服務器接收到後綴表達式,調用MyDC.java的功能計算後綴表達式的值,把結果發送給客戶端
  5. 客戶端顯示服務器發送過來的結果
  6. 上傳測試結果截圖和碼雲連接
    運行結果:

提交點3:

要求:

加密結對編程:1人負責客戶端,一人負責服務器測試

  1. 注意責任歸宿,要會經過測試證實本身沒有問題
  2. 基於Java Socket實現客戶端/服務器功能,傳輸方式用TCP
  3. 客戶端讓用戶輸入中綴表達式,而後把中綴表達式調用MyBC.java的功能轉化爲後綴表達式,把後綴表達式用3DES或AES算法加密後經過網絡把密文發送給服務器
  4. 服務器接收到後綴表達式表達式後,進行解密(和客戶端協商密鑰,能夠用數組保存),而後調用MyDC.java的功能計算後綴表達式的值,把結果發送給客戶端
  5. 客戶端顯示服務器發送過來的結果
  6. 上傳測試結果截圖和碼雲連接####步驟:

    運行結果:

提交點4:

要求:

密鑰分發結對編程:1人負責客戶端,一人負責服務器

  1. 注意責任歸宿,要會經過測試證實本身沒有問題
  2. 基於Java Socket實現客戶端/服務器功能,傳輸方式用TCP
  3. 客戶端讓用戶輸入中綴表達式,而後把中綴表達式調用MyBC.java的功能轉化爲後綴表達式,把後綴表達式用3DES或AES算法加密經過網絡把密文發送給服務器
  4. 客戶端和服務器用DH算法進行3DES或AES算法的密鑰交換
  5. 服務器接收到後綴表達式表達式後,進行解密,而後調用MyDC.java的功能計算後綴表達式的值,把結果發送給客戶端
  6. 客戶端顯示服務器發送過來的結果
  7. 上傳測試結果截圖和碼雲連接

    運行結果:

    提交點5:

    要求:
    完整性校驗結對編程:1人負責客戶端,一人負責服務器
  8. 注意責任歸宿,要會經過測試證實本身沒有問題
  9. 基於Java Socket實現客戶端/服務器功能,傳輸方式用TCP
  10. 客戶端讓用戶輸入中綴表達式,而後把中綴表達式調用MyBC.java的功能轉化爲後綴表達式,把後綴表達式用3DES或AES算法加密經過網絡把密文和明文的MD5値發送給服務器
  11. 客戶端和服務器用DH算法進行3DES或AES算法的密鑰交換
  12. 服務器接收到後綴表達式表達式後,進行解密,解密後計算明文的MD5值,和客戶端傳來的MD5進行比較,一致則調用MyDC.java的功能計算後綴表達式的值,把結果發送給客戶端
  13. 客戶端顯示服務器發送過來的結果
  14. 上傳測試結果截圖和碼雲連接

    運行結果:

3、遇到的問題和解決辦法

  • 問題1:客戶端運行報錯。
    解決方法:運行順序問題,應當先運行服務器再運行客戶端。
  • 問題2:作實驗時尚未學習過DH算法
    解決方法:學習了DH算法原理並參考一些代碼
  • 問題3:在運行客戶端時提示了"connection reset"
    解決辦法:參考了Connection reset緣由分析和解決方案,解決了問題
相關文章
相關標籤/搜索