掌桥专利:专业的专利平台
掌桥专利
首页

数据加密传输方法、系统、电子设备及存储介质

文献发布时间:2024-04-18 19:58:26


数据加密传输方法、系统、电子设备及存储介质

技术领域

本发明涉及数据加密技术领域,尤其涉及一种数据加密传输方法、系统、电子设备及存储介质。

背景技术

工业互联网区别于消费互联网和传统物联网,工业互联网的通信主体多样、对性能要求更高。工业互联网标识解析服务应具备有效性。一方面,工业互联网数据是海量的,对于数据的存取产生了巨大的挑战。工业互联网体系庞大、数据丰富,其中包含着大量产业机密数据,如何保证数据的安全有效传输,提高标识解析的安全保障能力,对于工业互联网的发展来说都是十分重要的。

工业互联网中的二级节点直接为企业和用户提供服务,随着企业数量的不断增加,负责识别和解析数据的二级节点需要面对成千上万的并发请求,如何在保证效率的同时提高信息安全,目前已经有一些研究方案。现有技术中使用混合加密算法,在不同的环境下选择合适的对称加密算法和非对称加密算法,从而保证密钥传输过程中数据信息的安全性,然而,混合加密方法的缺点是公钥在传输过程中容易被窃取和偷换,导致数据的安全性仍然得不到保障。

发明内容

本发明提供一种数据加密传输方法、系统、电子设备及存储介质,用以解决现有技术中使用混合加密算法,公钥在传输过程中容易被窃取和偷换,数据的安全性得不到保障的缺陷,实现增强数据加密传输过程中数据的安全性。

本发明提供一种数据加密传输方法,包括:

生成密钥对;所述密钥对包括公钥和私钥;

将所述私钥发送到客户端,接收所述客户端发送的目标设备的目标信息摘要;所述目标信息摘要是由所述客户端根据所述目标设备的设备标识和所述私钥生成的;

根据所述目标信息摘要,获取所述目标设备的设备信息;

根据所述公钥对所述设备信息进行加密,得到加密信息,将所述加密信息传输至所述客户端;所述客户端用于根据所述私钥对所述加密信息进行解密。

根据本发明提供的一种数据加密传输方法,所述生成密钥对,包括:

获取第一素数、第二素数和第三素数;其中,所述第一素数、所述第二素数和所述第三素数互不相等,且所述第一素数、所述第二素数和所述第三素数均小于预设值;

将所述第一素数、所述第二素数和所述第三素数相乘,得到素数乘积;

根据所述第一素数、所述第二素数和所述第三素数,计算所述素数乘积的欧拉函数值;

根据所述第一素数、所述第二素数和所述第三素数,获取与所述素数乘积互质的第一目标整数;

根据所述欧拉函数值、所述素数乘积以及所述第一目标整数,生成所述公钥;

根据所述公钥,生成所述私钥。

根据本发明提供的一种数据加密传输方法,所述根据所述第一素数、所述第二素数和所述第三素数,获取与所述素数乘积互质的第一目标整数,包括:

获取所述第一素数、所述第二素数和所述第三素数中的最大素数;

将所述素数乘积与所述最大素数相减,得到目标差值;

在所述目标差值和所述素数乘积构成的整数区间中,随机获取与所述素数乘积互质的整数,得到所述第一目标整数。

根据本发明提供的一种数据加密传输方法,所述根据所述欧拉函数值、所述素数乘积以及所述第一目标整数,生成所述公钥,包括:

计算所述素数乘积的平方根值;

在所述平方根值和所述欧拉函数值构成的整数区间中,随机选择所述欧拉函数值的互质的整数,得到第二目标整数;

根据所述第一目标整数和所述第二目标整数,生成所述公钥。

根据本发明提供的一种数据加密传输方法,所述设备标识由多级节点代码和安全代码组成;其中,各级节点代码对应的应用场景不同。

根据本发明提供的一种数据加密传输方法,在所述根据所述目标信息摘要,获取所述目标设备的设备信息之前,所述方法还包括:

将各设备的设备标识分别与所述私钥进行拼接;

基于哈希值长度为256位的密码散列函数,对拼接结果进行摘要生成,得到各设备的信息摘要;

建立各设备的信息摘要与各设备的设备标识之间的映射关系,得到第一映射关系;

建立各设备的设备标识与各设备的设备信息之间的映射关系,得到第二映射关系;

对所述第一映射关系和所述第二映射关系进行存储。

根据本发明提供的一种数据加密传输方法,所述根据所述目标信息摘要,获取所述目标设备的设备信息,包括:

根据所述目标信息摘要以及所述第一映射关系,获取所述目标设备的设备标识;

根据所述目标设备的设备标识以及所述第二映射关系,获取所述目标设备的设备信息。

本发明还提供一种数据加密传输方法,包括:

接收网络节点发送的私钥;

根据目标设备的设备标识和所述私钥生成目标信息摘要,将所述目标信息摘要发送至所述网络节点;

接收所述网络节点发送的加密信息;所述加密信息是所述网络节点根据所述目标信息摘要获取所述目标设备的设备信息,并根据所述私钥对应的公钥,对所述设备信息进行加密得到的;

根据所述私钥对所述加密信息进行解密;

其中,所述私钥和所述公钥是所述网络节点成对生成的。

根据本发明提供的一种数据加密传输方法,所述根据目标设备的设备标识和所述私钥生成目标信息摘要,包括:

将所述目标设备的设备标识与所述私钥进行拼接;

基于哈希值长度为256位的密码散列函数,对拼接结果进行摘要生成,得到所述目标信息摘要。

本发明还提供一种数据加密传输系统,包括:

生成单元,用于生成密钥对;所述密钥对包括公钥和私钥;

发送单元,用于将所述私钥发送到客户端,接收所述客户端发送的目标设备的目标信息摘要;所述目标信息摘要是由所述客户端根据所述目标设备的设备标识和所述私钥生成的;

获取单元,用于根据所述目标信息摘要,获取所述目标设备的设备信息;

加密单元,用于根据所述公钥对所述设备信息进行加密,得到加密信息,将所述加密信息传输至所述客户端;所述客户端用于根据所述公钥对所述加密信息进行解密。

根据本发明提供的一种数据加密传输系统,所述生成单元具体用于:

获取第一素数、第二素数和第三素数;其中,所述第一素数、所述第二素数和所述第三素数互不相等,且所述第一素数、所述第二素数和所述第三素数均小于预设值;

将所述第一素数、所述第二素数和所述第三素数相乘,得到素数乘积;

根据所述第一素数、所述第二素数和所述第三素数,计算所述素数乘积的欧拉函数值;

根据所述第一素数、所述第二素数和所述第三素数,获取与所述素数乘积互质的第一目标整数;

根据所述欧拉函数值、所述素数乘积以及所述第一目标整数,生成所述公钥;

根据所述公钥,生成所述私钥。

根据本发明提供的一种数据加密传输系统,所述生成单元还用于:获取所述第一素数、所述第二素数和所述第三素数中的最大素数;

将所述素数乘积与所述最大素数相减,得到目标差值;

在所述目标差值和所述素数乘积构成的整数区间中,随机获取与所述素数乘积互质的整数,得到所述第一目标整数。

根据本发明提供的一种数据加密传输系统,生成单元还用于:计算所述素数乘积的平方根值;

在所述平方根值和所述欧拉函数值构成的整数区间中,随机选择所述欧拉函数值的互质的整数,得到第二目标整数;

根据所述第一目标整数和所述第二目标整数,生成所述公钥。

根据本发明提供的一种数据加密传输系统,所述设备标识由多级节点代码和安全代码组成;其中,各级节点代码对应的应用场景不同。

根据本发明提供的一种数据加密传输系统,所述获取单元具体用于:将各设备的设备标识和分别与所述私钥进行拼接;

基于哈希值长度为256位的密码散列函数,对拼接结果进行摘要生成,得到各设备的信息摘要;

建立各设备的信息摘要与各设备的设备标识之间的映射关系,得到第一映射关系;

建立各设备的设备标识与各设备的设备信息之间的映射关系,得到第二映射关系;

对所述第一映射关系和所述第二映射关系进行存储。

根据本发明提供的一种数据加密传输系统,所述获取单元还用于:根据所述目标信息摘要以及所述第一映射关系,获取所述目标设备的设备标识;

根据所述目标设备的设备标识以及所述第二映射关系,获取所述目标设备的设备信息。

本发明还提供一种数据加密传输系统,包括:

第一接收单元,用于接收网络节点发送的私钥;

处理单元,用于根据目标设备的设备标识和所述私钥生成目标信息摘要,将所述目标信息摘要发送至所述网络节点;

第二接收单元,用于接收所述网络节点发送的加密信息;所述加密信息是所述网络节点根据所述目标信息摘要获取所述目标设备的设备信息,并根据所述私钥对应的公钥,对所述设备信息进行加密得到的;

解密单元,用于根据所述私钥对所述加密信息进行解密;

其中,所述私钥和所述公钥是所述网络节点成对生成的。

根据本发明提供的一种数据加密传输系统,所述处理单元具体用于:将所述目标设备的设备标识与所述私钥进行拼接;

基于哈希值长度为256位的密码散列函数,对拼接结果进行摘要生成,得到所述目标信息摘要。本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述数据加密方法。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述数据加密方法。

本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述数据加密方法。

本发明提供的一种数据加密传输方法、系统、电子设备及存储介质,通过首先生成密钥对;然后发送密钥对中的私钥到客户端,并接收客户端返回的根据目标设备的设备标识和私钥生成的目标设备的目标信息摘要;接着根据目标信息摘要获取目标设备的设备信息,并运用公钥对设备信息进行加密获取加密信息;最后将加密信息传输至客户端,以供客户端根据私钥对加密信息进行解密,使用传输私钥的加密方式,实现增强数据加密传输过程中数据的安全性,并运用单个密钥对完成数据加密传输,减少密钥对生成过程中内存和计算过程的占用量,降低网络压力,提高加密和解密的速度。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的数据加密传输方法的流程示意图之一;

