一种用于CDN节点间的数据加密方法及系统转让专利

申请号 : CN202211381295.2

文献号 : CN115426102B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李燕燕倪美芹陈刚张松边献广开祥鹏

申请人 : 山东宝盛鑫信息科技有限公司

摘要 :

本发明涉及一种用于CDN节点间的数据加密方法及系统,属于电数字数据处理技术领域,该方法步骤包括:获取用户请求端的命中节点,将命中节点中用户请求端所请求的静态数据转换为二进制数据;将二进制数据按照最终位数长度转换后的十进制数据作为预处理后数据;根据命中节点中用户请求端所请求的静态数据的数据量相对大小参数、用户请求端与命中节点的相对距离参数、命中节点所在服务器的负载比例,确定基础加密单元大小;根据基础加密单元大小对预处理后数据进行分区,并利用3DES算法进行加密得到加密密文;本发明在实现CDN节点间的数据加密时,在保证传输数据安全性的同时减少加密的数据量,提高了数据的传输速度。

权利要求 :

1.一种用于CDN节点间的数据加密方法,其特征在于,该方法包括:获取用户请求端的命中节点,将命中节点中用户请求端所请求的静态数据转换为二进制数据;

将二进制数据按照预设位数长度区间内每一个位数长度转换为十进制数据,并计算出按照每一个位数长度转换后的全部十进制数据的相关性,将相关性最大的位数长度作为最终位数长度;

所述并计算出按照每一个位数长度转换后的全部十进制数据的相关性的步骤包括:选取预设位数长度区间内任一个位数长度作为目标位数长度;

按照目标位数长度将二进制数据转换为十进制数据,获取按照目标位数长度转换后的全部十进制数据的方差、均值以及数据总长度;

根据按照目标位数长度转换后的全部十进制数据的方差、均值以及总长度,计算出按照目标位数长度转换后的全部十进制数据的相关性,同理计算出按照每一个位数长度转换后的全部十进制数据的相关性;

将二进制数据按照最终位数长度转换后的十进制数据作为预处理后数据;

根据命中节点中用户请求端所请求的静态数据的数据量,与命中节点所在服务器中缓存的全部静态数据的数据量均值的偏差,确定命中节点中用户请求端所请求的静态数据的数据量相对大小参数;

利用命中节点与用户请求端之间的距离和命中节点与距离用户请求端最远节点之间的距离,计算出用户请求端与命中节点的相对距离参数;

根据命中节点中用户请求端所请求的静态数据的数据量相对大小参数、用户请求端与命中节点的相对距离参数、命中节点所在服务器的负载比例,确定基础加密单元大小;

根据基础加密单元大小对预处理后数据进行分区,对已经分区的预处理后数据利用

3DES算法进行加密得到加密密文。

2.根据权利要求1所述的一种用于CDN节点间的数据加密方法,其特征在于,所述按照每一位数长度转换后的全部十进制数据的相关性的计算公式为:其中, 表示按照位数长度 转换后的全部十进制数据的相关性; 表示按照位数长度 转换后的第 个十进制数据;表示按照目标位数长度转换后的全部十进制数据的均值;表示按照目标位数长度转换后的全部十进制数据的方差;表示按照位数长度 转换后的全部十进制数据的总长度;表示自然常数。

3.根据权利要求1所述的一种用于CDN节点间的数据加密方法,其特征在于,所述确定命中节点中用户请求端所请求的静态数据的数据量相对大小参数的步骤包括:获取用户请求端的命中节点所在服务器中缓存的全部静态数据的数据量均值;

将命中节点中用户请求端所请求的静态数据的数据量,与命中节点所在服务器对应的数据量均值的差值绝对值,作为命中节点中用户请求端所请求的静态数据的数据量相对大小参数。

