---恢复内容开始---

(一)实验内容

1.运行TCP代码,一人服务器,一人客户端

2.下载加解密代码,先编译运行代码,一人加密一人解密。

3.集成代码,一人加密后通过TCP 发送,加密使用DES或AES,AES或DES加密密钥Key的发送,使用服务器的公钥加密,公钥算法用RSA或者DH。

(二)实验步骤

1.要想使用DES加密传输密文,首先需要选取8位素数作为密钥

2.将密钥使用RSA算法加密后通过服务器传输给客户端

3.与客户端建立连接并尝试传输文件

4.将用8位密钥加密之后的密文传送给客户端

加密之前的明文:

加密之后的密文

(三)实验体会

在实验中遇到的问题:

1.传输文件位置不正确,导致系统找不到指定文件

key.txt应该保存在该Java项目目录下

2.端口号和ip地址不匹配导致连接失败

附,实验部分代码

DES加密:

服务器:

RSA加密:

RSA解密:

(四)实验体会

这次实验主要分为三个部分,一是多线程客户端和服务器的连接,而是RSA公钥加密,三是DES加密,其中,我负责服务器部分和密钥明文的加密。

通过这次实验,使我对于多线程客户端和服务器的连接有了更直观的体验和理解,也熟悉了密码算法,另外,在查找网络ip地址的过程中,对计算机网络课程上所学的内容也有了实际应用,增加了我对于学习的兴趣和热情。

结对编程搭档:20135228郭垚,博客地址:http://www.cnblogs.com/20135228guoyao/

实验五 cmp传输与加解密的更多相关文章

  1. 实验五 TCP传输及加解密

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计                         班级:1353            姓名:陈巧然     ...

  2. Java实验五报告——TCP传输及加解密

    一.实验内容 1.运行教材上TCP代码,结对进行,一人服务器,一人客户端: 2.利用加解密代码包,编译运行代码,一人加密,一人解密: 3.集成代码,一人加密后通过TCP发送: 注:加密使用AES或者D ...

  3. 实验五 TCP传输及加密

    实验内容: 1.运行教材上TCP代码,结对进行,一人服务器,一人客户端: 2.利用加解密代码包,编译运行代码,一人加密,一人解密: 3.集成代码,一人加密后通过TCP发送: 注:加密使用AES或者DE ...

  4. java实验五实验报告

    一.实验内容 Cmp传输与加解密 结对编程,一人服务器,一人客户端,服务器向客户端发送经RSA加密的密钥和用密钥加密的密文(使用DES算法),客户端负责接收加密后的密钥和密文,并解密得出明文. 二.实 ...

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

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

  6. 20145328 《Java程序设计》实验五实验报告

    20145328 <Java程序设计>实验五实验报告 实验名称 Java网络编程 实验内容 用书上的TCP代码,实现服务器与客户端. 客户端与服务器连接 客户端中输入明文,利用DES算法加 ...

  7. java实验五20135104

    课程:Java程序设计                   班级:1351            姓名:刘帅      学号:20135104 成绩:             指导教师:娄嘉鹏     ...

  8. Java实验报告(实验五)

    课程:Java程序设计                         班级:1351            姓名:王玮怡      学号:20135116 成绩:             指导教师: ...

  9. .net mvc 站点自带简易SSL加密传输 Word报告自动生成(例如 导出数据库结构) 微信小程序:动画(Animation) SignalR 设计理念(一) ASP.NET -- WebForm -- ViewState ASP.NET -- 一般处理程序ashx 常用到的一些js方法,记录一下 CryptoJS与C#AES加解密互转

    .net mvc 站点自带简易SSL加密传输   因项目需要,传输数据需要加密,因此有了一些经验,现简易抽出来分享! 请求:前端cryptojs用rsa/aes 或 rsa/des加密,后端.net ...

随机推荐

  1. ironpython 2.75 在c#中的使用

    ironpython的介绍请自行搜索. 一句话,python是一个类似lua js的动态预言.ironpython是在net环境执行python的类库. 效果:在网站中调用一个python文件test ...

  2. CALayer总结(三)

    CPU VS GPU 动画和屏幕上组合的图层实际上被一个单独的进程管理,而不是你的应用程序.这个进程就是所谓的渲染服务.在iOS5和之前的版本是SpringBoard进程(同时管理着iOS的主屏).在 ...

  3. Windows Internals学习笔记(二)系统架构

    参考资料: 1. <Windows Internals> 2. http://bestcbooks.com 3. Windows Drive Kit 4. Microsoft Window ...

  4. HDU 1247 Hat's Words (map+string)

    Hat’s Words Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Tota ...

  5. [转] Java内部类详解

    作者:海子 出处:http://www.cnblogs.com/dolphin0520/ 本博客中未标明转载的文章归作者海子和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置 ...

  6. 使用Maven构件Web应用

    一个典型的WAR文件会有如下目录结构: Maven的WEB项目结构: jetty-maven-plugin默认很好地支持了Maven的项目结构.在通常情况下,我们只需要直接在IDE中修改源码,IDE能 ...

  7. mysql 权限控制

    1.mysql的权限是,从某处来的用户对某对象的权限. 2.mysql的权限采用白名单策略,指定用户能做什么,没有指定的都不能做. 3.权限校验分成两个步骤: a.能不能连接,检查从哪里来,用户名和密 ...

  8. spring 好处与优点

    使用Spring有什么好处?(1)Spring能有效地组织你的中间层对象.(2)Spring能消除在许多工程中常见的对Singleton的过多使用.(3)Spring能消除各种各样自定义格式的属性文件 ...

  9. 扩展spring data jpa的数据更新方法时注意事项

    //此处必须加@Transactional,否则不能运行,报错 @Transactional @Modifying @Query("update ExamItem a set a.versi ...

  10. 20160808_Qt570安装

    1.安装的目录为 “/opt/Qt5.7.0/Tools/QtCreator/bin” 2.建立软连接 [root@localhost bin]# ln -s /opt/Qt5.7.0/Tools/Q ...