买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】对实时数据采集系统的数据进行加密解密的方法以及系统_唐山智能电子有限公司_201810548763.8 

申请/专利权人:唐山智能电子有限公司

申请日:2018-05-31

公开(公告)日:2021-04-13

公开(公告)号:CN108848073B

主分类号:H04L29/06(20060101)

分类号:H04L29/06(20060101);H04L9/30(20060101);H04L9/08(20060101);H04L9/06(20060101)

优先权:

专利状态码:有效-授权

法律状态:2021.04.13#授权;2018.12.14#实质审查的生效;2018.11.20#公开

摘要:本发明提供一种对实时数据采集系统的数据加密解密的方法以及系统,所述方法通过DES算法将实时数据采集系统的数据分成64位大小的块,用16位密钥重叠组成64位的密钥来加密每个64位的数据块,但在数据打包传输时只对16位密钥进行再加密并和加密的数据一起打包传送,极大地提高了加密运算的速度,不仅满足数据实时采集系统的数据实时性需求,且满足对处理器速度、功耗和稳定性的要求,有效节省了系统内存和处理时间。本发明通过对标准加密算法进行改良,实现简单,能够应用在绝大多数ARM硬件平台和全部DSP硬件上,所述方法和系统除了用于基于无线物联网的实时采集的数据加密保护,还可用于其他有实时性要求的数据加密保护场合。

主权项:1.一种对实时数据采集系统的数据进行加密的方法,其特征在于,所述方法包括:选择一个14位随机数,并按照从左至右的顺序在所述14位随机数的第7位和第14位之后分别添加1个奇偶检验位以生成16位短密钥kE,重叠使用4个短秘钥kE组成64位DES密钥,其中所述64位密钥中数的数位号按照从左至右的顺序依次是1至64号;去掉所述64位DES密钥中的奇偶校验位,按照第一变换表进行换位以生成56位的密钥,并将56位的密钥分解为两个28位的C[0]和D[0],其中所述第一变换表是8行7列的表格;对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥K[I],其中所述第二变换表是6行8列的表格,1≤I≤m;将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块,其中所述第三变换表是8行8列的表格;针对每个新的64位数据块,将所述数据块分解为两个32位的L[0]和R[0];对所述L[0]和R[0],采用m个子密钥对其进行加密以生成加密数据;对使用4个短秘钥kE组成的64位DES密钥进行加密,并将加密的DES密钥和实时数据采集系统经过DES算法加密的数据传输至服务器,其中:实时安全数据采集系统根据自身的处理能力,确定密钥的长度并向服务器申请加密参数,以及将服务器传输的加密参数进行保存,其中,所述传输的加密参数包括根据实时安全数据采集系统请求的长度确定的椭圆曲线Ep(a,b)的参数p、a、b,椭圆曲线Ep(a,b)上的基点G、基点G的阶n以及根据实时安全数据采集系统自身的私钥k和基点G确定的公钥K,其中,K=kG;将所述16位DES短密钥kE编码到椭圆曲线Ep(a,b)上的一点ME,并根据点ME、公钥K和生成的随机数r计算点C1和C2,所述计算点C1和C2的公式为: C1=ME+rK C2=rG式中,ME=(xE,yE),其x坐标为DES短密钥kE转换成的十进制或者十六进制的数值,y坐标为由椭圆曲线参数的方程y2=x3+ax+b计算得到的正整数,r为随机数,且r∈[1,n-1],n为所述椭圆曲线上基点G的阶;实时数据采集系统将点C1和C2的值和所述加密数据打包传输给服务器。