图2是本发明提供的生成密钥对的流程示意图;

图3是本发明提供的数据加密传输方法的流程示意图之二;

图4是本发明提供的数据加密传输方法的流程示意图之三;

图5是本发明提供的数据加密传输系统的结构示意图之一;

图6是本发明提供的数据加密传输系统的结构示意图之二;

图7是本发明提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

工业互联网出现之前,标识主要应用在仓储流程管理中,用以提升自动化水平,提高工作效率,降低物流成本。随着信息技术的不断发展以及数字化水平的不断提升,标识不再局限于企业内部管理中,而是被赋予了打通信息壁垒,实现信息共享,挖掘数据价值等更深层次的意义。工业互联网标识解析体系,即利用标识编码技术与标识解析技术建立工业互联网中工业设备与标识、地址与标识、内容与标识之间的映射关系,从而通过标识控制工业设备、获取和处理工业数据,实现工业智能化。

工业互联网区别于消费互联网和传统物联网,工业互联网的通信主体多样、对性能要求更高。工业互联网标识解析服务应具备有效性。一方面,工业互联网数据是海量的,每天都会产生PB(Petabyte,拍字节)级别的数据,对于数据的存取产生了巨大的挑战。此外,工业数据检索势必面临高并发、差异化需求、多命名格式映射、多协议转换等问题,在高并发场景下如何保证高效率、低时延的要求并且提高检索性能,是亟需解决的问题。另一方面,工业互联网体系庞大、数据丰富,其中包含着大量产业机密数据,如何保证数据的安全有效传输,提高标识解析的安全保障能力,对于工业互联网的发展来说是十分重要的。

工业互联网中的二级节点直接为企业和用户提供服务,随着企业数量的不断增加,负责识别和解析数据的二级节点需要面对成千上万的并发请求,如何在保证效率的同时提高信息安全,目前已经有一些研究方案。

现有技术中使用混合加密算法,比如使用AES(Advanced Encryption Standard,对称加密算法)和RSA(RSA algorithm,非对称密码算法)的混合加密算法,使用AES提高加密效率,RSA提高安全性;或者使用RSA和ECC(Error Correcting Code,错误检查纠正技术)技术,在不用的环境下选择合适的对称加密算法和非对称加密算法,从而保证密钥传输的安全性。然而,这些混合加密方法的缺点是公钥在传输过程中容易被窃取和偷换。

另一些现有技术中使用基于RSA的双重加密技术,通过使用两对RSA密钥对少量加密数据进行加密传输,解决了信息的双向验证和密钥的安全管理问题,但是存在的密钥数量太多,因此传输量大,二级节点的计算压力增大,效率低下。此外,二级节点不仅要完成标识解析,还要完成标识注册、标识状态切换等,这就要求二级节点在加密数据的同时确保自身的并发性能。

针对上述问题,本发明介绍了一种工业互联网数据加密传输方法,用于以增强数据加密传输过程中数据的安全性的同时,减少密钥数量以及二级节点的计算压力。

下面结合图1-图3描述本发明的数据加密传输方法。

图1是本实施例提供的数据加密传输方法的流程示意图之一。该方法应用于工业互联网系统,该工业互联网系统包括网络节点(下文也称二级节点)和客户端(下文也称用户节点)。该方法的执行主体可以是网络节点。

如图1所示,该方法包括:

步骤101,生成密钥对;所述密钥对包括公钥和私钥;

首先,网络节点生成公钥和私钥。

其中,公钥用于发送端对需要加密传输的数据进行加密,得到加密信息;私钥用于接收端对加密信息进行解密获取数据。

步骤102,将所述私钥发送到客户端,接收所述客户端发送的目标设备的目标信息摘要;所述目标信息摘要是由所述客户端根据所述目标设备的设备标识和所述私钥生成的;

接着,将生成的私钥发送到客户端,并接收由客户端根据目标设备的设备标识和私钥生成的目标设备的目标信息摘要;

可选地,目标信息摘要可以是通过将目标设备的设备标识与私钥拼接并获取拼接结果,再根据信息摘要算法依据拼接结果生成的,示例性的,本实施例中信息摘要算法可以是采用MD(Message Digest,消息摘要)算法、SHA(Secure Hash,密码散列函数)算法以及MAC(Message Authentication Codes,消息认证码)算法中的一种,本实施例对此不作具体地限定。

网络节点还可以注册目标设备的设备标识(也即工业互联网标识),并将目标设备的设备标识与目标设备对应的信息摘要对应存储在网络节点中。

步骤103,根据所述目标信息摘要,获取所述目标设备的设备信息;

接收到目标信息摘要后,可以是根据目标信息摘要,获取目标设备的设备信息。

其中,设备信息可以是包括设备属性信息、设备运行状态信息、设备日志信息等中的一项信息或多项信息的组合,本实施例对此不作具体地限定。

可选地,获取目标设备的设备信息的方式,可以是先基于每一设备的设备标识与设备对应的信息摘要之间的对应关系,根据目标信息摘要,获取对应的设备标识,即是目标设备的设备标识,接着可以是根据预先配置的目标设备的设备标识与目标设备的设备信息之间的映射关系获取目标设备的设备信息;也可以是根据目标信息摘要与设备信息之间的对应关系,在数据库表中查找目标设备的设备信息,本实施例对此不作具体地限定。

步骤104,根据所述公钥对所述设备信息进行加密,得到加密信息,将所述加密信息传输至所述客户端;所述客户端用于根据所述公钥对所述加密信息进行解密。

接着可以是运用公钥对设备信息进行加密并获取加密结果,将加密结果作为加密信息,最后将加密信息传输至客户端,以供客户端根据私钥对加密信息进行解密。

本实施例中通过首先生成密钥对;然后发送密钥对中的私钥到客户端,并接收客户端返回的根据目标设备的设备标识和私钥生成的目标设备的目标信息摘要;接着根据目标信息摘要获取目标设备的设备信息,并运用公钥对设备信息进行加密获取加密信息;最后将加密信息传输至客户端,以供客户端根据私钥对加密信息进行解密,使用传输私钥的加密方式,实现增强数据加密传输过程中数据的安全性,运用单个密钥对完成数据加密传输,减少密钥对生成过程中内存和计算过程的占用量,降低网络压力,提高加密和解密的速度。

图2是本实施例提供的生成密钥对的流程示意图,如图2所示,在一些实施例中,所述生成密钥对的步骤包括:

步骤201,获取第一素数、第二素数和第三素数;其中,所述第一素数、所述第二素数和所述第三素数互不相等,且所述第一素数、所述第二素数和所述第三素数均小于预设值;

首先,获取小于预设值的第一素数x、第二素数y和第三素数z,并且第一素数x、第二素数y和第三素数z满足x≠y≠z。

其中,预设值可以是根据实际的目标设备的设备类型进行设定获取的;也可以是根据加密信息对预先设置的值进行调整获取的,本实施例对此不作具体地限定。

通过将第一素数x、第二素数y和第三素数z设定为小于预设值,可以获取更高的计算效率和更低的内存占用量;另外保证了素数的选择范围的广度,因此解密难度更大,生成的密钥对使得数据传输更安全。

步骤202,将所述第一素数、所述第二素数和所述第三素数相乘,得到素数乘积;

步骤203,根据所述第一素数、所述第二素数和所述第三素数,计算所述素数乘积的欧拉函数值;

接着,将第一素数x、第二素数y和第三素数z相乘,获取素数乘积n,并计算素数乘积n的欧拉函数值

步骤204,根据所述第一素数、所述第二素数和所述第三素数,获取与所述素数乘积互质的第一目标整数;

接着,基于第一素数x、第二素数y和第三素数z,获取与素数乘积n之间存在互质关系的第一目标整数X。

其中,第一目标整数的可以是直接在第一素数、第二素数和第三素数的最值所确定的整数区间中根据素数乘积进行获取;也可以将第一素数、第二素数和第三素数输入到预先配置的第一目标模型确定第一目标整数所处的区间,接着在所处区间中根据素数乘积进行获取,本实施例对此不作具体地限定。

步骤205,根据所述欧拉函数值、所述素数乘积以及所述第一目标整数,生成所述公钥;

接着可以是根据欧拉函数值

其中,公钥可以是包括第一目标整数以及根据欧拉函数值和素数乘积确定的第二目标整数。

步骤206,根据所述公钥,生成所述私钥。

最后根据公钥生成密钥对中的私钥。

可选地,生成私钥可以是通过首先计算第二目标整数的倒数,以及第一目标整数的取模函数值,接着将倒数和取模函数值相乘,得到第三目标整数,最后根据第三目标整数和第一目标整数完成私钥的生成。

本实施例中通过在获取互不相等且均小于预设值的第一素数、第二素数和第三素数后,计算得到第一素数、第二素数和第三素数的素数乘积和素数乘积的欧拉函数值;并基于第一素数、第二素数和第三素数,获取与素数乘积互质的第一目标整数;最后根据欧拉函数值、素数乘积和第一目标整数生成公钥,并根据公钥生成私钥,完成密钥对的生成,实现减少密钥对生成过程中内存和计算过程的占用量,降低网络压力,有助于增强数据加密传输过程中数据的安全性,提高加密和解密的速度。

在一些实施例中,所述根据所述第一素数、所述第二素数和所述第三素数,获取与所述素数乘积互质的第一目标整数,包括:获取所述第一素数、所述第二素数和所述第三素数中的最大素数;将所述素数乘积与所述最大素数相减,得到目标差值;在所述目标差值和所述素数乘积构成的整数区间中,随机获取与所述素数乘积互质的整数,得到所述第一目标整数。

