zoukankan      html  css  js  c++  java
  • 20175301 实验五《网络编程与安全》实验报告

    一:实验报告封面

    实验五 网络编程与安全
    课程:Java程序设计 班级:1753班 姓名:李锦然 学号:20175301
    指导教师:娄嘉鹏 实验日期:2019年5月30日
    实验时间:--- 实验序号:五
    实验名称:网络编程与安全

    二:实验内容

    实验一

    两人一组结对编程:
    0.参考http://www.cnblogs.com/rocedu/p/6766748.html#SECDSA
    1.结对实现中缀表达式转后缀表达式的功能 MyBC.java
    2.结对实现从上面功能中获取的表达式中实现后缀表达式求值的功能,调用MyDC.java
    3.上传测试代码运行结果截图和码云链接
    实验步骤:
    1.编写实现中缀表达式转后缀表达式的功能代码 MyBC.java
    2.编写实现后缀表达式求值功能的代码 MyDC.java
    3.编写测试代码 MyDCTester.java及MyBCTest.java
    实验截图:

    实验二

    结对编程:1人负责客户端,一人负责服务器
    0.注意责任归宿,要会通过测试证明自己没有问题
    1.基于Java Socket实现客户端/服务器功能,传输方式用TCP
    2.客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式通过网络发送给服务器
    3.服务器接收到后缀表达式,调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端
    4.客户端显示服务器发送过来的结果
    5.上传测试结果截图和码云链接
    实验步骤:
    1.编写服务器端与客户端链接代码
    2.客户端输入中缀表达式,调用MyBC.java转为后缀表达式
    3.服务器接收后缀表达式,调用MyDC.java计算结果值并返回到客户端
    实验截图:

    实验三

    加密结对编程:1人负责客户端,一人负责服务器
    0.注意责任归宿,要会通过测试证明自己没有问题
    1.基于Java Socket实现客户端/服务器功能,传输方式用TCP
    2.客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式用3DES或AES算法加密后通过网络把密文发送给服务器
    3.服务器接收到后缀表达式表达式后,进行解密(和客户端协商密钥,可以用数组保存),然后调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端
    4.客户端显示服务器发送过来的结果
    5.上传测试结果截图和码云链接
    实验步骤:
    1.前期基本步骤同上一提交点
    2.编写加解密代码
    3.在客户端输入中缀表达式,调用MyBC.java转后缀表达式。
    4.服务器接收到密文,对密文解密,再调用MyDC.java对解密明文计算值,返回客户端
    实验截图:

    实验四

    密钥分发结对编程:1人负责客户端,一人负责服务器
    0. 注意责任归宿,要会通过测试证明自己没有问题

    1. 基于Java Socket实现客户端/服务器功能,传输方式用TCP
    2. 客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式用3DES或AES算法加密通过网络把密文发送给服务器
    3. 客户端和服务器用DH算法进行3DES或AES算法的密钥交换
    4. 服务器接收到后缀表达式表达式后,进行解密,然后调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端
    5. 客户端显示服务器发送过来的结果
    6. 上传测试结果截图和码云链接
      实验步骤:
      1.前期操作与前一提交点一致
      2.在实验提交点3的基础上再添加密钥交换算法DHCode.java
      3.客户端和服务器用DH算法进行AES算法的密钥交换
      实验截图:

    实验五

    实验五 网络编程与安全-5
    完整性校验结对编程:1人负责客户端,一人负责服务器
    0.注意责任归宿,要会通过测试证明自己没有问题
    1.基于Java Socket实现客户端/服务器功能,传输方式用TCP
    2.客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式用3DES或AES算法加密通过网络把密文和明文的MD5値发送给服务器
    3.客户端和服务器用DH算法进行3DES或AES算法的密钥交换
    4.服务器接收到后缀表达式表达式后,进行解密,解密后计算明文的MD5值,和客户端传来的MD5进行比较,一致则调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端
    5.客户端显示服务器发送过来的结果
    6.上传测试结果截图和码云链接
    实验步骤:
    1.前期操作与前一提交点一致
    2.客户端用AES算法加密后缀表达式,把密文和明文的MD5値发送给服务器
    3.客户端和服务器用DH算法进行AES算法的密钥交换
    4.服务器解密后,计算明文的MD5值,与客户端的MD5值对比
    实验截图:

    三:码云链接

    https://gitee.com/ShengHuoZaiDaXue/20175301/tree/master/20175301/exp5/

    四:实验中遇见的小问题

    使用Socket实现客户端/服务器功能时需要提供服务器端的IP地址,这时候就要用命令行输入ifconfig命令查看IPV4的地址

    五:实验心得

    此次实验内容是一次集合,对于巩固知识复习只是来说再好不过。过程中出了很多的错误,但真正自己完成还是很有成就感的。

    实验中的问题和解决方法

    https://www.cnblogs.com/L1079991001/p/11801067.html

  • 相关阅读:
    JVM原理---------------1.开篇
    mysql开启事务的方式,命令学习
    mysql中的锁
    mysql索引底层原理
    mysql的常见存储引擎与常见日志类型,以及4种线程的作用
    Mutex
    委托和匿名委托
    线程通信
    同步锁
    [ValidateInput(false)]
  • 原文地址:https://www.cnblogs.com/lijinran/p/10949716.html
Copyright © 2011-2022 走看看