20145318 《Java程序设计》实验5

实验内容

  • 运行下载的TCP代码,结对进行,一人服务器,一人客户端;

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

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

  • 结对伙伴:20145312袁心:我负责客户端,她负责服务端。

实验要求

  • 掌握Socket程序的编写;

  • 掌握密码技术的使用;

  • 设计安全传输系统。

    实验步骤

    确定服务器端IP地址和端口

  • 用设计服务器的电脑打开cmd命令行,在其中输入ipconfig查询服务器的IPv4地址并让负责客户端的用户记录下来,创立一个端口号且服务器和客户端一致。
    截图如下:

  • 编写代码
    (1)建立一个Socket对象,用来建立一个端口号与客户端相连,获得网络输入流与输出流对象的引用。
    (2)使用服务器端RSA的私钥对DES的密钥进行解密,对秘钥进行解密之后使用DES对密文进行解密。
    (3)计算解密后的hash值来确定解密是否正确。

  • 匹配连接
    (1)运行服务器端代码,显示“服务器已经启动后”运行客户端代码,显示“已经建立连接”就证明双方已经连接好了,客户端输入要传输的信息,服务器端显示从客户端接受到的信息,双方匹配成功,并在客户端显示“匹配成功”的消息;
    (2)我们将端口设置为:11111. 从命令行中得知服务器的IP为:192.168.42.135;
    (4)然后服务器方点击“run”,客户端再“run”,这样就建立了连接。
    截图:

PSP

《Java程序设计》实验5的更多相关文章

  1. Java程序设计实验 实验五

    课程:Java程序设计实验   班级:1353  姓名:符余佳源  学号:20135321 成绩:                           指导教师:娄嘉鹏      实验日期:2015. ...

  2. 南邮JAVA程序设计实验1 综合图形界面程序设计

    南邮JAVA程序设计实验1  综合图形界面程序设计 实验目的: 学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法.通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法. ...

  3. Java程序设计 实验三

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计   班级:1353       姓名:李海空  学号:20135329 成绩:             指 ...

  4. Java程序设计 实验二 Java面向对象程序设计

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1353  姓名:李海空  学号:20135329 成绩:             指导教师:娄嘉鹏 ...

  5. JAVA程序设计 实验一

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1353  姓名:李海空  学号:20135329 成绩:             指导教师:娄嘉鹏 ...

  6. JAVA程序设计 实验一报告

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1351  姓名:李畅宇  学号:20135129 成绩:             指导教师:娄嘉鹏 ...

  7. Java程序设计 实验五

    实     验    报     告 课程:Java 班级: 1353    姓名:李海空   学号:20135329 成绩:              指导教师:娄嘉鹏   实验日期:2015.6. ...

  8. java程序设计实验

    建立文件调试jdk idea断点调试 项目素数的寻遍

  9. 《Java程序设计实验》 软件工程18-1,3 OO实验2

  10. 学号20155311 2016-2017-2 《Java程序设计》第一次实验报告

    课程:Java程序设计 实验名称:Java开发环境的熟悉 实验目的与要求: 没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程: 完成实验. ...

随机推荐

  1. ios开发 iphone中获取网卡地址和ip地址

    这是获取网卡的硬件地址的代码,如果无法编译通过,记得把下面的这几个头文件加上把. #include <sys/socket.h> // Per msqr#include <sys/s ...

  2. php curl vs python提交多维数组+文件

    总结: 1.data数据格式 2.php post 格式无需json_encode(关联数组,所以可以绕弯)  参考:http://bbs.csdn.net/topics/390645553?page ...

  3. Activity

    activity的生命周期: 第一个是:点击按钮切换到另一个activity界面. 第二个是:单击物理返回键的时候,是对当前的activity进行销毁动作. Activity的启动方式:直接启动和匿名 ...

  4. openldap sshkey & 用户自定义属性

    http://qiita.com/T_Tsan/items/eeb0a9ae9b4cdeb80934 https://www.ossramblings.com/using-ldap-to-store- ...

  5. SQL笔记-第四章,数据的检索

    一.select的简单用法 1.简单的数据检索 SELECT * FROM T_Employee; 2.检索出需要的列 SELECT FNumber,FName,FAge FROM T_Employe ...

  6. 【译】为什么这样宏定义#define INT_MIN (-2147483647 - 1)?

    2的32次方为2147483648*2,0~(2147483648*2-1)这是32位机上无符号整数代表的范围.而32机的int范围为-2147483648~+2147483647 stackover ...

  7. information_schema系列四(跟踪,列约束,表和列)

    这个系列的文章主要是为了能够让自己了解MySQL5.7的一些系统表,统一做一下备注和使用,也希望分享出来让大家能够有一点点的受益. 1:KEY_COLUMN_USAGE 按照官方的解释,这个表描述的是 ...

  8. avalon2学习教程14动画使用

    avalon2实际上没有实现完整的动画模块,它只是对现有的CSS3动画或jquery animate再包装一层. 我们先说如何用CSS3为avalon实现动画效果.首先要使用avalon.effect ...

  9. {Links}{Matting}{Saliency Detection}{Superpixel}Source links

    自然图像抠图/视频抠像技术发展情况梳理(image matting, alpha matting, video matting)--计算机视觉专题1 http://blog.csdn.net/ansh ...

  10. C++中使用初始化列表比在构造函数中对成员变量赋值更高效

    这是在面试中遇到的一个问题,没有答出来,后来上网上查了一些资料,终于弄明白了: 一.首先c++标准规定成员变量必须在调用构造函数前进行初始化(这一点很重要) 二.如果我们在构造函数中对成员变量进行初始 ...