全文数据:对实时数据采集系统的数据进行加密解密的方法以及系统技术领域[0001]本发明涉及数据采集和信息安全领域,并且更具体地,涉及一种对实时数据采集系统的数据进行加密解密的方法以及系统。背景技术[0002]工业现场的数据采集一直以来都是基于现场总线技术实现,基于安全考虑无法应用物联网技术。目前,有很多加密算法,但可用于数据加密的算法如ECC、RC、AES、IDEA、DES、3DES、RSA、SHA等,由于受嵌入式处理器运算速度的限制,均无法满足实时采集并加密的要求。[0003]因此,需要一种满足实时采集数据的过程中快速对采集的数据进行加密解密的方法和系统,。发明内容[0004]为了解决现有技术存在的无法满足在工业现场实时采集数据并对其快速加密解密的技术问题,本发明提供一种对实时数据采集系统的数据进行加密的方法,所述方法包括:[0005]选择一个14位随机数,并按照从左至右的顺序在所述14位随机数的第7位和第14位之后分别添加1个奇偶检验位以生成16位短密钥kE,重叠使用4个短秘钥kE组成64位DES密钥,其中所述64位密钥中数的数位号按照从左至右的顺序依次是1至64号;[0006]去掉所述64位DES密钥中的奇偶校验位,按照第一变换表进行换位以生成56位的密钥,并将56位的密钥分解为两个28位的C[0]和D[0],其中所述第一变换表是8行7列的表格;[0007]对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥K[I],其中所述第二变换表是6行8列的表格,[0008]将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块,其中所述第三变换表是8行8列的表格;[0009]针对每个新的64位数据块,将所述数据块分解为两个32位的L[0]和R[0];[0010]对所述L[0]和R[0],采用m个子密钥对其进行加密以生成加密数据。[0011]进一步地,对所述64位DES密钥按照第一变换表进行换位以生成56位的密钥是指将64位DES密钥中的奇偶校验位舍弃,然后按照第一变换表中标注的数位号将剩余的56位的密钥按照其原来为64位DES密钥时的数位填入第一变换表中。[0012]进一步地,所述将56位的密钥分解为两个28位的C[0]和D[0]是指将56位密钥的1至28位作为C[0],将29至56位作为D[0]。[0013]进一步地,所述m的值是16。[0014]进一步地,对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥K[Π包括:[0015]按照迭代位移表中迭代次数对应的左移位数将C[I-1]和D[1-1]向左移动以生成C[I]和D[I],其中,所述I的初始值是[0016]将每次迭代后生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],按照第二变换表标注的数位号,将C[I]D[I]组成的56位数中对应数位号的数填入第二变换表中得到的48位数据即为子密钥K[I]。[0017]进一步地,将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块包括:[0018]将实时数据采集系统的数据分割成若干个64位的数据块,当最后一个数据块的数据长度不足64位时,将其扩展为64位;[0019]按照第三变换表标注的数位号,将每个64位数据块中对应数位号的数填入第三变换表中。[0020]进一步地,针对每个新的64位数据块,将所述数据块分解为两个32位的L[0]和R[0]是指将64位数据块的1至32位作为L[0],将33至64位作为R[0]。[0021]进一步地,对所述L[0]和R[0],采用m个子密钥对其进行加密以生成加密数据包括:[0022]按照第四变换表标注的数位号,将R[I-1]中对应数位号的数填入第四变换表中,生成新的48位数据E[I-1],其中所述I的初始值是I,IISm,其中所述第四变换表是6行8列的表格;[0023]异或E[I_1]和K[I],并将所述异或的结果按照从左到右的顺序分为8个6位的数据B[J],其中J的初始值是1,1彡J彡8;[0024]将B[J]的第1位和第6位组合为一个2位长度的变量M,将所述变量M作为设置的S[J]表中的行号;[0025]将B[J]的第2位到第5位组合为一个4位长度的变量N,将所述变量N作为设置的S[J]表中的列号;[0026]根据所述S[J]表的行号和列号选择对应的数值,并将所选择行号和列号对应的十进制数值变换为四位长度的二进制数,以及用S[J][Μ][N]来取代B[J];[0027]按B[1]至B[8]的顺序将其组合为一个32位数据,并按照第五变换表标注的数位号,将所述32位数中对应数位号的数填入第五变换表中,生成新的32位数据P[I],其中所述第五变换表是4行8列的表格;[0028]异或Ρ[Π和UI-1],并将异或的结果作为RD],将R[I_1]作为UI];[0029]将R[m]和L[m]按照从R[m]到L[m]的顺序组合成一个整体R[m]L[m],按照第六变换表标注的数位号,将R[m]L[m]中对应数位号的数填入第六变换表中,得到64位数据块的加密结果,其中所述第六变换表是8行8列的表格。[0030]进一步地,所述方法还包括对使用4个短秘钥kE组成的64位DES密钥进行加密,并将加密的DES密钥和实时数据采集系统经过DES算法加密的数据传输至服务器,其中:[0031]实时安全数据采集系统根据自身的处理能力,确定密钥的长度并向服务器申请加密参数,以及将服务器传输的加密参数进行保存,其中,所述传输的加密参数包括根据实时安全数据采集系统请求的长度确定的椭圆曲线Epa,b的参数p、a、b,椭圆曲线Epa,b上的基点G、基点G的阶η以及根据实时安全数据采集系统自身的私钥k和基点G确定的公钥K,其中,K=kG;[0032]将生成的16位DES短密钥kE编码到椭圆曲线Epa,b上的一点Me,并根据点Me、公钥K和生成的随机数r计算点和:2;[0033]实时数据采集系统将点和的值和经过加密的数据打包传输给服务器。[0034]进一步地,确定椭圆曲线的参数包括:[0035]选择确定椭圆曲线参数的方程y2=x3+ax+b;[0036]按照实时安全数据采集系统申请的密钥长度选取一个大于3的素数,并赋值给p,然后选择小于P-I的非负整数a;[0037]按满足式4a3+27b2modp乒0的条件确定b。[0038]进一步地,所述确定的a、b的值是[0,ρ-1]中的整数。[0039]进一步地,所述确定的椭圆曲线上的基点Gx,y=xc,yc,其中,所述Xg和yc是小于P-I的非负整数,且不能选择无穷远点作为基点,如下式所示:[0041]进一步地,计算所述椭圆曲线的基点G的阶η的公式为:[0042]nG=〇〇〇[0043]式中,η是基点G=XG,yceEFp的阶,η必须是素数,并且满足pYlmodn,其中Kt30,以及p#nh,其中h是余因子h=#EFpη。[0044]进一步地,所述根据点Me、公钥K和生成的随机数r计算点和:2的公式为:[0047]式中,Me=XE,yE,其X坐标为DES短密钥kE转换成的十进制或者十六进制的数值,Y坐标为由椭圆曲线参数的方程y2=x3+ax+b计算得到的正整数,r为随机数,且re[l,n-l],η为所述椭圆曲线上基点G的阶。[0048]根据本发明的另一方面,本发明提供一种对加密的实时数据采集系统的数据进行解密的方法,所述方法包括:[0049]服务器接收实时数据采集系统发送的数据包,其中,所述数据包包括点CjPC2的值和经过DES算法加密的数据;[0050]服务器按照公式ME=Cl-kC2计算得到编码到椭圆曲线Epa,b上的16位短密钥Me,式中,k为私钥,ke[l,n-2],n为所述椭圆曲线上基点G的阶;[0051]将所述短密钥Me按照编码时的方法逆向解码得到16位的DES短密钥kE;[0052]重叠使用4个短密钥kE组成64位DES密钥,并采用与加密过程相同的运算,进行解密运算,运算过程中子密钥K[I]的顺序与加密时相反,S卩加密时子密钥顺序是K[1]K[2]···![16],解密时子密钥顺序改为K[16]K[15]-KMK[1]。[0053]根据本发明的另一方面,本发明提供一种对实时数据采集系统的数据进行加密的系统,所述系统包括:[0054]第一密钥生成单元,其用于选择一个14位随机数,并按照从左至右的顺序在所述14位随机数的第7位和第14位之后分别添加1个奇偶检验位以生成16位短密钥kE,重叠使用4个短秘钥kE组成64位DES密钥,其中所述64位密钥中数的数位号按照从左至右的顺序依次是1至64号;[0055]第二密钥生成单元,其用于去掉所述64位DES密钥中的奇偶校验位,按照第一变换表进行换位以生成56位的密钥,并将56位的密钥分解为两个28位的C[0]和D[0],其中所述第一变换表是8行7列的表格;[0056]子密钥生成单元,其用于对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥K[Π,其中所述第二变换表是6行8列的表格,IISm;[0057]数据块生成单元,其用于将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块,其中所述第三变换表是8行8列的表格;[0058]数据块分解单元,其用于针对每个新的64位数据块,将所述数据块分解为两个32位的L[0]和R[0];[0059]加密数据生成单元,其用于对所述L[0]和R[0],采用m个子密钥对其进行加密以生成加密数据。[0060]进一步地,所述第二密钥单元用于将64位DES密钥中的奇偶校验位舍弃,然后按照第一变换表中标注的数位号将剩余的56位的密钥按照其原来为64位DES密钥时的数位填入第一变换表中。[0061]进一步地,所述第二密钥单元还用于将56位密钥的1至28位作为C[0],将29至56位作为D[0]。[0062]进一步地,所述子密钥生成单元为迭代次数m赋的值是16。[0063]进一步地,其特征在于,子密钥生成单元对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥Κ[Π包括:[0064]按照迭代位移表中迭代次数对应的左移位数将C[I_1]和D[1-1]向左移动以生成C[I]和D[I],其中,所述I的初始值是[0065]将每次迭代后生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],按照第二变换表标注的数位号,将C[I]D[I]组成的56位数中对应数位号的数填入第二变换表中得到的48位数据即为子密钥K[I]。[0066]进一步地,数据块生成单元将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块包括:[0067]将实时数据采集系统的数据分割成若干个64位的数据块,当最后一个数据块的长度不足64位时,将其扩展为64位;[0068]按照第三变换表标注的数位号,将每个64位数据块中对应数位号的数填入第三变换表中。[0069]进一步地,数据块分解单元针对每个新的64位数据块,将所述数据块分解为两个32位的L[0]和R[0]是指将64位数据块的1至32位作为L[0],将33至64位作为R[0]。[0070]进一步地,加密数据生成单元包括:[0071]第一数据生成单元,其用于按照第四变换表标注的数位号,将R[I-1]中对应数位号的数填入第四变换表中,生成新的48位数据E[I-1],其中所述I的初始值是I[0072]第二数据生成单元,其用于异或E[I_1]和K[I],并将所述异或的结果按照从左到右的顺序分为8个6位的数据B[J],其中J的初始值是1,1J8;[0073]行号确定单元,其用于将B[J]的第1位和第6位组合为一个2位长度的变量M,将所述变量M作为设置的S[J]表中的行号;[0074]列号确定单元,其用于将B[J]的第2位到第5位组合为一个4位长度的变量N,将所述变量N作为设置的S[J]表中的列号;[0075]第三数据生成单元,其用于根据所述S[J]表的行号和列号选择对应的数值,并将所选择的十进制数值变换为四位长度的二进制数,以及用S[J][Μ][N]来取代B[J];[0076]第四数据生成单元,其用于按B[l]至B[8]的顺序将其组合为一个32位数据,并按照第五变换表标注的数位号,将所述32位数中对应数位号的数填入第五变换表中,生成新的32位数据Ρ[Π,其中所述第五变换表是4行8列的表格;[0077]第五数据生成单元,其用于异或Ρ[Ι]和L[I_1],并将异或的结果作为R[I],将R[I_1]作为L[I];[0078]第六数据生成单元,其用于将R[m]和L[m]按照从R[m]到L[m]的顺序组合成一个整体R[m]L[m],按照第六变换表标注的数位号,将R[m]L[m]中对应数位号的数填入第六变换表中,得到64位数据块的加密结果,其中所述第六变换表是8行8列的表格。[0079]进一步地,所述系统还包括密钥参数生成单元、密钥编码单元和传输单元,其中:[0080]密钥参数生成单元,其用于根据实时安全数据采集系统自身的处理能力,确定密钥的长度并向服务器申请加密参数,将服务器传输的加密参数进行保存,其中,所述传输的加密参数包括根据实时安全数据采集系统请求的长度确定的椭圆曲线Epa,b的参数p、a、b,椭圆曲线Epa,b上的基点G、基点G的阶η以及服务器根据实时安全数据采集系统申请的密钥长度确定的私钥k和基点G和基点G确定的公钥K,K=kG;[0081]密钥编码单元,其用于将生成的16位DES短密钥kE编码到椭圆曲线Epa,b上的一点Me,并根据点施、公钥K和生成的随机数r计算点CjPC2;[0082]传输单元,其用于将点和的值和经过加密的数据打包传输给服务器。[0083]进一步地,确定椭圆曲线的参数包括:[0084]选择确定椭圆曲线参数的方程y2=x3+ax+b;[0085]按照实时安全数据采集系统申请的密钥长度选取一个大于3的素数,并赋值给p,然后选择小于P-I的非负整数a;[0086]按满足式4a3+27b2modp乒0的条件确定b。[0087]进一步地,所述确定的a、b的值是[0,ρ-1]中的整数。[0088]进一步地,所述确定的椭圆曲线上的基点Gx,y=xc,yc,其中,所述Xg和yc是小于P-I的非负整数,且不能选择无穷远点作为基点,如下式所示:[0090]进一步地,计算所述椭圆曲线的基点G的阶η的公式为:[0091]nG=0°°[0092]式中,η是基点G=XG,yceEFp的阶,η必须是素数,并且满足pYlmodn,其中Kt30,以及p#nh,其中h是余因子h=#EFpη。[0093]进一步地,所述根据点Me、公钥K和生成的随机数r计算点和:2的公式为:[0096]式中,Me=XE,yE,其X坐标为DES短密钥kE转换成的十进制或者十六进制的数值,Y坐标为由椭圆曲线参数的方程y2=x3+ax+b计算得到的正整数,r为随机数,且re[l,n-l],η为所述椭圆曲线上基点G的阶。[0097]根据本发明的另一方面,本发明还提供一种对加密的实时数据采集系统的数据进行解密的系统,所述系统包括:[0098]数据接收单元,其用于接收实时数据采集系统发送的数据包,其中,所述数据包包括点CjPC2的值和经过DES算法加密的数据;[00"]第一短密钥确定单元,其用于按照公式ME=Cl-kC2计算得到编码到椭圆曲线Epa,b上的16位第一短密钥施,式中,k为私钥,ke[l,n-2],n为所述椭圆曲线上基点G的阶;[0100]第二短密钥确定单元,其用于将所述第一短密钥Me按照编码时的方法逆向解码得到16位的第二短密钥kE;[0101]解密单元,其用于重叠使用4个短密钥kE组成64位DES密钥,并采用与所述加密过程相同的运算,进行解密运算,运算过程中子密钥K[I]的顺序与加密时相反,即加密时子密钥顺序是K[1]K[2]···![16],解密时子密钥顺序改为K[16]K[15]-KMK[1]。[0102]本发明所提供的技术方案通过DES算法将实时数据采集系统的数据分成64位大小的块,用16位密钥重叠组成64位的密钥来加密每个64位的数据块,但在数据打包传输时只对16位密钥进行再加密并打包传送,极大地提高了加密运算的速度,不仅满足数据实时采集系统的数据实时加密的需求,且满足对处理器速度、功耗和稳定性的要求,有效节省了系统内存和处理时间。本发明通过对标准加密算法进行改良,实现简单,能够应用在绝大多数ARM硬件平台和全部DSP硬件上,所述方法和系统除了用于基于无线物联网的实时采集的数据的加密保护,还可用于其他有实时性要求的数据加密保护场合。附图说明[0103]通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:[0104]图1为根据本发明优选实施方式的对实时数据采集系统的数据加密的方法的流程图;[0105]图2为根据本发明优选实施方式的对实时数据采集系统的数据解密的方法的流程图;[0106]图3为根据本发明优选实施方式的对实时数据采集系统的数据加密的系统的结构图;[0107]图4为根据本发明优选实施方式的对实时数据采集系统的数据解密的系统的结构图。具体实施方式[0108]现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元元件使用相同的附图标记。[0109]除非另有说明,此处使用的术语包括科技术语对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。[0110]图1为根据本发明优选实施方式的对实时数据采集系统的数据加密的方法的流程图。如图1所示,本优选实施方式所述的对实时数据采集系统的数据进行加密的方法100从步骤101开始。[0111]在步骤101,选择一个14位随机数,并按照从左至右的顺序在所述14位随机数的第7位和第14位之后分别添加1个奇偶检验位以生成16位短密钥kE,重叠使用4个短秘钥kE组成64位DES密钥,其中所述64位密钥中数的数位号按照从左至右的顺序依次是1至64号。[0112]在本优选实施方式中,设14位的随机数为klk2k3k4…kl4,每7位再生成一个奇偶校验位放置于K8和K16位置构成16位的短秘钥kE=klk2k3k4…kl5kl6。重叠使用4个短秘钥kE组成64位DES秘钥。[0113]在步骤102,去掉所述64位DES密钥中的奇偶校验位,按照第一变换表进行换位以生成56位的密钥,并将56位的密钥分解为两个28位的C[0]和D[0],其中所述第一变换表是8行7列的表格。[0114]优选地,对所述64位DES密钥按照第一变换表进行换位以生成56位的密钥是指将64位DES密钥中的奇偶校验位舍弃,然后按照第一变换表中标注的数位号将剩余的56位的密钥按照其原来为64位DES密钥时的数位填入第一变换表中。[0115]优选地,所述将56位的密钥分解为两个28位的C[0]和D[0]是指将56位密钥的1至28位作为C[0],将29至56位作为D[0]。[0116]在本优选实施例中,所述第一变换表如表1所不。[0117]表1[0119]从表1可以看出,所述表格中没有64位DES密钥中的奇偶位,即第8、16、24、32、40、48、56和64位,故将剩余的56位的密钥按照其原来为64位DES密钥时的数位填入表1中即可得到变换后的56位密钥。将所述变换后的密钥分解,即可得到1至28位的C[0]和29至56位的D[0][0120]在步骤103,对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥K[Π,其中所述第二变换表是6行8列的表格,IIm。[0121]优选地,所述m的值是16。[0122]优选地,对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥K[Π包括:[0123]按照迭代位移表中迭代次数对应的左移位数将C[I_1]和D[1-1]向左移动以生成C[I]和D[I],其中,所述I的初始值是l,lIm。[0124]将每次迭代后生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],按照第二变换表标注的数位号,将C[I]D[I]组成的56位数中对应数位号的数填入第二变换表中得到的48位数据即为子密钥K[I]。[0125]在本优选实施方式中,迭代位移表如表2所示,第二变换表如表3所示。[0131]令I=1,则根据表2所示,在第1次迭代时,将C[0]和D[0]向左移1位生成C[1]和D[1]。将C[l]和D[l]组成一个整体C[1]D[1]。[0132]将C[1]D[1]组成的56位密钥中的数按照其对应的数位号填入表3中进行变换,则得到48位的子密钥K[1],循环执行上述步骤即可得到16个48位的子密钥。[0133]在步骤104,将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块,其中所述第三变换表是8行8列的表格。[0134]优选地,将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块包括:[0135]将实时数据采集系统的数据分割成若干个64位的数据块,当最后一个数据块的数据长度不足64位时,将其扩展为64位;[0136]按照第三变换表标注的数位号,将每个64位数据块中对应数位号的数填入第三变换表中。[0137]在本优选实施方式中,所述第三变换表如表4所示。将实时数据采集系统的数据分割成若干个64位的块,当最后一个数据块的数据长度不足64位时,通过补零的方式将其扩展为64位。并按照表4中标注的数位号,将每个64位数据块中对应数位号的数填入表4中。[0138]在步骤105,针对每个新的64位数据块,将所述数据块分解为两个32位的L[0]和R[0]。[0139]优选地,针对每个新的64位数据块,将所述数据块分解为两个32位的L[0]和R[0]是指将64位数据块的1至32位作为L[0],将33至64位作为R[0]。[0140]在步骤106,对所述L[0]和R[0],采用m个子密钥对其进行加密以生成加密数据。[0141]优选地,对所述L[0]和R[0],采用m个子密钥对其进行加密以生成加密数据包括:[0142]按照第四变换表标注的数位号,将R[I-1]中对应数位号的数填入第四变换表中,生成新的48位数据E[I-1],其中所述I的初始值是I,IISm,其中所述第四变换表是6行8列的表格;[0M3]异或E[I_1]和K[I],并将所述异或的结果按照从左到右的顺序分为8个6位的数据B[J],其中J的初始值是1,1彡J彡8;[0144]将B[J]的第1位和第6位组合为一个2位长度的变量M,将所述变量M作为设置的S[J]表中的行号;[0145]将B[J]的第2位到第5位组合为一个4位长度的变量N,将所述变量N作为设置的S[J]表中的列号;[0146]根据所述S[J]表的行号和列号选择对应的数值,并将所选择行号和列号对应的十进制数值变换为四位长度的二进制数,以及用S[J][Μ][N]来取代B[J];[0147]按B[1]至B[8]的顺序将其组合为一个32位数据,并按照第五变换表标注的数位号,将所述32位数中对应数位号的数填入第五变换表中,生成新的32位数据P[I],其中所述第五变换表是4行8列的表格;[0M8]异或Ρ[Π和UI-1],并将异或的结果作为RD],将R[I_1]作为UI];[0149]将R[m]和L[m]按照从R[m]到L[m]的顺序组合成一个整体R[m]L[m],按照第六变换表标注的数位号,将R[m]L[m]中对应数位号的数填入第六变换表中,得到64位数据块的加密结果,其中所述第六变换表是8行8列的表格。[0150]在本优选实施方式中,第四变换表如表5所示。[0151]表5[0154]令I=I,按照表5标注的数位号,将R[0]中对应数位号的数填入表5中,生成新的48位数据E[0];[0155]异或E[0]和K[l],并将所述异或的结果按照从左到右的顺序分为8个6位的数据B[J],1J8,即第1位到第6位称为B[l],第7位到第12位称为Β[2],依此类推,第43位到第48位称为B[8];[0156]令与B[J]对应的表S[J]分别如表6至13所示;[0173将B[J]的第1位和第6位组合为一个2位长度的变量M,将所述变量M作为设置的S[J]表中的行号;[0174]将B[J]的第2位到第5位组合为一个4位长度的变量N,将所述变量N作为设置的S[J]表中的列号;[0175]根据所述S[J]表的行号和列号选择对应的数值,并将所选择行号和列号对应的十进制数值变换为四位长度的二进制数,以及用S[J][Μ][N]来取代B[J]。[0176]本优选实施方式中,第五变换表如表14所示。[0177]表14[0180]求出B[1]至B[8]后,按B[1]至B[8]的顺序将其组合为一个32位数据,并按照表14标注的数位号,将所述32位数中对应数位号的数填入表14中,生成新的32位数据P[1],其中所述第五变换表是4行8列的表格;[0181]异或P[l]和L[0],并将异或的结果作为R[l],将R[0]作为L[l];[0182]将求取R[l]和L[l]的步骤重复执行得到R[16]和L[16],将R[16]和L[16]按照从R[16]到L[16]的顺序组合成一个整体R[16]L[16]。[0183]在优选实施方式中,第六变换表如表15所不。[0184]表15T〇186]^将R[16]L[16]按照表15标注的数位号,将R[16]L[16]中对应数位号的数填入表15中,得到64位数据块的加密结果。[0187]在步骤107,对使用4个短秘钥kE组成的64位DES密钥进行加密,并将加密的DES密钥和实时数据采集系统经过DES算法加密的数据传输至服务器。[0188]优选地,所述对使用4个短秘钥kE组成的64位DES密钥进行加密,并将加密的DES密钥和实时数据采集系统经过DES算法加密的数据传输至服务器包括:[0189]实时安全数据采集系统根据自身的处理能力,确定密钥的长度并向服务器申请加密参数,以及将服务器传输的加密参数进行保存,其中,所述传输的加密参数包括根据实时安全数据采集系统请求的长度确定的椭圆曲线Epa,b的参数p、a、b,椭圆曲线Epa,b上的基点G、基点G的阶η以及根据实时安全数据采集系统自身的私钥k和基点G确定的公钥K,其中,K=kG;[0190]将生成的16位DES短密钥kE编码到椭圆曲线Epa,b上的一点Me,并根据点Me、公钥K和生成的随机数r计算点和:2;[0191]实时数据采集系统将点和的值和经过加密的数据打包传输给服务器。[0192]优选地,确定椭圆曲线的参数包括:[0193]选择确定椭圆曲线参数的方程y2=x3+ax+b;[0194]按照实时安全数据采集系统申请的密钥长度选取一个大于3的素数,并赋值给p,然后选择小于P-I的非负整数a;[0195]按满足式4a3+27b2modp乒0的条件确定b。[0196]优选地,所述确定的a、b的值是[0,ρ-1]中的整数。[0197]优选地,所述确定的椭圆曲线上的基点Gx,y=xc,yc,其中,所述Xc和yc是小于P-I的非负整数,且不能选择无穷远点作为基点,如下式所示:[0199]优选地,计算所述椭圆曲线的基点G的阶η的公式为:[0200]nG=〇〇〇[0201]式中,η是基点G=XG,yceEFp的阶,η必须是素数,并且满足pYlmodn,其中Kt30,以及p#nh,其中h是余因子h=#EFpη。[0202]优选地,所述根据点Me、公钥K和生成的随机数r计算点和:2的公式为:[0205]式中,Me=XE,yE,其X坐标为DES短密钥kE转换成的十进制或者十六进制的数值,Y坐标为由椭圆曲线参数的方程y2=x3+ax+b计算得到的正整数,r为随机数,且re[l,n-l],η为所述椭圆曲线上基点G的阶。[0206]图2为根据本发明优选实施方式的对实时数据采集系统的数据解密的方法的流程图。如图2所示,本发明所述的对加密的实时数据采集系统的数据进行解密的方法200从步骤201开始。[0207]在步骤201,服务器接收实时数据采集系统发送的数据包,其中,所述数据包包括点CjPC2的值和经过DES算法加密的数据;[0208]在步骤202,服务器按照公式ME=Cl-kC2计算得到编码到椭圆曲线Epa,b上的16位短密钥Me,式中,k为私钥,ke[l,n-2],n为所述椭圆曲线上基点G的阶;[0209]在步骤203,将所述短密钥Me按照编码时的方法逆向解码得到16位的DES短密钥kE;[0210]在步骤204,重叠使用4个短密钥kE组成64位DES密钥,并采用与加密过程相同的运算,进行解密运算,运算过程中子密钥K[I]的顺序与加密时相反,即加密时子密钥顺序是K[1]1[2]—1[16],解密时子密钥顺序改为1[16]1[15]—1[2]1[1]。[0211]图3为根据本发明优选实施方式的对实时数据采集系统的数据加密的系统的结构图。如图3所示,本发明所述对实时数据采集系统的数据进行加密的系统300包括:[0212]第一密钥生成单元301,其用于选择一个14位随机数,并按照从左至右的顺序在所述14位随机数的第7位和第14位之后分别添加1个奇偶检验位以生成16位短密钥kE,重叠使用4个短秘钥kE组成64位DES密钥,其中所述64位密钥中数的数位号按照从左至右的顺序依次是1至64号;[0213]第二密钥生成单元302,其用于去掉所述64位DES密钥中的奇偶校验位,按照第一变换表进行换位以生成56位的密钥,并将56位的密钥分解为两个28位的C[0]和D[0],其中所述第一变换表是8行7列的表格;[0214]子密钥生成单元303,其用于对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥K[Π,其中所述第二变换表是6行8列的表格,IISm;[0215]数据块生成单元304,其用于将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块,其中所述第三变换表是8行8列的表格;[0216]数据块分解单元305,其用于针对每个新的64位数据块,将所述数据块分解为两个32位的L[0]和R[0];[0217]加密数据生成单元306,其用于对所述L[0]和R[0],采用m个子密钥对其进行加密以生成加密数据;[0218]密钥参数生成单元307,其用于根据实时安全数据采集系统自身的处理能力,确定密钥的长度并向服务器申请加密参数,将服务器传输的加密参数进行保存,其中,所述传输的加密参数包括根据实时安全数据采集系统请求的长度确定的椭圆曲线Epa,b的参数p、a、b,椭圆曲线Epa,b上的基点G、基点G的阶η以及服务器根据实时安全数据采集系统申请的密钥长度确定的私钥k和基点G确定的公钥K,K=kG;[0219]密钥编码单元308,其用于将生成的16位DES短密钥kE编码到椭圆曲线Epa,b上的一点施,并根据点施、公钥K和生成的随机数r计算点CjPC2;[0220]传输单元309,其用于将点和的值和经过加密的数据打包传输给服务器。[0221]优选地,所述第二密钥单元301用于将64位DES密钥中的奇偶校验位舍弃,然后按照第一变换表中标注的数位号将剩余的56位的密钥按照其原来为64位DES密钥时的数位填入第一变换表中。[0222]优选地,所述第二密钥单元302还用于将56位密钥的1至28位作为C[0],将29至56位作为D[0]。[0223]优选地,所述子密钥生成单元303为迭代次数m赋的值是16。[0224]优选地,其特征在于,子密钥生成单元303对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥Κ[Π包括:[0225]按照迭代位移表中迭代次数对应的左移位数将C[I_1]和D[1-1]向左移动以生成C[I]和D[I],其中,所述I的初始值是[0226]将每次迭代后生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],按照第二变换表标注的数位号,将C[I]D[I]组成的56位数中对应数位号的数填入第二变换表中得到的48位数据即为子密钥K[I]。[0227]优选地,数据块生成单元将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块包括:[0228]将实时数据采集系统的数据分割成若干个64位的数据块,当最后一个数据块的长度不足64位时,将其扩展为64位;[0229]按照第三变换表标注的数位号,将每个64位数据块中对应数位号的数填入第三变换表中。[0230]优选地,数据块分解单元305针对每个新的64位数据块,将所述数据块分解为两个32位的L[0]和R[0]是指将64位数据块的1至32位作为L[0],将33至64位作为R[0]。[0231]优选地,加密数据生成单元306包括:[0232]第一数据生成单元361,其用于按照第四变换表标注的数位号,将R[I_1]中对应数位号的数填入第四变换表中,生成新的48位数据E[I-1],其中所述I的初始值是I[0233]第二数据生成单元362,其用于异或E[I_1]和K[I],并将所述异或的结果按照从左到右的顺序分为8个6位的数据B[J],其中J的初始值是1,1J8;[0234]行号确定单元363,其用于将B[J]的第1位和第6位组合为一个2位长度的变量M,将所述变量M作为设置的S[J]表中的行号;[0235]列号确定单元364,其用于将B[J]的第2位到第5位组合为一个4位长度的变量N,将所述变量N作为设置的S[J]表中的列号;[0236]第三数据生成单元365,其用于根据所述S[J]表的行号和列号选择对应的数值,并将所选择的十进制数值变换为四位长度的二进制数,以及用S[J][Μ][N]来取代B[J];[0237]第四数据生成单元366,其用于按B[1]至B[8]的顺序将其组合为一个32位数据,并按照第五变换表标注的数位号,将所述32位数中对应数位号的数填入第五变换表中,生成新的32位数据Ρ[Π,其中所述第五变换表是4行8列的表格;[0238]第五数据生成单元367,其用于异或P[I]和L[1-1],并将异或的结果作为R[I],将R[1-1]作为UI];[0239]第六数据生成单元368,其用于将R[m]和L[m]按照从R[m]到L[m]的顺序组合成一个整体R[m]L[m],按照第六变换表标注的数位号,将R[m]L[m]中对应数位号的数填入第六变换表中,得到64位数据块的加密结果,其中所述第六变换表是8行8列的表格。[0240]优选地,确定椭圆曲线的参数包括:[0241]选择确定椭圆曲线参数的方程y2=x3+ax+b;[0242]按照实时安全数据采集系统申请的密钥长度选取一个大于3的素数,并赋值给p,然后选择小于P-I的非负整数a;[0243]按满足式4a3+27b2modp乒0的条件确定b。[0244]优选地,所述确定的a、b的值是[0,ρ-1]中的整数。[0245]优选地,所述确定的椭圆曲线上的基点Gx,y=xc,yc,其中,所述Xg和yc是小于P-I的非负整数,且不能选择无穷远点作为基点,如下式所示:[0247]优选地,计算所述椭圆曲线的基点G的阶η的公式为:[0248]nG=〇〇〇[0249]式中,η是基点G=xc,yceEFp的阶,η必须是素数,并且满足pYlmodn,其中Kt30,以及p#nh,其中h是余因子h=#EFpη。[0250]优选地,所述根据点Me、公钥K和生成的随机数r计算点和:2的公式为:[0253]式中,Me=XE,yE,其X坐标为DES短密钥kE转换成的十进制或者十六进制的数值,Y坐标为由椭圆曲线参数的方程y2=x3+ax+b计算得到的正整数,r为随机数,且re[l,n-l],η为所述椭圆曲线上基点G的阶。[0254]图4为根据本发明优选实施方式的对实时数据采集系统的数据解密的系统的结构图。如图4所示,本优选实施方式所述的对加密的实时数据采集系统的数据进行解密的系统400包括:[0255]数据接收单元401,其用于接收实时数据采集系统发送的数据包,其中,所述数据包包括点和:2的值和经过DES算法加密的数据;[0256]第一短密钥确定单元402,其用于按照公式ME=Cl_kC2计算得到编码到椭圆曲线Epa,b上的16位第一短密钥Me,式中,k为私钥,ke[1,η-2],η为所述椭圆曲线上基点G的阶;[0257]第二短密钥确定单元403,其用于将所述第一短密钥Me按照编码时的方法逆向解码得到16位的第二短密钥kE;[0258]解密单元404,其用于重叠使用4个短密钥kE组成64位DES密钥,并采用与所述加密过程相同的运算,进行解密运算,运算过程中子密钥K[I]的顺序与加密时相反,即加密时子密钥顺序是K[1]K[2]···![16],解密时子密钥顺序改为K[16]K[15]-KMK[1]。[0259]已经通过参考少量实施方式描述了本发明。然而,本领域技术人员所公知的,正如附带的专利权利要求所限定的,除了本发明以上公开的其他的实施例等同地落在本发明的范围内。[0260]通常地,在权利要求中使用的所有术语都根据他们在技术领域的通常含义被解释,除非在其中被另外明确地定义。所有的参考“一个所述该[装置、组件等]”都被开放地解释为所述装置、组件等中的至少一个实例,除非另外明确地说明。这里公开的任何方法的步骤都没必要以公开的准确的顺序运行,除非明确地说明。

