数据交换方法、装置及设备与流程

文档序号:11842423阅读:171来源:国知局
数据交换方法、装置及设备与流程

本申请涉及网络通信技术领域,尤其涉及数据交换方法、装置及设备。



背景技术:

随着大数据时代的来临,在基于互联网开展各种业务时,可能会涉及不同领域,或者不同业务间的海量数据交换。现有技术中,对应不同业务的交换设备之间可以基于FTP(File Transfer Protocol,文件传输协议)进行数据交换。在基于FTP进行数据交换时,通常由数据发送方设置账号和密码,并将账号和密码共享给数据接收方,当数据发送方将交换数据上传到FTP服务器后,数据接收方可以根据获得的账号和密码从FTP服务器上请求到交换数据。但是,由于数据发送方和数据接收方之间直接共享由其中一方设置的账号和密码,因此在使用该账号和密码时,容易被恶意第三方窃取,从而导致数据交换的安全性较差。



技术实现要素:

本申请提供数据交换方法、装置及设备,以解决现有数据交换的安全性较差的问题。

根据本申请实施例的第一方面,提供一种数据交换方法,所述方法应用在与接收方设备进行数据交换的发送方设备上,所述方法包括:

与所述接收方设备协商进行所述数据交换的默认协议;

根据所述默认协议获得动态协议;

根据所述动态协议和待传输数据生成交换数据包;

向所述接收方设备传输所述交换数据包,以使所述接收方设备采用通过所述默认协议生成的动态协议接收所述交换数据包。

根据本申请实施例的第二方面,提供另一种数据交换方法,所述方法应用在与发送方设备进行数据交换的接收方设备上,所述方法包括:

与所述发送方设备协商进行所述数据交换的默认协议;

根据所述默认协议获得动态协议;

接收所述发送方设备传输的交换数据包,所述交换数据包为所述发送方设备采用通过所述默认协议生成的动态协议和待传输数据生成的数据包;

根据所述动态协议处理所述交换数据包。

根据本申请实施例的第三方面,提供一种数据交换装置,所述装置应用在与接收方设备进行数据交换的发送方设备上,所述装置包括:

协商单元,用于与所述接收方设备协商进行所述数据交换的默认协议;

获得单元,用于根据所述默认协议获得动态协议;

生成单元,用于根据所述动态协议和待传输数据生成交换数据包;

传输单元,用于向所述接收方设备传输所述交换数据包,以使所述接收方设备采用通过所述默认协议生成的动态协议接收所述交换数据包。

根据本申请实施例的第四方面,提供另一种数据交换装置,所述装置应用在与发送方设备进行数据交换的接收方设备上,所述装置包括:

协商单元,用于与所述发送方设备协商进行所述数据交换的默认协议;

获得单元,用于根据所述默认协议获得动态协议;

接收单元,用于接收所述发送方设备传输的交换数据包,所述交换数据包为所述发送方设备采用通过所述默认协议生成的动态协议和待传输数据生成的数据包;

处理单元,用于根据所述动态协议处理所述交换数据包。

根据本申请实施例的第五方面,提供一种数据交换设备,所述设备为与接收方设备进行数据交换的发送方设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为:

与所述接收方设备协商进行所述数据交换的默认协议;

根据所述默认协议获得动态协议;

根据所述动态协议和待传输数据生成交换数据包;

向所述接收方设备传输所述交换数据包,以使所述接收方设备采用通过所述默认协议生成的动态协议接收所述交换数据包。

根据本申请实施例的第六方面,提供另一种数据交换设备,所述设备为与发送方设备进行数据交换的接收方设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为:

与所述发送方设备协商进行所述数据交换的默认协议;

根据所述默认协议获得动态协议;

接收所述发送方设备传输的交换数据包,所述交换数据包为所述发送方设备采用通过所述默认协议生成的动态协议和待传输数据生成的数据包;

根据所述动态协议处理所述交换数据包。

