CN117472035B - 一种主控***软件硬件的校验方法 - Google Patents
一种主控***软件硬件的校验方法 Download PDFInfo
- Publication number
- CN117472035B CN117472035B CN202311811186.4A CN202311811186A CN117472035B CN 117472035 B CN117472035 B CN 117472035B CN 202311811186 A CN202311811186 A CN 202311811186A CN 117472035 B CN117472035 B CN 117472035B
- Authority
- CN
- China
- Prior art keywords
- integer
- integer value
- arrays
- reading
- control system
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000012795 verification Methods 0.000 title claims abstract description 20
- 238000003491 array Methods 0.000 claims description 60
- 238000004364 calculation method Methods 0.000 claims description 35
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 230000001502 supplementing effect Effects 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0221—Preprocessing measurements, e.g. data collection rate adjustment; Standardization of measurements; Time series or signal analysis, e.g. frequency analysis or wavelets; Trustworthiness of measurements; Indexes therefor; Measurements using easily measured parameters to estimate parameters difficult to measure; Virtual sensor creation; De-noising; Sensor fusion; Unconventional preprocessing inherently present in specific fault detection methods like PCA-based methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种主控***软件硬件的校验方法,属于风电机组技术领域该方法通过主控***的软件读取硬件的识别码;将获取到的识别码转换为整套硬件***的统一识别码,并由服务器数据库信息获取生成用于软件验证的识别文件,通过主控***获取并结合统一识别码进行校验,通过校验来验证软件与硬件之间的匹配有效性;本发明的一种主控***软件硬件的校验方法,在具体的原理设计上,采用主控***生成服务器可识别的识别码,并通过服务器对识别码的处理,生成识别文件,在主控***内部中通过对识别文件的进一步处理并与原始的识别码进行校验,实现加密的功能。
Description
技术领域
本发明涉及一种主控***软件硬件的校验方法,属于风电机组技术领域。
背景技术
风机主控***是风力发电机组的核心控制***,其可靠性将直接影响机组的安全性、运行的稳定性与可靠性等指标。主控***由一套控制***硬件与控制软件构成,由于不同硬件之间存在着一定的差异,软件与硬件的匹配与否会直接影响主控***的可靠性,因此在控制***的设计时有必要对软件与硬件之间的匹配关系进行识别校验,以保证整个***的可靠运行。
发明内容
本发明的发明目的在于:针对上述存在的问题,提供一种主控***软件硬件的校验方法,该方法当校验通过时,主控***软件可以正常进入初始化流程启动运行;当校验不通过时,主控***软件无法进入初始化流程,有效的确保机组安全。
本发明采用的技术方案如下:
一种主控***软件硬件的校验方法,包括以下步骤;
S1,通过主控***的软件读取硬件的识别码;
S2,将获取到的识别码转换为整套硬件***的统一识别码;
S3,服务器数据库信息获取统一识别码后,生成用于软件验证的识别文件;
S4,主控***获取识别文件,并结合统一识别码进行校验,通过校验来验证软件与硬件之间的匹配有效性。
进一步的,在步骤S2中,还包括以下步骤:
S21,通过软件读取控制器模块的序列号a1;
S22,通过软件逐一读取其他硬件模块的序列号,分别为a2,a3,…,an;其中,a1,a2,a3,…,an为n1个特定长度字符串;
S23,通过特定的字符串拼接方法f1将所有序列号组合成代表硬件配置的字符串A,具体为A= f1(a1,a2,a3,…,an);
S24,将获取到的字符串A转换为m个整型数值数组,其中每个数组包含n2个字节整型数值,分别为B1,B2,…,Bm;
S25,将获取的m个整型数值数组转换为m个整型数值,分别获取到C1,C2,…,Cm,并通过整型数值C1,C2,…,Cm组合成统一识别码D。
进一步的,在步骤S25中,将获取的m个数组转换为m个整型数值的具体算法还包括以下步骤:
S251,读取长度为n2个字节的整型数值数组元素B1;
S252,通过获取到的n2个字节的整型数组B1,计算中间整型数值X、Y、Z;
具体计算方式为:
X=(∑B[i])%a;
Y=(∏((B[i]*B[i])>>b))%c;
Z=Ω(B[i]<<d);
S253,通过获取的中间整型数值X、Y、Z得到整型数值C1;
具体计算方式为:
C1=X&&e+Y&&f+Z&&g;
其中,a,b,c,d,e,f,g为设定的特定整型数值;&&为二进制按位与;%为取余;>>为二进制右移;<<为二进制左移;∑为逐项求和(1<=i<=n2);∏为逐项求积(1<=i<=n2);Ω为逐项异或(1<=i<=n2);B[i]为取数组B中第i个元素数值;
S254,按照S251至S253的步骤读取B2并计算得到C2,逐一计算直至得到Cm。
进一步的,步骤S3还包括以下步骤:
S31,读取主控***生成长度为m的整型数值数组的统一识别码D;
S32,将统一识别码转换为长度为t的整型数值数组的识别文件码E,其中t>m;
S33,将识别文件码E写入识别文件。
进一步的,在步骤S4中,还包括以下步骤:
S41,主控***读取识别文件,获取识别文件码E;
S42,将识别文件码E转换为长度为m的整型数值数组的校验码F;
S43,读取统一识别码D,并对比校验码F与统一识别码D是否一致,一致则校验通过,不一致则校验不通过。
进一步的,在步骤S32,转换的过程中通过算法Q实现,算法Q具体为:E=Q(D,M,N);
在步骤S42,转换的过程中通过算法Q实现,算法Q具体为:F=Q(E,P,N);
其中N、M和P为长度为t的整型数值数组;
算法Q包括以下步骤:
D1,读取整型数值数组G,当G的长度为m时,补充值为0的整型数值元素,使其长度为t,其中,t>m;
D2,读取整型数值数组H、J,其长度均为t;
D3,读取整型数值数组K,K等于E或者F,并使整型数值数组K等于设定的特定整型数值数组h;
D4,再依次获取到计算后的整型数值数组H,通过H对比设定的特定整型数值数组p,对比结果相同则获取到整型数值数组K,对比结果不同则重复计算。
进一步的,在步骤D4中,其计算方法具体如下:
L=(H&&x)%y;
K=Q1(Q2(K,G),H);
G=Q1(Q2(G,G),J);
H=Q3(Q4(H,L),z);
其中,h,x,y,z,p为特定整型数值数组;
G,H,J,K,L为长度为t的整型数值数组;
Q1,Q2,Q3,Q4为子算法;
&&为二进制按位与;
%为取余。
进一步的,所述子算法Q1包括以下步骤:
D11,读取整型数值数组X1,Y1,其长度均为t,其中,X1=Q2(K,G)或Q2(G,G),对应的Y1=H或J;
D12,令i1=t,并依次进行以下计算:
b1=(X1[i1]/Y1[i1])-c1;
X1=X1-Y1*b1;
Z1=Z1+b1;
X1=Q4(X1,Q2(Y1,Y1));
Z1=Z1+(X1⊕(Y1,c1))*c1;
其中,b1,c1为特定整型数值;
X1、Y1、Z1为长度为t的整型数值数组;
⊕为二进制按位异或;
D13,判定i1是否大于1,小于或等于1则获取到步骤D12中计算出的整型数值数组X1,若大于1则以i1-1再依次重复步骤D12的计算。
进一步的,所述子算法Q2包括以下步骤:
D21,读取整型数值数组X2,Y2,其长度均为t ,其中,X2= K或G,对应的Y2=G;
D22,令i2= 1, j2 = 1, d1 = 0,并依次进行以下计算:
Z2[i2+j2-b2]=(Z2[i2+j2-b2]+X2[i2]*Y2[j2]+d1)%e1;
d1=(Z2[i2+j2]+(X2[i2]*Y2[j2])/e1)%e1;
Z2[i2+j2]=Z2[i2+j2]+(X2[i2]*Y2[j2])/e1-d1;
b2,d1,e1为特定整型数值;
X2、Y2、Z2为长度为t的整型数值数组;
%为取余;
D23,判定j2是否大于等于t,若小于t则以j2+1重复步骤D22的计算;若大于等于t则执行i2的判定;
D24,判定i2是否大于等于t,若小于t则以i2+1和j2=1重复步骤D22和D23;若大于等于t则获取到步骤D22中计算出的整型数值数组Z2。
进一步的,所述子算法Q3包括以下步骤:
D31,读取整型数值数组X3,Y3,其长度均为t,其中,X3= Q4(H, L),对应的Y3=z;
D32,令i3=t,并依次进行以下计算:
b3=(X3[i3]/Y3[i3])-d2;
X3=X3-Y3*b3;
Z3=Z3+b3;
X3=Q4(X3,Q2(Y3,d2));
Z3=Z3+(X3⊕(Y3,d2))*d2;
b3、d2为特定整型数值;
X3、Y3、Z3为长度为t的整型数值数组;
D33,判定i3是否大于1,若i3大于1,则以i-1重复步骤D32;若i3小于等于1,则获取到步骤D32中计算出的整型数值数组Z3。
进一步的,所述子算法Q4包括以下步骤:
D41,读取整型数值数组X4,Y4,其长度均为t,其中,X4= H,对应的Y4=L ;
D42, 令i4=1,d3=0,并依次进行以下计算:
d3=((X4[i4]+b4-Y4[i4])-d3)>>e2;
Z4[i4]=(X4[i4]+b4-Y4[i4]-d3)%g1;
b4、d3、e2、g1为特定整型数值;
X4、Y4、Z4为长度为t的整型数值数组;
%为取余;
>>为二进制右移;
D43,判断i4是否大于等于t,若i4大于等于t,则获取到步骤D42中计算出的整型数值数组Z4;若i4小于t,则以i4+1重复步骤D42。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
本发明的一种主控***软件硬件的校验方法,在具体的原理设计上,采用主控***生成服务器可识别的识别码,并通过服务器对识别码的处理,生成识别文件,在主控***内部中通过对识别文件的进一步处理并与原始的识别码进行校验,实现加密的功能,尤其是在具体的设计上,采用本套原理,即使方法相同,但是基于整体的数据识别是不相同的,其有效的保证了整个风电机组的安全性能,更是保证了***操作权限的安全性。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1是本发明流程示意图;
图2是主控***生成统一识别码的流程示意图;
图3是步骤S25的算法流程示意图;
图4是服务器生成识别文件的流程示意图;
图5是主控***校验的流程示意图;
图6是算法Q的流程示意图;
图7是算法Q1的流程示意图;
图8是算法Q2的流程示意图;
图9是算法Q3的流程示意图;
图10是算法Q4的流程示意图。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
实施例
一种主控***软件硬件的校验方法,如图1至图10所示,包括以下步骤;
S1,通过主控***的软件读取硬件的识别码;
S2,将获取到的识别码转换为整套硬件***的统一识别码;
S3,服务器数据库信息获取统一识别码后,生成用于软件验证的识别文件;
S4,主控***获取识别文件,并结合统一识别码进行校验,通过校验来验证软件与硬件之间的匹配有效性。
在本实施例中,与传统加密的方法设计不同的是,采用了主控***生成了统一识别码,并通过服务器对统一识别码进行获取,并通过数据处理后再生成识别文件,再次被主控***获取进行识别,识别后与原始统一识别码进行对比校验,通过对比校验后从而实现主控***的加密,相对于传统加密技术,该方法具有更高的安全性能,进一步的有效保证了整个机组的安全。
作为更加具体的设计,在上述具体的步骤设计中,在步骤S2中,还包括以下步骤:
S21,通过软件读取控制器模块的序列号a1;
S22,通过软件逐一读取其他硬件模块的序列号,分别为a2,a3,…,an;其中,a1,a2,a3,…,an为n1个特定长度字符串;
S23,通过特定的字符串拼接方法f1将所有序列号组合成代表硬件配置的字符串A,具体为A=f1(a1,a2,a3,…,an);
S24,将获取到的字符串A转换为m个整型数值数组,其中每个数组包含n2个字节整型数值,分别为B1,B2,…,Bm;
S25,将获取的m个整型数值数组转换为m个整型数值,分别获取到C1,C2,…,Cm,并通过整型数值C1,C2,…,Cm组合成统一识别码D。
通过上述具体的操作方式,主要的目的是在于将数组转换数值的过程,并针对新的数字组合成为新的组合,形成统一识别码,而在此当中,D也为m个整型数值数组。
在上述具体的设计基础上,作为更加具体的设计,在步骤S25中,将获取的m个数组转换为m个整型数值的具体算法还包括以下步骤:
S251,读取长度为n2个字节的整型数值数组元素B1;
S252,通过获取到的n2个字节的整型数组B1,计算中间整型数值X、Y、Z;
具体计算方式为:
X=(∑B[i])%a;
Y=(∏((B[i]*B[i])>>b))%c;
Z=Ω(B[i]<<d);
S253,通过获取的中间整型数值X、Y、Z得到整型数值C1;
具体计算方式为:
C1=X&&e+Y&&f+Z&&g;
其中,a,b,c,d,e,f,g为设定的特定整型数值;&&为二进制按位与;%为取余;>>为二进制右移;<<为二进制左移;∑为逐项求和(1<=i<=n2);∏为逐项求积(1<=i<=n2);Ω为逐项异或(1<=i<=n2);B[i]为取数组B中第i个元素数值;
S254,按照S251至S253的步骤读取B2并计算得到C2,逐一计算直至得到Cm。
基于上述具体的设计,完成了统一识别码D的计算,进而进一步的将统一识别码D在服务器内的运算和操作进一步的设计,步骤S3还包括以下步骤:
S31,读取主控***生成长度为m的整型数值数组的统一识别码D;
S32,将统一识别码转换为长度为t的整型数值数组的识别文件码E,其中t>m;
S33,将识别文件码E写入识别文件。
进一步的,获取识别文件后,在通过主控***进行获取,通过计算并与统一识别码进行对比,从而获取校验结果,具体的,在步骤S4中,还包括以下步骤:
S41,主控***读取识别文件,获取识别文件码E;
S42,将识别文件码E转换为长度为m的整型数值数组的校验码F;
S43,读取统一识别码D,并对比校验码F与统一识别码D是否一致,一致则校验通过,不一致则校验不通过。
在上述具体的设计中,针对统一识别码D转换为识别文件,再转换为校验码F的过程进一步的优化设计,具体的,在步骤S32,转换的过程中通过算法Q实现,算法Q具体为:E=Q(D,M,N);
在步骤S42,转换的过程中通过算法Q实现,算法Q具体为:F=Q(E,P,N);
其中N、M和P为长度为t的整型数值数组,其中,t>m;
而具体的,算法Q包括以下步骤:
D1,读取整型数值数组G,当G的长度为m时,补充值为0的整型数值元素,使其长度为t,其中,t>m;
D2,读取整型数值数组H、J,其长度均为t;
D3,读取整型数值数组K,K等于E或者F,并使整型数值数组K等于设定的特定整型数值数组h;
D4,再依次获取到计算后的整型数值数组H,通过H对比设定的特定整型数值数组p,对比结果相同则获取到整型数值数组K,对比结果不同则重复计算。
在步骤D4中,其计算方法具体如下:
L=(H&&x)%y;
K=Q1(Q2(K,G),H);
G=Q1(Q2(G,G),J);
H=Q3(Q4(H,L),z);
其中,h,x,y,z,p为特定整型数值数组;
G,H,J,K,L为长度为t的整型数值数组;
Q1,Q2,Q3,Q4为子算法;
&&为二进制按位与;
%为取余。
针对上述的算法中,分别针对算法Q1、Q2、Q3、Q4分别进一步的设计,其中,所述子算法Q1包括以下步骤:
D11,读取整型数值数组X1,Y1,其长度均为t,其中,X1=Q2(K,G)或Q2(G,G),对应的Y1=H或J;
D12,令i1=t,并依次进行以下计算:
b1=(X1[i1]/Y1[i1])-c1;
X1=X1-Y1*b1;
Z1=Z1+b1;
X1=Q4(X1,Q2(Y1,Y1));
Z1=Z1+(X1⊕(Y1,c1))*c1;
其中,b1,c1为特定整型数值;
X1、Y1、Z1为长度为t的整型数值数组;
⊕为二进制按位异或;
D13,判定i1是否大于1,小于或等于1则获取到步骤D12中计算出的整型数值数组X1,若大于1则以i1-1再依次重复步骤D12的计算。
所述子算法Q2包括以下步骤:
D21,读取整型数值数组X2,Y2,其长度均为t,其中,X2= K或G,对应的Y2=G;
D22,令i2=1, j2=1, d1=0,并依次进行以下计算:
Z2[i2+j2-b2]=(Z2[i2+j2-b2]+X2[i2]*Y2[j2]+d1)%e1;
d1=(Z2[i2+j2]+(X2[i2]*Y2[j2])/e1)%e1;
Z2[i2+j2]=Z2[i2+j2]+(X2[i2]*Y2[j2])/e1-d1;
b2,d1,e1为特定整型数值;
X2、Y2、Z2为长度为t的整型数值数组;
%为取余;
D23,判定j2是否大于等于t,若小于t则以j2+1重复步骤D22的计算;若大于等于t则执行i2的判定;
D24,判定i2是否大于等于t,若小于t则以i2+1和j2=1重复步骤D22和D23;若大于等于t则获取到步骤D22中计算出的整型数值数组Z2。
所述子算法Q3包括以下步骤:
D31,读取整型数值数组X3,Y3,其长度均为t,其中,X3= Q4(H, L),对应的Y3=z;
D32,令i3=t,并依次进行以下计算:
b3=(X3[i3]/Y3[i3])-d2;
X3=X3-Y3*b3;
Z3=Z3+b3;
X3=Q4(X3,Q2(Y3,d2));
Z3=Z3+(X3⊕(Y3,d2))*d2;
b3、d2为特定整型数值;
X3、Y3、Z3为长度为t的整型数值数组;
D33,判定i3是否大于1,若i3大于1,则以i-1重复步骤D32;若i3小于等于1,则获取到步骤D32中计算出的整型数值数组Z3。
所述子算法Q4包括以下步骤:
D41,读取整型数值数组X4,Y4,其长度均为t,其中,X4= H,对应的Y4=L ;
D42, 令i4=1,d3=0,并依次进行以下计算:
d3=((X4[i4]+b4-Y4[i4])-d3)>>e2;
Z4[i4]=(X4[i4]+b4-Y4[i4]-d3)%g1;
b4、d3、e2、g1为特定整型数值;
X4、Y4、Z4为长度为t的整型数值数组;
%为取余;
>>为二进制右移;
D43,判断i4是否大于等于t,若i4大于等于t,则获取到步骤D42中计算出的整型数值数组Z4;若i4小于t,则以i4+1重复步骤D42。
本发明的一种主控***软件硬件的校验方法,在具体的原理设计上,采用主控***生成服务器可识别的识别码,并通过服务器对识别码的处理,生成识别文件,在主控***内部中通过对识别文件的进一步处理并与原始的识别码进行校验,实现加密的功能,尤其是在具体的设计上,采用本套原理,即使方法相同,但是基于整体的数据识别是不相同的,其有效的保证了整个风电机组的安全性能,更是保证了***操作权限的安全性。
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。
Claims (3)
1.一种主控***软件硬件的校验方法,其特征在于:包括以下步骤;
S1,通过主控***的软件读取硬件的识别码;
S2,将获取到的识别码转换为整套硬件***的统一识别码;
在步骤S2中,还包括以下步骤:
S21,通过软件读取控制器模块的序列号a1;
S22,通过软件逐一读取其他硬件模块的序列号,分别为a2,a3,…,an;其中,a1,a2,a3,…,an为n1个特定长度字符串;
S23,通过特定的字符串拼接方法f1将所有序列号组合成代表硬件配置的字符串A,具体为A= f1(a1,a2,a3,…,an);
S24,将获取到的字符串A转换为m个整型数值数组,其中每个数组包含n2个字节整型数值,分别为B1,B2,…,Bm;
S25,将获取的m个整型数值数组转换为m个整型数值,分别获取到C1,C2,…,Cm,并通过整型数值C1,C2,…,Cm组合成统一识别码D;
S3,服务器数据库信息获取统一识别码后,生成用于软件验证的识别文件;
步骤S3还包括以下步骤:
S31,读取主控***生成长度为m的整型数值数组的统一识别码D;
S32,将统一识别码转换为长度为t的整型数值数组的识别文件码E,其中t>m;
S33,将识别文件码E写入识别文件;
S4,主控***获取识别文件,并统一识别码进行校验,通过校验来验证软件与硬件之间的匹配有效性;
其中,在步骤S32,转换的过程中通过算法Q实现,算法Q具体为:E=Q(D,M,N);
在步骤S4,通过算法Q将识别文件码E转换为校验码F,算法Q具体为:F=Q(E,P,N);
其中N、M和P为长度为t的整型数值数组;
算法Q包括以下步骤:
D1,读取整型数值数组G,当G的长度为m时,补充值为0的整型数值元素,使其长度为t,其中,t>m;
D2,读取整型数值数组H、J,其长度均为t;
D3,读取整型数值数组K,K等于E或者F,并使整型数值数组K等于设定的特定整型数值数组h;
D4,再依次获取到计算后的整型数值数组H,通过H对比设定的特定整型数值数组p,对比结果相同则获取到整型数值数组K,对比结果不同则重复计算;
在步骤D4中,其计算方法具体如下:
L=(H&&x)%y;
K=Q1(Q2(K,G),H);
G=Q1(Q2(G,G),J);
H=Q3(Q4(H,L),z);
其中,h,x,y,z,p为特定整型数值数组;
G,H,J,K,L为长度为t的整型数值数组;
Q1,Q2,Q3,Q4为子算法;
&&为二进制按位与;
%为取余;
所述子算法Q1包括以下步骤:
D11,读取整型数值数组X1,Y1,其长度均为t,其中,X1=Q2(K,G)或Q2(G,G),对应的Y1=H或J;
D12,令i1=t,并依次进行以下计算:
b1=(X1[i1]/Y1[i1])-c1;
X1=X1-Y1*b1;
Z1=Z1+b1;
X1=Q4(X1,Q2(Y1,Y1));
Z1=Z1+(X1⊕(Y1,c1))*c1;
其中,b1,c1为特定整型数值;
X1、Y1、Z1为长度为t的整型数值数组;
⊕为二进制按位异或;
D13,判定i1是否大于1,小于或等于1则获取到步骤D12中计算出的整型数值数组X1,若大于1则以i1-1再依次重复步骤D12的计算;
所述子算法Q2包括以下步骤:
D21,读取整型数值数组X2,Y2,其长度均为t,其中,X2= K或G,对应的Y2=G;
D22,令i2=1, j2=1, d1=0,并依次进行以下计算:
Z2[i2+j2-b2]=(Z2[i2+j2-b2]+X2[i2]*Y2[j2]+d1)%e1;
d1=(Z2[i2+j2]+(X2[i2]*Y2[j2])/e1)%e1;
Z2[i2+j2]=Z2[i2+j2]+(X2[i2]*Y2[j2])/e1-d1;
b2,d1,e1为特定整型数值;
X2、Y2、Z2为长度为t的整型数值数组;
%为取余;
D23,判定j2是否大于等于t,若小于t则以j2+1重复步骤D22的计算;若大于等于t则执行i2的判定;
D24,判定i2是否大于等于t,若小于t则以i2+1和j2=1重复步骤D22和D23;若大于等于t则获取到步骤D22中计算出的整型数值数组Z2;
所述子算法Q3包括以下步骤:
D31,读取整型数值数组X3,Y3,其长度均为t,其中,X3= Q4(H, L),对应的Y3=z;
D32,令i3=t,并依次进行以下计算:
b3=(X3[i3]/Y3[i3])-d2;
X3=X3-Y3*b3;
Z3=Z3+b3;
X3=Q4(X3,Q2(Y3,d2));
Z3=Z3+(X3⊕(Y3,d2))*d2;
b3、d2为特定整型数值;
X3、Y3、Z3为长度为t的整型数值数组;
D33,判定i3是否大于1,若i3大于1,则以i-1重复步骤D32;若i3小于等于1,则获取到步骤D32中计算出的整型数值数组Z3;
所述子算法Q4包括以下步骤:
D41,读取整型数值数组X4,Y4,其长度均为t,其中,X4= H,对应的Y4=L;
D42, 令i4=1,d3=0,并依次进行以下计算:
d3=((X4[i4]+b4-Y4[i4])-d3)>>e2;
Z4[i4]=(X4[i4]+b4-Y4[i4]-d3)%g1;
b4、d3、e2、g1为特定整型数值;
X4、Y4、Z4为长度为t的整型数值数组;
%为取余;
>>为二进制右移;
D43,判断i4是否大于等于t,若i4大于等于t,则获取到步骤D42中计算出的整型数值数组Z4;若i4小于t,则以i4+1重复步骤D42。
2.如权利要求1所述的一种主控***软件硬件的校验方法,其特征在于:在步骤S25中,将获取的m个数组转换为m个整型数值的具体算法还包括以下步骤:
S251,读取长度为n2个字节的整型数值数组元素B1;
S252,通过获取到的n2个字节的整型数组B1,计算中间整型数值X、Y、Z;
具体计算方式为:
X=(∑B[i])%a;
Y=(∏((B[i]*B[i])>>b))%c;
Z=Ω(B[i]<<d);
S253,通过获取的中间整型数值X、Y、Z得到整型数值C1;
具体计算方式为:
C1=X&&e+Y&&f+Z&&g;
其中,a,b,c,d,e,f,g为设定的特定整型数值;&&为二进制按位与;%为取余;>>为二进制右移;<<为二进制左移;∑为逐项求和(1<=i<=n2);∏为逐项求积(1<=i<=n2);Ω为逐项异或(1<=i<=n2);B[i]为取数组B中第i个元素数值;
S254,按照S251至S253的步骤读取B2并计算得到C2,逐一计算直至得到Cm。
3.如权利要求1所述的一种主控***软件硬件的校验方法,其特征在于:在步骤S4中,还包括以下步骤:
S41,主控***读取识别文件,获取识别文件码E;
S42,将识别文件码E转换为长度为m的整型数值数组的校验码F;
S43,读取统一识别码D,并对比校验码F与统一识别码D是否一致,一致则校验通过,不一致则校验不通过。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311811186.4A CN117472035B (zh) | 2023-12-27 | 2023-12-27 | 一种主控***软件硬件的校验方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311811186.4A CN117472035B (zh) | 2023-12-27 | 2023-12-27 | 一种主控***软件硬件的校验方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117472035A CN117472035A (zh) | 2024-01-30 |
CN117472035B true CN117472035B (zh) | 2024-03-08 |
Family
ID=89636559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311811186.4A Active CN117472035B (zh) | 2023-12-27 | 2023-12-27 | 一种主控***软件硬件的校验方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117472035B (zh) |
Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5960012A (en) * | 1997-06-23 | 1999-09-28 | Sun Microsystems, Inc. | Checksum determination using parallel computations on multiple packed data elements |
CN102915412A (zh) * | 2011-08-04 | 2013-02-06 | 波音公司 | 使用散列值的软件部件验证 |
CN103942473A (zh) * | 2014-04-14 | 2014-07-23 | 立德高科(北京)数码科技有限责任公司 | 用于屏蔽非授权使用者启动软件的方法及其*** |
CN107437186A (zh) * | 2016-05-26 | 2017-12-05 | 广东淘真宝科技股份有限公司 | 一种商品防伪码的生成及检验方法 |
CN107729068A (zh) * | 2017-09-30 | 2018-02-23 | 上海联影医疗科技有限公司 | 一种设备管理方法和*** |
CN107911335A (zh) * | 2017-09-26 | 2018-04-13 | 五八有限公司 | 校验统一资源标识符uri的方法、装置和*** |
CN108111519A (zh) * | 2017-12-27 | 2018-06-01 | Tcl通力电子(惠州)有限公司 | 密钥文件的管理方法、装置及计算机可读存储介质 |
CN108197688A (zh) * | 2018-02-07 | 2018-06-22 | 施玥 | 一种带有校验码的编码方式 |
CN108875395A (zh) * | 2018-06-28 | 2018-11-23 | 合肥浪金防伪科技有限公司 | 商品防伪码的生成和检验方法 |
CN109086578A (zh) * | 2017-06-14 | 2018-12-25 | 中兴通讯股份有限公司 | 一种软件授权使用的方法、设备及存储介质 |
CN110825639A (zh) * | 2019-11-08 | 2020-02-21 | 西安雷风电子科技有限公司 | 一种防篡改时间的软件License验证方法 |
CN111709059A (zh) * | 2020-06-19 | 2020-09-25 | 山东省计算中心(国家超级计算济南中心) | 基于国密算法的终端认证信息生成方法及*** |
CN111709010A (zh) * | 2020-06-19 | 2020-09-25 | 山东省计算中心(国家超级计算济南中心) | 基于国密算法的终端认证信息提取和验证方法及*** |
CN112468609A (zh) * | 2020-11-16 | 2021-03-09 | 深圳市联新移动医疗科技有限公司 | 硬件设备的唯一识别码获取方法及*** |
CN112990404A (zh) * | 2021-02-08 | 2021-06-18 | 北京声智科技有限公司 | 样本标识码图案的生成方法及装置、获取方法及电子设备 |
CN113867318A (zh) * | 2021-09-30 | 2021-12-31 | 东风汽车集团股份有限公司 | Can通讯控制器硬件在环测试工程的自动化集成方法 |
CN115374490A (zh) * | 2022-08-22 | 2022-11-22 | 珠海格力电器股份有限公司 | 一种设备标识写入装置、方法、存储介质及终端 |
CN115718676A (zh) * | 2022-11-28 | 2023-02-28 | 厦门市美亚柏科信息股份有限公司 | 一种GoIP设备电子数据的恢复方法和*** |
CN116383779A (zh) * | 2023-03-28 | 2023-07-04 | 上海航天电子通讯设备研究所 | 一种防软件盗版的软件授权许可*** |
CN116738392A (zh) * | 2023-06-14 | 2023-09-12 | 东方电气新能科技(成都)有限公司 | 一种风力发电机组主控制***软硬件校验方法 |
CN117075939A (zh) * | 2023-08-17 | 2023-11-17 | 重庆长安汽车股份有限公司 | 一种用于车辆ota升级的控制器清单管理方法及*** |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070074027A1 (en) * | 2005-09-26 | 2007-03-29 | Tien-Chun Tung | Methods of verifying, signing, encrypting, and decrypting data and file |
US8869103B2 (en) * | 2008-10-06 | 2014-10-21 | The Mathworks, Inc. | Using intermediate representations to verify computer-executable code generated from a model |
-
2023
- 2023-12-27 CN CN202311811186.4A patent/CN117472035B/zh active Active
Patent Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5960012A (en) * | 1997-06-23 | 1999-09-28 | Sun Microsystems, Inc. | Checksum determination using parallel computations on multiple packed data elements |
CN102915412A (zh) * | 2011-08-04 | 2013-02-06 | 波音公司 | 使用散列值的软件部件验证 |
CN103942473A (zh) * | 2014-04-14 | 2014-07-23 | 立德高科(北京)数码科技有限责任公司 | 用于屏蔽非授权使用者启动软件的方法及其*** |
CN107437186A (zh) * | 2016-05-26 | 2017-12-05 | 广东淘真宝科技股份有限公司 | 一种商品防伪码的生成及检验方法 |
CN109086578A (zh) * | 2017-06-14 | 2018-12-25 | 中兴通讯股份有限公司 | 一种软件授权使用的方法、设备及存储介质 |
CN107911335A (zh) * | 2017-09-26 | 2018-04-13 | 五八有限公司 | 校验统一资源标识符uri的方法、装置和*** |
CN107729068A (zh) * | 2017-09-30 | 2018-02-23 | 上海联影医疗科技有限公司 | 一种设备管理方法和*** |
CN108111519A (zh) * | 2017-12-27 | 2018-06-01 | Tcl通力电子(惠州)有限公司 | 密钥文件的管理方法、装置及计算机可读存储介质 |
CN108197688A (zh) * | 2018-02-07 | 2018-06-22 | 施玥 | 一种带有校验码的编码方式 |
CN108875395A (zh) * | 2018-06-28 | 2018-11-23 | 合肥浪金防伪科技有限公司 | 商品防伪码的生成和检验方法 |
CN110825639A (zh) * | 2019-11-08 | 2020-02-21 | 西安雷风电子科技有限公司 | 一种防篡改时间的软件License验证方法 |
CN111709059A (zh) * | 2020-06-19 | 2020-09-25 | 山东省计算中心(国家超级计算济南中心) | 基于国密算法的终端认证信息生成方法及*** |
CN111709010A (zh) * | 2020-06-19 | 2020-09-25 | 山东省计算中心(国家超级计算济南中心) | 基于国密算法的终端认证信息提取和验证方法及*** |
CN112468609A (zh) * | 2020-11-16 | 2021-03-09 | 深圳市联新移动医疗科技有限公司 | 硬件设备的唯一识别码获取方法及*** |
CN112990404A (zh) * | 2021-02-08 | 2021-06-18 | 北京声智科技有限公司 | 样本标识码图案的生成方法及装置、获取方法及电子设备 |
CN113867318A (zh) * | 2021-09-30 | 2021-12-31 | 东风汽车集团股份有限公司 | Can通讯控制器硬件在环测试工程的自动化集成方法 |
CN115374490A (zh) * | 2022-08-22 | 2022-11-22 | 珠海格力电器股份有限公司 | 一种设备标识写入装置、方法、存储介质及终端 |
CN115718676A (zh) * | 2022-11-28 | 2023-02-28 | 厦门市美亚柏科信息股份有限公司 | 一种GoIP设备电子数据的恢复方法和*** |
CN116383779A (zh) * | 2023-03-28 | 2023-07-04 | 上海航天电子通讯设备研究所 | 一种防软件盗版的软件授权许可*** |
CN116738392A (zh) * | 2023-06-14 | 2023-09-12 | 东方电气新能科技(成都)有限公司 | 一种风力发电机组主控制***软硬件校验方法 |
CN117075939A (zh) * | 2023-08-17 | 2023-11-17 | 重庆长安汽车股份有限公司 | 一种用于车辆ota升级的控制器清单管理方法及*** |
Non-Patent Citations (1)
Title |
---|
基于列表式读取方式的RFID***性能及应用研究;白曦源;中国优秀硕士学位论文全文数据库信息科技辑;20110915(第09期);I138-952 * |
Also Published As
Publication number | Publication date |
---|---|
CN117472035A (zh) | 2024-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106775619B (zh) | 灵活区块链架构*** | |
JP2005302043A5 (zh) | ||
CN110569629A (zh) | 二进制代码文件溯源方法 | |
CN111415161A (zh) | 基于区块链的数据验证方法、装置及计算机可读存储介质 | |
CN113901474B (zh) | 一种基于函数级代码相似性的漏洞检测方法 | |
CN103065067B (zh) | 短序列组装中序列片段的过滤方法及*** | |
CN111221639A (zh) | 一种区块链平台的区块流水线执行方法 | |
CN117472035B (zh) | 一种主控***软件硬件的校验方法 | |
CN111444513A (zh) | 一种电网嵌入式终端的固件编译优化选项识别方法及装置 | |
CN111209341B (zh) | 区块链的数据存储方法、装置、设备及介质 | |
CN111125750B (zh) | 一种基于双层椭圆模型的数据库水印嵌入、检测方法及*** | |
CN117234791B (zh) | 存储芯片的数据丢失检测方法及装置 | |
CN114626426A (zh) | 基于K-means优化算法的工业设备行为检测方法 | |
US8689327B2 (en) | Method for characterization of a computer program part | |
CN1750411A (zh) | 用于测试循环冗余码算法的测试数据模式 | |
CN102436851A (zh) | 确定1位错误的位置、校正1位错误及解码的设备和方法 | |
CN115419556A (zh) | 陆上风机的缺陷检测***及其方法 | |
Nguyen et al. | Cleman: Comprehensive clone group evolution management | |
CN115904486A (zh) | 一种代码相似度检测方法及装置 | |
CN110213306B (zh) | 风力发电机组启动控制方法及装置 | |
EP2843587A1 (en) | Method for generating evidence-data for a long-term data storage system for datasets | |
CN116738429B (zh) | 基于生成对抗的目标检测引擎优化方法、装置及*** | |
JP7433876B2 (ja) | 自己組織化マップの学習装置、方法およびプログラム並びに状態判定装置 | |
CN116663004B (zh) | 基于图Transformers的二进制函数相似性检测方法及*** | |
KR102398962B1 (ko) | 격자 기반 퍼지 추출 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |