第一范文网 - 专业文章范例文档资料分享平台

基于1024位RSA算法的加密通信

来源:用户分享 时间:2025/9/6 14:14:12 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

武汉纺织大学2012届毕业设计论文

4-14用户界面

添加好友,输入五位数的ID,点确定,若ID存在则成功,如图4-15:

4-15添加好友

好友列表,显示好友ID、昵称、状态和消息数,如图4-16:

25

武汉纺织大学2012届毕业设计论文

图4-16好友信息

4.4.3 聊天窗口

聊天窗口,既可以实现普通的消息传送,如图4-17:

图4-17传送消息

此部分包括简单的数据交流,还有文件和文件夹的传输,如图4-18:

图4-18发送文件和文件夹

26

武汉纺织大学2012届毕业设计论文

5 总体设计

5.1 socket网络图

客户端和服务端的网络通信socket原理图如图5-1所示:

服务器

Socket() Bind() Listen() 客户机 Socket() Accept() 阻塞 等待客户数 建立连接 Read() Connect() Write() 请求服务 处理服务请求 应答数据 Write() Close() 图5-1 udp协议图 5.2 整体框架

Read() Close() 客户端与主机使用TCP协议,客户端与客户端之前使用UDP协议。与服务器之间的连接主要是发送如注册、登陆、查找添加好友等。与另一个客户端间的连接主要是发送、接收相关请求,包括普通的聊天消息,状态改变,文件、文件夹的操作。聊天框是采用多窗口,非必须弹框式聊天方式。比如几个好友可能给你发送了消息,这时后台会创建几个窗口,并把聊天内容显示在窗口里,但窗口最开始是隐藏的,只是在登陆后界面上提示某用户 给你发送了消息,你需要双击才用户列表项才能显现相应的窗口。

由于UDP不是面向连接的,为了区别数据包的发送者,会在每个请求包头后的四个字节 ,填充上该用户的数字ID值,这样便能对不同用户的请求作区别。

27

武汉纺织大学2012届毕业设计论文

前文中提到聊天框的多窗口,非必须弹框属性,在此对此作详细介绍。客户

端用户有一个当前好友列表数据Friendlist,其中每个用户数据的结构体如下:

struct Friend {

unsigned int id;

char name[20];

//数字id

//昵称

SOCKADDR_IN ip_addr; //ip地址

CDialog *pChatBox; //对该好友聊天框窗口的 指针 char statue; //好友状态 SOCKET UdpSocketToFrd; //UDP套接字

u_short udp_port; //好友绑定的UDP端口

BOOL iswndopen; //判断与好友的当前窗口是否已经打开的标志 BOOL RecvMsg; //是否有消息到来

};

如果好友没有上线,我们会置UDP套接字为NULL,这样即便你点开窗口,发送聊天内容,实际上是没有发送。发送事件的过程会判断当前套接字是否为NULL,是则证明好友不在线,也就不必要发送出数据包。

当你双击好友列表项时,程序会先检查iswndopen这个标志位,为真证明窗口已经打开,这时只需要通过窗口指针调用显示窗口函数即可显示该窗口。如果该标志位为否,证明我们还没有创建该窗口,这时先创建一个非模态的聊天框,同时把窗口指针赋给pChatBox,并置iswndopen为真。在创建该聊天框时,对该窗口的成员变量赋值,如果需要修改里面的值 ,我们可以通过pChatBox,引用他的成员变量。例如,如果好友不在线,而我们点开了该窗口,显然窗口的成员变量m_UdpSocketToFrd,也是为NULL。刚好这时候该好友又上线了,这时我们就需要修改窗口的成员变量m_UdpSocketToFrd,显然通过pChatBox很容易做到。这样便提高了程序的性能。

5.3 客户端请求协议及处理方式

28

搜索更多关于: 基于1024位RSA算法的加密通信 的文档
基于1024位RSA算法的加密通信.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c31qyh50u0b10e609mkmz_7.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top