您的位置:首页 > 理论基础 > 计算机网络

20155205《Java程序设计》实验五(网络编程与安全)实验报告

2017-06-03 10:45 615 查看

20155205 《Java程序设计》实验五(网络编程与安全)实验报告

一、实验内容及步骤

(一) 两人一组结对编程

参考http://www.cnblogs.com/rocedu/p/6766748.html#SECDSA

结对实现中缀表达式转后缀表达式的功能 MyBC.java

结对实现从上面功能中获取的表达式中实现后缀表达式求值的功能,调用MyDC.java

上传测试代码运行结果截图和码云链接

结果截图:



(二) 结对编程

注意责任归宿,要会通过测试证明自己没有问题

基于Java Socket实现客户端/服务器功能,传输方式用TCP

客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式通过网络发送给服务器

服务器接收到后缀表达式,调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端

客户端显示服务器发送过来的结果

上传测试结果截图和码云链接

结果截图:



(三) 加密结对编程

注意责任归宿,要会通过测试证明自己没有问题

基于Java Socket实现客户端/服务器功能,传输方式用TCP

客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式用3DES或AES算法加密后通过网络把密文发送给服务器

服务器接收到后缀表达式表达式后,进行解密(和客户端协商密钥,可以用数组保存),然后调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端

客户端显示服务器发送过来的结果

上传测试结果截图和码云链接

结果截图:



(四) 密钥分发结对编程

注意责任归宿,要会通过测试证明自己没有问题

基于Java Socket实现客户端/服务器功能,传输方式用TCP

客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式用3DES或AES算法加密通过网络把密文发送给服务器

客户端和服务器用DH算法进行3DES或AES算法的密钥交换

服务器接收到后缀表达式表达式后,进行解密,然后调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端

客户端显示服务器发送过来的结果

上传测试结果截图和码云链接

结果截图:



(五) 完整性校验结对编程

注意责任归宿,要会通过测试证明自己没有问题

基于Java Socket实现客户端/服务器功能,传输方式用TCP

客户端让用户输入中缀表达式,然后把中缀表达式调用MyBC.java的功能转化为后缀表达式,把后缀表达式用3DES或AES算法加密通过网络把密文和明文的MD5値发送给服务器

客户端和服务器用DH算法进行3DES或AES算法的密钥交换

服务器接收到后缀表达式表达式后,进行解密,解密后计算明文的MD5值,和客户端传来的MD5进行比较,一致则调用MyDC.java的功能计算后缀表达式的值,把结果发送给客户端

客户端显示服务器发送过来的结果

结果截图:



二、分析与总结

(一)遇到的问题及解决方案

问题1:在完成任务一时,想要按照娄老师给出的算符优先法求解表达式:(生成后缀表达式+后缀表达式求值)中的步骤来做,但是发现会发生逻辑错误。

问题1解决方案:要在其中添加一些逻辑判断。

问题2:如何建立优先级表?

问题2解决方案:可以建立二维数组;也可以新建比较函数。

问题3:怎么知道自己的主机地址?

问题3解决方案:输入代码便可知:

import java.net.*;
public class ShowIP
{
public static void main(String[] args)
{
try
{
if(args.length > 0)
{
String hostName = args[0]; //主机名
InetAddress[] addr = InetAddress.getAllByName(hostName);
//得到该主机的所有地址
//打印输出至控制台
for(InetAddress address : addr)
{
System.out.println(address.getHostAddress());
}
}
else
{
System.out.println(InetAddress.getLocalHost().getHostAddress());
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
}

得到结果:



(二)PSP

步骤耗时百分比
需求分析10min6.7%
设计20min13%
代码实现80min53%
测试20min13%
分析总结20min13%
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