本申请实施例进行数据交换时,发送方设备与接收方设备协商进行数据交换的默认协议后,根据该默认协议获得动态协议,发送方设备根据动态协议和待传输数据生成交换数据包,并将该交换数据包传输给接收方设备,接收方设备根据该动态协议处理交换数据包,从而完成数据交换。应用本申请实施例,发送方和接收方之间通过协商的默认协议生成动态协议,并基于该动态协议进行数据交换,由于动态协议可以在有数据交换需求时动态生成,因此可以有效避免恶意第三方对数据交换的通信过程进行窃取,从而能够提高数据交换的安全性。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1为本申请数据交换方法的一个实施例流程图;

图2为本申请数据交换方法的另一个实施例流程图;

图3为采用本申请实施例实现数据交换的应用场景示意图;

图4A为本申请数据交换方法的另一个实施例流程图;

图4B为图4A中一种根据默认协议生成动态协议的过程示意图;

图4C为图4A中一种交换数据包的包头格式示意图;

图4D为图4A中一种交换数据包的包体格式示意图;

图5为本申请数据交换装置所在设备的一种硬件结构图;

图6为本申请数据交换装置的一个实施例框图;

图7为本申请数据交换装置的另一个实施例框图。

具体实施方式

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

随着大数据时代的来临,互联网企业在开展各种业务时,其部署的业务服务器会产生海量业务数据,出于不同企业间业务的合作,这些企业部署的业务服务器之间可能会产生数据交换的需求,以便通过交换各自的业务数据,从而完善各自的业务。例如,企业A部署的业务服务器获得了大量的业务风 险数据,企业B部署的业务服务器获得了大量的用户社交数据,则上述两个企业的业务服务器通过数据交换,企业A可以通过交换得到的用户社交数据了解风险用户的传播方式,而企业B可以通过交换得到的业务风险数据在业务推广过程中避免风险用户。但是在现有技术中,业务服务器之间交换数据的安全性较差,因此本申请实施例中,数据交换的发送方和接收方之间通过协商的默认协议生成动态协议,并基于该动态协议进行数据交换,因此可以有效避免恶意第三方对数据交换的通信过程进行窃取,从而能够提高数据交换的安全性,下面结合具体实施例对本申请进行详细描述。

参见图1,为本申请数据交换方法的一个实施例流程图,该实施例从与接收方设备进行数据交换的发送方设备侧进行描述,包括以下步骤:

步骤101:与接收方设备协商进行数据交换的默认协议。

本实施例中,发送方设备在与接收方设备协商进行数据交换的默认协议时,可以同时协商进行该数据交换的密钥。

其中,发送方设备和接收方设备可以通过分别向可信服务器签到,获得上述默认协议和密钥,可信服务器由可信第三方设置,用于向进行数据交换的双方提供默认协议和密钥;当发送方设备获得默认协议和密钥后,可以将该默认协议和密钥通过串口写入SIM(Subscriber Identity Module,客户识别模块)卡中。当与接收方设备协商默认协议和密钥时,发送方设备可以通过串口从SIM卡中读取从可信服务器获得的默认协议和密钥,然后与接收方设备之间通过握手协议,确定采用同样的默认协议和密钥进行数据交换。

步骤102:根据默认协议获得动态协议。

本实施例中,发送方设备可以采用如下任一方式,通过与预先设置的动态协议生成器进行通信,从而获得动态协议。

在一个可选的实现方式中,动态协议在发送方设备侧生成:

发送方设备可以向动态协议生成器发送进行数据交换的注册请求,动态协议生成器根据该注册请求为该数据交换生成随机协议码,并将该随机协议码发送给发送方设备,发送方设备将该随机协议码与协商确定的默认协议按 位进行二进制运算,得到动态协议。

在另一个可选的实现方式中,动态协议在动态协议生成器侧生成:

发送方设备可以向动态协议生成器发送进行数据交换的注册请求,该注册请求中可以携带协商确定的默认协议,动态协议生成器根据该注册请求为该数据交换生成随机协议码,将该随机协议码与注册请求中携带的默认协议按位进行二进制运算,得到动态协议,并将该动态协议发送至发送方设备。