4.根据权利要求1所述的一种用于CDN节点间的数据加密方法,其特征在于,所述用户请求端与命中节点的相对距离参数的计算公式为:其中,表示用户请求端与命中节点的相对距离参数; 表示用户请求端的命中节点所在服务器的经度和纬度;  表示用户请求端发送请求时的经度和纬度;

表示距离用户请求端最远节点所在服务器的经度和纬度。

5.根据权利要求1所述的一种用于CDN节点间的数据加密方法,其特征在于,所述基础加密单元大小的计算公式为:其中, 表示基础加密单元大小; 表示命中节点中用户请求端所请求的静态数据的数据量相对大小参数;表示用户请求端与命中节点的相对距离参数;表示命中节点所在服务器的负载比例; 为取整符号; 为双曲正切函数; 和 均为调节参数。

6.根据权利要求1所述的一种用于CDN节点间的数据加密方法,其特征在于,所述根据基础加密单元大小对预处理后数据进行分区的步骤包括:将预处理后数据按照基础加密单元大小进行分区得到多个分区区间;

利用3DES算法以每个分区区间内的预处理后数据作为一个数据单位进行明文静态数据的加密,得到加密密文;

对利用3DES算法进行加密后的加密密文,以最终位数长度为单位进行十进制转二进制操作得到用户请求端所请求的静态数据的二进制加密密文。

7.一种用于CDN节点间的数据加密系统,其特征在于,包括:

数据转换模块,用于获取用户请求端的命中节点,将命中节点中用户请求端所请求的静态数据转换为二进制数据;

预处理后数据获取模块,用于将二进制数据按照预设位数长度区间内每一个位数长度转换为十进制数据,并计算出按照每一个位数长度转换后的全部十进制数据的相关性,将相关性最大的位数长度作为最终位数长度;用于将二进制数据按照最终位数长度转换后的十进制数据作为预处理后数据;

所述并计算出按照每一个位数长度转换后的全部十进制数据的相关性的步骤包括:选取预设位数长度区间内任一个位数长度作为目标位数长度;

按照目标位数长度将二进制数据转换为十进制数据,获取按照目标位数长度转换后的全部十进制数据的方差、均值以及数据总长度;

根据按照目标位数长度转换后的全部十进制数据的方差、均值以及总长度,计算出按照目标位数长度转换后的全部十进制数据的相关性,同理计算出按照每一个位数长度转换后的全部十进制数据的相关性;

第一参数确定模块,用于根据命中节点中用户请求端所请求的静态数据的数据量,与命中节点所在服务器中缓存的全部静态数据的数据量均值的偏差,确定命中节点中用户请求端所请求的静态数据的数据量相对大小参数;

第二参数确定模块,用于利用命中节点与用户请求端之间的距离和命中节点与距离用户请求端最远节点之间的距离,计算出用户请求端与命中节点的相对距离参数;

基础加密单元大小确定模块,用于根据命中节点中用户请求端所请求的静态数据的数据量相对大小参数、用户请求端与命中节点的相对距离参数、命中节点所在服务器的负载比例,确定基础加密单元大小;

加密模块,用于根据基础加密单元大小对预处理后数据进行分区,对已经分区的预处理后数据利用3DES算法进行加密得到加密密文。

说明书 :

一种用于CDN节点间的数据加密方法及系统

技术领域

[0001] 本发明属于电数字数据处理技术领域,具体涉及一种用于CDN节点间的数据加密方法及系统。

背景技术

