CN118101609A - 跨域即时通讯方法及装置 - Google Patents
跨域即时通讯方法及装置 Download PDFInfo
- Publication number
- CN118101609A CN118101609A CN202211501034.XA CN202211501034A CN118101609A CN 118101609 A CN118101609 A CN 118101609A CN 202211501034 A CN202211501034 A CN 202211501034A CN 118101609 A CN118101609 A CN 118101609A
- Authority
- CN
- China
- Prior art keywords
- domain
- target
- user
- cross
- local
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000004891 communication Methods 0.000 claims abstract description 51
- 238000004590 computer program Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 description 25
- 238000007726 management method Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 238000012546 transfer Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000003068 static effect Effects 0.000 description 6
- 238000011160 research Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- YZMCKZRAOLZXAZ-UHFFFAOYSA-N sulfisomidine Chemical compound CC1=NC(C)=CC(NS(=O)(=O)C=2C=CC(N)=CC=2)=N1 YZMCKZRAOLZXAZ-UHFFFAOYSA-N 0.000 description 1
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本申请提供一种跨域即时通讯方法及装置,方法包括:自本域的即时通讯模块获取本域用户发出的待跨域投递的目标消息,该目标消息中包含有目标用户的用户标识,且每个用户标识分别与其所在域的唯一标识相对应;根据目标用户的用户标识,自本地预设的全域配置信息表中查找是否包含有目标用户所在的目标域的跨域通讯配置信息和好友关系建立信息,若是,则自全域配置信息表中获取目标域的地址信息,以基于该地址信息将目标消息跨域发送至目标域的目标用户。本申请能够实现不同域之间的跨域通讯,跨域通讯方式简单、安全可靠且便于灵活扩展,能够有效提高跨域通讯的时效性及便捷性,进而能够在保证跨域通讯安全性的同时,进一步提高跨域用户的通讯体验。
Description
技术领域
本申请涉及信息传输技术领域,尤其涉及跨域即时通讯方法及装置。
背景技术
互联网已成为人们日常生活中的一部分,网络安全事件时有发生,为了隔离外部攻击、严防外部输入隐患,很多组织机构都会建立自己的内网体系,形成独立的网络系统环境。当前的即时通信工具有需要连接互联网网络环境,也有基于内部局域网环境的。部分组织机构具有较高的保密等级,一般不具有互联网访问权限,需要使用局域网通讯工具,满足内部的信息传输、沟通交流。
目前,针对部分仅能够通过局域网通讯的机构,若存在跨域的沟通需求,如不同研究所科研合作、指挥机构互联互通、跨部门交流等等,则很难实现,因为当前并没有专门满足安全可靠要求的跨域通讯方式。针对存在跨域的沟通需求的两个机构,现有方式仅能够通过部署一套能够覆盖两个机构的通讯系统,不但耗时长且由于专用系统的扩展性差而无法满足跨域对象的灵活性变更需求。
发明内容
鉴于此,本申请实施例提供了跨域即时通讯方法及装置,以消除或改善现有技术中存在的一个或更多个缺陷。
本申请的一个方面提供了一种跨域即时通讯方法,包括:
自本域的即时通讯模块获取本域用户发出的待跨域投递的目标消息,其中,该目标消息中包含有目标用户的用户标识,且每个用户标识分别与其所在域的唯一标识相对应;
根据所述目标用户的用户标识,自本地预设的全域配置信息表中查找是否包含有该目标用户所在的目标域的跨域通讯配置信息和好友关系建立信息,若是,则自所述全域配置信息表中获取所述目标域的地址信息,以基于该地址信息将所述目标消息跨域发送至所述目标域的目标用户。
在本申请的一些实施例中,还包括:
基于预设的合并周期,将所述目标消息与本地待投递至所述目标域的其他消息进行合并处理,得到待发送的所述目标域的跨域组合文件;
将所述跨域组合文件进行加密处理;
根据所述目标域的地址信息,将加密后的跨域组合文件发送至所述目标域的目标用户,使得所述目标域根据预存储的加解密算法标识对加密后的跨域组合文件进行解码,以解析得到所述跨域组合文件中的各个消息,并将解析的各个消息投递至所述目标域对应的用户。
在本申请的一些实施例中,在所述自本域的即时通讯模块获取本域用户发出的待跨域投递的目标消息之前,还包括:
将本域和其他域各自的域信息和地址信息之间的对应关系存储至本地的全域配置信息表中,以得到本域和其他域各自的跨域通讯配置信息;
查找其他域的用户;
若本域用户与其他域的用户之间已建立好友关系,则将对应的好友关系建立信息也存储至所述全域配置信息表中。
在本申请的一些实施例中,所述将本域和其他域各自的域信息和地址信息之间的对应关系存储至本地的全域配置信息表中,包括:
配置本域的域信息和其他域的地址信息,其中,所述域信息包括:域的唯一标识和加解密算法标识;
将本域的域信息同步至其他域,并接收其他域的域信息;
在本地的全域配置信息表中存储本域和其他域各自的域信息和地址信息之间的对应关系。
在本申请的一些实施例中,所述查找其他域的用户,包括:
自本域的即时通讯模块获取本域用户发出的目标域查询请求,其中,该目标域查询请求中包含有目标域的唯一标识;
根据所述目标域的唯一标识,在所述全域配置信息表中查找所述目标域的地址信息,并基于该地址信息搜索目标域的用户,以使所述目标域发送该目标域的用户信息,其中,所述用户信息中包含有对应的用户标识;
将自身接收到的所述目标域的用户信息发送至本域的所述即时通讯模块,以使本域用户自该即时通讯模块获取所述目标用户的用户信息。
在本申请的一些实施例中,所述若本域用户与其他域的用户之间已建立好友关系,则将对应的好友关系建立信息也存储至所述全域配置信息表中,包括:
自本域的即时通讯模块获取本域用户发出的针对所述目标用户的好友申请请求,并基于所述目标域的地址信息将该好友申请请求发送至所述目标域;
若接收到所述目标域发送的针对所述好友申请请求的同意告知消息,则将本域用户与所述目标用户之间的好友关系建立信息写入所述全域配置信息表。
在本申请的一些实施例中,所述用户标识预先基于预设的加密算法对用户所在域的唯一标识、设备的唯一标识和时间戳中的至少一项加密后生成。
本申请的另一个方面提供了一种跨域即时通讯装置,包括:跨域组件模块,该跨域组件模块用于执行下述内容:
自本域的即时通讯模块获取本域用户发出的待跨域投递的目标消息,其中,该目标消息中包含有目标用户的用户标识,且每个用户标识分别与其所在域的唯一标识相对应;
根据所述目标用户的用户标识,自本地预设的全域配置信息表中查找是否包含有该目标用户所在的目标域的跨域通讯配置信息和好友关系建立信息,若是,则自所述全域配置信息表中获取所述目标域的地址信息,以基于该地址信息将所述目标消息跨域发送至所述目标域的目标用户。
在本申请的一些实施例中,所述跨域组件模块,还用于基于预设的合并周期,将所述目标消息与本地待投递至所述目标域的其他消息进行合并处理,得到待发送的所述目标域的跨域组合文件;
所述跨域即时通讯装置,还包括:
文件加解密模块,用于将所述跨域组合文件进行加密处理;
文件传输模块,用于根据所述目标域的地址信息,将加密后的跨域组合文件发送至所述目标域的目标用户,使得所述目标域根据预存储的加解密算法标识对加密后的跨域组合文件进行解码,以解析得到所述跨域组合文件中的各个消息,并将解析的各个消息投递至所述目标域对应的用户。
本申请的第三个方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的跨域即时通讯方法。
本申请的第四个方面提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的跨域即时通讯方法。
本申请提供的跨域即时通讯方法,通过自本域的即时通讯模块获取本域用户发出的待跨域投递的目标消息,其中,该目标消息中包含有目标用户的用户标识,且每个用户标识分别与其所在域的唯一标识相对应;根据所述目标用户的用户标识,自本地预设的全域配置信息表中查找是否包含有该目标用户所在的目标域的跨域通讯配置信息和好友关系建立信息,若是,则自所述全域配置信息表中获取所述目标域的地址信息,以基于该地址信息将所述目标消息跨域发送至所述目标域的目标用户;能够实现不同域之间的跨域通讯,跨域通讯方式简单、安全可靠且便于灵活扩展,能够有效提高跨域通讯的时效性及便捷性,进而能够在保证跨域通讯安全性的同时,进一步提高跨域用户的通讯体验。
本申请的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本申请的实践而获知。本申请的目的和其它优点可以通过在说明书以及附图中具体指出的结构实现到并获得。
本领域技术人员将会理解的是,能够用本申请实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本申请能够实现的上述和其他目的。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,并不构成对本申请的限定。附图中的部件不是成比例绘制的,而只是为了示出本申请的原理。为了便于示出和描述本申请的一些部分,附图中对应部分可能被放大,即,相对于依据本申请实际制造的示例性装置中的其它部件可能变得更大。在附图中:
图1为本申请一实施例中的跨域即时通讯方法的第一种流程示意图。
图2为本申请一实施例中的跨域即时通讯方法的第二种流程示意图。
图3为本申请一实施例中的跨域即时通讯装置的一种结构示意图。
图4为本申请另一实施例中的跨域即时通讯装置的另一种结构示意图。
图5为本申请应用实例中提供的跨域好友关系建立流程示意图。
图6为本申请应用实例中提供的消息发送实现原理流程示意图。
图7为本申请应用实例中提供的动态合并周期算法流程示意图。
图8为本申请应用实例中提供的文件加密接口举例示意图。
图9为本申请应用实例中提供的文件解密接口举例示意图。
图10为本申请应用实例中提供的文件跨域传输流程示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本申请做进一步详细说明。在此,本申请的示意性实施方式及其说明用于解释本申请,但并不作为对本申请的限定。
在此,还需要说明的是,为了避免因不必要的细节而模糊了本申请,在附图中仅仅示出了与根据本申请的方案密切相关的结构和/或处理步骤,而省略了与本申请关系不大的其他细节。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
在此,还需要说明的是,如果没有特殊说明,术语“连接”在本文不仅可以指直接连接,也可以表示存在中间物的间接连接。
在下文中,将参考附图描述本申请的实施例。在附图中,相同的附图标记代表相同或类似的部件,或者相同或类似的步骤。
在本申请的一个或多个实施例中,本申请所述的域泛指独立运行的网络单元,如一个研究机构、一个指挥机构等等,具有自身的系统边界及用户体系。
在本申请的一个或多个实施例中,全域是指:A域和B域需要通信,则A域和B域组成的域称为全域,A域、B域和C域同理。
在本申请的一个或多个实施例中,跨域通讯或跨域通信是指:跨越域的边界,实现不同域之间的信息传输。
针对跨研究机构、指挥机构等不同域的协同合作需要,现有技术需要单独部署一套能够覆盖不同研究机构、指挥机构的系统,系统扩展及其不便,对网络系统部署也存在严峻的挑战,且存在较大的泄密隐患。基于此,本申请针对现有技术存在的问题,提供了一种跨域即时通讯方法及其装置。
具体通过下述实施例进行详细说明。
本申请实施例提供一种可以由跨域即时通讯装置执行的跨域即时通讯方法,参见图1,所述跨域即时通讯方法具体包含有如下内容:
步骤100:自本域的即时通讯模块获取本域用户发出的待跨域投递的目标消息,其中,该目标消息中包含有目标用户的用户标识,且每个用户标识分别与其所在域的唯一标识相对应。
在本申请的一个或多个实施例中,即时通讯模块是使用即时通讯功能必须安装的组件模块,安装该模块即可实现域内通讯功能,该模块包含客户端和服务端部分,实现了用户管理、群组管理、好友列表、会话管理、消息管理、消息传输等基本功能,用户通过登录客户端实现与好友间的消息收发。
在步骤100中,用户标识可以选取用户ID,不同的域分配唯一的域ID标识,域ID标识可人为定义或者基于时间戳来确保唯一。例如,用户ID可以基于域ID、机器ID和时间戳等通过移位编码生成后进行base64编码得到的字符串,具有全局(不同域组成的整体)唯一性。
步骤200:根据所述目标用户的用户标识,自本地预设的全域配置信息表中查找是否包含有该目标用户所在的目标域的跨域通讯配置信息和好友关系建立信息,若是,则自所述全域配置信息表中获取所述目标域的地址信息,以基于该地址信息将所述目标消息跨域发送至所述目标域的目标用户。
若步骤200中判断获知全域配置信息表没有目标用户所在的目标域的跨域通讯配置信息和好友关系建立信息的任意一个,则说明本域用户当前没有权限与目标用户进行跨域通讯,可以向本域用户发送告知消息,然后执行下述的步骤010至步骤030,将目标用户所在的目标域的跨域通讯配置信息和好友关系建立信息存储在全域配置信息表中,而后再返回重新执行步骤200的判断步骤。
在本申请的一个或多个实施例中,地址信息是指域IP地址。
步骤100和步骤200可以由跨域组件模块执行,跨域组件模块是本申请实施例提供的关键模块,安装该模块并通过简单配置同时配合即时通讯模块和文件传输模块可实现消息的跨域传输,该模块实现了域管理、域寻址、消息合并和消息解析等功能。域管理是对全域(需要相互通信的域)的管理,主要包括域ID标识、域IP地址、加解密模块标识等;域寻址依据域管理的配置信息对目标用户所在域进行寻址。基于跨域组件模块,还可以实现跨域用户的可见性管理等。
从上述描述可知,本申请实施例提供的跨域即时通讯方法,能够实现不同域之间的跨域通讯,跨域通讯方式简单、安全可靠且便于灵活扩展,能够有效提高跨域通讯的时效性及便捷性,进而能够在保证跨域通讯安全性的同时,进一步提高跨域用户的通讯体验。
为了进一步跨域即时通讯的安全性及可靠性,在本申请实施例提供的一种跨域即时通讯方法中,参见图2,所述跨域即时通讯方法还具体可以包含有如下内容:
步骤300:基于预设的合并周期,将所述目标消息与本地待投递至所述目标域的其他消息进行合并处理,得到待发送的所述目标域的跨域组合文件。
可以理解的是,步骤300可以由跨域组件模块执行,本申请中所述跨域消息首先在跨域组件模块中按目标域分组进行合并,合并周期依据加解密模块的加解密效率(性能反馈)、消息传输压力动态变化。
步骤400:将所述跨域组合文件进行加密处理。
可以理解的是,步骤400可以由文件加解密模块执行,该模块对跨域文件加解密,使用同步方式,可牺牲性能,确保安全性,可使用实现RSA算法的加解密模块,或者第三方厂商提供的加解密组件,本申请中不做具体实现细节要求,要求提供具体加解密接口,每个域都需要部署一套文件加解密模块,A域加密的文件B域能够解密。
步骤500:根据所述目标域的地址信息,将加密后的跨域组合文件发送至所述目标域的目标用户,使得所述目标域根据预存储的加解密算法标识对加密后的跨域组合文件进行解码,以解析得到所述跨域组合文件中的各个消息,并将解析的各个消息投递至所述目标域对应的用户。
可以理解的是,步骤500可以由文件传输模块执行,该模块旨在实现文件可靠传输,作为本申请中的组成部分,要求提供文件发送、接收接口,每个域都需要部署一套文件传输模块。
为了进一步提高跨域即时通讯的可靠性,在本申请实施例提供的一种跨域即时通讯方法中,参见图2,所述跨域即时通讯方法中的步骤100之前或步骤200之后还具体包含有如下内容:
步骤010:将本域和其他域各自的域信息和地址信息之间的对应关系存储至本地的全域配置信息表中,以得到本域和其他域各自的跨域通讯配置信息。
步骤020:查找其他域的用户。
步骤030:若本域用户与其他域的用户之间已建立好友关系,则将对应的好友关系建立信息也存储至所述全域配置信息表中。
可以理解的是,所述步骤010至步骤030均可以由所述跨域组件模块执行。
具体来说,所述步骤010可以具体包含有如下内容:
步骤011:配置本域的域信息和其他域的地址信息,其中,所述域信息包括:域的唯一标识和加解密算法标识;
步骤012:将本域的域信息同步至其他域,并接收其他域的域信息;
步骤013:在本地的全域配置信息表中存储本域和其他域各自的域信息和地址信息之间的对应关系。
所述步骤020可以具体包含有如下内容:
步骤021:自本域的即时通讯模块获取本域用户发出的目标域查询请求,其中,该目标域查询请求中包含有目标域的唯一标识。
步骤022:根据所述目标域的唯一标识,在所述全域配置信息表中查找所述目标域的地址信息,并基于该地址信息搜索目标域的用户,以使所述目标域发送该目标域的用户信息,其中,所述用户信息中包含有对应的用户标识。
步骤023:将自身接收到的所述目标域的用户信息发送至本域的所述即时通讯模块,以使本域用户自该即时通讯模块获取所述目标用户的用户信息。
所述步骤030可以具体包含有如下内容:
步骤031:自本域的即时通讯模块获取本域用户发出的针对所述目标用户的好友申请请求,并基于所述目标域的地址信息将该好友申请请求发送至所述目标域。
步骤032:若接收到所述目标域发送的针对所述好友申请请求的同意告知消息,则将本域用户与所述目标用户之间的好友关系建立信息写入所述全域配置信息表。
其中,所述全域配置信息表的存储数据类型举例参见表1。
表1全域配置信息表存储数据类型举例
需要说明的是,表1仅为表格内容存储类型的举例,其中的非中文内容仅为示意性的以便于理解,并不作为实际应用场景中的内容。例如,在实际应用中,A域的用户标识实际上需要根据A域的唯一标识(A域id)、机器id和时间戳等数据经加密后形成的字符串,具备全域的唯一性。
另外,在本申请的一个或多个实施例中,所述目标域是指待跨域投递的目标消息的目的域,可以为除了本域中的任何一个其他域。当然,若所述目标域就是本域,则本域用户要发送的消息就不再是待跨域投递的目标消息,而是可以直接由本域的即时通讯模块发送的本域内的目标消息。
为了进一步提高跨域即时通讯的可靠性,在本申请实施例提供的一种跨域即时通讯方法中,所述跨域即时通讯方法中的所述用户标识预先基于预设的加密算法对用户所在域的唯一标识、设备的唯一标识和时间戳中的至少一项加密后生成。用户标识可优先采用用户所在域的唯一标识、设备的唯一标识和时间戳共同加密后生成。
另外,本申请还提供一种用于执行所述跨域即时通讯方法中全部或部分内的跨域即时通讯装置,参见图3,所述跨域即时通讯装置具体包含有如下内容:
即时通讯模块10和跨域组件模块20,该跨域组件模块20用于执行下述内容:
跨域组件模块20先自本域的即时通讯模块10获取本域用户发出的待跨域投递的目标消息,其中,该目标消息中包含有目标用户的用户标识,且每个用户标识分别与其所在域的唯一标识相对应;
跨域组件模块20再根据所述目标用户的用户标识,自本地预设的全域配置信息表中查找是否包含有该目标用户所在的目标域的跨域通讯配置信息和好友关系建立信息,若是,则自所述全域配置信息表中获取所述目标域的地址信息,以基于该地址信息将所述目标消息跨域发送至所述目标域的目标用户。
从上述描述可知,本申请实施例提供的跨域即时通讯装置,能够实现不同域之间的跨域通讯,跨域通讯方式简单、安全可靠且便于灵活扩展,能够有效提高跨域通讯的时效性及便捷性,进而能够在保证跨域通讯安全性的同时,进一步提高跨域用户的通讯体验。
为了进一步跨域即时通讯的安全性及可靠性,在本申请实施例提供的一种跨域即时通讯装置中,所述跨域组件模块2,还用于基于预设的合并周期,将所述目标消息与本地待投递至所述目标域的其他消息进行合并处理,得到待发送的所述目标域的跨域组合文件;
参见图4,所述跨域即时通讯装置还具体可以包含有如下内容:
文件加解密模块30,用于将所述跨域组合文件进行加密处理。
文件传输模块40,用于根据所述目标域的地址信息,将加密后的跨域组合文件发送至所述目标域的目标用户,使得所述目标域根据预存储的加解密算法标识对加密后的跨域组合文件进行解码,以解析得到所述跨域组合文件中的各个消息,并将解析的各个消息投递至所述目标域对应的用户。
为了进一步说明本方案,本申请还提供一种跨域即时通讯方法及装置的具体应用实例,不同域之间的系统只需打通一条HTTP通信链路、一条TCP通信链路,即可实现网络互通,通过简单配置即可实现跨域通信,实现简单、安全可靠、灵活扩展。
(一)跨域即时通讯装置
本申请提供的跨域即时通讯装置主要包含:即时通讯模块、跨域组件模块、文件加解密模块和文件传输模块。各功能模块作用及实现原理详细描述如下:
a.即时通讯模块
使用即时通讯功能必须安装的组件模块,安装该模块即可实现域内通讯功能,该模块包含客户端和服务端部分,实现了用户管理、群组管理、好友列表、会话管理、消息管理、消息传输等基本功能,用户通过登录客户端实现与好友间的消息收发。
该模块关键点是包含了唯一域ID标识的用户ID,不同的域分配唯一的域ID标识,域ID标识可人为定义或者基于时间戳,确保唯一,用户ID基于域ID、机器ID、时间戳等通过移位编码生成后进行base64编码得到的字符串,具有全局(不同域组成的整体)唯一性。
b.跨域组件模块
本申请关键模块,安装该模块并通过简单配置同时配合即时通讯模块和文件传输模块可实现消息的跨域传输,该模块实现了域管理、域寻址、消息合并和消息解析等功能。
域管理是对全域(需要相互通信的域)的管理,主要包括域ID标识、域IP地址、加解密模块标识等;域寻址依据域管理的配置信息对目标用户所在域进行寻址;本申请中所述跨域消息首先在跨域组件模块中按目标域分组进行合并,合并周期依据加解密模块的加解密效率(性能反馈)、消息传输压力动态变化。
基于跨域组件模块,还可以实现跨域用户的可见性管理等
c.文件加解密模块
该模块对跨域文件加解密,使用同步方式,可牺牲性能,确保安全性,可使用实现RSA算法的加解密模块,或者第三方厂商提供的加解密组件,本申请中不做具体实现细节要求,要求提供具体加解密接口,每个域都需要部署一套文件加解密模块,A域加密的文件B域能够解密。
d.文件传输模块
该模块旨在实现文件可靠传输,作为本申请中的组成部分,要求提供文件发送、接收接口,每个域都需要部署一套文件传输模块。
(二)跨域即时通讯方法
通过各模块协作实现安全可靠的跨域即时通讯功能,首先使用跨域组件模块进行跨域配置,使用的是跨域组件模块域管理功能,然后即时通讯模块依据跨域配置的结果,可搜索对方域的用户,添加跨域好友,好友关系建立后,即可发送跨域消息,跨域好友关系建立流程参见图5。消息发送实现原理流程参见图6。具体说明如下:
1、跨域好友关系建立
流程以A域和B域为示例进行说明,参见图5,同理可扩展为多个域的好友关系建立,域之间的信息交互基于跨域组件间安全的网络信道。
(1)第1步跨域配置
配置内容:A域配置A域的信息,B域的地址,B域配置B域的信息,A域的地址,域的信息包括不限于域的域ID唯一标识、加解密模块的地址和标识、传输模块的地址和标识等。
(2)第2、3步域信息同步
在A域操作域信息同步后,基于第一步操作,A域可获取B域地址,可实现将A域信息同步至B域,B域将B域信息响应给A域,A域更新B域详细信息,形成全域一致的域配置信息。
(3)第4、5步域信息查询
基于第1步至第3步的操作,A域即时通讯模块能看到全域的域信息列表。
第6步至第17步
即时通讯模块基于跨域组件模块完成跨域用户的搜索,好友请求,到最终好友关系的建立。
2、消息发送实现原理流程
参见图6,跨域消息发送基于跨域好友关系的建立。
A域用户使用即时通讯客户端发送消息,A域即时通讯服务端执行消息发送逻辑,解析目标用户ID,获取用户所属域标识,目标用户是本域,则即时通讯模块直接执行本域投递逻辑;目标域为非本域,则执行跨域消息投递逻辑。
跨域组件收到消息后,按目标域分组将消息合并成文件,合并周期动态确定,然后调用文件加解密模块对合并的消息文件进行加密,根据加密耗时动态调整合并周期;加密后的文件通过寻址等操作最终使用文件传输模块将加密后的文件跨域传输至目标域。
目标域使用文件传输模块得到跨域文件,调用文件加解密模块的解密接口对文件进行解密操作,得到解密后的消息文件;跨域组件对消息文件进行解析,调用即时通讯模块完成消息的投递。
(三)应用举例
在一种具体举例中,采用所述跨域即时通讯装置实现的跨域即时通讯方法具体包含有如下内容:
1.含有域ID标识、业务类型、时间戳等信息的唯一ID生成算法。
参见表2,使用java语言示例,本算法是本申请系统流程实现的关键组成部分。
表2
1.public static final int START_TIME=1420329600; |
2.public static long DOMAIN_ID=0; |
3.public static final int serverNum=0; |
4.private static final AtomicInteger ID=new AtomicInteger(0); |
5. |
6.public static String getUuID(ObjectType type){ |
7.long uuID=System.currentTimeMillis()/1000; |
8.uuID-=START_TIME; |
9.uuID<<=29; |
10.uuID+=serverNum<<19; |
11.uuID+=(byte)type.getNumber()<<15; |
12.uuID+=ID.incrementAndGet()%(1<<15); |
13. |
14.BigInteger bi=BigInteger.valueOf(uuID); |
15.bi=bi.add(BigInteger.valueOf(DOMAIN_ID).shiftLeft(63)); |
16. |
17.return Base62Utils.encode_bi(bi); |
18.} |
上述java方法getUuID,参数为ObjectType枚举类型,标识所获取唯一ID的业务类型,如本申请中所述用户ID为其中一个业务类型;START_TIME为时间戳基础时间,DOMIAN_ID为域ID标识,不同域需要保证不一致,serverNum为域内集群部署时的机器编号,ID为算法中自增序列ID;通过以上各参数移位操作后,最后对结果进行Base62编码得到最终字符串,该字符串具有全域唯一性,通过对该字符串进行解码,能过获取域ID标识信息。
解码算法java代码示例如表3所示。
表3
19.public static long getDomainIDFromUuID(String ID){ |
20.BigInteger bi=Base62Utils.decode_bi(ID); |
21.long domainID=bi.shiftRight(63).longValue(); |
22.return domainID; |
23.} |
2.消息动态合并周期算法
参见图7,消息合并的目的在于充分利用加解密模块的性能,减少高并发情况下对加解密模块的调用,本申请创新性的对加解密模块进行性能评分,根据加解密模块性能表现,生成动态合并周期,在于充分发挥加解密模块的性能,尽可能减少跨域消息的延迟。
定义初始参数,MIN常量表示最小的合并周期,MAX常量表示最大合并周期,MERGE_INTERVAL变量表示初始合并周期,ENCRYPT_GRADE变量为加解密模块性能评分。
每次调用加解密模块进行文件加密时,根据加密结果及加密耗时进行判断,加密成功且加密耗时小于当前合并周期时,ENCRYPT_GRADE加1,否则ENCRYPT_GRADE减1,但是ENCRYPT_GRADE值的范围为[3,10];然后判断ENCRYPT_GRADE的值,值大,8时,MERGE_INTERVAL减1,值小于5时,MERGE_INTERVAL加1,MERGE_INTERVAL值的范围为[MIN,MAX]。
MERGE_INTERVAL变量为系统当前合并周期,以上具体值为示例值,可根据系统要求灵活配置。
3.文件加解密模块
参见图8和图9,文件加解密模块提供文件加密、文件解密接口,作为本申请中的一部分,用于提供安全的跨域传输。可使用RSA加密算法,RSA能够抵御各种已知的密码攻击。本申请不对具体加密算法做要求。实际使用中可以选择被全域认可的加密方式。
4.文件传输模块
参见图10,文件传输模块用于实现文件的跨域传输,作为本申请中的一部分,用于提供可靠的跨域传输。文件传输引入确认机制,失败重传。
本申请实施例还提供了一种电子设备(也即电子设备),例如中心服务器,该电子设备可以包括处理器、存储器、接收器及发送器,处理器用于执行上述实施例提及的跨域即时通讯方法,其中处理器和存储器可以通过总线或者其他方式连接,以通过总线连接为例。该接收器可通过有线或无线方式与处理器、存储器连接。
处理器可以为中央处理器(Central Processing Unit,CPU)。处理器还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本申请实施例中的跨域即时通讯方法对应的程序指令/模块。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的跨域即时通讯方法。
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器中,当被所述处理器执行时,执行实施例中的跨域即时通讯方法。
在本申请的一些实施例中,用户设备可以包括处理器、存储器和收发单元,该收发单元可包括接收器和发送器,处理器、存储器、接收器和发送器可通过总线系统连接,存储器用于存储计算机指令,处理器用于执行存储器中存储的计算机指令,以控制收发单元收发信号。
作为一种实现方式,本申请中接收器和发送器的功能可以考虑通过收发电路或者收发的专用芯片来实现,处理器可以考虑通过专用处理芯片、处理电路或通用芯片实现。
作为另一种实现方式,可以考虑使用通用计算机的方式来实现本申请实施例提供的服务器。即将实现处理器,接收器和发送器功能的程序代码存储在存储器中,通用处理器通过执行存储器中的代码来实现处理器,接收器和发送器的功能。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述跨域即时通讯方法的步骤。该计算机可读存储介质可以是有形存储介质,诸如随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、软盘、硬盘、可移动存储盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、系统和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本申请的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。
需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
本申请中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
以上所述仅为本申请的优选实施例,并不用于限制本申请,对于本领域的技术人员来说,本申请实施例可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种跨域即时通讯方法,其特征在于,包括:
自本域的即时通讯模块获取本域用户发出的待跨域投递的目标消息,其中,该目标消息中包含有目标用户的用户标识,且每个用户标识分别与其所在域的唯一标识相对应;
根据所述目标用户的用户标识,自本地预设的全域配置信息表中查找是否包含有该目标用户所在的目标域的跨域通讯配置信息和好友关系建立信息,若是,则自所述全域配置信息表中获取所述目标域的地址信息,以基于该地址信息将所述目标消息跨域发送至所述目标域的目标用户。
2.根据权利要求1所述的跨域即时通讯方法,其特征在于,还包括:
基于预设的合并周期,将所述目标消息与本地待投递至所述目标域的其他消息进行合并处理,得到待发送的所述目标域的跨域组合文件;
将所述跨域组合文件进行加密处理;
根据所述目标域的地址信息,将加密后的跨域组合文件发送至所述目标域的目标用户,使得所述目标域根据预存储的加解密算法标识对加密后的跨域组合文件进行解码,以解析得到所述跨域组合文件中的各个消息,并将解析的各个消息投递至所述目标域对应的用户。
3.根据权利要求1所述的跨域即时通讯方法,其特征在于,在所述自本域的即时通讯模块获取本域用户发出的待跨域投递的目标消息之前,还包括:
将本域和其他域各自的域信息和地址信息之间的对应关系存储至本地的全域配置信息表中,以得到本域和其他域各自的跨域通讯配置信息;
查找其他域的用户;
若本域用户与其他域的用户之间已建立好友关系,则将对应的好友关系建立信息也存储至所述全域配置信息表中。
4.根据权利要求3所述的跨域即时通讯方法,其特征在于,所述将本域和其他域各自的域信息和地址信息之间的对应关系存储至本地的全域配置信息表中,包括:
配置本域的域信息和其他域的地址信息,其中,所述域信息包括:域的唯一标识和加解密算法标识;
将本域的域信息同步至其他域,并接收其他域的域信息;
在本地的全域配置信息表中存储本域和其他域各自的域信息和地址信息之间的对应关系。
5.根据权利要求3所述的跨域即时通讯方法,其特征在于,所述查找其他域的用户,包括:
自本域的即时通讯模块获取本域用户发出的目标域查询请求,其中,该目标域查询请求中包含有目标域的唯一标识;
根据所述目标域的唯一标识,在所述全域配置信息表中查找所述目标域的地址信息,并基于该地址信息搜索目标域的用户,以使所述目标域发送该目标域的用户信息,其中,所述用户信息中包含有对应的用户标识;
将自身接收到的所述目标域的用户信息发送至本域的所述即时通讯模块,以使本域用户自该即时通讯模块获取所述目标用户的用户信息。
6.根据权利要求3所述的跨域即时通讯方法,其特征在于,所述若本域用户与其他域的用户之间已建立好友关系,则将对应的好友关系建立信息也存储至所述全域配置信息表中,包括:
自本域的即时通讯模块获取本域用户发出的针对所述目标用户的好友申请请求,并基于所述目标域的地址信息将该好友申请请求发送至所述目标域;
若接收到所述目标域发送的针对所述好友申请请求的同意告知消息,则将本域用户与所述目标用户之间的好友关系建立信息写入所述全域配置信息表。
7.根据权利要求1至6任一项所述的跨域即时通讯方法,其特征在于,所述用户标识预先基于预设的加密算法对用户所在域的唯一标识、设备的唯一标识和时间戳中的至少一项加密后生成。
8.一种跨域即时通讯装置,其特征在于,包括:跨域组件模块,该跨域组件模块用于执行下述内容:
自本域的即时通讯模块获取本域用户发出的待跨域投递的目标消息,其中,该目标消息中包含有目标用户的用户标识,且每个用户标识分别与其所在域的唯一标识相对应;
根据所述目标用户的用户标识,自本地预设的全域配置信息表中查找是否包含有该目标用户所在的目标域的跨域通讯配置信息和好友关系建立信息,若是,则自所述全域配置信息表中获取所述目标域的地址信息,以基于该地址信息将所述目标消息跨域发送至所述目标域的目标用户。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的跨域即时通讯方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述的跨域即时通讯方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211501034.XA CN118101609A (zh) | 2022-11-28 | 2022-11-28 | 跨域即时通讯方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211501034.XA CN118101609A (zh) | 2022-11-28 | 2022-11-28 | 跨域即时通讯方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118101609A true CN118101609A (zh) | 2024-05-28 |
Family
ID=91155942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211501034.XA Pending CN118101609A (zh) | 2022-11-28 | 2022-11-28 | 跨域即时通讯方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118101609A (zh) |
-
2022
- 2022-11-28 CN CN202211501034.XA patent/CN118101609A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101936758B1 (ko) | 정보 조회 기록의 무결성을 위한 암호화 장치, 방법 및 블록체인에서 정보 조회 기록의 무결성을 위한 분산 원장 장치 | |
EP2057819B1 (en) | Method for synchronising between a server and a mobile device | |
KR100965465B1 (ko) | 이동 사용자 증명서의 공유 정보를 이용한 보안 레코드프로토콜을 위한 시스템 및 방법 | |
US20110197059A1 (en) | Securing out-of-band messages | |
CN109359472B (zh) | 一种数据加解密处理方法、装置以及相关设备 | |
US10999073B2 (en) | Secure network communication method | |
CN110177099B (zh) | 基于非对称加密技术的数据交换方法、发送终端和介质 | |
JP2019514314A (ja) | 暗号化メッセージを送受信するために動的公開鍵インフラストラクチャを用いる方法、システム、及び媒体 | |
CN102088352B (zh) | 消息中间件的数据加密传输方法和系统 | |
KR101839048B1 (ko) | 사물 인터넷 환경의 종단간 보안 플랫폼 | |
CN104811364A (zh) | 一种消息的推送方法、系统及消息代理服务器和终端设备 | |
EP1665725B1 (en) | Remote ipsec security association management | |
CN104135471A (zh) | Dns防劫持通信方法 | |
US20220247729A1 (en) | Message transmitting system with hardware security module | |
CN111431922A (zh) | 物联网数据加密传输方法及系统 | |
CN113992427A (zh) | 基于相邻节点的数据加密发送方法及装置 | |
KR102096637B1 (ko) | 블록체인에서 정보 조회 시간의 기록을 위한 분산 원장 장치 | |
CN107547251B (zh) | 一种设备管理方法、装置及系统 | |
CN106972928B (zh) | 一种堡垒机私钥管理方法、装置及系统 | |
CN118101609A (zh) | 跨域即时通讯方法及装置 | |
CN111934995B (zh) | 一种物联网网关系统 | |
CN113452694B (zh) | 基于公共通道对终端应用实现网络控制的隐蔽通信方法 | |
CN110034927B (zh) | 一种通信的方法及装置 | |
KR102096639B1 (ko) | Uuid를 이용한 블록체인에서 정보 조회 기록의 무결성을 위한 분산 원장 장치 | |
CN113132980A (zh) | 应用于北斗导航系统的密钥管理系统方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |