20155308 《Java程序设计》实验五 网络编程与安全
20155308 《Java程序设计》实验五 网络编程与安全
实验内容
任务一
- 两人一组结对编程:
 
- 参考http://www.cnblogs.com/rocedu/p/6766748.html#SECDSA
 - 结对实现中缀表达式转后缀表达式的功能 MyBC.java
 - 结对实现从上面功能中获取的表达式中实现后缀表达式求值的功能,调用MyDC.java
 - 上传测试代码运行结果截图和码云链接
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人负责客户端,一人负责服务器
 
- 注意责任归宿,要会通过测试证明自己没有问题
 - 基于Java Socket实现客户端/服务器功能,传输方式用TCP
 - 客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式通过网络发送给服务器
 - 服务器接收到后缀表达式,调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端
 - 客户端显示服务器发送过来的结果
 - 上传测试结果截图和码云链接
 

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

任务四
- 密钥分发结对编程:1人负责客户端,一人负责服务器
 
- 注意责任归宿,要会通过测试证明自己没有问题
基于Java Socket实现客户端/服务器功能,传输方式用TCP - 客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式用3DES或AES算法加密通过网络把密文发送给服务器
 - 客户端和服务器用DH算法进行3DES或AES算法的密钥交换
 - 服务器接收到后缀表达式表达式后,进行解密,然后调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端
 - 客户端显示服务器发送过来的结果
 - 上传测试结果截图和码云链接
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人负责客户端,一人负责服务器
 
- 注意责任归宿,要会通过测试证明自己没有问题
基于Java Socket实现客户端/服务器功能,传输方式用TCP - 客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式用3DES或AES算法加密通过网络把密文和明文的MD5値发送给服务器
 - 客户端和服务器用DH算法进行3DES或AES算法的密钥交换
 - 服务器接收到后缀表达式表达式后,进行解密,解密后计算明文的MD5值,和客户端传来的MD5进行比较,一致则调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端
 - 客户端显示服务器发送过来的结果
 - 上传测试结果截图和码云链接
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程序设计》实验五 网络编程与安全的更多相关文章
- 20155324 《Java程序设计》实验五 网络编程与安全
		
20155324 <Java程序设计>实验五 网络编程与安全 实验内容 任务一 编写MyBC.java实现中缀表达式转后缀表达式的功能 编写MyDC.java实现从上面功能中获取的表达式中 ...
 - 20155326 《Java程序设计》实验五网络编程与安全实验报告
		
20155326 <Java程序设计>实验五网络编程与安全实验报告 实验内容 任务一 1.两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/67667 ...
 - #《JAVA程序设计》 20155214 实验五 网络编程与安全
		
<JAVA程序设计> 20155214 实验五 网络编程与安全 实验内容 掌握Socket程序的编写: 掌握密码技术的使用: 设计安全传输系统. 实验要求 要求一 结对实现中缀表达式转后缀 ...
 - 20155301 《Java程序设计》实验五网络编程与安全
		
20155301 <Java程序设计>实验五网络编程与安全 实验内容 实验1: 两人一组结对编程:参考http://www.cnblogs.com/rocedu/p/6766748.htm ...
 - 20155317 《Java程序设计》实验五网络编程与安全实验报告
		
20155317 <Java程序设计>实验五网络编程与安全实验报告 遇到问题 在刚开始启动客户端或者服务端时,出现了一系列的错误情况,总是提示异常信息 后来经过询问同学,反应将端口号修改一 ...
 - 20155320 《Java程序设计》实验五网络编程与安全实验报告
		
20155320 <Java程序设计>实验五网络编程与安全实验报告 实验内容 实验一 1.两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/67667 ...
 - 20155338 《JAVA程序设计》实验五网络编程与安全实验报告
		
20155338 <JAVA程序设计>实验五网络编程安全实验报告 实验内容 实验一: •两人一组结对编程: •结对实现中缀表达式转后缀表达式的功能 MyBC.java •结对实现从上面功能 ...
 - 20155339 《Java程序设计》实验五网络编程与安全实验报告
		
20155339 <Java程序设计>实验五网络编程与安全实验报告 实验内容 实验一 1.两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/67667 ...
 - 20165324 Java实验五  网络编程与安全
		
20165324 Java实验五 网络编程与安全 一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:何春江 学号:20165324 指导教师:娄嘉鹏 实验日期:2018年5月28日 实 ...
 
随机推荐
- Linq to Entities,ADO.NET Entity Framework 模型优先
			
一.概念: Database First(数据库优先):存在的DB------------->生成Data Model .edmx文件 Model First(模型优先):Data Model ...
 - codeforces 963A Alternating Sum
			
codeforces 963A Alternating Sum 题解 计算前 \(k\) 项的和,每 \(k\) 项的和是一个长度为 \((n+1)/k\) ,公比为 \((a^{-1}b)^k\) ...
 - Windows7下安装配置PostgreSQL10
			
PostgreSQL安装: 一.windows7下安装过程首先上PostgreSQL官方网站的下载页面https://www.postgresql.org/download/windows/,下载本软 ...
 - BZOJ 3211 花神游历各国 线段树平方开根
			
题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=3211 题目大意: 思路: 由于数据范围只有1e9,一个数字x开根号次数超过logx之后 ...
 - caanimationgroup与CATransaction的区别
			
动画的组合: caanimationgroup:同一个layer: CATransaction:不同layer: In Core Animation, transactions are a way t ...
 - [19/04/17-星期三] Java的动态性_反射(Reflection)机制
			
一.前言 动态语言:程序运行时,可以改变程序结构或变量类型.典型的代表:Python,ruby,JavaScript 如JavaScript代码: function test(){ var s=&qu ...
 - 【腾讯敏捷转型No.6】如何打造称手的敏捷工具
			
通常情况下,大家对于敏捷的感受就是:大家一起来开站立晨会啦!然后一大早,大家拿着早餐,围成一个圈,听一个人在讲话. 在很多公司,决定采用敏捷之后,都会从晨会开始,因为很多人觉得敏捷其它模块都很难学习, ...
 - js中改变this指向的call、apply、bind 方法使用
			
前言: 由于js 中this的指向受函数运行环境的影响,指向经常改变,使得开发变得困难和模糊,所以在封装sdk,写一些复杂函数的时候经常会用到this 指向绑定,以避免出现不必要的问题,call.ap ...
 - nginx+uwsgi+flask+supervisor 项目部署
			
环境 - Linux: Ubuntu 16.04 - uWSGI 2.0.18 - Flask 1.0.2 - supervisor 3.2.0 - nginx/1.8.1 首先区分几个概念 WSGI ...
 - 【Linux】进程管理
			
进程是什么? 程序 保存在硬盘.光盘等介质中的可执行代码和数据 是静态保存的代码 进程 在CPU及内存中运行的动态执行的程序代码 进程是程序运行的实例 同一个程序可能对应多个进程 子进程和父进 ...