首先,将第一素数x、第二素数y和第三素数z进行按照由大到小的顺序进行排序,根据排序结果获取第一素数x、第二素数y和第三素数z中最大的素数作为最大素数;接着将素数乘积n与所述最大素数相减,将相减的结果作为目标差值,并在目标差值和素数乘积n构成的整数区间中,随机获取与素数乘积n之间存在互质关系的整数,将得到的整数作为第一目标整数X。

可选地,在目标差值和素数乘积n构成的整数区间中随机获取第一目标整数X,可以是首先在目标差值和素数乘积n构成的整数区间中随机选择整数,接着判断该被选择的整数与素数乘积n之间是否存在互质关系,在该被选择的整数与素数乘积n之间存在互质关系的情况下,将该被选择的整数作为第一目标整数X;也可以是首先在目标差值和素数乘积n构成的整数区间中获取与素数乘积n之间存在互质关系的所有整数,接着在素数乘积n的互质数中进行随机选择一个整数作为第一目标整数X,本实施例对此不作具体地限定。

即如果排序结果为x>y>z或者x>z>y,则最大素数为x,目标差值为n-x,目标差值和素数乘积构成的整数区间为(n-x,n),第一目标整数X的确定公式如下:

GCD(X,n)=1;n-x≤X≤n;

如果排序结果为y>x>z或者y>z>x,则最大素数为y,目标差值为n-y,目标差值和素数乘积构成的整数区间为(n-y,n),第一目标整数X的确定公式如下:

GCD(X,n)=1;n-y≤X≤n;

如果排序结果为z>x>y或者z>y>x,则最大素数为z,目标差值为n-z,目标差值和素数乘积构成的整数区间为(n-z,n),第一目标整数X的确定公式如下:

GCD(X,n)=1;n-z≤X≤n;

本实施例中通过首先获取第一素数、第二素数和第三素数中的最大素数;接着将素数乘积与最大素数相减的结果作为目标差值,并在目标差值和素数乘积构成的整数区间中,随机获取与素数乘积互质的整数,即第一目标整数,实现减少密钥对生成过程中内存和计算过程的占用量,有助于增强数据加密传输过程中数据的安全性。

在一些实施例中,所述根据所述欧拉函数值、所述素数乘积以及所述第一目标整数,生成所述公钥,包括:计算所述素数乘积的平方根值;在所述平方根值和所述欧拉函数值构成的整数区间中,随机选择所述欧拉函数值的互质的整数,得到第二目标整数;根据所述第一目标整数和所述第二目标整数,生成所述公钥。

首先计算素数乘积n的平方根值

可选地,在平方根值

可选地,最后可以是根据第一目标整数X和第二目标整数T

另外,完成公钥的生成后,可以是根据公钥生成私钥;具体地,先计算得到第二目标整数T

相应地,接着可以是根据第一目标整数X和第二目标整数T

根据上述步骤得到的信息加密方式如下其中,M表示明文,C表示加密之后的密文:

相应的,得到的信息解密方式如下:

本实施例中通过计算素数乘积的平方根值,并在平方根值和欧拉函数值构成的整数区间中,随机选择欧拉函数值的互质的整数作为第二目标整数;最后根据第一目标整数和第二目标整数生成公钥,实现减少密钥对生成过程中内存和计算过程的占用量,有助于增强数据加密传输过程中数据的安全性。

在一些实施例中所述设备标识由多级节点代码和安全代码组成;其中,各级节点代码对应的应用场景不同。

其中,多级节点代码可以是包括第一级节点代码、第二级节点代码和第三级节点代码;第一级节点代码、第二级节点代码和第三级节点代码所属的标识范围依次递减,即第一级节点代码、第二级节点代码和第三级节点代码对应的应用场景范围依次递减;示例性的,表1为本实施例提供的设备标识的内容示例,如表1所示,本实施例中第一级节点代码可以是国家级节点代码,相应地第二级节点代码为工业级节点代码,第三级节点代码为企业级节点代码,本实施例对此不作具体地限定。

表1设备标识的内容示例

本实施例中通过由对应不同应用场景的多级节点代码和安全代码组成设备标识,实现对设备标识的有效注册,有助于增强数据加密传输过程中数据的安全性,提高加密和解密的速度。

在一些实施例中,在所述根据所述目标信息摘要,获取所述目标设备的设备信息之前,所述方法还包括:将各设备的设备标识分别与所述私钥进行拼接;基于哈希值长度为256位的密码散列函数,对拼接结果进行摘要生成,得到各设备的信息摘要;建立各设备的信息摘要与各设备的设备标识之间的映射关系,得到第一映射关系;建立各设备的设备标识与各设备的设备信息之间的映射关系,得到第二映射关系;对所述第一映射关系和所述第二映射关系进行存储。

首先,分别拼接各设备的设备标识和私钥,分别得到各设备对应的拼接结果,以降低后续哈希冲突的概率。