步骤103:根据动态协议和待传输数据生成交换数据包。

本实施例中,当发送方设备与接收方设备协商了密钥时,发送方设备可以通过该密钥对待传输数据进行加密,获得加密数据,然后根据获得的动态协议和该加密数据生成交换数据包。可选的,当待传输数据较大时,可以进一步对上述加密数据进行压缩,获得加密压缩数据后,根据获得的动态协议和该加密压缩数据生成交换数据包。

本实施例中,在生成交换数据包时,发送方设备可以调用预设的数据包格式,该数据包格式包括包头和包体,然后将获得的动态协议按照预设的包头格式写入交换数据包的包头,以及将待传输数据按照预设的包体格式写入交换数据包的包体。其中,当通过对待传输数据进行加密获得加密数据时,可以将上述加密数据按照预设的包体格式写入交换数据包的包体;当进一步对加密数据进行压缩得到加密压缩数据时,可以将上述加密压缩数据按照预设的包体格式写入交换数据包的包体。

其中,上述包头格式可以包括:动态协议的协议名,和待传输数据在该数据交换所要交换的所有数据中的顺序;

上述包体格式可以包括:将待传输数据分成的N(N为大于1的自然数)个数据子包,每个数据子包的子包格式包括子包长度和子包数据。其中,每个子包数据的数据格式可以包括位图索引和将子包数据分成的M(M为大于1的自然数)个子数据域,其中,该位图索引中包括M个子数据域中的每个子数据域的子数据域长度,和每个子数据域在其所属子包数据中的开始位置。

步骤104:向接收方设备传输交换数据包,以使接收方设备采用通过该 默认协议生成的动态协议接收该交换数据包。

由上述实施例可见,发送方和接收方之间通过协商的默认协议生成动态协议,并基于该动态协议进行数据交换,由于动态协议可以在有数据交换需求时动态生成,因此可以有效避免恶意第三方对数据交换的通信过程进行窃取,从而能够提高数据交换的安全性。

参见图2,为本申请数据交换方法的另一个实施例流程图,该实施例从与发送方设备进行数据交换的接收方设备侧进行描述,包括以下步骤:

步骤201:与发送方设备协商进行数据交换的默认协议。

步骤202:根据默认协议获得动态协议。

上述步骤201和步骤202描述的接收方设备侧协商默认协议,以及获得动态协议的过程与发送方设备侧一致,在此不再赘述。

步骤203:接收发送方设备传输的交换数据包,该交换数据包为发送方设备采用通过该默认协议生成的动态协议和待传输数据生成的数据包。

步骤204:根据该动态协议处理交换数据包。

本实施例中,接收方设备可以调用预设的数据包格式解析接收到的交换数据包,获取该交换数据包中携带的协议,接收方设备调用的预设的数据包格式与图1所示实施例中发送方设备调用的数据包格式一致,在此不再赘述。基于上述数据包格式,接收方设备可以从交换数据包的包头中获取协议,并可以判断交换数据包中携带的协议是否与获得的动态协议相同,如果相同,则可以从交换数据包的包体中获取待传输数据;其中,当包体中携带的是由发送方设备通过协商的密钥对待传输的数据进行加密得到的加密数据时,则接收方设备从包体中获取到加密数据后,可以通过协商的密钥对加密数据进行解密后,获得待传输数据;进一步,当包体中携带的是由发送方设备对加密数据进行压缩得到的加密压缩数据时,则接收方设备从包体中获取到加密压缩数据后,可以先对加密压缩数据进行解压后得到加密数据,然后再通过协商的密钥对加密数据进行解密后,获得待传输数据。

由上述实施例可见,发送方和接收方之间通过协商的默认协议生成动态 协议,并基于该动态协议进行数据交换,由于动态协议可以在有数据交换需求时动态生成,因此可以有效避免恶意第三方对数据交换的通信过程进行窃取,从而能够提高数据交换的安全性。

参见图3,为采用本申请实施例实现数据交换的应用场景示意图:

