Java加密实验报告_Java实验报告五

课程:Java程序设计实验   班级:1353  姓名:符运锦  学号:20135323

成绩:                           指导教师:娄嘉鹏      实验日期:2015.6.9

实验密级:无            预习程度:                   实验时间:15:30~18:00

仪器组次:  23                    必修/选修: 选修                  实验序号:5

实验名称:TCP传输及加解密

实验内容:

1.运行教材上TCP代码,结对进行,一人服务器,一人客户端;

2.利用加解密代码包,编译运行代码,一人加密,一人解密;

3.集成代码,一人加密后通过TCP发送;

注:加密使用AES或者DES/AES或者DES加密密钥key并发送,使用服务器的公钥加密/公钥算法使用RSA或DH/检验发送信息的完整性使用MD5或者SHA3;

4.完成Blog。

实验仪器:

名称

型号

数量

PC

SONY

1

虚拟机

实验楼

1

一.实验步骤

(一)在进行实验之前,我花出一定的时间了解了AES及DES算法的相关内容,并再将JAVA的一些常用的语句进行了一定的回顾,为本次实验奠定一定的基础。

我(20135323)在本次实验中主要负责客户端,我的搭档余佳源(20135321)负责服务器端,他的地址为:http://www.cnblogs.com/brotherlittlefish/

(二)回顾TCP

注:需要先运行服务器后再运行客户端

服务器端:

package chapter9;

import java.io.*;

import java.net.*;

public class ServerTest {

public static final int PORT=8080;

public static void main(String[] args)throws IOException{

ServerSocket s=new ServerSocket(PORT);

System.out.println("Started:"+s);

try{

Socket socket=s.accept();

try{

System.out.println("Connection accepted:"+socket);

BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));

PrintWriter out=new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);

while(true){

String str=in.readLine();

if(str.equals("END"))

break;

System.out.println("Echoing:"+str);

out.println(str);

}

}finally{

System.out.println("closing...");

socket.close();

}

}finally{

s.close();

}

}

}

运行结果:

b7af914e1f7ce7476446a5f98a782d34.png

客户端:

package chapter9;

import java.io.*;

import java.net.*;

public class ClientTest {

public static void main(String[] args)throws IOException{

InetAddress addr=InetAddress.getByName(null);

System.out.println("addr="+addr);

Socket socket=new Socket(addr,ServerTest.PORT);

try{

System.out.println("socket="+socket);

BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));

PrintWriter out=new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);

for(int i=0;i<10;i++){

out.println("howdy"+i);

String str=in.readLine();

System.out.println(str);

}

out.println("END");

}finally{

System.out.println("closing...");

socket.close();

}

}

}

运行结果:

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值