[0002] 数据之间的传输是信息化时代必不可少的一个重要环节,而数据之间传输经常会受到运营商、地区、服务器的负载能力以及带宽过少等因素的影响使得数据传输过慢的问题,所以CDN应运而生,CDN 的作用是采用流媒体服务器集群技术,克服单机系统输出带宽及并发能力不足的缺点,可极大提升系统支持的并发流数目,减少或避免单点失效带来的不良影响,尤其是应用于门户网站、电商等有着许多静态内容文件之间的传输,CDN能够大大的提升数据传输的速度。
[0003] CDN节点缓存机制在不同的服务器中是不同的,但是一般都遵循HTTP协议,而HTTP协议是以明文传输的方式进行内容发送的,并不会提供任何的方式对数据进行加密,这对于CDN节点之间的静态数据的传输是极其不友好的,其无法保证数据传输之间的安全性,对于用户请求端所请求的数据的隐私性是无法保护的;虽然CDN节点之间的数据传输也有加密传输的,但是常规的数据加密方式如3DES算法是对于整体的数据进行加密的,这种加密方式在CDN节点传输的时候,因为数据量的大小以及节点距离用户请求端距离的影响对于整个数据之间的传输速度是有着不可预测的影响的,数据量大,节点分配的距离请求端较远,加密时间较长,对于用户的体验有着较大的影响。

发明内容

