CN102624527A - 加密数据的方法、装置和加密数据的传输方法及装置 - Google Patents
加密数据的方法、装置和加密数据的传输方法及装置 Download PDFInfo
- Publication number
- CN102624527A CN102624527A CN2012100439433A CN201210043943A CN102624527A CN 102624527 A CN102624527 A CN 102624527A CN 2012100439433 A CN2012100439433 A CN 2012100439433A CN 201210043943 A CN201210043943 A CN 201210043943A CN 102624527 A CN102624527 A CN 102624527A
- Authority
- CN
- China
- Prior art keywords
- data
- pki
- private key
- random number
- length
- 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
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明提供了一种加密数据的方法和加密数据的传输装置,首先从传输数据W中随机截取预订长度k的数据W’;以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;再以数据W’为参数生成公钥Ei和私钥Ri,1≤i≤p;最后用公钥Ei循环编码W,得到加密结果Z。本发明还提供了一种加密数据的装置,以及一种加密数据的传输方法,和一种加密数据的传输装置。
Description
技术领域
本发明涉及数据传输方法,尤其涉及数据加密方法和加密数据传输方法。
背景技术
在数据网络中,数据安全是一个永恒的话题。以数据传输为例,数据传输不安全有两种原因,一是指由于硬件故障等客观原因导致,二是指由于人的行为等主观原因导致。第二个原因导致的数据保密性问题是我们的讨论重点,例如防止数据被窃取。
为了实现数据本身和传输过程的保密性,人们采取了很多措施,其中之一就是在传输数据前或传输过程中加密被传输的数据,公钥私钥加密体系是数据加密领域的典型代表。该体系使用一个公钥和一个私钥,公钥可以在共享数据的节点间公开传递,用于加密数据,对被传输导数据提供保障。但私钥是保密的,与节点有独立的对应关系,只有使用私钥才能解密用公钥加密的数据。
然而,数据传输过程采用的类似该体系的传统加密体系无不面临着量子计算的挑战,例如,1994年发明的Shor算法(P.W.Shor,“A1gorithms for quantum computation:Discretelog and factoring”,Proceedings of the 35th Symposium On Foundations of Computer Science,1994,pp.124-134.),能以多项式时间攻破所有的能够转换成广义离散傅立叶变换的公钥密码。应对量子计算挑战的基本对策,是采用不能转换成离散傅立叶变换的数学方法建立公钥体系。例如MQ体系,采用多变元二次多项式公钥密码体制(Multivariate Quadratic Polynomials in Public Key Cryptosystem),利用二次多项式不定方程组的难解性提供加密安全保障。
2005年,被绝大多数密码专家认为固若金汤的两大密码算法(世界通用密码标准MD5和SHA-1)被攻破,这说明,依靠数学难度构建的静态加密体系的可靠性总是相对的,也可以说,传统的加密被传输数据方法的共性,是依靠加密过程使用的数学方法或数学公式的难度提供安全保障。然而,从数据加解密的历史发展过程看,单纯依靠加密过程使用的数学算法的难度难以实现理想的安全,只要存在加密过程的规律性,破解就是时间问题,就难以实现理想安全程度的数据传输。
发明内容
本发明解决的问题是,提供一种安全程度较高的加密数据的方法及装置,以及加密数据的传输方法及装置。
为解决上述问题,本发明实施例提供的第一个加密数据的方法,从传输数据W中随机截取预订长度k的数据W’; 以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;再以数据W’为参数生成公钥Ei和私钥Ri,1≤i≤p;最后用公钥Ei循环编码W,得到加密结果Z。
所述的加密数据的方法还包括:利用滑动窗口技术处理加密结果Z,生成所述Z的引用标签序列,以标签序列作为新的加密结果。
相应地,本发明提供的加密数据的装置实施例,包括存储待传输数据W的存储器单元,还包括随机数单元、可变动态密钥单元和加密编码单元;
所述随机数单元,从传输数据W中截取预订长度k的数据W’,以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;
所述可变动态密钥单元,以数据W’为参数生成公钥Ei和私钥Ri,1≤i≤p;
所述加密编码单元,用公钥Ei循环编码W,得到加密结果Z。
本发明实施例提供的第二个加密数据的方法,包括:
从传输数据W中随机截取预订长度k的数据W’;
以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;
在存储公钥私钥的数据库中随机选择p对公钥和私钥,即公钥Ei和私钥Ri,1≤i≤p;
用公钥Ei循环编码W,得到加密结果Z。
本发明实施例提供的加密数据的传输方法,包括:
从传输数据W中截取预订长度k的数据W’;以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;再以数据W’为参数生成公钥Ei和私钥Ri,1≤i≤p;最后用公钥Ei循环编码W,得到加密结果Z,将Z与Ri组合成新的传输数据M发送。
本发明实施例提供的加密数据的传输装置,包括存储待传输数据W的存储器单元,还包括:
随机数单元,从传输数据W中截取预订长度k的数据W’,以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;
可变动态密钥单元,以数据W’为参数生成公钥Ei和私钥Ri,1≤i≤p;
加密编码单元,用公钥Ei循环编码W,得到加密结果Z;
加密数据处理单元,将Z与Ri组合成新的传输数据M发送。
与现有的静态加密方法相比,本发明实施例提供的方法具有以下优点:
1、随机可变。从传输数据W中随机截取数据W’做为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,由于以随机参数做种子计算加密因子的数据基础,作为种子的数据以传输数据的不同和随机数不同而变化,还由于加密基础的随机性,即数据域F的随机性导致不同的加密结果,这种加密方法在每次的数据加密和传输过程中都在更新加密参数,没有任何规律可言,因此具有较高程度的保密性。
2、动态多重。在每次的数据加密过程中,密钥数量、编码顺序都是不同的,甚至可以在每次的数据加密过程中动态约定。而且加密方法本身也可以通过多种方法,例如标签加密等多种方式进一步处理,而且标签的形式还具有极其优良的数据压缩能力和随机性加密能力,进一步保证了数据加密的效果。
3、加密方法具有一次性的效果。由于加密方法在接收节点得到结果后即消失,即使被截获也不再有作用,这个特点决定了加密过程和方法无法复制,即使截获到传输的数据也不能利用数据本身以外的任何方法解密。
综上所述,本发明实施例提供的方法具有极高的加密安全保障。
附图说明
图1是加密数据的方法实施例流程图;
图2是加密数据的装置实施例框图;
图3是加密数据的传输方法实施例流程图;
图4是加密数据的传输装置实施例1框图;
图5是加密数据的传输装置实施例2框图。
具体实施方式
首先参考图1所述实施例。按照该实施例,我们可知数据加密采用的是可变和随机动态的加密手段。首先在步骤11,将待加密的传输数据W一次性读入或者以数据流方式读入到计算机系统的内存或高速缓存中,用W作为加密密钥的产生基础。但是W的长度是不确定的,简单用W作为密钥产生基础会使计算资源的消耗变得不确定,从而使应用该方法的产品变得性能不稳定,因此,本例采用了一种相对优化的做法。做法是,预先设定一个常数k,从传输数据W中随机截取预订长度k的数据W’,以W’作为加密密钥的基础。在一般的应用中,W的长度通常大于k,这时W’的获取就是截取操作,而且该截取操作的起点是随机的,也即,截取操作的起点是能够满足可靠截取到W’前提下的随机起点,以增强W’的随机性,需要说明,确定截取的随机起点非常容易做到,此不再赘述。在特殊的应用中,W长度小于k,这时可以用W直接作为W’,即将W全部截取作为W’,用W的随机性解决W’的随机性问题。在其他的例子中,为使W’的长度稳定且进一步增加随机性,也采取下述进一步优化的截取方式:比较所述传输数据W的长度和k,当二者相等时,截取W的全部作为W’;当W的长度大于k,从W中随机截取k的长度作为W’,当W的长度小于k,向W’中补充随机数,使W’的长度等于k,即,将补充随机数后的W作为W’。
所述k是一个根据经验或者实验确定的一个经验数字,例如1M或100K,目的是使产生加密密钥的基础稳定,使得本实施例能够较好地适应当前的主流计算机,而且进一步促使实现该数据截取操作的算法简洁。
第12步骤,以数据W’为种子产生一个随机数r。产生随机数的方法很多,例如:
(1)r=∑(W’) mod C;
即,随机数r等于W’的数据“数”求和,再与常数C模运算后的余数。常数C具有很大的任意性,通常的范围是1到∑(W’)-1。例如,W’是如下的十六进制数据序列:21458F2AD2,则∑(W’)的十六进制为:
∑(W’)= 2+1+4+5+8+F+2+A+D+2; 十进制为:
∑(W’)= 2+1+4+5+8+15+2+10+13+2=62。
从十进制角度看,该常数C∈[1,61]。
(2)r=HASH(W’);
即用公知的哈希算法求解r即可。
步骤12的目的是进一步为后续步骤增加随机性基础。
第13步骤,以r作为种子随机计算密钥的数量p,p∈[1,C),即p的值介于1和C之间,也就是说密钥的数量最少为1,最多为C,其中C是常数。本步骤的本质仍然是随机数的计算,也有多种方法可以完成该计算,例如:
p=(f(r) mod C)+1;其中,f可以是任意的线性或非线性等任意复杂度的函数,常数C即可以根据经验或实验确定,也可以根据使用本实施例的计算机系统的性能确定,以使本实施例更好地适应计算机系统。具体的做法是,在系统启动的初始化阶段,预先协商数据传输端点之间的数据处理能力,根据所述处理能力确定C的数值,由于确定C的方法有很多,此不再赘述。
第14步骤,以数据W’为基础或参数生成公钥和私钥序列,即生成公钥Ei和私钥Ri,1≤i≤p。公钥和私钥的本质,是函数和对应的逆函数,用一般的可逆变换函数都可以实现,具体如线性可逆变换函数、非线性可逆变换函数等等,运用这些变换函数的逆函数,就能够得到公钥和私钥。因此,可以用很多公知的方法实现本步骤。
为增加本实施例的效果,采用下述方式生成公钥和私钥:
首先,选择正整数m,n,其中,m>n,且m,n小于以数据W’为基础生成的子集的数据长度。
其次,以该子集作为数据域F,选择域F中的元素xi和yj,且1≤i≤m,1≤j≤n;令x=(x1,…,xm),y=(y1,…,yn),x、y均为由域F中的元素所组成的向量;
生成包含有E(x))的公钥,其中,E(x)为在域F上的从x=(x1,…,xm)到y=(y1,…,yn)的非线性映射函数组;并且,所述E(x)中隐含有接口函数R(x),其用于根据x=(x1,…,xm)得到n个关于x=(x1,…,xm)的函数,R(x)=(u01(x1,…,xm),…,u0n(x1,…,xm));
生成与所述公钥相对应的私钥,所述私钥包括R(x)。
上述过程是生成一对公钥和私钥的过程。当每个过程以数据W’为基础生成的子集,即采用不同的数据域F时,就会生成公钥和私钥序列,即公钥Ei和私钥Ri,1≤i≤p,也就是说,有多个数据域,即i个数据域,参与生成公钥和私钥序列,数据域Fi以W’为基础。在另外的实施例中,用从数据W截取的i个W’,即Wi’生成对应的数据域Fi。
其中,生成包含有E(x)的公钥的具体过程是:
首先选择域F中的元素ai,1≤i≤n;n小于数据域F的数据长度, (a1,…,an)是由域F中的元素所组成的向量。然后选取s+1个域F上的n元可逆线性变换T=(T1,…,Ti,…,Ts+1),其中,每个Ti包括n个域F上的关于(a1,…,an)的n元线性多项式;再选取s个域F上的n元可逆非线性变换G=(G1,…,Gi,…,Gs),其中,每个Gi包括n个域F上的关于(a1,…,an)的函数,所述函数可以是多项式、有理分式等各种函数类型。最后,依据预置规则,合成所述u0(x)、T和G,得到从x到y的非线性映射函数组:
(y1,…,yn)= E(x)= (E1(x1,…,xm),…,En(x1,…,xm));
其中,u0(x)= (u01(x1,…,xm),…,u0n(x1,…,xm))。
选取E(x)中的n’个函数作为E’ (x),得到公钥,n’<n;其中,E’(x)中含有关于(x1,…,xm)的函数;
E’(x)=(E1(x1,…,xm),…,En’(x1,…,xm))。
生成私钥的过程是:
生成T的逆函数T-1;生成G的逆函数G-1;由T-1和G-1计算得到D(y);生成私钥,所述私钥包括R(x)和D(y),
所述预置规则,可以根据实际情况进行设置。例如,如果期望得到的E’(x)中含有关于(x1,…,xm)的有理分式函数,则所述预置规则可以为以下两种情况:
把函数组u0(x)代入到T1,把T1,代入到G1,把G1代入到T2,把T2代入到G2,把Tj代入到Gj,把Ts代入到Gs,把Gs代入到Ts+1;
或者,只把函数组u0(x)代入到T1,把T1,代入到G1,把G1代入到T2,把T2代入到G2,把Tj代入到Gj,把Ts代入到Gs。
对于上述两种可能的方式而言,当最后为线性变换Ts+1时,得到有理分式的公钥,其每个有理分式的分母多项式是相同的;当最后为非线性变换Gs时,其公钥中每个有理分式的分母多项式通常都不同。实践中通常默认相同的分母,可以节省公钥存储空间,提高运算速度。
第15步骤,用公钥Ei循环编码传输数据W,得到加密结果Z。具体的循环编码方式有多种,可以根据预先的约定,既可以用部分公钥,也可以用全部公钥,按照约定的顺序编码W。例如,一个简单的约定方式是:Z=Ep(…E2(E1(w))…)。
所述约定完全不用数据发送节点和数据接收节点预先协商,只需要数据发送节点随机确定,并将确定的方式添加到加密结果Z中即可实现数据接收节点的正确解密,鉴于这种做法很容易实现,此不再赘述。
本实施例中,采用公钥的数量和编码顺序都具有随机性,进一步提高了本实施例的可变性、动态性。
为了更进一步提高加密数据方法的可破解难度,加强其随机性的程度,另一个实施例进一步利用滑动窗口技术处理加密结果Z,生成所述Z的引用标签序列,以标签序列作为新的加密结果。
生成引用标签可以按照公知的方法完成。具体可以是:按照重复数据表示出来的重复特性,例如特定相邻的字符构成的字符串,尽可能多地确定多个满足该特性要求的数据段,为这些数据段设置彼此不重复的引用标签,将所述引用标签与所述数据段绑定在一起,存储入数据库,即标签与数据段对照的关系数据库。
确定一个数据序列的引用标签,可以利用一个指纹函数和一个窗口,通过动态调整所述窗口,对输入的数据流,从一个方向确定一系列的分割点,利用所述分割点分割所述数据流,截取一个或多个数据段,所述数据段与所述数据库中存储的至少一个数据段相同,然后用引用标签代替截取的数据段与数据流中剩余的数据组装为新的数据流。
例如,假设传输数据W看作有方向的输入数据流,从数据的流入方向或者数据流稳定输入后从数据流尾部方向截取一个或多个数据段,只要截取的所述数据段与所述第一数据库中存储的至少一个数据段相同,就可以认为该数据段是一个预先确定的高重复概率数据段,就可以按照所述数据库中引用标签和所述数据段的绑定关系,用引用标签代替截取的数据段与数据流中剩余的数据组装为新的数据流。由于数据的生成与数据段的截取可以采用相关的算法,因此,易于从一个随机的数据流中找到高重复概率的数据段,从而可以实现用引用标签代替数据段传输,减少实际传输的数据量。
分割出的数据段不用考虑该数据段周围的其它数据如何。上述标签的确定过程的一个方面就是要将输入数据进行分割,在分割过程中识别出“分割点”,如果一个分割方案设计合理、恰当,数据段的端点对于同样的数据段而言,它应具有相同的重复性,出现在相同的地方,而不用考虑这个数据在什么样的内容中出现。因此,对于数据中的那些具有共同数据特性的重复性数据段,就能用一种同样的方法分割出来。
具体的数据分割方案之一,是使用数据本身中的信息去引导该分割过程,而不用那种从外部把数据块尺寸、传输界定参数等强加给分割过程。
当输入数据被编码过程消耗后,输入数据的各种各样的值和结构就会去引导分割过程,通过这种把输入内容引导分割用于处理输入数据流,就能把时间跨度很大的重复数据寻找出来,而不必将已经分析过的数据重新分析一遍。只要同类的数据被在输入数据的过程中出现过,无论其在何处,同样的数据段就会被发现,从而得到重复的数据段而无需重复分析数据。
然而,尽管输入的数据具有某种数据特性,但由于每次需要处理的数据具有的随机性,用输入数据的内容引导数据的分割,实际上只是在分割得到的数据段的尺寸最大,与重复数据段的数量最多之间的矛盾中找到一个平衡点。
需要指出,在其他的以图1所示实施例为基础的加密数据的方法实施例中,可以不采用步骤11,步骤12产生的随机数r也可以是一个任意的随机数或以任意数据为种子的随机数,这样,本实施例就会消耗更少的计算资源,而牺牲的随机性却是极其有限的。另外,步骤13也可以简化为直接确定密钥的数量p,所牺牲的随机性同样也是很有限的。
图2是加密数据的装置实施例框图。
图2所示实施例有四个单元,存储器单元21、随机数单元22、可变动态密钥单元23和加密编码单元24。存储器单元21是内存存储器,从系统外部存储器读入的传输数据W就存储在该单元。存储器单元21与随机数单元22,以及加密编码单元24直接连接,而可变动态密钥单元23串联在随机数单元22和加密编码单元24之间。
其中的随机数单元22,从存储器单元21存储的传输数据W中截取预订长度k的数据W’, 以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数。
在实际应用中,W长度可能大于、等于、或小于k,为使W’的长度稳定减少算法的复杂性,且进一步增加随机数r的随机性,本例采取下述数据W截取方式:比较所述传输数据W的长度和k,当二者相等时,截取W的全部作为W’;当W的长度大于k,从W中随机截取k的长度作为W’,当W的长度小于k,向W’中补充随机数,使W’的长度等于k,即,将补充随机数后的W作为W’。
以数据W’为种子产生一个随机数r。产生随机数的方法很多,例如:
r=∑(W’) mod C;或者r=HASH(W’),等等。
以r作为种子随机计算密钥的数量p也有多种方法可以完成该计算,例如:
p=(f(r) mod C)+1;其中,f可以是任意的线性或非线性等任意复杂度的函数,常数C即可以根据经验或实验确定,也可以根据使用本实施例的计算机系统的性能确定,以使本实施例更好地适应计算机系统。例如,在系统启动的初始化阶段,预先协商数据传输端点之间的数据处理能力,根据所述处理能力确定C的数值,由于确定C的方法有很多,此不再赘述。
可变动态密钥单元23,以数据W’为参数生成公钥私钥序列,即公钥Ei和私钥Ri,1≤i≤p。
可以用很多公知的方法生成公钥私钥序列。例如,为增加密钥本身的加密能力,采用下述方式生成公钥和私钥:
首先,选择正整数m,n,其中,m>n,且m,n小于以数据W’为基础生成的子集的数据长度。
其次,以该子集作为数据域F,选择域F中的元素xi和yj,且1≤i≤m,1≤j≤n;令x=(x1,…,xm),y=(y1,…,yn),x、y均为由域F中的元素所组成的向量;
生成包含有E(x))的公钥,其中,E(x)为在域F上的从x=(x1,…,xm)到y=(y1,…,yn)的非线性映射函数组;并且,所述E(x)中隐含有接口函数R(x),其用于根据x=(x1,…,xm)得到n个关于x=(x1,…,xm)的函数,R(x)=(u01(x1,…,xm),…,u0n(x1,…,xm));
生成与所述公钥相对应的私钥,所述私钥包括R(x)。
上述过程是生成一对公钥和私钥的过程。当每个过程以数据W’为基础生成的子集,即数据域F不同时,就会生成公钥和私钥序列,即公钥Ei和私钥Ri,1≤i≤p。
加密编码单元24,从存储器单元21读取存储的传输数据W,用公钥Ei循环编码W,得到加密结果Z。具体的循环编码方式有多种,可以根据预先的约定,既可以用部分公钥,也可以用全部公钥,按照约定的顺序编码W。例如,一种简单的约定方式是:Z=Ep(…E2(E1(w))…)。所述约定的顺序可以动态约定,而且不影响传输数据的解密。
需要说明,编码后的加密结果Z可以传输到存储器单元21存储待发送,也可以传输到其他存储器单元中(图中未绘出)存储待发送。
为了更进一步提高加密数据方法的可破解难度,加强其随机性的程度,在另外的实施例中,还包括一个和加密编码单元24连接的标签加密单元,该单元利用滑动窗口技术处理加密结果Z,生成所述Z的引用标签序列,以标签序列作为新的加密结果Z。
图3是加密数据的传输方法实施例流程图;
由图3可知,图3所示实施例与图1所示实施例相比,增加了步骤16,现仅对步骤16进行说明。图3中,步骤11到步骤15是传输数据W的加密过程,而步骤16是将加密结果传输的过程。为使接收加密数据的节点能够解密接收到的加密数据,需要将加密结果Z和解密用的私钥一并传送到接收节点,即将Z与私钥序列Ri组合成新的传输数据发送出去和/或存储起来。为使接收节点能够得到Z与Ri,例如采用下述做法:
计算Ri的最大长度,将每个Ri镶嵌到一个根据该长度制作的固定长度的数据框中,该数据框中包括数据首标识、尾标识、Ri和Ri识别标识等数据,形成私钥数据框Ri,当一个具体的Ri长度较小时,该数据框中还会有填充的随机数,根据公知常识,这时需要增加一些必要的数据标识,此不赘述。将由加密结果Z形成的数据框Z与Ri组织或组合成一个数据序列就形成了新的传输数据。当然,根据组织数据思路的约定不同,在数据框和/或新的传输数据中还会有其他标识数据结构用的数据,甚至填充的随机数,等等,这是很容易做的。一种简单的做法,就是按照约定的数据结构组织Z与Ri,例如采用最简单的按照编码顺序、以顺序组合的方式组织Z与Ri,鉴于这点极其容易实现,此不再赘述。
需要说明,在另外的实施例中,每次数据传输都即时约定或确定Z与Ri的数据结构,只需要在该结构中增加必要的标识,即可实现组织Z与Ri的随机性,从而进一步增加数据被破解的难度。
图4是加密数据的传输装置实施例1框图。
由图4可知,图4所示实施例与图2所示实施例相比,增加了与加密编码单元24连接的加密数据处理单元25,现仅对加密数据处理单元25进行说明。
为使接收加密数据的节点能够解密接收到的加密数据,加密数据处理单元25需要将加密结果Z和解密用的私钥一并传送到接收节点,即将Z与私钥序列Ri组合成新的传输数据发送出去和/或存储起来。为使接收节点能够得到Z与Ri,一种简单的做法,就是按照约定的数据结构组织Z与Ri,这是很容易实现的。
实际中,加密数据处理单元25组织数据使用的加密结果Z来源于存储器单元21或加密编码单元24,这取决于数据传输过程的实时性程度。
在另外的加密数据的传输装置实施例中,还包括设置与加密数据处理单元连接的标签单元26,参考图5.该单元接收加密数据处理单元的输出结果,即Z与私钥序列Ri组合成的新传输数据M,利用滑动窗口技术处理M,生成所述M的引用标签序列,以标签序列作为最后的加密结果发送出去和/或存储起来,从而进一步压缩加密M。
在另一个加密数据的方法实施例中,公钥和私钥序列也可以采用数据库的方式通过预处理的方法得到。例如,将预先生成的公钥和私钥对存储在一个设置好的数据库中,只要有足够数量的公钥和私钥对,也能够生成满足随机性要求的公钥私钥序列,此时牺牲的随机性也是极其有限的。
该加密数据的方法实施例首先从传输数据W中随机截取预订长度k的数据W’,再以数据W’为种子产生一个随机数r,以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;然后在存储公钥私钥的数据库中随机选择p对公钥和私钥,即公钥Ei和私钥Ri,1≤i≤p;最后用公钥Ei循环编码W,得到加密结果Z。
基于数据库获得公钥和私钥加密数据的方法中,还可以进一步通过自学习方式积累每次数据传输过程中生成的公钥和私钥,即将数据库中不存在的更新的公钥私钥对存储到数据库中。这样,会使加密数据的方法实施例更具应用的灵活性。
Claims (10)
1.一种加密数据的方法,其特征在于包括:
从传输数据W中随机截取预订长度k的数据W’;
以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;
以数据W’为参数生成公钥Ei和私钥Ri,1≤i≤p;
用公钥Ei循环编码W,得到加密结果Z。
2.根据权利要求1所述的加密数据的方法,其特征在于还包括:
利用滑动窗口技术处理加密结果Z,生成所述Z的引用标签序列,以标签序列作为新的加密结果。
3.根据权利要求1或2所述的加密数据的方法,其特征在于:
比较所述传输数据W的长度和k,当二者相等时,以W作为W’;当W的长度大于k,从W中随机截取k的长度作为W’,当W的长度小于k,向W中补充随机数,使W的长度等于k,将补充随机数后的W作为W’。
4.根据权利要求3所述的加密数据的方法,其特征在于还包括:
预先协商数据传输端点之间的数据处理能力,根据所述处理能力确定C。
5.根据权利要求4所述的加密数据的方法,其特征在于:
以数据W’为参数,利用非线性可逆函数生成公钥Ei和私钥Ri。
6.一种加密数据的装置,包括存储待传输数据W的存储器单元,其特征在于还包括:
随机数单元,从存储器单元取得传输数据W,从W中截取预订长度k的数据W’,以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;
可变动态密钥单元,以数据W’和p为参数生成公钥Ei和私钥Ri,1≤i≤p;
加密编码单元,用公钥Ei循环编码W,得到加密结果Z。
7.一种加密数据的方法,其特征在于包括:
从传输数据W中随机截取预订长度k的数据W’;
以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;
在存储公钥私钥的数据库中随机选择p对公钥和私钥,即公钥Ei和私钥Ri,1≤i≤p;
用公钥Ei循环编码W,得到加密结果Z。
8.一种加密数据的传输方法,其特征在于包括:
从传输数据W中截取预订长度k的数据W’;
以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;
以数据W’为参数生成公钥Ei和私钥Ri,1≤i≤p;
用公钥Ei循环编码W,得到加密结果Z;
将Z与Ri组合成新的传输数据M发送。
9.一种加密数据的传输装置,包括存储待传输数据W的存储器单元,其特征在于还包括:
随机数单元,从存储器单元取得传输数据W,从W中截取预订长度k的数据W’,以数据W’为种子产生一个随机数r,再以r作为种子随机计算密钥的数量p,p∈[1,C),其中C是常数;
可变动态密钥单元,以数据W’和p为参数生成公钥Ei和私钥Ri,1≤i≤p;
加密编码单元,用公钥Ei循环编码W,得到加密结果Z;
加密数据处理单元,将Z与Ri组合成新的传输数据M发送。
10.根据权利要求9所述的加密数据的传输装置,其特征在于还包括与加密数据处理单元连接的标签压缩加密单元;
所述标签压缩加密单元,接收加密数据处理单元的输出结果M,利用滑动窗口技术处理M,生成所述M的引用标签序列,以标签序列作为最后的加密结果发送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100439433A CN102624527A (zh) | 2012-02-26 | 2012-02-26 | 加密数据的方法、装置和加密数据的传输方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100439433A CN102624527A (zh) | 2012-02-26 | 2012-02-26 | 加密数据的方法、装置和加密数据的传输方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102624527A true CN102624527A (zh) | 2012-08-01 |
Family
ID=46564219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012100439433A Pending CN102624527A (zh) | 2012-02-26 | 2012-02-26 | 加密数据的方法、装置和加密数据的传输方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102624527A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338217A (zh) * | 2022-01-04 | 2022-04-12 | 南阳理工学院 | 一种数据加密传输方法 |
CN114679340A (zh) * | 2022-05-27 | 2022-06-28 | 苏州浪潮智能科技有限公司 | 一种文件共享方法、系统、设备及可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101340279A (zh) * | 2008-07-09 | 2009-01-07 | 深圳市金蝶移动互联技术有限公司 | 数据加密及解密方法、系统及设备 |
CN101540673A (zh) * | 2009-04-24 | 2009-09-23 | 武汉大学 | 公钥加解密方法及其数字签名方法 |
US20090323931A1 (en) * | 2002-12-31 | 2009-12-31 | Broadcom Corporation | Data Processing Hash Algorithm and Policy Management |
CN101834724A (zh) * | 2010-04-27 | 2010-09-15 | 武汉大学 | 一种公钥认证加密方法及数字签名方法 |
-
2012
- 2012-02-26 CN CN2012100439433A patent/CN102624527A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090323931A1 (en) * | 2002-12-31 | 2009-12-31 | Broadcom Corporation | Data Processing Hash Algorithm and Policy Management |
CN101340279A (zh) * | 2008-07-09 | 2009-01-07 | 深圳市金蝶移动互联技术有限公司 | 数据加密及解密方法、系统及设备 |
CN101540673A (zh) * | 2009-04-24 | 2009-09-23 | 武汉大学 | 公钥加解密方法及其数字签名方法 |
CN101834724A (zh) * | 2010-04-27 | 2010-09-15 | 武汉大学 | 一种公钥认证加密方法及数字签名方法 |
Non-Patent Citations (1)
Title |
---|
王勇: "基于内容加密的密码体制及其实现", 《计算机工程》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338217A (zh) * | 2022-01-04 | 2022-04-12 | 南阳理工学院 | 一种数据加密传输方法 |
CN114338217B (zh) * | 2022-01-04 | 2023-10-10 | 南阳理工学院 | 一种数据加密传输方法 |
CN114679340A (zh) * | 2022-05-27 | 2022-06-28 | 苏州浪潮智能科技有限公司 | 一种文件共享方法、系统、设备及可读存储介质 |
CN114679340B (zh) * | 2022-05-27 | 2022-08-16 | 苏州浪潮智能科技有限公司 | 一种文件共享方法、系统、设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10560257B2 (en) | Homomorphic encryption | |
Yang et al. | Achieving efficient and privacy-preserving cross-domain big data deduplication in cloud | |
KR102136904B1 (ko) | 공유 비밀키 생성 장치, 암호화 장치, 복호화 장치, 공유 비밀키 생성 방법, 암호화 방법, 복호화 방법, 및 프로그램 | |
NL2013944B1 (en) | Public-key encryption system. | |
US8180048B2 (en) | Method and system for computational transformation | |
Jayapandian et al. | Secure and efficient online data storage and sharing over cloud environment using probabilistic with homomorphic encryption | |
US9037846B2 (en) | Encoded database management system, client and server, natural joining method and program | |
Liang et al. | The hybrid encryption algorithm of lightweight data in cloud storage | |
KR20150073753A (ko) | 정수 기반 준동형 암호 기법에 일반적으로 적용 가능한 압축 암복호화 장치 및 방법 | |
CN105379173A (zh) | 用于共享密码密钥的系统 | |
Ma et al. | A new private information encryption method in internet of things under cloud computing environment | |
CN102546185A (zh) | 加密数据的方法及加密数据的传输装置 | |
He et al. | The keyed optical Hash function based on cascaded phase-truncated Fourier transforms | |
CN102611550A (zh) | 加密数据的方法和加密数据的传输方法 | |
Li et al. | Fully homomorphic encryption with table lookup for privacy-preserving smart grid | |
KR101129335B1 (ko) | 데이터 분산 저장 및 복원 방법 및 그 장치 | |
CN111798236B (zh) | 交易数据加、解密方法、装置及设备 | |
EP3959841B1 (en) | Compression and oblivious expansion of rlwe ciphertexts | |
CN102624527A (zh) | 加密数据的方法、装置和加密数据的传输方法及装置 | |
KR100951034B1 (ko) | 암호문 크기를 줄이기 위한 공개키 기반의 검색가능암호문생성 방법과, 그에 따른 공개키 기반의 데이터 검색 방법 | |
CN115883212A (zh) | 信息处理方法、装置、电子设备和存储介质 | |
Kapoor | Data encryption and decryption using modified RSA cryptography based on multiple public keys and ‘n’prime number | |
Vo-Huu et al. | EPiC: efficient privacy-preserving counting for MapReduce | |
Harjito et al. | Comparative Analysis between Elgamal and NTRU Algorithms and their implementation of Digital Signature for Electronic Certificate | |
Siva et al. | Hybrid cryptography security in public cloud using TwoFish and ECC algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120801 |