[发明专利]基于多公共IM通道的移动安全即时通讯方法有效
| 申请号: | 202110242263.3 | 申请日: | 2021-03-04 | 
| 公开(公告)号: | CN113037611B | 公开(公告)日: | 2022-04-19 | 
| 发明(设计)人: | 李少勇;丰瑶;喻兵 | 申请(专利权)人: | 长沙学院 | 
| 主分类号: | H04L51/04 | 分类号: | H04L51/04;H04L67/30;H04L9/40;H04L49/9057;H04N1/32 | 
| 代理公司: | 湖南企企卫知识产权代理有限公司 43257 | 代理人: | 任合明 | 
| 地址: | 410022 湖南省*** | 国省代码: | 湖南;43 | 
| 权利要求书: | 查看更多 | 说明书: | 查看更多 | 
| 摘要: | |||
| 搜索关键词: | 基于 公共 im 通道 移动 安全 即时通讯 方法 | ||
1.一种基于多公共IM通道的移动安全即时通讯方法,其特征在于包含以下步骤:
第一步,构建基于多公共IM通道的移动安全即时通讯系统,基于多公共IM通道的移动安全即时通讯系统由运行于服务器中的控制中心子系统、运行于移动设备上的即时通信客户端组成;
控制中心子系统由公共IM通道管理模块、通联关系管理模块、通信配置服务模块、控制中心数据库组成;控制中心数据库包含两个数据表,分别是:公共IM通道接入信息数据表,公共IM通道接入信息数据表存贮公共IM通道接入信息,每个表项包含四个域,分别为通道接入记录标识、公共IM通道标识、公共IM通道接入认证信息、可通联的通道接入记录标识;通联关系信息数据表,每个表项包含二个域,分别为通联关系标识、通联参与者信息;其中:通道接入记录标识是通道接入记录的唯一标识,该标识用于定位某行通道接入记录及获取通道接入记录中的其它信息;公共IM通道标识表明通道接入记录所使用的IM通道名称;公共IM通道接入认证信息中存放通道接入记录所使用的IM通道接入时所需的认证信息;可通联的通道接入记录标识是一个数组,存放使用当前通道接入记录信息接入IM通道后能够通联的其它通道接入记录标识;通联关系标识是一组通联关系的唯一标识,该标识用于关联通道接入记录标识;通联参与者信息是一个二维数组,其每行内容由通联用户标识、通道接入记录标识集合组成;通联用户标识是记录参与通联用户的唯一标识,该标识用于确定相关用户之间是否可以通信;通道接入记录标识集合包含同一行的通联用户标识所代表的通联用户所使用的所有通道接入记录标识;
即时通信客户端由配置获取模块、用户收发信息模块、动态密钥加解密模块、数据分片模块、数据重组模块、数据隐写发送模块、数据接收提取模块和第三方IM SDKAPI模块组成;
公共IM通道管理模块与控制中心数据库相连;公共IM通道管理模块将系统管理员预先申请和配置的公共IM通道接入信息存入公共IM通道接入信息数据表中,并根据系统管理员的操作执行通道信息的更新、删除操作;
通联关系管理模块与控制中心数据库相连;通联关系管理模块根据系统管理员指定的通联用户和选择的通道种类,从公共IM通道接入信息数据表中选择能够通联的记录,并将由系统管理员选定的通联用户标识和相应的通道接入记录标识集合存入通联关系信息数据表通联参与者信息域;
通信配置服务模块与控制中心数据库、配置获取模块相连;通信配置服务模块根据系统管理员指定的通联用户标识,从通联关系信息数据表中查找得到通联用户标识所对应的通道接入记录标识集合,根据通道接入记录标识集合从公共IM通道接入信息数据表中查找得到所有通道接入记录标识所对应的公共IM通道标识、公共IM通道接入认证信息,将这些信息加密后保存为通信配置文件,供即时通讯客户端的配置获取模块读取;
配置获取模块与通信配置服务模块、动态密钥加解密模块、第三方IM SDKAPI模块、数据分片模块、数据隐写发送模块相连;在配置获取模块与通信配置服务模块直接连接情况下,配置获取模块向通信配置服务模块发送配置获取请求,配置获取请求的参数为通联用户标识,并将从通信配置服务模块获得的通信配置文件加密保存在所属移动设备,供收发信息时使用;在配置获取模块与通信配置服务模块不直接连接的情况下,配置获取模块由线下方式读取拷贝至移动设备的通信配置文件;配置获取模块解析通信配置文件,根据通信配置文件中的公共IM通道标识和公共IM通道接入认证信息,向第三方IM SDKAPI模块发送通道配置和初始化请求,完成第三方通道配置和初始化工作;配置获取模块还从动态密钥加解密模块接收获取配置信息的请求,将通信配置文件中的通联用户标识发送给动态密钥加解密模块;配置获取模块从数据分片模块接收查询通道数量请求,将通信配置文件中的通道数量发送给数据分片模块;配置获取模块从数据隐写发送模块接收查询通道标识请求,将通信配置文件中所有可用通道的通道标识发送给数据隐写发送模块;
用户收发信息模块与动态密钥加解密模块相连;用户收发信息模块接收用户输入的信息,即待发送的原始明文信息,向动态密钥加解密模块发送信参数为待发明文信息的信息发送请求;同时,用户收发信息模块从动态密钥加解密模块接收参数为已收明文信息的信息接收请求,将已收明文信息进行显示,供用户查看;
动态密钥加解密模块与配置获取模块、用户收发信息模块、数据分片模块、数据重组模块相连;动态密钥加解密模块向配置获取模块发送获取配置信息的请求,接收返回的通联用户标识,并根据通联用户标识生成用于信息加解密的密钥;动态密钥加解密模块从用户收发信息模块接收参数为待发明文信息的信息发送请求,待发送明文信息用密钥加密后生成待发送的密文信息,向数据分片模块发送参数为待发送的密文信息的数据分片请求;动态密钥加解密模块从数据重组模块接收参数为已合并的密文信息的信息解密请求,将得到的密文信息用密钥解密后得到已收明文信息,向用户收发信息模块发送参数为已收明文信息的信息接收请求;
数据分片模块与配置获取模块、动态密钥加解密模块、数据隐写发送模块相连;数据分片模块向配置获取模块发送查询通道数量请求,确定每个密文待分片的分片数,其中分片数大于通道数,以确保任一通道不能获取所有分片;数据分片模块从动态密钥加解密模块接收参数为待发送的密文信息的数据分片请求,将待发送的密文信息分割为已确定分片数的密文分片即密文分片组,而后向数据隐写发送模块发送参数为密文分片组的数据隐写发送请求;
数据隐写发送模块与配置获取模块、数据分片模块、第三方IM SDKAPI模块相连;数据隐写发送模块从数据分片模块接收参数为密文分片组的数据隐写发送请求,得到待发送的密文分片组,将密文分片组逐个隐写在随机生成的图片中,生成已隐写密文的图片组;并向配置获取模块发送查询通道标识请求,得到可用的发送通道的通道标识集合;并轮循可用的发送通道的通道标识集合,得到可用的通道标识,向第三方IM SDKAPI模块发送参数为已隐写密文的图片、通道标识的消息发送请求,完成消息发送任务;
第三方IM SDKAPI模块与配置获取模块、数据隐写发送模块、数据接收提取模块、公共IM通道即第三方IM通道相连;第三方IM SDKAPI模块从配置获取模块接收参数为公共IM通道标识、公共IM通道接入认证信息的通道配置和初始化请求,调用第三方IM通道提供的接口,完成第三方通道配置和初始化工作;第三方IM SDKAPI模块从数据隐写发送模块接收参数为已隐写密文的图片、通道标识的消息发送请求,根据通道标识调用相应第三方IM提供的发送接口,向通联用户标识所对应的通联用户下的通道联系人发送已隐写密文的图片,完成消息发送任务;第三方IM SDKAPI模块从第三方IM通道收到通道消息即第三方IM通道传输的包含密文分片的消息,向数据接收提取模块发送参数为已隐写密文的图片的通道消息到达请求,完成接收密文分片任务;
数据接收提取模块与第三方IM SDKAPI模块、数据重组模块相连;数据接收提取模块从第三方IM SDKAPI模块接收参数为已隐写密文的图片的通道消息到达请求,从接收到的已隐写密文的图片提取出密文分片,而后向数据重组模块发送参数为密文分片的分片到达请求,完成密文分片接收和提取任务;
数据重组模块与数据接收提取模块、动态密钥加解密模块相连;数据重组模块从数据接收提取模块接收参数为密文分片的分片到达请求,将密文分片放入密文分片缓冲区中,若缓冲区内该分片所属分片组的所有密文分片都已到达,则将密文分片合并为完整密文信息,向动态密钥加解密模块发送参数为已合并的密文信息的信息解密请求,完成密文重组任务;
第二步,控制中心子系统启动,初始化控制中心数据库,方法是:
2.1公共IM通道管理模块将系统管理员预先申请和配置的可用的公共IM通道接入信息包括通道接入记录标识、公共IM通道标识、公共IM通道接入认证信息、可通联的通道接入记录标识作为公共IM通道接入信息数据表的一个表项;
2.2通联关系管理模块根据系统管理员指定的通联用户和选择的通道种类,从公共IM通道接入信息数据表中选择能够通联的记录,并将由系统管理员选定的通联用户标识和相应的通道接入记录标识集合存入通联关系信息数据表通联参与者信息域;
2.3通信配置服务模块根据系统管理员指定的通联用户标识,从通联关系信息数据表中查找得到通联用户标识所对应的通道接入记录标识集合,根据通道接入记录标识集合从公共IM通道接入信息数据表中查找得到所有通道接入记录标识所对应的公共IM通道标识、公共IM通道接入认证信息,将这些信息加密后保存为通信配置文件,将通信配置文件发送给配置获取模块;
第三步,即时通信客户端实现安全即时通讯,方法是:
3.1用户在移动设备上安装即时通信客户端,并使用配置获取模块导入通信配置文件,完成即时通信客户端的初始化;若用户所在的移动设备作为消息发送方,转3.2;若用户所在的移动设备作为消息接收方,转3.3;
3.2即时通信客户端循环等待用户发送信息,方法是:
3.2.1用户收发信息模块获取用户输入的待发信息,若有待发信息,则将待发信息发送给动态密钥加解密模块,转3.2.2;若没有待发信息,则转3.2.1继续等待用户输入待发消息;
3.2.2动态密钥加解密模块从用户收发信息模块接收待发信息,将待发信息加密后生成待发密文信息,将待发密文信息发送给数据分片模块;
3.2.3数据分片模块从动态密钥加解密模块接收待发密文信息,使用分片算法把待发密文信息分片,生成密文分片组,将密文分片组发送给数据隐写发送模块;
3.2.4数据隐写发送模块从数据分片模块接收密文分片组,和第三方IM SDKAPI模块一起完成对密文分片组的每个分片逐个进行隐写和发送操作,方法是:
3.2.4.1令从数据分片模块接收的密文分片组中共有N个密文分片,令密文分片序号n=1;
3.2.4.2使用系统内置函数生成一个随机图片,将第n个密文分片隐藏在生成的随机图片中,得到已隐写密文的随机图片;
3.2.4.3向配置获取模块发送查询通道标识请求,从配置获取模块得到可用的发送通道的通道标识集合,从可用的发送通道的通道标识集合中选取第n个位置的通道标识作为本次已选择通道的通道标识,将已隐写密文的随机图片、已选择通道的通道标识发送给第三方IM SDKAPI模块;
3.2.4.4第三方IM SDKAPI模块从数据隐写发送模块接收已隐写密文的随机图片、已选择通道的通道标识,向用户收发模块发送参数为已选择通道的通道标识的获取联系人信息请求,从用户收发信息模块接收联系人信息,解析联系人信息得到联系人对应的通联用户标识和通联用户标识所对应通联用户下的通道联系人,根据已选择通道的通道标识调用第三方IM提供的发送接口,将已隐写密文的随机图片发送给联系人对应的通联用户标识所对应通联用户下的通道联系人,完成第n个密文分片的发送任务;
3.2.4.5若nN,转3.2.4.6;若n≥N,转3.2.1;
3.2.4.6令n=n+1,转3.2.4.2;
3.3即时通讯客户端循环等待接收通道信息,方法是:
3.3.1第三方IM SDKAPI模块从网络上不同的公共IM通道中接收通道消息;若收到通道消息,则转3.3.2;若没有收到通道消息,则转3.3.1继续等待通道消息;
3.3.2数据接收提取模块从第三方IM SDK模块接收通道消息,从不同公共IM通道接收的通道消息中提取隐藏的密文分片,将密文分片发送给数据重组模块;
3.3.3数据重组模块从数据接收提取模块接收密文分片,对密文分片进行密文重组,方法是:
3.3.3.1将收到的密文分片放入密文分片缓冲区中;
3.3.3.2密文分片根据密文分片携带的密文分片总数N和密文分片序号n判断缓冲区内该分片所属分片组的所有密文分片是否都已到达,若是,转3.3.3.3,若否,转3.3.1;
3.3.3.3将已到达的N个密文分片组使用分片算法合并为完整密文信息,并将完整密文信息发送给动态密钥加解密模块,转3.3.4;
3.3.4动态密钥加解密模块从数据重组模块接收完整密文信息,执行解密操作,得到已收明文信息,将已收明文信息发送给用户收发信息模块;
3.3.5用户收发信息模块从动态密钥加解密模块接收已收明文信息,将已收明文信息进行显示,转3.3.1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于长沙学院,未经长沙学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110242263.3/1.html,转载请声明来源钻瓜专利网。





