20145237 实验五《Java网络编程》
一、实验内容
•1.运行下载的TCP代码,结对进行,一人服务器,一人客户端;
•2.利用加解密代码包,编译运行代码,一人加密,一人解密;
•3.集成代码,一人加密后通过TCP发送;
•
4.结对伙伴:20145205武钰
注:加密使用AES或者DES/AES或者DES加密密钥key并发送,使用服务器的公钥加密/公钥算法使用RSA或DH/检验发送信息的完整性使用MD5或者SHA3;
•
5.完成Blog。
二、实验步骤
<1>首先建立一个Socket对象,用来连接特定服务器的指定端口,输入的参数是ip地址和端口,注意ip地址是服务器的ip地址,即运行服务器的那台主机的ip地址。
怎么查看主机的ip地址呢?在命令行中输入ipconfig即可。
<2>然后用BufferedReader对象获得从服务器传来的网络输入流,用PrintWriter对象获得从客户端向服务器输出数据的网络输出流,用BufferedReader对象创建键盘输入流,以便客户端从键盘上输入信息。以上根据TCP的客户端代码编写。
<3>下一步是先用RSA算法加密DES的秘钥,加密采用服务器的公钥。将加密后的秘钥传送给服务器。
<4>然后用DES算法加密明文,将密文传到服务器。
<5>然后计算明文的Hash函数值,传送给服务器。
<6>最后从网络输入流读取结果,把从服务端返回的结果输出出来。
以下是截图:
三、实验中遇到的问题及解决方案
解决方法是:
我们一个是加密一个是解密,之前两个人弄成一样的了。
PSP(Personal Software Process)时间
步骤 耗时 百分比
需求分析 20min 8.3%
设计 60min 25.0%
代码实现 80min 33.3%
测试 40min 16.7%
分析总结 40min 16.7%