20155308 《Java程序设计》实验五 网络编程与安全

实验内容

任务一

  • 两人一组结对编程:
  1. 参考http://www.cnblogs.com/rocedu/p/6766748.html#SECDSA
  2. 结对实现中缀表达式转后缀表达式的功能 MyBC.java
  3. 结对实现从上面功能中获取的表达式中实现后缀表达式求值的功能,调用MyDC.java
  4. 上传测试代码运行结果截图和码云链接
    https://git.oschina.net/bestiisjava2017/java-besti-is-hwf/blob/master/src/Text/src/MyBC.java?dir=0&filepath=src%2FText%2Fsrc%2FMyBC.java&oid=50ba8d0ce94d5d23a82ba57f0dbdebdd29a83dab&sha=93cc201eb72005b64ae96deb71d5c5dc4573f992

任务二

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

https://git.oschina.net/bestiisjava2017/java-besti-is-hwf/blob/master/src/Text/src/Server.java?dir=0&filepath=src%2FText%2Fsrc%2FServer.java&oid=751daa2744dfbcb50cc33d62f337542e3204d850&sha=93cc201eb72005b64ae96deb71d5c5dc4573f992

任务三

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

https://git.oschina.net/bestiisjava2017/java-besti-is-hwf/blob/master/src/Text/src/Server2.java?dir=0&filepath=src%2FText%2Fsrc%2FServer2.java&oid=ef1c63b7b04829e0f95054a836a414c27ef599d5&sha=a5341d16cf1e1efdba4652932495392721a5375b

任务四

  • 密钥分发结对编程:1人负责客户端,一人负责服务器
  1. 注意责任归宿,要会通过测试证明自己没有问题
    基于Java Socket实现客户端/服务器功能,传输方式用TCP
  2. 客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式用3DES或AES算法加密通过网络把密文发送给服务器
  3. 客户端和服务器用DH算法进行3DES或AES算法的密钥交换
  4. 服务器接收到后缀表达式表达式后,进行解密,然后调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端
  5. 客户端显示服务器发送过来的结果
  6. 上传测试结果截图和码云链接
    https://git.oschina.net/bestiisjava2017/java-besti-is-hwf/blob/master/src/Text/src/Server3.java?dir=0&filepath=src%2FText%2Fsrc%2FServer3.java&oid=53cd61cf3b8da6d3383cc87fa65dba9d7c4a41ca&sha=a5341d16cf1e1efdba4652932495392721a5375b

任务五

  • 完整性校验结对编程:1人负责客户端,一人负责服务器
  1. 注意责任归宿,要会通过测试证明自己没有问题
    基于Java Socket实现客户端/服务器功能,传输方式用TCP
  2. 客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式用3DES或AES算法加密通过网络把密文和明文的MD5値发送给服务器
  3. 客户端和服务器用DH算法进行3DES或AES算法的密钥交换
  4. 服务器接收到后缀表达式表达式后,进行解密,解密后计算明文的MD5值,和客户端传来的MD5进行比较,一致则调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端
  5. 客户端显示服务器发送过来的结果
  6. 上传测试结果截图和码云链接
    https://git.oschina.net/bestiisjava2017/java-besti-is-hwf/blob/master/src/Text/src/_ComputeTCPServer.java?dir=0&filepath=src%2FText%2Fsrc%2F_ComputeTCPServer.java&oid=a32ec16632793b3f5e9caff866c3d15b8a5cb2ab&sha=f121aa19eeb8d38f779ab2954eec9efba5bcfb87

感受

本次实验我认为还是比较困难的,做了很长时间,然后感觉题目也都比较相似,困难还是比较大的。尤其是缺少老师的指导文章,感觉很费力。