图3所示的应用场景中包括:作为发送方设备的业务服务器A,作为接收方设备的业务服务器B,由可信第三方设置的用于提供默认协议和密钥的可信服务器,以及用于提供随机协议码的动态协议生成器。基于图3示出的应用场景,当业务服务器A和业务服务器B之间要进行数据交换时,业务服务器A和业务服务器B可以分别向可信服务器请求默认协议和密钥,可信服务器可以向进行数据交换的双方提供进行本次数据交换的默认协议和密钥,当业务服务器A和业务服务器B通过协商确定使用的默认协议和密钥后,各自通过与动态协议生成器进行通信,根据默认协议生成动态协议,并采用上述动态协议和密钥完成数据交换。

参见图4A,为本申请数据交换方法的另一个实施例流程图,该实施例结合图3示出的应用场景,对业务服务器A和业务服务器B之间的数据交换过程进行了详细描述,包括以下步骤:

步骤401:业务服务器A和业务服务器B分别通过向可信服务器签到,获得本次数据交换的默认协议和密钥。

业务服务器A和业务服务器B之间存在数据交换需求时,为了保证数据交换的安全性,可以分别向可信服务器进行签到,由可信服务器为业务服务器A和业务服务器B分配进行本次数据交换的默认协议和密钥。其中,业务服务器A和业务服务器可以在签到时提供进行本次数据交换的交换标识,以便可信服务器根据该交换标识,为进行本次数据交换业务服务器A和业务服务器B分配相同的默认协议和密钥。

步骤402:业务服务器A和业务服务器B分别将获得的默认协议和密钥通过串口写入各自的SIM卡中。

本实施例中,业务服务器A和业务服务器B上分别设置有SIM卡,用 于对默认协议和密钥进行保存,其中,默认协议和密钥可以通过串口,按照其信息的逐个字节写入SIM卡中,后续也可以从SIM卡中逐个字节读出信息。

步骤403:当业务服务器A和业务服务器B要进行数据交换时,各自通过串口从SIM卡中读取默认协议和密钥。

步骤404:业务服务器A与业务服务器B之间通过握手协议,协商确定进行数据交换的默认协议和密钥。

本申请实施例中,如果业务服务器A和业务服务器B上仅保存了由可信服务器下发的一组默认协议和密钥,则业务服务器A和业务服务器B之间通过握手协议,协商确定使用该一组默认协议和密钥进行数据交换;如果业务服务器A和业务服务器B上保存了由可信服务器下发的多组默认协议和密钥,则业务服务器A和业务服务器B之间通过握手协议,可以从多组默认协议和密钥中协商确定一组默认协议和密钥进行数据交换。

步骤405:业务服务器A和业务服务器B分别向动态协议生成器发送进行本次数据交换的注册请求。

本实施例中,动态协议生成器用于为进行数据交换的双方生成随机协议码。当业务服务器A和业务服务器B协商确定了默认协议和密钥后,各自向动态协议生成器发送进行本次数据交换的注册请求,注册请求中可以包含本次数据交换的交换标识,以便动态协议生成器可以根据该交换标识为本次数据交换生成随机协议码,即为业务服务器A和业务服务器B生成相同的随机协议码。

步骤406:动态协议生成器根据注册请求为本次数据交换生成随机协议码。

步骤407:动态协议生成器将该随机协议码分别发送给业务服务器A和业务服务器B。

步骤408:业务服务器A和业务服务器B各自将随机协议码与协商的默认协议按位进行二进制运算,得到动态协议。

本步骤中,进行数据交换的业务服务器A和业务服务器B在获得了相同的随机协议码后,可以将该随机协议码与协商确定的默认协议按位进行二进制运算,从而得到动态协议。其中,随机协议码的字节数与默认协议的字节数相同,在二者进行二进制运算后,可以得到字节数相同的动态协议。

参见图4B,为图4A中一种根据默认协议生成动态协议的过程示意图:假设默认协议为七个字节的“ALIBABA”,随机协议码为七个字节的“1352847”,则将“ALIBABA”和“1352847”中的每个字节转换为八位的二进制值,然后将对称字节位的二进制值相加,将相加后的每个二进制值转换为组成动态协议的七个字节“BONDIFH”。