[0004] 本发明提供一种用于CDN节点间的数据加密方法及系统,通过对用户请求端命中节点的静态数据进行自适应长度的数据进制转换得到预处理后数据,对静态数据进行进制转换减少了数据量,接着利用基础加密单元结合3DES算法实现CDN节点间的数据加密,在保证传输数据安全性的同时还能保证不同节点不同大小数据量的传输速度,提升了用户体验。
[0005] 本发明的一种用于CDN节点间的数据加密方法采用如下技术方案:
[0006] 获取用户请求端的命中节点,将命中节点中用户请求端所请求的静态数据转换为二进制数据;
[0007] 将二进制数据按照预设位数长度区间内每一位数长度转换为十进制数据,并计算出按照每一位数长度转换后的全部十进制数据的相关性,将相关性最大的位数长度作为最终位数长度;
[0008] 将二进制数据按照最终位数长度转换后的十进制数据作为预处理后数据;
[0009] 根据命中节点中用户请求端所请求的静态数据的数据量,与命中节点所在服务器中缓存的全部静态数据的数据量均值的偏差,确定命中节点中用户请求端所请求的静态数据的数据量相对大小参数;
[0010] 利用命中节点与用户请求端之间的距离和命中节点与距离用户请求端最远节点之间的距离,计算出用户请求端与命中节点的相对距离参数;
[0011] 根据命中节点中用户请求端所请求的静态数据的数据量相对大小参数、用户请求端与命中节点的相对距离参数、命中节点所在服务器的负载比例,确定基础加密单元大小;
[0012] 根据基础加密单元大小对预处理后数据进行分区,对已经分区的预处理后数据利用3DES算法进行加密得到加密密文。
[0013] 进一步地,所述并计算出按照每一位数长度转换后的全部十进制数据的相关性的步骤包括:
[0014] 选取预设位数长度区间内任一位数长度作为目标位数长度;
[0015] 按照目标位数长度将二进制数据转换为十进制数据,获取按照目标位数长度转换后的全部十进制数据的方差、均值以及数据总长度;
[0016] 根据按照目标位数长度转换后的全部十进制数据的方差、均值以及总长度,计算出按照目标位数长度转换后的全部十进制数据的相关性,同理计算出按照每一位数长度转换后的全部十进制数据的相关性。
[0017] 进一步地,所述按照每一位数长度转换后的全部十进制数据的相关性的计算公式为:
[0018]
[0019] 其中, 表示按照位数长度 转换后的全部十进制数据的相关性; 表示按照位数长度 转换后的第 个十进制数据;表示按照目标位数长度转换后的全部十进制数据的均值;表示按照目标位数长度转换后的全部十进制数据的方差;表示按照位数长度 转换后的全部十进制数据的总长度;表示自然常数。
[0020] 进一步地,所述确定命中节点中用户请求端所请求的静态数据的数据量相对大小参数的步骤包括:
[0021] 获取用户请求端的命中节点所在服务器中缓存的全部静态数据的数据量均值;
[0022] 将命中节点中用户请求端所请求的静态数据的数据量,与命中节点所在服务器对应的数据量均值的差值绝对值,作为命中节点中用户请求端所请求的静态数据的数据量相对大小参数。
[0023] 进一步地,所述用户请求端与命中节点的相对距离参数的计算公式为:
[0024]
[0025] 其中,表示用户请求端与命中节点的相对距离参数; 表示用户请求端的命中节点所在服务器的经度和纬度;  表示用户请求端发送请求时的经度和纬度;表示距离用户请求端最远节点所在服务器的经度和纬度。
[0026] 进一步地,所述基础加密单元的计算公式为:
[0027]
[0028] 其中, 表示基础加密单元大小; 表示命中节点中用户请求端所请求的静态数据的数据量相对大小参数;表示用户请求端与命中节点的相对距离参数;表示命中节点所在服务器的负载比例; 为取整符号; 为双曲正切函数; 和 均为调节参数。
[0029] 进一步地,所述根据基础加密单元大小对预处理后数据进行分区的步骤包括:
[0030] 将预处理后数据按照基础加密单元大小进行分区得到多个分区区间;
[0031] 利用3DES算法以每个分区区间内的预处理后数据作为一个数据单位进行明文静态数据的加密,得到加密密文;
[0032] 对利用3DES算法进行加密后的加密密文,以最终位数长度为单位进行十进制转二进制操作得到用户请求端所请求的静态数据的二进制加密密文。
[0033] 一种用于CDN节点间的数据加密系统,包括:
[0034] 数据转换模块,用于获取用户请求端的命中节点,将命中节点中用户请求端所请求的静态数据转换为二进制数据;
[0035] 预处理后数据获取模块,用于将二进制数据按照预设位数长度区间内每一位数长度转换为十进制数据,并计算出按照每一位数长度转换后的全部十进制数据的相关性,将相关性最大的位数长度作为最终位数长度;用于将二进制数据按照最终位数长度转换后的十进制数据作为预处理后数据;
[0036] 第一参数确定模块,用于根据命中节点中用户请求端所请求的静态数据的数据量,与命中节点所在服务器中缓存的全部静态数据的数据量均值的偏差,确定命中节点中用户请求端所请求的静态数据的数据量相对大小参数;
[0037] 第二参数确定模块,用于利用命中节点与用户请求端之间的距离和命中节点与距离用户请求端最远节点之间的距离,计算出用户请求端与命中节点的相对距离参数;
[0038] 基础加密单元大小确定模块,用于根据命中节点中用户请求端所请求的静态数据的数据量相对大小参数、用户请求端与命中节点的相对距离参数、命中节点所在服务器的负载比例,确定基础加密单元大小;
[0039] 加密模块,用于根据基础加密单元大小对预处理后数据进行分区,对已经分区的预处理后数据利用3DES算法进行加密得到加密密文。
[0040] 本发明的有益效果是:
[0041] 本发明提供一种用于CDN节点间的数据加密方法及系统,通过对用户请求端命中节点的静态数据进行自适应长度的数据进制转换得到预处理后数据,对数据进行进制转换减少了数据量;接着利用用户所请求的静态数据的数据量大小,以及用户所请求的静态数据所命中的节点所在的服务器中缓存的全部静态数据的数据量,确定命中节点中用户请求端所请求的静态数据的数据量相对大小参数;同时利用命中节点与用户请求端之间的距离和命中节点与距离用户请求端最远节点之间的距离,计算出用户请求端与命中节点的相对距离参数;确定出命中节点中用户请求端所请求的静态数据的数据量相对大小参数和用户请求端与命中节点的相对距离参数,是为了确定基础加密单元大小,利用基础加密单元对预处理后数据进行区间划分进行进一步的减少加密的计算量;接着利用基础加密单元结合3DES算法实现CDN节点间的数据加密,在保证传输数据安全性的同时还能保证不同节点不同大小数据量的传输速度,提升了用户体验。

附图说明