20155308 《Java程序设计》实验五 网络编程与安全的更多相关文章

  1. 20155324 《Java程序设计》实验五 网络编程与安全

    20155324 <Java程序设计>实验五 网络编程与安全 实验内容 任务一 编写MyBC.java实现中缀表达式转后缀表达式的功能 编写MyDC.java实现从上面功能中获取的表达式中 ...

  2. 20155326 《Java程序设计》实验五网络编程与安全实验报告

    20155326 <Java程序设计>实验五网络编程与安全实验报告 实验内容 任务一 1.两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/67667 ...

  3. #《JAVA程序设计》 20155214 实验五 网络编程与安全

    <JAVA程序设计> 20155214 实验五 网络编程与安全 实验内容 掌握Socket程序的编写: 掌握密码技术的使用: 设计安全传输系统. 实验要求 要求一 结对实现中缀表达式转后缀 ...

  4. 20155301 《Java程序设计》实验五网络编程与安全

    20155301 <Java程序设计>实验五网络编程与安全 实验内容 实验1: 两人一组结对编程:参考http://www.cnblogs.com/rocedu/p/6766748.htm ...

  5. 20155317 《Java程序设计》实验五网络编程与安全实验报告

    20155317 <Java程序设计>实验五网络编程与安全实验报告 遇到问题 在刚开始启动客户端或者服务端时,出现了一系列的错误情况,总是提示异常信息 后来经过询问同学,反应将端口号修改一 ...

  6. 20155320 《Java程序设计》实验五网络编程与安全实验报告

    20155320 <Java程序设计>实验五网络编程与安全实验报告 实验内容 实验一 1.两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/67667 ...

  7. 20155338 《JAVA程序设计》实验五网络编程与安全实验报告

    20155338 <JAVA程序设计>实验五网络编程安全实验报告 实验内容 实验一: •两人一组结对编程: •结对实现中缀表达式转后缀表达式的功能 MyBC.java •结对实现从上面功能 ...

  8. 20155339 《Java程序设计》实验五网络编程与安全实验报告

    20155339 <Java程序设计>实验五网络编程与安全实验报告 实验内容 实验一 1.两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/67667 ...

  9. 20165324 Java实验五 网络编程与安全

    20165324 Java实验五 网络编程与安全 一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:何春江 学号:20165324 指导教师:娄嘉鹏 实验日期:2018年5月28日 实 ...

随机推荐

  1. git团队操作

    1.git命令行 1)分支的创建 git branch 分支名 分支创建之后,就会自动pull master的内容 2)分支的查询 git branch 3)分支的进入 git checkout 分支 ...

  2. Linux磁盘管理.md

    df df 即“可用磁盘”disk free,用于显示文件系统的磁盘使用情况.默认情况下 df 命令将以每块 1K 的单位进行显示所有当前已挂载的文件系统,如果你想以人类易读的格式显示 df 命令的输 ...

  3. Django创建基本流程

    Django创建基本流程 1.创建工程:django-admin startproject 工程名 2.创建应用:python manage.py startapp 应用名 3.激活项目:修改sett ...

  4. ethereumjs/merkle-patricia-tree-1-简介

    https://github.com/ethereumjs/merkle-patricia-tree SYNOPSIS概要 This is an implementation of the modif ...

  5. ChakraCore ,Net托管编程

    前言 有些有着复杂业务逻辑的应用程序,需要为用户提供高度自定化的功能.比如像Word中的宏,当然可以自己设计一套简易的脚本解析引擎,但考虑通用性,成熟度,其实选择一款JS脚本引擎,直接嵌入到应用系统中 ...

  6. 小程序采坑之setData

    根据双向绑定当我setData的时候input的值应该改变,但是并没有.而且this.data中的值也没有改变 <input class="weui-input" bindi ...

  7. PL/SQL Developer编码格式设置

    通过PL/SQL中文字段显示乱码或者导出数据出现乱码,原因是数据库的编码格式和PL/SQL的编码格式不统一导致. 查看ORACLE数据库字符集: select userenv('language') ...

  8. FreeRTOS+ WolfSSL + Lwip Demo

    FreeRTOS+ WolfSSL Demo下载 LWIP 源码下载  2018年2月5日09:39:08 WolfSSL is about 10 times smaller than yaSSL, ...

  9. html标签种类

    标签 描述 <!--...--> 定义注释. <!DOCTYPE> 定义文档类型. <a> 定义锚. <abbr> 定义缩写. <acronym& ...

  10. eclipse中svn插件装好后出现"位置错误"的处理

    错误现象: 验证位置时发生错误:"org.apache.subversion.javahl.ClientException:svn:E210004: Number is larger tha ...