步骤409:业务服务器A通过协商的密钥对待传输数据进行加密,获得加密数据。

本步骤中,密钥可以为采用对称加密方式加密数据的密钥,对称加密方式可以具体为DEA(Data Encryption Algorithm,数据加密算法)加密方式,则可信服务器可以为业务服务器A和业务服务器B分配用于DEA加密的密钥,例如,该密钥可以为8个字节,其中最后一个字节为奇偶校验位,在采用DEA加密方式加密时,与现有技术中的描述一致,本申请实施例不再赘述。

步骤410:业务服务器A对加密数据进行压缩,获得加密压缩数据。

本实施例中,业务服务器A和业务服务器B可以根据其支持平台的不同采用不同的压缩和解压方式,例如,WINDOWS平台可以采用ZIP方式,LINUX平台可以采用GZIP方式等,对此本申请实施例不进行限制。

步骤411:业务服务器A根据得到的动态协议和加密压缩数据生成交换数据包。

本步骤中,当业务服务器A得到加密压缩数据包后,可以调用预设的数据包格式,该数据包格式包括包头和包体,然后将动态协议按照预设的包头格式写入交换数据包的包头,以及将待传输数据按照预设的包体格式写入交换数据包的包体。

参见图4C,为图4A中一种交换数据包的包头格式示意图:

图4C中的包头格式可以包括:动态协议名字段,该字段中用于写入业务服务器A上生成的动态协议的协议名;以及多包标记字段,该字段中用于写入待传输数据在本次数据交换所要交换的所有数据中的顺序,例如,本次数据交换需要传输一百个数据包,当前传输的是第五十个数据包,则可以在多包标记字段写入“50”。

参见图4D,为图4A中一种交换数据包的包体格式示意图;

图4D中的包体格式可以包括:将加密压缩数据分成的N(N为大于1的自然数)个数据子包,每个数据子包的子包格式包括子包长度和子包数据,如图4D中,以第一个数据子包为例,其子包长度表示为“包1长度”,其子包数据为“压缩包1”。其中,每个子包数据的数据格式包括位图索引和将子包数据分成的N个子数据域,其中,该位图索引中包括N个索引,每个索引对应一个子数据域,每个索引可以由两个字节组成,其中一个字节用于表示对应子数据域的长度,另一个字节用于表示对应子数据域在其所属子包数据中的开始位置。本实施例中,N为大于1的自然数,例如,N可以为64或128。

步骤412:业务服务器A向业务服务器B传输交换数据包。

步骤413:业务服务器B根据得到的动态协议处理接收到的交换数据包,获得加密压缩数据包。

业务服务器接收到交换数据包后,可以调用预设的数据包格式解析该交换数据包,本步骤中预设的数据包格式与步骤411中所描述的业务服务器A生成交换数据包时调用的数据包格式一致。在业务服务器B解析完交换数据包后,可以从包头中获取交换数据包携带的协议,然后判断该协议是否与业务服务器B生成的动态协议相同,如果相同,则可以从包体中获取加密压缩数据。

步骤414:业务服务器B对加密压缩数据进行解压获得加密数据。

步骤415:业务服务器B通过协商的密钥对加密数据进行解密,获得待 传输数据。

在业务服务器A和业务服务器B基于前述流程完成数据交换后,业务服务器A和业务服务器B可以分别向动态协议生成器发送去注册请求,以便动态协议生成器可以删除为本次数据交换生成的随机协议码,从而完成自身的状态更新。

由上述实施例可见,发送方和接收方之间通过协商的默认协议生成动态协议,并基于该动态协议进行数据交换,由于动态协议可以在有数据交换需求时动态生成,因此可以有效避免恶意第三方对数据交换的通信过程进行窃取,从而能够提高数据交换的安全性;当待传输数据通过发送方和接收方协商的密钥进行加密传输时,可以进一步提高数据交换的安全性,并且,当对加密数据进行压缩传输,还可以节省数据交换时的传输资源。