权利要求:1.一种对实时数据采集系统的数据进行加密的方法,其特征在于,所述方法包括:选择一个14位随机数,并按照从左至右的顺序在所述14位随机数的第7位和第14位之后分别添加1个奇偶检验位以生成16位短密钥kE,重叠使用4个短秘钥kE组成64位DES密钥,其中所述64位密钥中数的数位号按照从左至右的顺序依次是1至64号;去掉所述64位DES密钥中的奇偶校验位,按照第一变换表进行换位以生成56位的密钥,并将56位的密钥分解为两个28位的C[0]和D[0],其中所述第一变换表是8行7列的表格;对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥K[I],其中所述第二变换表是6行8列的表格,IISm;将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块,其中所述第三变换表是8行8列的表格;针对每个新的64位数据块,将所述数据块分解为两个32位的L[0]和R[0];对所述L[0]和R[0],采用m个子密钥对其进行加密以生成加密数据。2.根据权利要求1所述的方法,其特征在于,对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥Κ[Π包括:按照迭代位移表中迭代次数对应的左移位数将C[I-1]和D[I-1]向左移动以生成C[I]和D[Π,其中,所述I的初始值是I,IISm;将每次迭代后生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],按照第二变换表标注的数位号,将C[I]D[I]组成的56位数中对应数位号的数填入第二变换表中得到的48位数据即为子密钥K[I]。3.根据权利要求1所述的方法,其特征在于,将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块包括:将实时数据采集系统的数据分割成若干个64位的数据块,当最后一个数据块的数据长度不足64位时,将其扩展为64位;按照第三变换表标注的数位号,将每个64位数据块中对应数位号的数填入第三变换表中。4.根据权利要求1所述的方法,其特征在于,对所述L[0]和R[0],采用m个子密钥对其进行加密以生成加密数据包括:按照第四变换表标注的数位号,将R[I_1]中对应数位号的数填入第四变换表中,生成新的48位数据E[I-l],其中所述I的初始值是l,lIm,其中所述第四变换表是6行8列的表格;异或E[1-1]和K[I],并将所述异或的结果按照从左到右的顺序分为8个6位的数据B[J],其中J的初始值是1,KJ彡8;将B[J]的第1位和第6位组合为一个2位长度的变量M,将所述变量M作为设置的S[J]表中的行号;将B[J]的第2位到第5位组合为一个4位长度的变量N,将所述变量N作为设置的S[J]表中的列号;根据所述S[J]表的行号和列号选择对应的数值,并将所选择行号和列号对应的十进制数值变换为四位长度的二进制数,以及用S[J][Μ][N]来取代B[J];按B[l]至B[8]的顺序将其组合为一个32位数据,并按照第五变换表标注的数位号,将所述32位数中对应数位号的数填入第五变换表中,生成新的32位数据P[I],其中所述第五变换表是4行8列的表格;异或P[I]和L[I_1],并将异或的结果作为R[I],将R[I_1]作为L[I];将R[m]和L[m]按照从R[m]到L[m]的顺序组合成一个整体R[m]L[m],按照第六变换表标注的数位号,将R[m]L[m]中对应数位号的数填入第六变换表中,得到64位数据块的加密结果,其中所述第六变换表是8行8列的表格。5.根据权利要求1至3中任意一个所述的方法,其特征在于,所述方法还包括对使用4个短秘钥kE组成的64位DES密钥进行加密,并将加密的DES密钥和实时数据采集系统经过DES算法加密的数据传输至服务器,其中:实时安全数据采集系统根据自身的处理能力,确定密钥的长度并向服务器申请加密参数,以及将服务器传输的加密参数进行保存,其中,所述传输的加密参数包括根据实时安全数据采集系统请求的长度确定的椭圆曲线Epa,b的参数p、a、b,椭圆曲线Epa,b上的基点G、基点G的阶η以及根据实时安全数据采集系统自身的私钥k和基点G确定的公钥K,其中,K=kG;将生成的16位DES短密钥kE编码到椭圆曲线Epa,b上的一点Me,并根据点Me、公钥K和生成的随机数r计算点Ci和C2;实时数据采集系统将点和的值和经过加密的数据打包传输给服务器。6.—种对采用权利要求1至5中任意一个方法加密的实时数据采集系统的数据进行解密的方法,其特征在于,所述方法包括:服务器接收实时数据采集系统发送的数据包,其中,所述数据包包括点和:2的值和经过DES算法加密的数据;服务器按照公式ME=Cl-kC2计算得到编码到椭圆曲线Epa,b上的16位短密钥Me,式中,k为私钥,ke[l,n-2],n为所述椭圆曲线上基点G的阶;将所述短密钥Me按照编码时的方法逆向解码得到16位的DES短密钥kE;重叠使用4个短密钥kE组成64位DES密钥,并采用与所述加密过程相同的运算,进行解密运算,运算过程中子密钥K[I]的顺序与加密时相反,S卩加密时子密钥顺序是K[1]K[2]…K[16],解密时子密钥顺序改为K[16]K[15]-KMK[1]。7.—种对实时数据采集系统的数据进行加密的系统,其特征在于,所述系统包括:第一密钥生成单元,其用于选择一个14位随机数,并按照从左至右的顺序在所述14位随机数的第7位和第14位之后分别添加1个奇偶检验位以生成16位短密钥kE,重叠使用4个短秘钥kE组成64位DES密钥,其中所述64位密钥中数的数位号按照从左至右的顺序依次是1至64号;第二密钥生成单元,其用于去掉所述64位DES密钥中的奇偶校验位,按照第一变换表进行换位以生成56位的密钥,并将56位的密钥分解为两个28位的C[0]和D[0],其中所述第一变换表是8行7列的表格;子密钥生成单元,其用于对所述C[0]和D[0]进行m次迭代,并将第I次迭代生成的C[I]和D[I]串联起来生成新的56位的C[I]D[I],将所述C[I]D[I]按照第二变换表进行换位生成1个48位的子密钥K[π,其中所述第二变换表是6行8列的表格,IISm;数据块生成单元,其用于将实时数据采集系统的数据分割成若干个64位的块,按照第三变换表对每个块进行变换,以生成新的64位数据块,其中所述第三变换表是8行8列的表格;数据块分解单元,其用于针对每个新的64位数据块,将所述数据块分解为两个32位的L[〇]和R[〇];加密数据生成单元,其用于对所述L[0]和R[0],采用m个子密钥对其进行加密以生成加密数据。8.根据权利要求7所述的系统,其特征在于,加密数据生成单元包括:第一数据生成单元,其用于按照第四变换表标注的数位号,将R[I-1]中对应数位号的数填入第四变换表中,生成新的48位数据E[I-1],其中所述I的初始值是1,第二数据生成单元,其用于异或E[I-1]和K[I],并将所述异或的结果按照从左到右的顺序分为8个6位的数据B[J],其中J的初始值是1,1J8;行号确定单元,其用于将B[J]的第1位和第6位组合为一个2位长度的变量M,将所述变量M作为设置的S[J]表中的行号;列号确定单元,其用于将B[J]的第2位到第5位组合为一个4位长度的变量N,将所述变量N作为设置的S[J]表中的列号;第三数据生成单元,其用于根据所述S[J]表的行号和列号选择对应的数值,并将所选择的十进制数值变换为四位长度的二进制数,以及用S[J][Μ][N]来取代B[J];第四数据生成单元,其用于按B[l]至B[8]的顺序将其组合为一个32位数据,并按照第五变换表标注的数位号,将所述32位数中对应数位号的数填入第五变换表中,生成新的32位数据Ρ[Π,其中所述第五变换表是4行8列的表格;第五数据生成单元,其用于异或Ρ[Ι]和L[I-1],并将异或的结果作为R[I],将R[I-1]作为L[I];第六数据生成单元,其用于将R[m]和L[m]按照从R[m]到L[m]的顺序组合成一个整体R[m]L[m],按照第六变换表标注的数位号,将R[m]L[m]中对应数位号的数填入第六变换表中,得到64位数据块的加密结果,其中所述第六变换表是8行8列的表格。9.根据权利要求6所述的系统,其特征在于,所述系统还包括密钥参数生成单元、密钥编码单元和传输单元,其中:密钥参数生成单元,其用于根据实时安全数据采集系统自身的处理能力,确定密钥的长度并向服务器申请加密参数,将服务器传输的加密参数进行保存,其中,所述传输的加密参数包括根据实时安全数据采集系统请求的长度确定的椭圆曲线Epa,b的参数p、a、b,椭圆曲线Epa,b上的基点G、基点G的阶η以及服务器根据实时安全数据采集系统申请的密钥长度确定的私钥k和基点G确定的公钥K,K=kG;密钥编码单元,其用于将生成的16位DES短密钥kE编码到椭圆曲线Epa,b上的一点Me,并根据点Me、公钥K和生成的随机数r计算点CjPC2;传输单元,其用于将点和的值和经过加密的数据打包传输给服务器。10.—种对采用权利要求7至9中任意一个系统加密的实时数据采集系统的数据进行解密的系统,其特征在于,所述系统包括:数据接收单元,其用于接收实时数据采集系统发送的数据包,其中,所述数据包包括点CjPC2的值和经过DES算法加密的数据;第一短密钥确定单元,其用于按照公式ME=Cl-kC2计算得到编码到椭圆曲线Epa,b上的16位第一短密钥施,式中,k为私钥,ke[l,n-2],n为所述椭圆曲线上基点G的阶;第二短密钥确定单元,其用于将所述第一短密钥Me按照编码时的方法逆向解码得到16位的第二短密钥kE;解密单元,其用于重叠使用4个短密钥kE组成64位DES密钥,并采用与所述加密过程相同的运算,进行解密运算,运算过程中子密钥K[I]的顺序与加密时相反,即加密时子密钥顺序是1[1]1[2]—1[16],解密时子密钥顺序改为1[16]1[15]—1[2]1[1]。

百度查询: 唐山智能电子有限公司 对实时数据采集系统的数据进行加密解密的方法以及系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。