接着基于SHA-256(Secure Hash Algorithm-256,哈希值长度为256位的密码散列函数)算法,对于各设备对应的拼接结果单向生成摘要,分别得到各设备的信息摘要,SHA-256算法的单向性和不可逆性使生成的信息摘要几乎无法破解,保证了信息的安全性。

可选地,接着对各设备的信息摘要与各设备的设备标识之间建立一一对应的映射关系得到第一映射关系,可以是通过直接对各设备的信息摘要与各设备的设备标识建立映射关系实现的;也可以是通过先对各设备的信息摘要设置对应的摘要标识,接着对各摘要标识与各设备的设备标识建立映射关系实现的,本实施例对此不作具体地限定。

同样地,对各设备的设备标识与各设备的设备信息之间建立一一对应的映射关系得到第二映射关系,可以是通过直接对各设备的设备标识与各设备的设备信息建立映射关系实现的;也可以是通过先对各设备的设备信息设置对应的信息标识,接着对各信息标识与各设备的设备标识建立映射关系实现的,本实施例对此不作具体地限定。

可选地,最后对所述第一映射关系和第二映射关系进行存储便于后续使用,可以是将第一映射关系和第二映射关系一一对应地存储在信息摘要库中;也可以是按照各设备的设备标识,将对应的第一映射关系和第二映射关系依照数据库表的形式存储,本实施例对此不作具体地限定。

本实施例中通过首先将拼接各设备的设备标识和私钥并生成拼接结果;接着运用哈希值长度为256位的密码散列函数,根据拼接结果生成对应的各设备的信息摘要;然后建立各设备的信息摘要与各设备的设备标识之间的映射关系,以及各设备的设备标识与各设备的设备信息之间的映射关系,分别作为第一映射关系和第二映射关系;最后对应存储第一映射关系和第二映射关系,以便后续使用,实现增强数据加密传输过程中数据的安全性,降低哈希冲突的概率,降低网络压力。

在一些实施例中,所述根据所述目标信息摘要,获取所述目标设备的设备信息,包括:根据所述目标信息摘要以及所述第一映射关系,获取所述目标设备的设备标识;根据所述目标设备的设备标识以及所述第二映射关系,获取所述目标设备的设备信息。

首先,基于第一映射关系中各设备的信息摘要与各设备的设备标识之间一一对应的映射关系,根据目标信息摘要获取与之对应的目标设备的设备标识;

接着,基于第二映射关系中各设备的设备标识与各设备的设备信息之间一一对应的映射关系,根据目标设备的设备标识获取与之对应的目标设备的设备信息。

图3为本发明实施例提供的数据加密传输方法的流程示意图之二。示例性的,如图3所示,网络节点执行数据加密传输方法的具体步骤包括:

步骤301,网络节点注册目标设备的设备标识;

步骤302,网络节点生成密钥对;

步骤302与步骤301可同步或先后执行。

步骤303,网络节点拼接私钥和各设备的设备标识;

步骤304,网络节点运用SHA-256算法生成各设备的信息摘要;

步骤305,网络节点将各设备的信息摘要与各设备的标识数据对应存储;

步骤306,网络节点对比客户端传输的目标信息摘要找到目标设备的设备信息;

步骤307,网络节点使用公钥加密目标设备的设备信息并传输加密信息;

步骤308,客户端通过私钥解密加密信息。

在网络节点向客户端发送私钥后执行步骤303-305的同时,客户端对应执行以下步骤:

步骤311,客户端拼接私钥和目标设备的设备标识;

步骤312,客户端运用SHA-256算法生成目标信息摘要;

步骤313,客户端将目标信息摘要发送到网络节点。

本实施例中通过首先基于第一映射关系,根据目标信息摘要获取目标设备的设备标识;然后基于第二映射关系,根据目标设备的设备标识,获取目标设备的设备信息,实现目标设备的设备信息的高效获取,有助于增强数据加密传输过程中数据的安全性。

图4为本发明实施例提供的数据加密传输方法的流程示意图之三,如图4所示,该方法的执行主体可以是客户端,用于接收私钥并根据加密信息进行解密,该方法包括:

步骤401,接收网络节点发送的私钥;

其中,所述私钥和所述公钥是所述网络节点成对生成的。

网络节点首先生成公钥和私钥,并将生成的私钥发送到客户端。其中,公钥用于发送端对需要加密传输的数据进行加密,得到加密信息;私钥用于接收端对加密信息进行解密获取数据。

步骤402,根据目标设备的设备标识和所述私钥生成目标信息摘要,将所述目标信息摘要发送至所述网络节点;

客户端接收到私钥后,根据私钥和目标设备的设备标识生成目标信息摘要,接着将目标信息摘要发送至所述网络节点。

可选地,目标信息摘要可以是通过将目标设备的设备标识与私钥拼接并获取拼接结果,再根据信息摘要算法依据拼接结果生成的,示例性的,本实施例中信息摘要算法可以是采用MD(Message Digest,消息摘要)算法、SHA(Secure Hash,密码散列函数)算法以及MAC(Message Authentication Codes,消息认证码)算法中的一种,本实施例对此不作具体地限定。