与本申请数据交换方法的实施例相对应,本申请还提供了数据交换装置及设备的实施例。

本申请数据交换装置的实施例可以应用在用于进行数据交换的发送方设备或接收方设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图5所示,为本申请数据交换装置所在设备的一种硬件结构图,除了图5所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常根据该设备的实际功能,还可以包括其他硬件,图5中不再一一示出。

参见图6,为本申请数据交换装置的一个实施例框图,该装置可以应用在与接收方设备进行数据交换的发送方设备上,该装置包括:协商单元610、获得单元620、生成单元630和传输单元640。

其中,协商单元610,用于与所述接收方设备协商进行所述数据交换的默认协议;

获得单元620,用于根据所述默认协议获得动态协议;

生成单元630,用于根据所述动态协议和待传输数据生成交换数据包;

传输单元640,用于向所述接收方设备传输所述交换数据包,以使所述接收方设备采用通过所述默认协议生成的动态协议接收所述交换数据包。

在一个可选的实现方式中:

所述协商单元610,还可以用于在与所述接收方设备协商进行所述数据交换的默认协议时,协商进行所述数据交换的密钥;

所述生成单元630可以包括(图6中未示出):

数据加密子单元,用于通过所述密钥对所述待传输数据进行加密,获得加密数据;

数据包生成子单元,用于根据所述动态协议和所述加密数据生成交换数据包。

在另一个可选的实现方式中,所述生成单元630还可以包括(图6中未示出):

数据压缩子单元,用于对所述加密数据进行压缩,获得加密压缩数据;

相应的,所述数据包生成子单元,可以具体用于根据所述动态协议和所述加密压缩数据生成交换数据包。

在另一个可选的实现方式中,所述装置还可以包括(图6中未示出):

签到单元,用于所述协商单元与所述接收方设备协商进行所述数据交换的默认协议和密钥之前,当确定与所述接收方设备进行所述数据交换时,通过向可信服务器签到,获得所述默认协议和密钥;

写入单元,用于将所述默认协议和密钥通过串口写入客户识别模块SIM卡中;

所述协商单元610可以包括(图6中未示出):

SIM卡读取子单元,用于通过所述串口从所述SIM卡中读取所述默认协议和密钥;

握手协商子单元,用于与所述接收方设备之间通过握手协议,确定采用所述默认协议和密钥进行所述数据交换。

在另一个可选的实现方式中,所述获得单元620可以包括(图6中未示出):

第一请求发送子单元,用于向动态协议生成器发送进行所述数据交换的注册请求;

随机协议码接收子单元,用于接收所述动态协议生成器根据所述注册请求为所述数据交换生成的随机协议码;

动态协议生成子单元,用于将所述随机协议码与所述默认协议按位进行二进制运算,得到动态协议。

在另一个可选的实现方式中,所述获得单元620也可以包括(图6中未示出):

第二请求发送子单元,用于向动态协议生成器发送进行所述数据交换的注册请求,所述注册请求中携带所述默认协议,以使所述动态协议生成器将为所述数据交换生成的随机协议码与所述默认协议按位进行二进制运算,得到所述动态协议;

动态协议接收子单元,用于接收所述动态协议生成器生成的所述动态协议。

在另一个可选的实现方式中,所述生成单元630可以包括(图6中未示出):

格式调用子单元,用于调用预设的数据包格式,所述数据包格式包括包头和包体;

数据写入子单元,用于将所述动态协议按照预设的包头格式写入所述交换数据包的包头,以及将所述待传输数据按照预设的包体格式写入所述交换数据包的包体。

其中,所述包头格式可以包括:

所述动态协议的协议名,和所述待传输数据在所述数据交换所要交换的所有数据中的顺序;

所述包体格式可以包括:

将所述待传输数据分成的N个数据子包,每个所述数据子包的子包格式包括子包长度和子包数据,所述N为大于1的自然数;其中,

每个所述子包数据的数据格式包括位图索引和将所述子包数据分成的M个子数据域,其中,所述位图索引中包括所述M个子数据域中的每个子数据域的子数据域长度,和每个子数据域在所述子包数据中的开始位置,所述M为大于1的自然数。

