20202411 2020-2021-2 《Python程序设计》实验三报告
20202411 2020-2021-2 《Python程序设计》实验三报告
课程:《Python程序设计》
班级: 2024
姓名: 陈书桓
学号:20202411
实验教师:王志强
实验日期:2021年5月24日
必修/选修: 公选课
1.实验内容
1.创建服务端和客户端,服务端在特定端口监听多个客户请求。客户端和服务端通过Socket套接字(TCP/UDP)进行通信。
2.实验过程及结果
首先也是基于王老师发的.py文件,基于TCPsocket文件的基础进行编写。创建了两个文件,分别为Socket_host和Socket_guest,好吧,虽然应该叫server,但是能用就行。
接下来是信息的读写和加密,不采用RSA库,而采用base64库进行加密和解密,来保证信息的安全性。
除了公钥,我决定设置路径,让系统查找我所想要发送的任何文件,提高了效率,同时,使功能多样化。
最后把代码push到码云。

3.实验中遇到的问题和解决过程
Q1:RSA加密与解密
A1:这次的实验,不仅有通过端口的文件传输,还有进行RSA的加密和解密。对于文件的传输,demo上也是比较详细的了,再去csdn上逛逛,找了些东西加进去。头疼的是RSA加密,因为我在编写实验四的时候,就有考虑过对一些隐私信息进行加密来保护用户的信息安全,之前是找到了RSA库,但是在保存和读取时一直出现错误,原因是类型不匹配。之后在查找了相关信息,参考了学长们的想法,发现他们很多人都不是采用RSA库,而是采用base64库。并且在读写信息时,采用了编码解码以及str和bytes类型的转化。所以这样信息读写和加密的问题就解决了。
Q2:编码问题
A2:
UTF-8
UTF-8
UTF-8
4.其他
这次的实验不仅仅是对python的熟悉,也是对计算机端口,加密解密知识的熟悉,下次试试能不能用国密算法对信息进行加密解密。
5.参考资料
20202411 2020-2021-2 《Python程序设计》实验三报告的更多相关文章
- Python程序设计实验报告三:分支结构程序设计
安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名 姚彩琴 学号3190505129 成绩 日期 2020.4.5 指导老师 修宇 [实验目的 ...
- 20192113 2020-2021-2 《Python程序设计》实验三报告
20192113 2020-2021-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 1921 姓名: 衣丽莎 学号:20192113 实验教师 ...
- 20192204李龙威 2019-2020-2 《Python程序设计》实验三报告
20192204李龙威 2019-2020-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 1922 姓名: 李龙威 学号:20192204 实 ...
- Python程序设计实验报告二:顺序结构程序设计(验证性实验)
安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名 崔攀 学号3190505136 成绩 日期 2020.3.22 指导老师 修宇 [实验 ...
- Python程序设计实验报告一:熟悉IDLE和在线编程平台
安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名 崔攀 学号3190505136 成绩_____ 日期 2020.3.8 指导老师 ...
- Python程序设计实验报告四:循环结构程序设计(设计型实验)
安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名 姚彩琴 学号3190505129 成绩 日期 2020.4.8 指导老师 修宇 [实验名称 ...
- PYTHON程序设计实验
Python程序设计实验报告一: 熟悉IDLE和在线编程平台 安徽工程大学 Python程序设计实验报告 班级 物流191 姓名 邹缕学号 3190505117成绩 ▁▁▁ 日期 2020.3.5 指 ...
- Python程序设计 实验 1 熟悉 IDLE 和在线编程平台
------------恢复内容开始------------ 安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名 姚彩琴 学号3190505129 成绩 日期 2 ...
- 20172310 2017-2018-2 《程序设计与数据结构》实验三报告(敏捷开发与XP实践)
20172310 2017-2018-2 <程序设计与数据结构>实验三报告(敏捷开发与XP实践) 课程:<程序设计与数据结构> 班级: 1723 姓名: 仇夏 学号:20172 ...
- 20172301 《Java软件结构与数据结构》实验三报告
20172301 <Java软件结构与数据结构>实验三报告 课程:<Java软件结构与数据结构> 班级: 1723 姓名: 郭恺 学号:20172301 实验教师:王志强老师 ...
随机推荐
- react native 第三方富文本编辑器 wxik/react-native-rich-editor(在移动端使用)
//更新2021年8月23日 (1)wxik/react-native-rich-editor 个人认为功能比较全,推荐使用 关于使用的案例,官网上有,我直接粘贴我遇到的几个问题 1. 软键盘弹出时 ...
- OS复盘
OS复盘 OS课设已经结课一段时间了,我也从其他课程中抽身出来,有了一段能够好好反思的时光. 说实话,完成OS课设的过程是很痛苦的,指导书蜻蜓点水.注释模棱两可.各种函数和文件调用杂乱无章.每次在完成 ...
- java异常信息打印
如果你不仅想在日志中查看异常信息,也想把异常信息保存起来作为数据查看,那么你可以这样做 public void printException(Exception e) { ByteArrayOutpu ...
- websocket状态码
状态码 描述 0–999 保留段, 未使用 1000 正常关闭; 无论为何目的而创建, 该链接都已成功完成任务. 1001 终端离开, 可能因为服务端错误, 也可能因为浏览器正从打开连接的页面跳转离开 ...
- GUI程序设计--班级信息收集系
import wx from python实验2 import classinformation class MyFrame(wx.Frame): def __init__(self,parent,i ...
- 使用git下载文件时提示身份验证失败
鼠标右键打开Git Bash Here窗口 输入git clone + 网址 后出现身份报错提示信息 需要重新修改一下用户名和邮箱就可以了 git config --global --replace- ...
- nginx,git,maven面试题
1.简述一下什么是Nginx,它有什么优势和功能? Nginx是一个web服务器和方向代理服务器,用于HTTP.HTTPS.SMTP.POP3和IMAP协议.因 它的稳定性.丰富的功能集.示例配置文件 ...
- 蓝桥杯训练赛二-1199 问题 E: 哥德巴赫曾猜测
题目描述 德国数学家哥德巴赫曾猜测:任何大于6的偶数都可以分解成两个素数(素数对)的和.但有些偶数可以分解成多种素数对的和,如: 10=3+7,10=5+5,即10可以分解成两种不同的素数对 输入 输 ...
- 获取git远程分支仓库
1:新建本地目录 2:进入并初始化这个目录 git init 3:新建一个文件,并添加 git add . 4: git commit -m "first commit" 5:新建 ...
- logrotate配置记录
对于一些比较频繁又没有太大意义的log,可以设定出更严格的切割策略 see https://blog.csdn.net/liuxiao723846/article/details/100120058 ...