步骤403,接收所述网络节点发送的加密信息;所述加密信息是所述网络节点根据所述目标信息摘要获取所述目标设备的设备信息,并根据所述私钥对应的公钥,对所述设备信息进行加密得到的;

步骤404,根据所述私钥对所述加密信息进行解密;

接收到目标信息摘要后,网络节点可以是根据目标信息摘要,获取目标设备的设备信息。

其中,设备信息可以是包括设备属性信息、设备运行状态信息、设备日志信息等中的一项信息或多项信息的组合,本实施例对此不作具体地限定。

可选地,网络节点获取目标设备的设备信息的方式,可以是先基于每一设备的设备标识与设备对应的信息摘要之间的对应关系,根据目标信息摘要,获取对应的设备标识,即是目标设备的设备标识,接着可以是根据预先配置的目标设备的设备标识与目标设备的设备信息之间的映射关系获取目标设备的设备信息;也可以是根据目标信息摘要与设备信息之间的对应关系,在数据库表中查找目标设备的设备信息,本实施例对此不作具体地限定。

接着,网络节点可以是运用公钥对设备信息进行加密并获取加密结果,将加密结果作为加密信息,并将加密信息传输至客户端。

客户端接收到加密信息后,可以运用私钥对加密信息进行解密,获取目标设备的设备信息。

本实施例中通过客户端接收到私钥后生成目标摘要信息并将目标摘要信息发送到网络节点;并在接收到网络节点发送的加密信息后,运用私钥对加密信息进行解密,获取目标设备的设备信息,使用传输私钥的加密方式,实现增强数据加密传输过程中数据的安全性,运用单个密钥对完成数据加密传输,减少密钥对生成过程中内存和计算过程的占用量,降低网络压力,提高加密和解密的速度。

在一些实施例中,所述根据目标设备的设备标识和所述私钥生成目标信息摘要,包括:将所述目标设备的设备标识与所述私钥进行拼接;基于哈希值长度为256位的密码散列函数,对拼接结果进行摘要生成,得到所述目标信息摘要。

客户端拼接目标设备的设备标识和私钥,得到目标设备对应的拼接结果,以降低后续哈希冲突的概率。

接着基于SHA-256算法,对于目标设备对应的拼接结果单向生成摘要,得到目标信息摘要,SHA-256算法的单向性和不可逆性使生成的目标信息摘要几乎无法破解,保证了信息的安全性。

本实施例中通过首先将拼接目标设备的设备标识和私钥并生成拼接结果;接着运用哈希值长度为256位的密码散列函数,根据拼接结果生成对应的目标信息摘要,实现增强数据加密传输过程中数据的安全性,降低哈希冲突的概率,降低网络压力。下面对本发明提供的数据加密传输系统进行描述,下文描述的数据加密传输系统与上文描述的数据加密传输方法可相互对应参照。

如图5所示,为本发明提供的数据加密传输系统的结构示意图之一,该系统包括:

生成单元501,用于生成密钥对;所述密钥对包括公钥和私钥;

发送单元502,用于将所述私钥发送到客户端,接收所述客户端发送的目标设备的目标信息摘要;所述目标信息摘要是由所述客户端根据所述目标设备的设备标识和所述私钥生成的;

获取单元503,用于根据所述目标信息摘要,获取所述目标设备的设备信息;

加密单元504,用于根据所述公钥对所述设备信息进行加密,得到加密信息,将所述加密信息传输至所述客户端;所述客户端用于根据所述公钥对所述加密信息进行解密。

本实施例提供的数据加密传输系统,通过首先生成密钥对;然后发送密钥对中的私钥到客户端,并接收客户端返回的根据目标设备的设备标识和私钥生成的目标设备的目标信息摘要;接着根据目标信息摘要获取目标设备的设备信息,并运用公钥对设备信息进行加密获取加密信息;最后将加密信息传输至客户端,以供客户端根据私钥对加密信息进行解密,使用传输私钥的加密方式,实现增强数据加密传输过程中数据的安全性,运用单个密钥对完成数据加密传输,减少密钥对生成过程中内存和计算过程的占用量,降低网络压力,提高加密和解密的速度。

在一些实施例中,生成单元501具体用于:获取第一素数、第二素数和第三素数;其中,所述第一素数、所述第二素数和所述第三素数互不相等,且所述第一素数、所述第二素数和所述第三素数均小于预设值;将所述第一素数、所述第二素数和所述第三素数相乘,得到素数乘积;根据所述第一素数、所述第二素数和所述第三素数,计算所述素数乘积的欧拉函数值;根据所述第一素数、所述第二素数和所述第三素数,获取与所述素数乘积互质的第一目标整数;根据所述欧拉函数值、所述素数乘积以及所述第一目标整数,生成所述公钥;根据所述公钥,生成所述私钥。