[0042] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0043] 图1为本发明的一种用于CDN节点间的数据加密方法的实施例总体步骤的流程示意图;
[0044] 图2为本发明中用户请求端的命中节点和用户请求端最远节点的示意图。

具体实施方式

[0045] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0046] 本发明的一种用于CDN节点间的数据加密方法的实施例,如图1所示,该方法包括:
[0047] 实施例1:
[0048] S1、获取用户请求端的命中节点,将命中节点中用户请求端所请求的静态数据转换为二进制数据。
[0049] 本发明仅针对于用户请求端所请求的静态数据在命中的节点所在的服务器中有已经缓存的静态数据的前提下,对于用户请求端所请求的静态数据不在命中的节点所在服务器中需要从源站中进行传输的非节点之间的静态数据加密不做考虑。
[0050] 本发明需要对CDN节点之间传输的静态数据进行加密,故首先需要利用现有技术对用户请求端所请求的数据进行CDN节点的命中,具体方式为利用用户请求端所发出的数据请求中的IP地址进行CDN的节点命中,获取用户请求端的命中节点,而后需要对于命中节点内的用户请求端所请求的静态缓存数据进行传输,本发明需要对命中节点中的用户请求的静态缓存数据进行基于不同参数的加密程度的加密,所以首先需要对已经命中节点之中的用户请求端所请求的静态缓存数据进行预处理,所述的预处理方式为对静态缓存数据进行基于Gzip压缩算法的压缩(HTTP常用压缩算法),将命中节点中用户请求端所请求的静态数据转换为二进制数据。
[0051] S2、将二进制数据按照预设位数长度区间内每一位数长度转换为十进制数据,并计算出按照每一位数长度转换后的全部十进制数据的相关性,将相关性最大的位数长度作为最终位数长度。
[0052] 本发明中预设位数长度区间 的取值范围为 ;将二进制数据按照预设位数长度区间内每一位数长度 转换为十进制数据,并计算出按照每一位数长度转换后的全部十进制数据的相关性,由此可知,预设位数长度区间内每一位数长度都对应一个相关性,利用上述方式对不同大小的 下的十进制静态数据进行相关性的分析,选择其中相关性最大值对应的长度 ,将其作为进制转换的最终位数长度。
[0053] 二进制转换为十进制的数据的个数越多,则利用3DES算法进行加密的时候,加密效果越差,但是加密的过程中数据量的大小越少,即在损失加密效果的情况下来提升加密速度,本发明通过数据之间的相关性来自适应二进制的位数的目的在于对加密效果的补偿,在将长度为 的二进制数据转换为十进制时,按照最终位数长度将二进制数据转换为十进制数据,因为此时数据的相关性在一定范围内最大,即以这种长度下对其利用3DES算法进行加密的时,因为数据之间的相关性是最强的,加密效果也是最强的。
[0054] S3、将二进制数据按照最终位数长度转换后的十进制数据作为预处理后数据。
[0055] 在步骤S2中获取了最终位数长度,将二进制数据按照最终位数长度转换后的十进制数据作为预处理后数据;例如:若最终位数长度为5,则将5位二进制数据为一组转换为1位十进制数据。
[0056] S4、根据命中节点中用户请求端所请求的静态数据的数据量,与命中节点所在服务器中缓存的全部静态数据的数据量均值的偏差,确定命中节点中用户请求端所请求的静态数据的数据量相对大小参数。
[0057] 确定命中节点中用户请求端所请求的静态数据的数据量相对大小参数的步骤包括:获取用户请求端的命中节点所在服务器中缓存的全部静态数据的数据量均值;将命中节点中用户请求端所请求的静态数据的数据量,与命中节点所在服务器对应的数据量均值的差值绝对值,作为命中节点中用户请求端所请求的静态数据的数据量相对大小参数。
[0058] 命中节点中用户请求端所请求的静态数据的数据量相对大小参数的计算公式为:
[0059]
[0060] 其中, 表示命中节点中用户请求端所请求的静态数据的数据量相对大小参数;表示命中节点中用户请求端所请求的静态数据的数据量; 表示命中节点所在服务器中缓存的第 个静态数据的数据量;表示命中节点所在服务器中缓存的静态数据总个数。
[0061] 在命中节点中用户请求端所请求的静态数据的数据量相对大小参数的计算公式中,数据量相对大小参数中的“相对”,具体是指用户所请求的静态数据相对该静态数据所命中节点所在的服务器中所有的已经缓存的静态数据的大小;本发明以命中节点所在服务器中所有的静态数据的平均值最为参考系来对用户请求端所请求的静态数据大小进行定量,其具体意义为,在命中节点所在的服务器中,服务器的算力是一定的,在相同的时间节点,存在多个用户(尤其是在数据访问的高峰期,数量是巨大的)在进行访问时,用户请求端静态数据的数据量相对与其他的用户请求端的数据量相对越少,在每一条请求等算力处理和不考虑该节点所在的服务器与用户请求端的距离的情况下,其可以在加密方向分配的算力相应的也就更强,在数据的传输中也就越安全,具体表现为其相对数据量小参数越小,后续计算中的最小加密基础单元中包含的十进制的数据也就越小,对应的二进制数据包含的也就越少,再利用3DES算进行加密的时候加密的安全性也就越高;在本发明中的具体表现为命中节点中用户请求端所请求的静态数据的数据量 ,越接近用户请求端的命中节点所在服务器中缓存的全部静态数据的数据量均值,对应的命中节点中用户请求端所请求的静态数据的数据量相对大小参数越小。
[0062] S5、利用命中节点与用户请求端之间的距离和命中节点与距离用户请求端最远节点之间的距离,计算出用户请求端与命中节点的相对距离参数。
[0063] 用户请求端与命中节点的相对距离参数的计算公式为:
[0064]
[0065] 其中,表示用户请求端与命中节点的相对距离参数; 表示用户请求端的命中节点所在服务器的经度和纬度;  表示用户请求端发送请求时的经度和纬度;表示距离用户请求端最远节点所在服务器的经度和纬度。
[0066] 如图2所示,为本发明中用户请求端的命中节点和用户请求端最远节点的示意图;在用户请求端与命中节点的相对距离参数的计算公式中,在进行用户请求的静态数据进行加密的过程中,用户请求的静态数据所命中的节点所在的服务器与用户请求段的距离越长,其加密后的静态数据进行传输的时间相应的也就越长;而为了满足用户的实际需求,应该尽量的减少数据传输过程中所使用的时间,该处的传输是指从用户的请求命令发出直至用户请求端收到静态信息的过程,故式中的 越大,用户请求端所请求的数据的大小一定的情况下,其距离越长,所需要传输的时间也就越长,其加密时的时间就应该越少才能保证传输速度;命中节点所在的服务器与用户请求端之间的距离一般情况是较大的,在进行后续计算时极为不方便,所以本发明设置了一种动态的相对距离量化参数,该种做法的优势不仅在于能避免距离数据过大影响计算准确性,同时由于不同的用户请求端的命中节点所在服务器不同,不同的用户请求端距离最远的节点也不同,在计算用户请求端与命中节点的相对距离参数的时候在保证精准性的同时增加了随机性,保证了后续加密时候的安全性。
[0067] S6、根据命中节点中用户请求端所请求的静态数据的数据量相对大小参数、用户请求端与命中节点的相对距离参数、命中节点所在服务器的负载比例,确定基础加密单元大小。
[0068] 基础加密单元大小的计算公式为:
[0069]
[0070] 其中, 表示基础加密单元大小; 表示命中节点中用户请求端所请求的静态数据的数据量相对大小参数;表示用户请求端与命中节点的相对距离参数;表示命中节点所在服务器的负载比例; 为取整符号; 为双曲正切函数; 和 均为调节参数。
[0071] 在基础加密单元大小的计算公式中, 、越大,说明该请求的静态数据不仅数据量大,并且距离用户请求端所在的距离较远,故对其进行加密的时候应该更关注与整体的传输速率,所以其对应的 在服务器负载情况 一定的情况下较大,即每个基础加密单元内的十进制数据更多,反之则相反,而引入该节点所在服务器的负载比例的具体目的为,更加精确的整体进行描述,服务器的负载比率较小的情况下,其处理加密速度的时候是很快的,反之则反,所以用服务器的负载比例对 、进行一定程度上的约束;双曲正切函数的目的为让加密参数在之间进行分配,使得最小加密单元中的十进制数据蕴含太多,加密效果几乎没有,而调节参数 的存在为使得最小加密单元 中的静态数据的十进制数据为整数倍,在后续对于十进制数据的分区的过程中不会出现数据无法分割的情况,调节参数 的目的是为防止前面的参数计算为 的时候进行调节,防止每个最小加密单元中的十进制静态数据为 个的可能。
[0072] S7、根据基础加密单元大小对预处理后数据进行分区,对已经分区的预处理后数据利用3DES算法进行加密得到加密密文。
[0073] 根据基础加密单元大小对预处理后数据进行分区的步骤包括:将预处理后数据按照基础加密单元大小进行分区得到多个分区区间;利用3DES算法以每个分区区间内的预处理后数据作为一个数据单位进行明文静态数据的加密,得到加密密文;对利用3DES算法进行加密后的加密密文,以一个字节为单位进行十进制转二进制操作得到用户请求端所请求的静态数据的二进制加密密文。
[0074] 在获得了用户请求端所请求的静态数据的加密基础单元,现根据加密的基础单元对已经预处理过的数据进行数据的分区,后续利用3DES算法对静态数据进行加密的时候以每一个区间内的所有的数据视作一个3DES算法中的基础数据进行加密,具体分区区间个数计算方式如下所示:
[0075]
[0076] 其中, 表示预处理后数据长度; 表示基础加密单元大小;表示分区区间个数;在对预处理后数据进行分区时,共可获得 个分区区间,每个区间之内的静态数据量作为一个基础加密单元,即 个基础加密单元。
[0077] 对用户请求端的预处理后数据进行了最小加密基础单元的量化,现对用户请求端的预处理后数据进行加密,具体方式如下所示:
[0078] 利用3DES算法以每个分区区间内的预处理后数据作为一个数据单位进行明文静态数据的加密,得到加密密文;
[0079] 对利用3DES算法进行加密后的加密密文,以最终位数长度为单位进行十进制转二进制操作得到用户请求端所请求的静态数据的二进制加密密文;
[0080] 至此,用户请求端所请求的CDN节点间的静态数据加密完成。
[0081] 对用户请求端所请求的静态数据的解密过程为:
[0082] 首先对用户请求端接收到的加密密文以最终位数长度为单位进行二进制转十进制操作;
[0083] 而后利用3DES算法的密钥进行反向解密获得用户请求的静态数据的十进制明文数据;
[0084] 以最终位数长度作为单位对用户请求的静态数据进行十进制转二进制操作获得静态数据的二进制明文数据;
[0085] 最后利用Gzip的解压算法对静态数据的二进制明文数据进行解压,即可获得用户请求端所请求的信息。
[0086] 实施例2:
[0087] 本实施例基于实施例1,本实施例中,并计算出按照每一位数长度转换后的全部十进制数据的相关性的步骤包括:选取预设位数长度区间内任一位数长度作为目标位数长度;按照目标位数长度将二进制数据转换为十进制数据,获取按照目标位数长度转换后的全部十进制数据的方差、均值以及数据总长度;根据按照目标位数长度转换后的全部十进制数据的方差、均值以及总长度,计算出按照目标位数长度转换后的全部十进制数据的相关性,同理计算出按照每一位数长度转换后的全部十进制数据的相关性。
[0088] 按照每一位数长度转换后的全部十进制数据的相关性的计算公式为:
[0089]
[0090] 其中, 表示按照位数长度 转换后的全部十进制数据的相关性; 表示按照位数长度 转换后的第 个十进制数据;表示按照目标位数长度转换后的全部十进制数据的均值;表示按照目标位数长度转换后的全部十进制数据的方差;表示按照位数长度 转换后的全部十进制数据的总长度;表示自然常数。
[0091] 在按照每一位数长度转换后的全部十进制数据的相关性的计算公式中,本发明用来量化数据之间的相关性的方式为通过判断所有数据之间的方差与每个数据与所有数据之间的平均值的偏移量,整体的数据的方差越大,证明以该长度下的二进制数据转换为十进制数据之后整体的波动性越强,相关性在一定程度上也就较小,而以这种方式判断并不绝对,所以利用每个数据大小与整体数据平均值之间的偏移量进行补充,整体的平均偏移量越大,证明数据的离心情况越大,而数据的离心程度越大,且波动像越强,则证明该长度下进行数据的形式转换时,数据的相关性较小。
[0092] 本发明中预设位数长度区间为 ,利用上述方式对不同大小的 下的十进制静态数据进行相关性的分析,选择其中相关性 最大值对应的长度 ,以其作为数据形式转换的具体长度。
[0093] 二进制转换为十进制的数据的个数越多,则利用3DES算法进行加密的时候,加密效果越差,但是加密的过程中数据量的大小越少,即在损失加密效果的情况下来提升加密速度,本发明通过数据之间的相关性来自适应二进制的位数的目的在于对加密效果的补偿,在长度为 时进行二进制数据转换为十进制,而 长度下的二进制转换为十进制数据,因为此时数据的相关性在一定范围内最大,即以这种长度下对其利用3DES算法进行加密的时,因为数据之间的相关性是最强的,所以加密效果是最强的。
[0094] 实施例3:
[0095] 本实施例提供了一种用于CDN节点间的数据加密系统,包括:
[0096] 数据转换模块,用于获取用户请求端的命中节点,将命中节点中用户请求端所请求的静态数据转换为二进制数据;
[0097] 预处理后数据获取模块,用于将二进制数据按照预设位数长度区间内每一位数长度转换为十进制数据,并计算出按照每一位数长度转换后的全部十进制数据的相关性,将相关性最大的位数长度作为最终位数长度;用于将二进制数据按照最终位数长度转换后的十进制数据作为预处理后数据;
[0098] 第一参数确定模块,用于根据命中节点中用户请求端所请求的静态数据的数据量,与命中节点所在服务器中缓存的全部静态数据的数据量均值的偏差,确定命中节点中用户请求端所请求的静态数据的数据量相对大小参数;
[0099] 第二参数确定模块,用于利用命中节点与用户请求端之间的距离和命中节点与距离用户请求端最远节点之间的距离,计算出用户请求端与命中节点的相对距离参数;
[0100] 基础加密单元大小确定模块,用于根据命中节点中用户请求端所请求的静态数据的数据量相对大小参数、用户请求端与命中节点的相对距离参数、命中节点所在服务器的负载比例,确定基础加密单元大小;
[0101] 加密模块,用于根据基础加密单元大小对预处理后数据进行分区,对已经分区的预处理后数据利用3DES算法进行加密得到加密密文。
[0102] 本实施例提供了一种用于CDN节点间的数据加密系统具体实施方式与一种用于CDN节点间的数据加密方法的实施方式基本相同,在此不再赘述。
[0103] 本发明通过对用户请求端命中节点的静态数据进行自适应长度的数据进制转换得到预处理后数据,对静态数据进行进制转换减少了数据量,接着利用基础加密单元结合3DES算法实现CDN节点间的数据加密,在保证传输数据安全性的同时还能保证不同节点不同大小数据量的传输速度,提升了用户体验。