安全技术课程设计基于python的安全即时通讯系统。功能需求
聊天客户端
注册:用户与集中服务器通信完成注册,包括用户名、密码、邮箱、性别、年龄、数字证书等信息传输,其中数字证书包含公钥、用户名、邮箱等信息。私钥单独保存在客户端一个文件夹下不进行传输;能显示用户名、邮箱不符合格式规范或者重复,空输入等错误信息。
认证登录:客户端与集中服务器通信完成用户名、口令认证登录;能显示用户名、密码错误导致的登录错误信息。还有已登录账号再次登录时的多重登录检验,并将之前登陆的账号顶下去。
好友管理:用户可通过服务器进行搜索、添加、删除好友。
即时通信:用户通过客户端实现与好友的聊天,包括文字、图片传输。文字可实现字体颜色和大小的改变。
聊天记录:客户端能够保存聊天记录并且可以查看聊天记录。
消息加解密:采用D-H体制协商加密秘钥,用对称密码AES算法进行加解密。
消息摘要:使用MD5算法实现消息摘要认证功能,确保发送消息的完整性。
用户未读消息提醒:红点标注未读消息数目,并按最后发送消息时间排列好友列表。
用户离线后消息处理:用户上线后及时接收到离线时好友发送的消息。