CN110166449A - 一种缝纫设备控制器的数据加密方法 - Google Patents
一种缝纫设备控制器的数据加密方法 Download PDFInfo
- Publication number
- CN110166449A CN110166449A CN201910411657.XA CN201910411657A CN110166449A CN 110166449 A CN110166449 A CN 110166449A CN 201910411657 A CN201910411657 A CN 201910411657A CN 110166449 A CN110166449 A CN 110166449A
- Authority
- CN
- China
- Prior art keywords
- data
- byte
- data block
- sub
- block
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开一种缝纫设备控制器的数据加密方法,包括:获取包装有校验数据头的原始坐标数据的数据文件;获取加密运算值;数据加密;依次对连续的所述目标数据块执行数据加密直至数据文件结尾并获得加密数据文件。本发明能对数据足进行防损坏加密处理,加密效率高。
Description
技术领域
本发明涉及工业缝纫设备控制系统的数据处理领域,尤其涉及一种缝纫设备控制器的数据加密方法。
背景技术
随着工业自动化的发展,制造业的自动化程序越来越高,在工业缝纫领域数字化控制系统的使用率也不断增长,工业缝纫自动化主要涉及了以下流程:电脑辅助的花样设计、花样数据的传输、控制系统对花样数据的解析、控制系统对工业设备驱动操作。整个加工流程如附图1所示。其中,设计人员设计完要制作的花样后,会通过多种方式传输到控制系统中进行解析,比如通过以太网、工业通信网络等在线通信传输方式,或者大容量USB接口存储器等离线传输方式。在数据传输的过程中,可能会因为不可预测的原因导致数据损坏而阻碍整个自动化加工过程,比如通信网络异常瘫痪、外部干扰,比如存储介质的自然和非自然损坏,传输过程接触异常等;所以在数据传输过程中进行数据防损坏检测是有十分必要的。同时,由于数据具有可复制性,且其复制操作已经变得非常简单,如果不对数据进行加密处理就开始传输,非常容易导致重要的设计数据被泄漏。
针对相关技术中的上述问题,目前尚缺较佳的技术方案。
发明内容
本发明的解决的技术问题是提供一种缝纫设备控制器的数据加密方法,该加密方法能对数据足进行防损坏加密处理,加密效率高。
为解决上述技术问题,本发明提供一种技术方案如下:一种缝纫设备控制器的数据加密方法,包括如下步骤:步骤Ⅰ获取包装有校验数据头的原始坐标数据的数据文件;校验数据头包括基于时间戳与原始坐标数据长度生成的字节数为M的动态数据块和字节数为N的原始数据描述信息数据块,原始数据描述信息包括原始坐标数据边界、加密方式、输出文件名及明文密钥,M≥32,N≥160;
步骤Ⅱ获取加密运算值,包括:
步骤a.自数据文件的第M+1字节开始,两两字节进行互换并在字节互换后依次检测目标数据块的首字节是否为标记数据,目标数据块由16m个连续字节数据组成,m为自然数,标记数据为0X33;
步骤b.将首字节为标记数据的目标数据块均分设定为第一子目标数据块、第二子目标数据块、第三子目标数据块和第四子目标数据块,每一子目标数据块均包含4m个连续的字节数据;
步骤c.将第二子目标数据块的每一字节数据与第三子目标数据块的对应的字节数据进行异或位运算的结果与参考目标数据块对应的字节数据进行异或位运算并获得运算数据块,判断运算数据块的数据是否与第四子目标数据块的数据相等,参考目标数据块为Ox9672A1D6;
步骤d.若运算数据块的数据与第四子目标数据的数据相等,设定加密方式为动态密钥进行加密,并通过对获取的动态密钥的初始密钥进行赋值运算和与运算密钥异或位运算而计算出第一加密运算值;若运算数据块的数据与第四子目标数据的数据不相等,设定加密方式为静态密钥进行加密,并选定设定的固定密钥值为第二加密运算值或通过对选定的第一子目标数据块的字节数据进行移位运算后与第一运算密钥进行字节数据相加而计算出第二加密运算值;第一加密运算值和第二加密运算值均为2m字节的数据,固定密钥值为-1;
步骤e.将第一加密运算值或第二加密运算值进行高低字节换位、移位和字节数据相加而计算出第三加密运算值,第三加密运算值为4m字节的数据;
步骤Ⅲ数据加密,包括:
步骤ⅰ.将第一子目标数据块均分为第一目标加密数据块和第二目标加密数据块,且依次设定第二子目标数据块、第三子目标数据块和第四子目标数据块为第三目标加密数据块、第四目标加密数据块和第五目标加密数据块;
步骤ⅱ.将第一目标加密数据块和第二目标加密数据块依次与第一加密运算值或第二加密运算值进行异或运算并分别获得第一加密数据块和第二加密数据块;
步骤ⅲ.将第三目标加密数据块、第四目标加密数据块和第五目标加密数据块依次与第三加密运算值进行异或运算并分别获得第三加密数据块、第四加密数据块和第五加密数目块;
步骤ⅳ.将第一加密数据块、第二加密数据块、第三加密数据块、第四加密数据块和第五加密数据块的字节数据相加并构成一个加密的目标数据块;
步骤Ⅳ依次对连续的所述目标数据块执行步骤Ⅲ直至数据文件结尾并获得加密数据文件。
优选地,所述步骤a之前还包括:
步骤f.自数据文件的第M+1字节开始,依次检测第一目标数据块的首字节是否为第一标记数据直至数据文件末端,第一目标数据块由16m个连续字节数据组成,m为自然数,第一标记数据为0X14;
步骤g.若未检测到第一标记数据,则执行步骤a,若检测到第一标记数据,则执行步骤h后再执行步骤a;
步骤h.获取出现第一标记数据的第一目标数据块的下一第一目标数据块;
提取该下一第一目标数据块的末端的4m个字节数据,并将该4m个字节数据设定为处理单元;
将该下一第一目标数据块之后的每一第一目标数据块均分设定为四子数据块,并将处理单元的字节数据依次与每一子数据块对应的字节数据进行异或处理,直至数据文件末端。
优选地,,步骤Ⅱ中,M=32,m=1,且步骤d中的运算密钥通过如下步骤计算出:
步骤d-1,将第二子目标数据块的每一字节数据与第三子目标数据块的对应的字节数据进行异或和位与运算,获得第一运算密钥;
步骤d-2,对第一运算密钥右移二位而获得运算密钥,记运算密钥为key0。
优选地,步骤d中按以下公式计算第一加密运算值,记第一加密运算值为keyA1,记动态密钥为key:
keyA1=key∧key0;
key+=3;
其中,key的初始值设为Ox3E7B,key+=3表示处理一个目标数据块后,动态密钥key的值进行自加3赋值运算。
优选地,步骤d中,获取第二加密运算值keyA2包括如下步骤:
步骤d-3.判断第一子目标数据的第三字节和第四字节是否与第四子目标数据的第一字节数据和第二字节数据与第一参考运算数据块的两字节数据进行异或运算的结果是否相等;
步骤d-4.若相等,则执行步骤d-5,否则,设定keyA2=-1;
步骤d-5对提取的第一子目标数据的第三字节和第四字节右移二位运算并减去第二参考运算数据块,而获得第二加密运算值keyA2;
其中,第一参考运算数据块为Ox47AB,第二参考运算数据块为Ox88。
优选地,步骤e中计算出第三加密运算值包括如下步骤:
步骤e-1.将第一加密运算值keyA1或第二加密运算值keyA2的高、低字节进行换位,获取第一加密运算值keyA1或第二加密运算值keyA2换位运算后匹配的第一子运算值;
步骤e-2.将第一子运算值进行左移16为运算并获取第二子运算值;
步骤e-3.将第二子运算值与第一加密运算值keyA1或第二加密运算值keyA2进行字节数据相加而获取第三加密运算值,记第三加密运算值为keyD。
优选地,还包括如下步骤:
步骤Ⅴ.提取并统计加密数据文件的数据字节数G,并将统计的数据字节数G与设定数据字节的阈值K进行比较;若G>K,则执行步骤Ⅵ,否则,则结束加密;
步骤Ⅵ.获取加密数据文件的首字节数据与第一参考运算字节进行位与运算的运算结果并判断该运算结果是否等于0,若为0,则结束加密,若不为0,则执行步骤Ⅶ;
步骤Ⅶ.获取第四加密运算值,记第四加密运算值为keyA4,包括:
步骤k.提取加密数据文件的第一目标区间内的字节数据并记为处理字节数据,将第一目标区间内的处理字节数据逐个进行异或运算的异或运算结果与第二参考运算字节进行异或运算并得第三子运算值,其中,第一目标区间位于加密数据文件的起始目标数据块内,且第一目标区间起始于加密数据文件的起始目标数据块的第r个字节数据并止于第n+r个字节数据,起始目标数据块由M个加密数据文件的字节数据组成;
步骤l.判断第三子运算值是否与起始目标数据块的第M个字节数据相等,若相等,则设定第三子运算值为第四初始运算密钥key04,若不相等,则设定第四初始运算密钥key04为固定初始密钥0X05;
步骤q.对第四初始运算密钥key04和从起始数据块中选取的第一处理目标数据块和第二处理目标数据块进行位与、位或及移位处理并获得加密初始位置和第四加密运算值keyA4;
步骤Ⅷ.二次加密包括:
步骤h.自加密初始位置所对应的字节数据开始,从加密数据文件中提取与第四加密运算值的字节数相匹配的第二目标数据块并将第二目标数据块内的字节数据均分为第Ⅰ子目标数据块、第Ⅱ子目标数据块、第Ⅲ子目标数据块和第Ⅳ子目标数据块;
步骤j.将第Ⅰ子目标数据块、第Ⅱ子目标数据块、第Ⅲ子目标数据块和第Ⅳ子目标数据块的每一字节数据依次与第四加密运算值keyA4对应的字节数据进行异或运算并获得第Ⅰ加密数据块、第Ⅱ加密数据块、第Ⅲ加密数据块和第Ⅳ加密数据块;
步骤v.将第Ⅰ加密数据块、第Ⅱ加密数据块、第Ⅲ加密数据块和第Ⅳ加密数据块的字节数据相加并构成一个二次加密的目标数据块;
步骤Ⅸ.依次对连续的所述第二目标数据块执行步骤Ⅷ直至加密数据文件结尾并获得二次加密数据文件。
优选地,步骤IX之后还包括:
判断是否对所有的第二目标数据块执行步骤Ⅷ和判断统计的执行步骤Ⅷ的第二目标数据块的个数是否大于处理第二目标数据块的个数阈值Y,
若完成对所有的第二目标数据块执行步骤Ⅷ,则统计执行过步骤Ⅷ的第二目标数据块的个数;
若未完成对所有的第二目标数据块执行步骤Ⅷ且统计的执行过步骤Ⅷ的第二目标数据块的个数小于个数阈值K,则继续对下一第二目标数据块执行步骤Ⅷ或对Y个第二目标数据块执行步骤Ⅷ;
若统计的执行过步骤Ⅷ的第二目标数据块的个数大于个数阈值Y,则终止执行步骤Ⅷ并记执行步骤Ⅷ的第二目标数据块的个数为Y。
优选地,步骤Ⅴ中,阈值K=544;步骤Ⅵ中,第一参考运算字节为Ox02;步骤Ⅶ中,r=22、n=9,第一处理目标数据块为起始数据块中的首字节数据和第4~15字节数据,第二处理目标数据块为起始数据块中的首字节数据、第12~15字节数据和第22~31字节数据,Y=128。
优选地,步骤q中获取加密初始位置包括如下步骤:
步骤q-1.提取第四初始运算密钥key04的四字节数据和起始数据块的首字节数据和第4~15字节数据;
步骤q-2.设定首字节数据和12~15字节数据为第一运算子字节数据块,设定key04的四字节数据为第二运算子字节数据块,设定第4~8字节数据为第三运算子字节数据块,设定第8~11字节数据为第四运算子字节数据块;分别对第一运算子字节数据块、第二运算子字节数据块、第三运算子字节数据块和第四运算子字节数据块的每一字节数据进行设定数据位的位与判断,并根据位与判断结果对初始计算字符进行按位或运算而分别获得第一计算字符为Temp0、第二计算字符为Temp1、第三计算字符为Temp2及第四计算字符为Temp3,设初始计算字符Temp=0x80;
步骤q-3.按如下位运算公式计算出加密初始位置,记加密初始位置为Temp32W:
Temp32W=Temp0<<24|Temp1<<16|Temp2<<8|Temp3
步骤q中获取第四加密运算值keyA4包括如下步骤:
步骤q-4.提取起始数据块的首字节数据、第12~15字节数据和第22~31字节数据;
步骤q-5.设定首字节数据和12~15字节数据为第五运算子字节数据块,设定第22~23字节数据为第六运算子字节数据块,设定第24~27字节数据为第七运算子字节数据块,设定第28~31字节数据为第八运算子字节数据块;分别对第五运算子字节数据块、第六运算子字节数据块、第七运算子字节数据块和第八运算子字节数据块的每一字节数据进行设定数据位的位与判断,并根据位与判断结果对第一初始计算字符进行按位或运算而分别获得第五计算字符为Temp0A、第二计算字符为Temp1A、第三计算字符为Temp2A及第四计算字符为Temp3A,设定第一初始计算字符TempA=0x80;
步骤q-6.按如下位运算公式计算第四加密运算值keyA4:
keyA4=Temp0A<<24|Temp1A<<16|Temp2A<<8|Temp3A。
本发明的有益效果在于:一是,本发明的方法能同时满足防止数据损坏、丢失和数据加密的要求;二是,本发明的方法的加密算法采用了效率很高的位处理算法,能大幅度的提升加解密过程的效率,使得系统处理时间尽量缩短,减少工时;三是,本发明的方法的位处理算法是可逆的,简单高效的同时,便于算法的维护。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的方法的流程图;
图2是本发明实施例的方法的一种算法流程图;
图3是根据本发明实施例的方法的另一种算法流程图。
具体实施方式
下面结合附图对本发明作进一步详细的说明。
通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
在阐述具体实施例之前,此处先对以下本文涉及的相关技术背景及技术方案予以阐述说明,从而方便下文对具体实施例解释说明。
本发明方法所涉及的系统包括:电脑辅助的花样设计软件、工业缝纫设备的控制系统。
作为设计数据的源头,在导出的数据文件中加入固定的校验数据头,形成一个新的具有校验功能的数据文件;加入了校验数据头的数据文件经过N个层级(本文中实施例为两个层级)的加密计算后,得到了数据传输前的“密文”数据集合;密文数据的传输方式包括在线和离线两种方式,在线方式如以太网或是其他的通信介质,离线方式如USB接口的大容量存储器等;在“加密数据文件”通过上述的传输方式到达工业缝纫设备的控制系统提供的数据接口时,控制系统首先对“加密数据文件”进行解密算法的处理,得到“明文”数据后,先回提取校验数据头的数据块,其可以跟电脑辅助的花样设计软件导出数据时添加的校验数据头进行对比,检测传输过程中数据是否已经遭到损坏,因为加密算法是采用位处理的高速算法,所以传输过程中只要有1位数据出错,就会导致解密出来的数据均会出错,具有唯一性;在实际数据加密过程中,在得到了原始坐标数据之后,电脑辅助的花样设计软件或者是工业缝纫设备的控制系统在导出数据文件之前,会对原始坐标数据进行一个校验数据头的数据块包装,该校验数据头包括了一个32字节长度的动态数据块,该数据块的生成方式跟系统当前的时间戳和原始坐标数据的长度相关,除了该32字节长的动态数据块外,还有一个大于160字节长度的数据块,该数据块是原始坐标数据的一些描述信息,包括原始坐标数据的边界范围、加密方式选择、输出的文件名,以及根据时间戳生成的明文密钥等;综上可知,系统导出的数据文件可以描述为:校验头数据块,以及原始坐标数据的组合;
以下列出数据实例来说明校验头数据块和原始坐标数据的格式示意,每一行为16字节的数据,每个字节数据以16进制来进行表示,序号前带*号的是校验头数据块,剩余的是原始坐标数据,每一行16字节的数据的前面2个字节会作为一种命令码,标识该行数据的作用,然后紧接着的14个字节会根据不同的命令码存储对应的数据:
参考附图1-3,本发明的具体实施例如下:
一种缝纫设备控制器的数据加密方法,包括如下步骤:
S1.获取包装有校验数据头的原始坐标数据的数据文件;校验数据头包括基于时间戳与原始坐标数据长度生成的字节数为M的动态数据块和字节数为N的原始数据描述信息数据块,原始数据描述信息包括原始坐标数据边界、加密方式、输出文件名及明文密钥,M≥32,N≥160;
S2.获取加密运算值,包括:
S21.自数据文件的第M+1字节开始,两两字节进行互换并在字节互换后依次检测目标数据块的首字节是否为标记数据,目标数据块由16m个连续字节数据组成,m为自然数,标记数据为0X33;
S22.将首字节为标记数据的目标数据块均分设定为第一子目标数据块、第二子目标数据块、第三子目标数据块和第四子目标数据块,每一子目标数据块均包含4m个连续的字节数据;
S23.将第二子目标数据块的每一字节数据与第三子目标数据块的对应的字节数据进行异或位运算的结果与参考目标数据块对应的字节数据进行异或位运算并获得运算数据块,判断运算数据块的数据是否与第四子目标数据块的数据相等,参考目标数据块为Ox9672A1D6;
S24.若运算数据块的数据与第四子目标数据的数据相等,设定加密方式为动态密钥进行加密,并通过对获取的动态密钥的初始密钥进行赋值运算和与运算密钥异或位运算而计算出第一加密运算值;若运算数据块的数据与第四子目标数据的数据不相等,设定加密方式为静态密钥进行加密,并选定设定的固定密钥值为第二加密运算值或通过对选定的第一子目标数据块的字节数据进行移位运算后与第一运算密钥进行字节数据相加而计算出第二加密运算值;第一加密运算值和第二加密运算值均为2m字节的数据,固定密钥值为-1;
S25.将第一加密运算值或第二加密运算值进行高低字节换位、移位和字节数据相加而计算出第三加密运算值,第三加密运算值为4m字节的数据;
S3.数据加密,包括:
S31.将第一子目标数据块均分为第一目标加密数据块和第二目标加密数据块,且依次设定第二子目标数据块、第三子目标数据块和第四子目标数据块为第三目标加密数据块、第四目标加密数据块和第五目标加密数据块;
S32.将第一目标加密数据块和第二目标加密数据块依次与第一加密运算值或第二加密运算值进行异或运算并分别获得第一加密数据块和第二加密数据块;
S33.将第三目标加密数据块、第四目标加密数据块和第五目标加密数据块依次与第三加密运算值进行异或运算并分别获得第三加密数据块、第四加密数据块和第五加密数目块;
S34.将第一加密数据块、第二加密数据块、第三加密数据块、第四加密数据块和第五加密数据块的字节数据相加并构成一个加密的目标数据块;
S4.依次对连续的所述目标数据块执行S3直至数据文件结尾并获得加密数据文件。
需要说明的是,S1-S4为本实施例的层级1的加密方法,也就是加密方式1的方法,该方忽略数据文件中的前M个字节数据,从第M+1字节数据开始找标记数据并按加密方式1的方法进行加密
优选地,S21之前还包括:
S26.自数据文件的第M+1字节开始,依次检测第一目标数据块的首字节是否为第一标记数据直至数据文件末端,第一目标数据块由16m个连续字节数据组成,m为自然数,第一标记数据为0X14;
S27.若未检测到第一标记数据,则执行步骤a,若检测到第一标记数据,则执行步骤h后再执行步骤a;
S28.获取出现第一标记数据的第一目标数据块的下一第一目标数据块;
提取该下一第一目标数据块的末端的4m个字节数据,并将该4m个字节数据设定为处理单元;
将该下一第一目标数据块之后的每一第一目标数据块均分设定为四子数据块,并将处理单元的字节数据依次与每一子数据块对应的字节数据进行异或处理,直至数据文件末端。
需要说明的是,加密方式1的起始处理位置是根据数据文件的特定标记数据内容来确定的,该标记数据内容有两个:0x14和0x33,0x14标记表明加密方式1中的一个加密步骤,0x33标记表明加密方法1中的多个步骤,0x14标记的是可选步骤,由生成校验头数据块时决定,0x33标记的是必须要进行的步骤,两个标记数据均会出现在校验头数据块中,然后加密方式1从0x33标记开始处理原始数据,直到数据文件的结尾;而S26-S27执行的是:首先从起始第M+1个字节的数据开始,对每16m个字节长度的数据块进行查找特定的标记数据0x14,直到数据文件的结尾;如果找到了特定的标记数据0x14,则获取下一个16m字节长度的数据块,提取该数据块的最后4m字节数据,假定以A/B/C/D表示m个字节的数据,然后再从下一个16m字节长度的数据块开始,每4m个字节的内容分别与A/B/C/D进行异或运算,得到新的赋值,此操作直到数据文件的结尾;如果没有找到特定对的标记数据0x14,则跳过该步骤进入下一处理步骤,该下一处理步骤s21的部分操作,具体为从数据文件第M+1个字节开始位置,每2个字节进行字节互换处理,假定以A/B/C/D表示单个字节的数据,进行了字节互换处理后,顺序变为B/A/D/C;之后则按步骤S22进行处理。
优选地,,S2中,M=32,m=1,且S24中的运算密钥通过如下步骤计算出:
S24-1,将第二子目标数据块的每一字节数据与第三子目标数据块的对应的字节数据进行异或和位与运算,获得第一运算密钥;
S24-2,对第一运算密钥右移二位而获得运算密钥,记运算密钥为key0。
优选地,S24中按以下公式计算第一加密运算值,记第一加密运算值为keyA1,记动态密钥为key:
keyA1=key∧key0;
key+=3;
其中,key的初始值设为Ox3E7B,key+=3表示处理一个目标数据块后,动态密钥key的值进行自加3赋值运算。
优选地,S24中,获取第二加密运算值keyA2包括如下步骤:
S24-3.判断第一子目标数据的第三字节和第四字节是否与第四子目标数据的第一字节数据和第二字节数据与第一参考运算数据块的两字节数据进行异或运算的结果是否相等;
S24-4.若相等,则执行步骤d-5,否则,设定keyA2=-1;
S24-5.对提取的第一子目标数据的第三字节和第四字节右移二位运算并减去第二参考运算数据块,而获得第二加密运算值keyA2;
其中,第一参考运算数据块为Ox47AB,第二参考运算数据块为Ox88。
优选地,S25中计算出第三加密运算值包括如下步骤:
S25-1.将第一加密运算值keyA1或第二加密运算值keyA2的高、低字节进行换位,获取第一加密运算值keyA1或第二加密运算值keyA2换位运算后匹配的第一子运算值;
S25-2.将第一子运算值进行左移16为运算并获取第二子运算值;
S25-3.将第二子运算值与第一加密运算值keyA1或第二加密运算值keyA2进行字节数据相加而获取第三加密运算值,记第三加密运算值为keyD。
在完成加密方式1的加密后,还可以选择加密方式2进行深层次的加密,具体的包括
S5.提取并统计加密数据文件的数据字节数G,并将统计的数据字节数G与设定数据字节的阈值K进行比较;若G>K,则执行步骤Ⅵ,否则,则结束加密;
S6.获取加密数据文件的首字节数据与第一参考运算字节进行位与运算的运算结果并判断该运算结果是否等于0,若为0,则结束加密,若不为0,则执行步骤Ⅶ;
S7.获取第四加密运算值,记第四加密运算值为keyA4,包括:
S71.提取加密数据文件的第一目标区间内的字节数据并记为处理字节数据,将第一目标区间内的处理字节数据逐个进行异或运算的异或运算结果与第二参考运算字节进行异或运算并得第三子运算值,其中,第一目标区间位于加密数据文件的起始目标数据块内,且第一目标区间起始于加密数据文件的起始目标数据块的第r个字节数据并止于第n+r个字节数据,起始目标数据块由M个加密数据文件的字节数据组成;
S72.判断第三子运算值是否与起始目标数据块的第M个字节数据相等,若相等,则设定第三子运算值为第四初始运算密钥key04,若不相等,则设定第四初始运算密钥key04为固定初始密钥0X05;
S73.对第四初始运算密钥key04和从起始数据块中选取的第一处理目标数据块和第二处理目标数据块进行位与、位或及移位处理并获得加密初始位置和第四加密运算值keyA4;
S8.二次加密包括:
S81.自加密初始位置所对应的字节数据开始,从加密数据文件中提取与第四加密运算值的字节数相匹配的第二目标数据块并将第二目标数据块内的字节数据均分为第Ⅰ子目标数据块、第Ⅱ子目标数据块、第Ⅲ子目标数据块和第Ⅳ子目标数据块;
S82.将第Ⅰ子目标数据块、第Ⅱ子目标数据块、第Ⅲ子目标数据块和第Ⅳ子目标数据块的每一字节数据依次与第四加密运算值keyA4对应的字节数据进行异或运算并获得第Ⅰ加密数据块、第Ⅱ加密数据块、第Ⅲ加密数据块和第Ⅳ加密数据块;
S83.将第Ⅰ加密数据块、第Ⅱ加密数据块、第Ⅲ加密数据块和第Ⅳ加密数据块的字节数据相加并构成一个二次加密的目标数据块;
S9.依次对连续的所述第二目标数据块执行步骤Ⅷ直至加密数据文件结尾并获得二次加密数据文件。
优选地,S9之后还包括:
判断是否对所有的第二目标数据块执行S8和判断统计的执行S8的第二目标数据块的个数是否大于处理第二目标数据块的个数阈值Y,
若完成对所有的第二目标数据块执行S8,则统计执行过S8的第二目标数据块的个数;
若未完成对所有的第二目标数据块执行S8且统计的执行过S8的第二目标数据块的个数小于个数阈值K,则继续对下一第二目标数据块执行S8或对Y个第二目标数据块执行S8;
若统计的执行过S8的第二目标数据块的个数大于个数阈值Y,则终止执行步骤Ⅷ并记执行S8的第二目标数据块的个数为Y。
优选地,S5中,阈值K=544;S6中,第一参考运算字节为Ox02;S7中,r=22、n=9,第一处理目标数据块为起始数据块中的首字节数据和第4~15字节数据,第二处理目标数据块为起始数据块中的首字节数据、第12~15字节数据和第22~31字节数据,Y=128。
需要说明的是,S5-S9执行的是加密方式2的数据加密,也就是进行二次层级加密,具体的为:设定加密方法2生效的最小长度为544个字节,544个字节的长度基本包含了校验头数据块和一部分的原始坐标数据,通过解析数据起始的第1字节数据跟固定数据0x02的位与结果来确定是否要进行加密方式2的处理;再根据数据起始的第22~31字节数据逐个字节进行异或运算,得到结果再与固定数据0x55进行异或运算,根据最后的运算结果值是否等于数据起始的第32字节数据的值,来决定密钥key0的值;根据数据起始的32个字节的数据以及key0的值进行位与、位或、异或运算,得到加密方式2下一个步骤处理开始的位置和新的32位数据密钥keyA;在加密方式2的最后一个步骤中,从上一个步骤计算确定的处理开始位置开始,每隔4个字节长度的数据块进行循环处理,处理方法是:假定4个字节的数据以A/B/C/D来表示,则数据A与keyA的最高8位进行异或运算,结果赋值给A;数据B与keyA的次高8位进行异或运算,结果赋值给B;以此类推,直到数据D运算完成后,进行处理次数计数累加,结束加密方式2处理条件为,数据处理已经到达数据文件结尾或是处理次数计数达到128次。
优选地,S73中获取加密初始位置包括如下步骤:
S73-1.提取第四初始运算密钥key04的四字节数据和起始数据块的首字节数据和第4~15字节数据;
S73-2.设定首字节数据和12~15字节数据为第一运算子字节数据块,设定key04的四字节数据为第二运算子字节数据块,设定第4~8字节数据为第三运算子字节数据块,设定第8~11字节数据为第四运算子字节数据块;分别对第一运算子字节数据块、第二运算子字节数据块、第三运算子字节数据块和第四运算子字节数据块的每一字节数据进行设定数据位的位与判断,并根据位与判断结果对初始计算字符进行按位或运算而分别获得第一计算字符为Temp0、第二计算字符为Temp1、第三计算字符为Temp2及第四计算字符为Temp3,设初始计算字符Temp=0x80;
S73-3.按如下位运算公式计算出加密初始位置,记加密初始位置为Temp32W:
Temp32W=Temp0<<24|Temp1<<16|Temp2<<8|Temp3
S73中获取第四加密运算值keyA4包括如下步骤:
S73-4.提取起始数据块的首字节数据、第12~15字节数据和第22~31字节数据;
S73-5.设定首字节数据和12~15字节数据为第五运算子字节数据块,设定第22~23字节数据为第六运算子字节数据块,设定第24~27字节数据为第七运算子字节数据块,设定第28~31字节数据为第八运算子字节数据块;分别对第五运算子字节数据块、第六运算子字节数据块、第七运算子字节数据块和第八运算子字节数据块的每一字节数据进行设定数据位的位与判断,并根据位与判断结果对第一初始计算字符进行按位或运算而分别获得第五计算字符为Temp0A、第二计算字符为Temp1A、第三计算字符为Temp2A及第四计算字符为Temp3A,设定第一初始计算字符TempA=0x80;
S73-6.按如下位运算公式计算第四加密运算值keyA4:
keyA4=Temp0A<<24|Temp1A<<16|Temp2A<<8|Temp3A。
以上并非对本发明的技术范围作任何限制,凡依据本发明技术实质对以上的实施例所作的任何修改、等同变化与修饰,均仍属于本发明的技术方案的范围内。
Claims (10)
1.一种缝纫设备控制器的数据加密方法,其特征在于,包括如下步骤:
步骤Ⅰ 获取包装有校验数据头的原始坐标数据的数据文件;校验数据头包括基于时间戳与原始坐标数据长度生成的字节数为M的动态数据块和字节数为N的原始数据描述信息数据块,原始数据描述信息包括原始坐标数据边界、加密方式、输出文件名及明文密钥,M≥32,N≥160;
步骤Ⅱ 获取加密运算值,包括:
步骤a.自数据文件的第M+1字节开始,两两字节进行互换并在字节互换后依次检测目标数据块的首字节是否为标记数据,目标数据块由16m个连续字节数据组成,m为自然数,标记数据为0X33;
步骤b.将首字节为标记数据的目标数据块均分设定为第一子目标数据块、第二子目标数据块、第三子目标数据块和第四子目标数据块,每一子目标数据块均包含4m个连续的字节数据;
步骤c.将第二子目标数据块的每一字节数据与第三子目标数据块的对应的字节数据进行异或位运算的结果与参考目标数据块对应的字节数据进行异或位运算并获得运算数据块,判断运算数据块的数据是否与第四子目标数据块的数据相等,参考目标数据块为Ox9672A1D6;
步骤d.若运算数据块的数据与第四子目标数据的数据相等,设定加密方式为动态密钥进行加密,并通过对获取的动态密钥的初始密钥进行赋值运算和与运算密钥异或位运算而计算出第一加密运算值;若运算数据块的数据与第四子目标数据的数据不相等,设定加密方式为静态密钥进行加密,并选定设定的固定密钥值为第二加密运算值或通过对选定的第一子目标数据块的字节数据进行移位运算后与第一运算密钥进行字节数据相加而计算出第二加密运算值;第一加密运算值和第二加密运算值均为2m字节的数据,固定密钥值为-1;
步骤e.将第一加密运算值或第二加密运算值进行高低字节换位、移位和字节数据相加而计算出第三加密运算值,第三加密运算值为4m字节的数据;
步骤Ⅲ 数据加密,包括:
步骤ⅰ.将第一子目标数据块均分为第一目标加密数据块和第二目标加密数据块,且依次设定第二子目标数据块、第三子目标数据块和第四子目标数据块为第三目标加密数据块、第四目标加密数据块和第五目标加密数据块;
步骤ⅱ.将第一目标加密数据块和第二目标加密数据块依次与第一加密运算值或第二加密运算值进行异或运算并分别获得第一加密数据块和第二加密数据块;
步骤ⅲ.将第三目标加密数据块、第四目标加密数据块和第五目标加密数据块依次与第三加密运算值进行异或运算并分别获得第三加密数据块、第四加密数据块和第五加密数目块;
步骤ⅳ.将第一加密数据块、第二加密数据块、第三加密数据块、第四加密数据块和第五加密数据块的字节数据相加并构成一个加密的目标数据块;
步骤Ⅳ 依次对连续的所述目标数据块执行步骤Ⅲ直至数据文件结尾并获得加密数据文件。
2.根据权利要求1所述的一种缝纫设备控制器的数据加密方法,其特征在于,所述步骤a之前还包括:
步骤f.自数据文件的第M+1字节开始,依次检测第一目标数据块的首字节是否为第一标记数据直至数据文件末端,第一目标数据块由16m个连续字节数据组成,m为自然数,第一标记数据为0X14;
步骤g.若未检测到第一标记数据,则执行步骤a,若检测到第一标记数据,则执行步骤h后再执行步骤a;
步骤h.获取出现第一标记数据的第一目标数据块的下一第一目标数据块;
提取该下一第一目标数据块的末端的4m个字节数据,并将该4m个字节数据设定为处理单元;
将该下一第一目标数据块之后的每一第一目标数据块均分设定为四子数据块,并将处理单元的字节数据依次与每一子数据块对应的字节数据进行异或处理,直至数据文件末端。
3.根据权利要求1或2所述的一种缝纫设备控制器的数据加密方法,其特征在于,步骤Ⅱ中,M=32,m=1,且步骤d中的运算密钥通过如下步骤计算出:
步骤d-1,将第二子目标数据块的每一字节数据与第三子目标数据块的对应的字节数据进行异或和位与运算,获得第一运算密钥;
步骤d-2,对第一运算密钥右移二位而获得运算密钥,记运算密钥为key0。
4.根据权利要求3所述的一种缝纫设备控制器的数据加密方法,其特征在于,步骤d中按以下公式计算第一加密运算值,记第一加密运算值为keyA1,记动态密钥为key:
keyA1=key∧key0;
key+=3;
其中,key的初始值设为Ox3E7B,key+=3表示处理一个目标数据块后,动态密钥key的值进行自加3赋值运算。
5.根据权利要求4所述的一种缝纫设备控制器的数据加密方法,其特征在于,步骤d中,获取第二加密运算值keyA2包括如下步骤:
步骤d-3.判断第一子目标数据的第三字节和第四字节是否与第四子目标数据的第一字节数据和第二字节数据与第一参考运算数据块的两字节数据进行异或运算的结果是否相等;
步骤d-4.若相等,则执行步骤d-5,否则,设定keyA2=-1;
步骤d-5对提取的第一子目标数据的第三字节和第四字节右移二位运算并减去第二参考运算数据块,而获得第二加密运算值keyA2;
其中,第一参考运算数据块为Ox47AB,第二参考运算数据块为Ox88。
6.根据权利要求5所述的一种缝纫设备控制器的数据加密方法,其特征在于,步骤e中计算出第三加密运算值包括如下步骤:
步骤e-1.将第一加密运算值keyA1或第二加密运算值keyA2的高、低字节进行换位,获取第一加密运算值keyA1或第二加密运算值keyA2换位运算后匹配的第一子运算值;
步骤e-2.将第一子运算值进行左移16为运算并获取第二子运算值;
步骤e-3.将第二子运算值与第一加密运算值keyA1或第二加密运算值keyA2进行字节数据相加而获取第三加密运算值,记第三加密运算值为keyD。
7.根据权利要求6所述的一种缝纫设备控制器的数据加密方法,其特征在于,还包括如下步骤:
步骤Ⅴ.提取并统计加密数据文件的数据字节数G,并将统计的数据字节数G与设定数据字节的阈值K进行比较;若G>K,则执行步骤Ⅵ,否则,则结束加密;
步骤Ⅵ.获取加密数据文件的首字节数据与第一参考运算字节进行位与运算的运算结果并判断该运算结果是否等于0,若为0,则结束加密,若不为0,则执行步骤Ⅶ;
步骤Ⅶ.获取第四加密运算值,记第四加密运算值为keyA4,包括:
步骤k.提取加密数据文件的第一目标区间内的字节数据并记为处理字节数据,将第一目标区间内的处理字节数据逐个进行异或运算的异或运算结果与第二参考运算字节进行异或运算并得第三子运算值,其中,第一目标区间位于加密数据文件的起始目标数据块内,且第一目标区间起始于加密数据文件的起始目标数据块的第r个字节数据并止于第n+r个字节数据,起始目标数据块由M个加密数据文件的字节数据组成;
步骤l.判断第三子运算值是否与起始目标数据块的第M个字节数据相等,若相等,则设定第三子运算值为第四初始运算密钥key04,若不相等,则设定第四初始运算密钥key04为固定初始密钥0X05;
步骤q.对第四初始运算密钥key04和从起始数据块中选取的第一处理目标数据块和第二处理目标数据块进行位与、位或及移位处理并获得加密初始位置和第四加密运算值keyA4;
步骤Ⅷ.二次加密包括:
步骤h.自加密初始位置所对应的字节数据开始,从加密数据文件中提取与第四加密运算值的字节数相匹配的第二目标数据块并将第二目标数据块内的字节数据均分为第Ⅰ子目标数据块、第Ⅱ子目标数据块、第Ⅲ子目标数据块和第Ⅳ子目标数据块;
步骤j.将第Ⅰ子目标数据块、第Ⅱ子目标数据块、第Ⅲ子目标数据块和第Ⅳ子目标数据块的每一字节数据依次与第四加密运算值keyA4对应的字节数据进行异或运算并获得第Ⅰ加密数据块、第Ⅱ加密数据块、第Ⅲ加密数据块和第Ⅳ加密数据块;
步骤v.将第Ⅰ加密数据块、第Ⅱ加密数据块、第Ⅲ加密数据块和第Ⅳ加密数据块的字节数据相加并构成一个二次加密的目标数据块;
步骤Ⅸ.依次对连续的所述第二目标数据块执行步骤Ⅷ直至加密数据文件结尾并获得二次加密数据文件。
8.根据权利要求7所述的一种缝纫设备控制器的数据加密方法,其特征在于,步骤IX之后还包括:
判断是否对所有的第二目标数据块执行步骤Ⅷ和判断统计的执行步骤Ⅷ的第二目标数据块的个数是否大于处理第二目标数据块的个数阈值Y,
若完成对所有的第二目标数据块执行步骤Ⅷ,则统计执行过步骤Ⅷ的第二目标数据块的个数;
若未完成对所有的第二目标数据块执行步骤Ⅷ且统计的执行过步骤Ⅷ的第二目标数据块的个数小于个数阈值K,则继续对下一第二目标数据块执行步骤Ⅷ或对Y个第二目标数据块执行步骤Ⅷ;
若统计的执行过步骤Ⅷ的第二目标数据块的个数大于个数阈值Y,则终止执行步骤Ⅷ并记执行步骤Ⅷ的第二目标数据块的个数为Y。
9.根据权利要求8所述的一种缝纫设备控制器的数据加密方法,其特征在于,步骤Ⅴ中,阈值K=544;步骤Ⅵ中,第一参考运算字节为Ox02;步骤Ⅶ中,r=22、n=9,第一处理目标数据块为起始数据块中的首字节数据和第4~15字节数据,第二处理目标数据块为起始数据块中的首字节数据、第12~15字节数据和第22~31字节数据,Y=128。
10.根据权利要求9所述的一种缝纫设备控制器的数据加密方法,其特征在于,步骤q中获取加密初始位置包括如下步骤:
步骤q-1.提取第四初始运算密钥key04的四字节数据和起始数据块的首字节数据和第4~15字节数据;
步骤q-2.设定首字节数据和12~15字节数据为第一运算子字节数据块,设定key04的四字节数据为第二运算子字节数据块,设定第4~8字节数据为第三运算子字节数据块,设定第8~11字节数据为第四运算子字节数据块;分别对第一运算子字节数据块、第二运算子字节数据块、第三运算子字节数据块和第四运算子字节数据块的每一字节数据进行设定数据位的位与判断,并根据位与判断结果对初始计算字符进行按位或运算而分别获得第一计算字符为Temp0、第二计算字符为Temp1、第三计算字符为Temp2及第四计算字符为Temp3,设初始计算字符Temp=0x80;
步骤q-3.按如下位运算公式计算出加密初始位置,记加密初始位置为Temp32W:
Temp32W=Temp0<<24|Temp1<<16|Temp2<<8|Temp3
步骤q中获取第四加密运算值keyA4包括如下步骤:
步骤q-4.提取起始数据块的首字节数据、第12~15字节数据和第22~31字节数据;
步骤q-5.设定首字节数据和12~15字节数据为第五运算子字节数据块,设定第22~23字节数据为第六运算子字节数据块,设定第24~27字节数据为第七运算子字节数据块,设定第28~31字节数据为第八运算子字节数据块;分别对第五运算子字节数据块、第六运算子字节数据块、第七运算子字节数据块和第八运算子字节数据块的每一字节数据进行设定数据位的位与判断,并根据位与判断结果对第一初始计算字符进行按位或运算而分别获得第五计算字符为Temp0A、第二计算字符为Temp1A、第三计算字符为Temp2A及第四计算字符为Temp3A,设定第一初始计算字符TempA=0x80;
步骤q-6.按如下位运算公式计算第四加密运算值keyA4:
keyA4=Temp0A<<24|Temp1A<<16|Temp2A<<8|Temp3A。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910411657.XA CN110166449A (zh) | 2019-05-16 | 2019-05-16 | 一种缝纫设备控制器的数据加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910411657.XA CN110166449A (zh) | 2019-05-16 | 2019-05-16 | 一种缝纫设备控制器的数据加密方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110166449A true CN110166449A (zh) | 2019-08-23 |
Family
ID=67631106
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910411657.XA Pending CN110166449A (zh) | 2019-05-16 | 2019-05-16 | 一种缝纫设备控制器的数据加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110166449A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116015981A (zh) * | 2023-03-21 | 2023-04-25 | 深圳市星火数控技术有限公司 | 一种缝纫数控文件数据加密方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080079597A1 (en) * | 2006-09-29 | 2008-04-03 | Rockwell Automation Technologies, Inc. | Alarm/event encryption in an industrial environment |
CN105592107A (zh) * | 2016-03-01 | 2016-05-18 | 南京富岛信息工程有限公司 | 一种基于fpga的工业过程数据安全采集装置及方法 |
CN106470102A (zh) * | 2015-08-20 | 2017-03-01 | 三星电子株式会社 | 密码装置、具有密码装置的存储装置、其加密和解密方法 |
-
2019
- 2019-05-16 CN CN201910411657.XA patent/CN110166449A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080079597A1 (en) * | 2006-09-29 | 2008-04-03 | Rockwell Automation Technologies, Inc. | Alarm/event encryption in an industrial environment |
CN106470102A (zh) * | 2015-08-20 | 2017-03-01 | 三星电子株式会社 | 密码装置、具有密码装置的存储装置、其加密和解密方法 |
CN105592107A (zh) * | 2016-03-01 | 2016-05-18 | 南京富岛信息工程有限公司 | 一种基于fpga的工业过程数据安全采集装置及方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116015981A (zh) * | 2023-03-21 | 2023-04-25 | 深圳市星火数控技术有限公司 | 一种缝纫数控文件数据加密方法 |
CN116015981B (zh) * | 2023-03-21 | 2023-06-23 | 深圳市星火数控技术有限公司 | 一种缝纫数控文件数据加密方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108055120B (zh) | 一种检测aes-otr算法抵御差分故障攻击的方法 | |
JPWO2005031579A1 (ja) | タグプライバシー保護方法、タグ装置、バックエンド装置、更新装置、更新依頼装置、それらのプログラム及びこれらのプログラムを格納した記録媒体 | |
CN101378314B (zh) | 一种密钥序列的生成方法和密钥产生装置 | |
JP2007195132A (ja) | 暗号処理装置 | |
CN108052805B (zh) | 一种数据加解密方法和装置 | |
CN110166449A (zh) | 一种缝纫设备控制器的数据加密方法 | |
CN109302280A (zh) | 一种aes密钥扩展方法 | |
CN109787745A (zh) | 一种基于多推断利用的分组密码容错代数旁路分析方法 | |
CN114338217B (zh) | 一种数据加密传输方法 | |
CN112654037A (zh) | 一种基于5g通信技术的工业网络安全加密处理方法 | |
CN109218008A (zh) | 一种针对sm4密钥扩展算法的模板攻击方法 | |
CN110912672A (zh) | 一种检测colm认证加密算法抵御差分故障攻击的方法 | |
CN113158179B (zh) | 自动发现泄露模型的有学习的侧信道攻击方法及加密设备 | |
CN105281889B (zh) | 一种基于侧信道泄漏的算法还原方法和系统 | |
CN112532374A (zh) | 一种检测silc认证加密算法抵御差分故障攻击的方法 | |
CN102571326A (zh) | 分级管理模式密钥管理系统的安全性测试方法 | |
CN100393026C (zh) | 二进制数据块加密变换方法 | |
CN110601818B (zh) | 一种检测sms4密码算法抵御统计故障攻击的方法 | |
CN115695024A (zh) | 一种用于plc信号的冗余检测方法及系统 | |
CN117032592B (zh) | 一种基于区块链的收款机收款数据储存系统 | |
JP2005045752A (ja) | 暗号処理装置、および暗号処理方法 | |
Ngo et al. | Higher-order Boolean masking does not prevent side-channel attacks on LWE/LWR-based PKE/KEMs | |
Yoshikawa et al. | Security verification simulator for fault analysis attacks | |
Wu et al. | Correlation power analysis attack against synchronous stream ciphers | |
CN117294429B (zh) | 基于区块链的公共资源交易数据加解密方法、系统及介质 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190823 |
|
WD01 | Invention patent application deemed withdrawn after publication |