在一些实施例中,生成单元501还用于:获取所述第一素数、所述第二素数和所述第三素数中的最大素数;将所述素数乘积与所述最大素数相减,得到目标差值;在所述目标差值和所述素数乘积构成的整数区间中,随机获取与所述素数乘积互质的整数,得到所述第一目标整数。

在一些实施例中,生成单元501还用于:计算所述素数乘积的平方根值;在所述平方根值和所述欧拉函数值构成的整数区间中,随机选择所述欧拉函数值的互质的整数,得到第二目标整数;根据所述第一目标整数和所述第二目标整数,生成所述公钥。

在上述实施例的基础上,所述设备标识由多级节点代码和安全代码组成;其中,各级节点代码对应的应用场景不同。

在一些实施例中,获取单元503具体用于:将各设备的设备标识分别与所述私钥进行拼接;基于哈希值长度为256位的密码散列函数,对拼接结果进行摘要生成,得到各设备的信息摘要;建立各设备的信息摘要与各设备的设备标识之间的映射关系,得到第一映射关系;建立各设备的设备标识与各设备的设备信息之间的映射关系,得到第二映射关系;对所述第一映射关系和所述第二映射关系进行存储。

在一些实施例中,获取单元503还用于:根据所述目标信息摘要以及所述第一映射关系,获取所述目标设备的设备标识;根据所述目标设备的设备标识以及所述第二映射关系,获取所述目标设备的设备信息。

如图6所示,为本发明提供的数据加密传输系统的结构示意图之二,该系统包括:

第一接收单元601,用于接收网络节点发送的私钥;

处理单元602,用于根据目标设备的设备标识和所述私钥生成目标信息摘要,将所述目标信息摘要发送至所述网络节点;

第二接收单元603,用于接收所述网络节点发送的加密信息;所述加密信息是所述网络节点根据所述目标信息摘要获取所述目标设备的设备信息,并根据所述私钥对应的公钥,对所述设备信息进行加密得到的;

解密单元604,用于根据所述私钥对所述加密信息进行解密;

其中,所述私钥和所述公钥是所述网络节点成对生成的。

本实施例提供的数据加密传输系统,通过客户端接收到私钥后生成目标摘要信息并将目标摘要信息发送到网络节点;并在接收到网络节点发送的加密信息后,运用私钥对加密信息进行解密,获取目标设备的设备信息,使用传输私钥的加密方式,实现增强数据加密传输过程中数据的安全性,运用单个密钥对完成数据加密传输,减少密钥对生成过程中内存和计算过程的占用量,降低网络压力,提高加密和解密的速度。

在一些实施例中,处理单元602具体用于:将所述目标设备的设备标识与所述私钥进行拼接;基于哈希值长度为256位的密码散列函数,对拼接结果进行摘要生成,得到所述目标信息摘要。

图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(Communications Interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行上述各方法所提供的数据加密传输方法,该方法包括:生成密钥对;所述密钥对包括公钥和私钥;将所述私钥发送到客户端,接收所述客户端发送的目标设备的目标信息摘要;所述目标信息摘要是由所述客户端根据所述目标设备的设备标识和所述私钥生成的;根据所述目标信息摘要,获取所述目标设备的设备信息;根据所述公钥对所述设备信息进行加密,得到加密信息,将所述加密信息传输至所述客户端;所述客户端用于根据所述私钥对所述加密信息进行解密。

此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的数据加密传输方法,该方法包括:生成密钥对;所述密钥对包括公钥和私钥;将所述私钥发送到客户端,接收所述客户端发送的目标设备的目标信息摘要;所述目标信息摘要是由所述客户端根据所述目标设备的设备标识和所述私钥生成的;根据所述目标信息摘要,获取所述目标设备的设备信息;根据所述公钥对所述设备信息进行加密,得到加密信息,将所述加密信息传输至所述客户端;所述客户端用于根据所述私钥对所述加密信息进行解密。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的数据加密传输方法,该方法包括:生成密钥对;所述密钥对包括公钥和私钥;将所述私钥发送到客户端,接收所述客户端发送的目标设备的目标信息摘要;所述目标信息摘要是由所述客户端根据所述目标设备的设备标识和所述私钥生成的;根据所述目标信息摘要,获取所述目标设备的设备信息;根据所述公钥对所述设备信息进行加密,得到加密信息,将所述加密信息传输至所述客户端;所述客户端用于根据所述私钥对所述加密信息进行解密。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 蓝牙数据加密传输方法、蓝牙设备及计算机可读存储介质
  • 区块链数据共识处理方法、系统、存储介质和电子设备
  • 医疗数据处理系统及方法、存储介质和电子设备
  • 内容数据的获取方法、装置、系统、存储介质及电子设备
  • 一种数据血缘的生成方法、系统、电子设备和存储介质
  • 一种数据加密传输方法、系统、电子设备及存储介质
  • 数据的加密传输方法、装置、系统、电子设备及存储介质
技术分类

06120116488059