参见图7,为本申请数据交换装置的另一个实施例框图,该装置可以应用在与发送方设备进行数据交换的接收方设备,该装置包括:协商单元710、获得单元720、接收单元730和处理单元740。

其中,协商单元710,用于与所述发送方设备协商进行所述数据交换的默认协议;

获得单元720,用于根据所述默认协议获得动态协议;

接收单元730,用于接收所述发送方设备传输的交换数据包,所述交换数据包为所述发送方设备采用通过所述默认协议生成的动态协议和待传输数据生成的数据包;

处理单元740,用于根据所述动态协议处理所述交换数据包。

在一个可选的实现方式中:

所述协商单元710,还可以用于在与所述发送方设备协商进行所述数据交换的默认协议时,协商进行所述数据交换的密钥;

相应的,所述交换数据包可以具体为:根据所述动态协议和加密数据生成的交换数据包,所述加密数据为通过所述密钥对所述待传输数据进行加密后获得的数据。

在另一个可选的实现方式中,所述装置还可以包括(图7中未示出):

签到单元,用于所述协商单元与所述发送方设备协商进行所述数据交换的默认协议和密钥之前,当确定与所述发送方设备进行所述数据交换时,通过向可信服务器签到,获得所述默认协议和密钥;

写入单元,用于将所述默认协议和密钥通过串口写入SIM卡中;

所述协商单元710可以包括(图7中未示出):

SIM卡读取子单元,用于通过所述串口从所述SIM卡中读取所述默认协议和密钥;

握手协商子单元,用于与所述发送方设备之间通过握手协议,确定采用所述默认协议和密钥进行所述数据交换。

在另一个可选的实现方式中,所述获得单元720可以包括(图7中未示出):

第一请求发送子单元,用于向动态协议生成器发送进行所述数据交换的注册请求;

随机协议码接收子单元,用于接收所述动态协议生成器根据所述注册请求为所述数据交换生成的随机协议码;

动态协议生成子单元,用于将所述随机协议码与所述默认协议按位进行二进制运算,得到动态协议。

在另一个可选的实现方式中,所述获得单元720也可以包括(图7中未示出):

第二请求发送子单元,用于向动态协议生成器发送进行所述数据交换的注册请求,所述注册请求中携带所述默认协议,以使所述动态协议生成器将为所述数据交换生成的随机协议码与所述默认协议按位进行二进制运算,得到所述动态协议;

动态协议接收子单元,用于接收所述动态协议生成器生成的所述动态协议。

在另一个可选的实现方式中,所述处理单元740可以包括(图7中未示出):

格式调用子单元,用于调用预设的数据包格式解析所述交换数据包,获取所述交换数据包中携带的协议;

协议判断子单元,用于判断所述交换数据包中携带的协议是否与所述动态协议相同;

数据获取子单元,用于如果所述交换数据包中携带的协议与所述动态协议相同,则从所述交换数据包中获取所述待传输数据。

所述预设的数据包格式可以包括包头和包体;其中,

所述包头的包头格式可以包括:

所述交换数据包中携带的协议的协议名,和所述待传输数据在所述数据交换所要交换的所有数据中的顺序;

所述包体的包体格式可以包括:

将所述待传输数据分成的N个数据子包,每个所述数据子包的子包格式包括子包长度和子包数据,所述N为大于1的自然数;其中,

每个所述子包数据的数据格式包括位图索引和将所述子包数据分成的M个子数据域,其中,所述位图索引中包括所述M个子数据域中的每个子数据域的子数据域长度,和每个子数据域在所述子包数据中的开始位置,所述M为大于1的自然数。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

由上述实施例可见,发送方和接收方之间通过协商的默认协议生成动态协议,并基于该动态协议进行数据交换,由于动态协议可以在有数据交换需求时动态生成,因此可以有效避免恶意第三方对数据交换的通信过程进行窃取,从而能够提高数据交换的安全性。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本 申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。

应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1