CN107911354A - 一种复合并行数据加密方法 - Google Patents
一种复合并行数据加密方法 Download PDFInfo
- Publication number
- CN107911354A CN107911354A CN201711084839.8A CN201711084839A CN107911354A CN 107911354 A CN107911354 A CN 107911354A CN 201711084839 A CN201711084839 A CN 201711084839A CN 107911354 A CN107911354 A CN 107911354A
- Authority
- CN
- China
- Prior art keywords
- data
- matrix
- row
- cipher key
- serial
- 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.)
- Granted
Links
Classifications
-
- 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
- H04L63/0435—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 wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
-
- 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/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
- Error Detection And Correction (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供的一种复合并行数据加密方法。通过对数据流进行分块,形成256bit的数据块,存入4*4的矩阵中,然后生成64位校验码,得到最终的5*4的数据矩阵;通过矩阵变换和矩阵融合进行加密。包括以下步骤:1、读取需要传输的数据,记录读取位置;2、将数据流分块,形成数据矩阵并通过与密钥矩阵的矩阵操作进行加密;3、发送加密后的数据,分享密钥矩阵;4、接收到加密后的数据,进行解密;5、判断数据是否被篡改并返回判断信息;本发明提供了一种复合并行数据加密方法,针对数据通信过程中的数据安全问题,以串行数据转换成并行数据进行处理的方式,实现了通信数据的加密和校验,解决了通信过程中数据安全的问题。
Description
技术领域
本发明提供一种复合并行数据加密方法,它涉及对称加密技术,尤其涉及一种数据分块形成数据矩阵下的复合并行数据加密的方法。属于数据加密技术领域。
背景技术
加密作为保障数据安全的一种方式有着悠久的历史,它是建立在对信息进行数学编码和解码的基础上进行的。随着计算机技术的发展,处理器运算能力的增强,过去的密码算法变得更加容易被破解,新的数据加密方式被不断地研究出来。传统的加密类型主要分为两种,对称加密方式与非对称加密方式。非对称密码算法安全性强,但是加解密算法复杂,硬件实现复杂度高;保密密钥和对称密钥加密算法通过软件实现编解码耗时很长,但使用硬件进行加解密计算速度很快。杨兴等人在2013年对无线局域网数据伪装技术进行研究和实现,针对当前网络安全隐患,提出了一种无线局域网的防入侵安全方案,采用数据伪装技术,模拟接入点发送数据包,阻断非法终端和接入点的通信,并在嵌入式系统平台上进行总体实现,但是其加密算法过于简单。
发明内容
(一)本发明的目的
本发明提供了一种复合并行数据加密方法。本方法首先对传输的数据进行分块处理,形成一个数据矩阵,然后对数据矩阵进行矩阵操作生成并给出两个密钥矩阵,最后将数据矩阵与两个密钥矩阵进行融合计算生成用于数据传输的传输矩阵,达到加密的效果。
(二)技术方案
具体来说,本发明提供了一种复合并行数据加密方法,该方法具体步骤包括:
步骤1,读取需要传输的数据,并且记录数据读取位置;
步骤2,将读取到的串行数据分成256比特的数据块,然后对划分好的数据块进行串并转换形成数据矩阵,并为每行数据生成一个校验值保存在数据矩阵中,通过矩阵变换和与给定的密钥矩阵进行矩阵操作形成传输矩阵,完成矩阵加密;
步骤3,将加密后的传输矩阵进行并串转换,发送给数据接收方,同时向接收方共享密钥矩阵;
步骤4,数据接收方接收到传输来的串行数据后,对串行数据进行串并转换,恢复出来传输矩阵,然后通过步骤2中矩阵变换的反变换恢复出带有校验值的数据矩阵;
步骤5,通过数据矩阵中每行数据的校验值,判断传输的数据是否被篡改并返回判断信息。
其中,在步骤1中所述的“读取需要传输的数据,并且记录数据读取位置”,其具体作法如下:
在通信过程中,需要传输的数据是一组串行数据,首先从串行数据中读取需要传输的部分,通过一个专门设计的计数器记录数据的读取位置,为数据的加密、恢复和校验做好准备。
其中,在步骤2中所述的“将读取到的串行数据分成256比特的数据块,然后对划分好的数据块进行串并转换形成数据矩阵,并为每行数据生成一个校验值保存在数据矩阵中,通过矩阵变换和与给定的密钥矩阵进行矩阵操作形成传输矩阵,完成矩阵加密”,其具体作法步骤如下:
步骤21,利用计数器将需要传输的串行数据流分成256比特的数据块,在此基础上每个数据块形成一个4*4的数据矩阵,每一个矩阵元素是一个16比特的数据,即每行每列均有64比特的数据;
步骤22,在读取数据形成数据矩阵的同时,对每一行数据进行一次CRC-16校验计算,即每64比特数据生成一个16比特的校验码,并插入到数据矩阵的第5行,最终形成一个5*4的数据矩阵;
步骤23,给出共享的两个5*4的密钥矩阵,分别命名为密钥矩阵B0、密钥矩阵B1;将5*4的数据矩阵进行矩阵变换,打乱数据顺序,相当于进行简单的矩阵乘法,再与密钥矩阵B0进行异或操作,与密钥矩阵B1进行同或操作,生成用来传输的传输矩阵,完成数据加密。
其中,在步骤21中所述的“利用计数器将需要传输的串行数据流分成256比特的数据块,在此基础上每个数据块形成一个4*4的数据矩阵,每一个矩阵元素是一个16比特的数据,即每行每列均有64比特的数据”,其具体作法如下:
首先使用专门设计的计数器将需要传输的串行数据流按照每256比特的大小分成若干个数据块,然后以256比特大小的数据块为单位,将每个数据块中的256比特数据转换成一个4行4列的数据矩阵,共16个元素,因此每个元素为一个16比特的数据,每行每列均有64比特的数据。
其中,在步骤22中所述的“CRC-16校验”,是指一种16位的循环冗余校验,它是数据通讯过程中最常用的校验方式,可以提供1/65536的误码碰撞概率。
其中,在步骤22中所述的“在读取数据形成数据矩阵的同时,对每一行数据进行一次CRC-16校验计算,即每64比特数据生成一个16比特的校验码,并插入到数据矩阵的第5行,最终形成一个5*4的数据矩阵”,其具体作法如下:
在读取数据形成数据矩阵时,每行均为64比特的数据,采用CRC-16校验的方式为每行数据生成一个16比特的校验码,并依次加入到数据矩阵的第5行。即第1行的校验码放在第5行第1列位置,第2行校验码放在第5行第2列位置,以此类推。当某一行的数据被篡改后,对应的校验码会发生变化,接收端可以及时发现数据的篡改。
其中,在步骤23中所述的“给出共享的两个5*4的密钥矩阵,分别命名为密钥矩阵B0、密钥矩阵B1;将5*4的数据矩阵进行矩阵变换,打乱数据顺序,相当于进行简单的矩阵乘法,再与密钥矩阵B0进行异或操作,与密钥矩阵B1进行同或操作,生成用来传输的传输矩阵,完成数据加密”,其具体作法如下:
数据发送端提供两个5*4的矩阵作为本发明所述对称加密方式的密钥矩阵,分别将这两个密钥矩阵命名为密钥矩阵B0和密钥矩阵B1;将步骤22中所述的5*4规模的数据矩阵进行矩阵变换,打乱原有矩阵中数据的顺序和位置,再将得到的新的乱序矩阵依次与密钥矩阵B0进行异或操作,与密钥矩阵B1进行同或操作,并将生成的新矩阵成为传输矩阵。至此完成数据矩阵的加密过程。
其中,在步骤3中所述的“将加密后的传输矩阵进行并串转换,发送给数据接收方,同时向接收方共享密钥矩阵”,其具体作法如下:
在数据进行并行加密后,需要将加密后的并行数据转换成串行数据,并发送出去。先将加密后的传输矩阵转换成串行数据,然后按照串行通信的要求依次发送给数据接收方。密钥矩阵作为对称加密的密钥需要以安全方式共享给接收方。
其中,在步骤4中所述的“数据接收方接收到传输来的串行数据后,对串行数据进行串并转换,恢复出来传输矩阵,然后通过步骤2中矩阵变换的反变换恢复出带有校验值的数据矩阵”,其具体作法步骤如下:
步骤41,对接收到的数据进行串并转换,得到5*4的密文矩阵;
步骤42,按照将密文矩阵与共享的密钥矩阵相融合,即与B1同或,B0异或,将融合后的矩阵按照加密时矩阵变换的操作进行反变换,得到原始的数据矩阵。
其中,在步骤41中所述的“对接收到的数据进行串并转换,得到5*4的密文矩阵”,其具体作法如下:
数据接收方在接到传输来的串行数据后,对串行数据进行串并转换,从串行数据中可以得到5*4的加密后的密文矩阵,也即传输矩阵。
其中,在步骤42中所述的“按照将密文矩阵与共享的密钥矩阵相融合,即与B1同或,B0异或,将融合后的矩阵按照加密时矩阵变换的操作进行反变换,得到原始的数据矩阵”,其具体作法如下:
将得到的密文矩阵、密钥矩阵B0和密钥矩阵B1进行矩阵运算,采用与步骤2中所述“通过矩阵变换和与给定的密钥矩阵进行矩阵操作形成传输矩阵,完成矩阵加密”的矩阵操作的反顺序操作完成。即首先将密文矩阵与密钥矩阵B1进行矩阵的同或操作,再于密钥矩阵B0进行矩阵的异或操作,最后再进行矩阵变换的反变换,可以得到原始的数据矩阵。
其中,在步骤5中所述的“通过数据矩阵中每行数据的校验值,判断传输的数据是否被篡改并返回判断信息”,其具体作法步骤如下:
步骤51,对得到的数据矩阵的前四行的数据分别进行CRC-16校验码计算,并且与第五行数据进行比对;
步骤52,若CRC-16校验码比对正确,则将数据存入RAM中;若校验码比对错误,则将数据丢弃并返回该数据块的地址和错误数据的地址给发送方;发送方可以根据初始地址和错误数据地址找到错误数据并重新发送被篡改的数据。
其中,在步骤51中所述的“对得到的数据矩阵的前四行的数据分别进行CRC-16校验码计算,并且与第五行数据进行比对”,其具体作法如下:
对于接收端得到的数据矩阵,每行均为64比特的数据,采用CRC-16校验的方式为每行数据生成一个16比特的校验码,并依次与数据矩阵的第5行中对应位置的校验码进行对比。即第1行的校验码与第5行第1列位置的校验码进行比对,第2行的校验码与第5行第2列位置的校验码进行比对,以此类推。当某一行的数据被篡改后,对应的校验码会发生变化,接收端可以及时发现数据的篡改。
其中,在步骤52中所述的“若CRC-16校验码比对正确,则将数据存入存储器中;若校验码比对错误,则将数据丢弃并返回该数据块的地址和错误数据的地址给发送方;发送方可以根据初始地址和错误数据地址找到错误数据并重新发送被篡改的数据”,其具体作法如下:
在CRC-16校验码的比对过程中,如果校验码比对一致,则表示改数据没有被篡改,与发送端发送的数据一致,则将该行数据存入到接收端的存储器中,该行数据传输完成;如果校验码不对不一致,则将该行数据丢弃,并将该数据块的地址和错误的行号一同发送给数据发送端,发送端可以根据初始地址和错误数据地址找到错误数据并重新发送被篡改的数据。
通过以上步骤,本发明提供了一种复合并行数据加密方法,针对数据通信过程中的数据安全问题,以串行数据转换成并行数据进行处理的方式,实现了通信数据的加密和校验,解决了通信过程中数据安全的问题。
(三)本发明的优点及功效
本发明的有益功效在于:
1.本发明针对于通信过程中的数据安全问题,采用将串行数据转换成并行数据矩阵的方式进行加密操作,通过矩阵运算有效的打乱了原有的数据顺序和关系,很好的起到了数据混合的作用。同时,矩阵操作具有可逆性,在接受端,通过原有矩阵变换的反变换可以快速的恢复出来原始数据矩阵
2.本发明在数据矩阵变换和加密前,对每行数据进行校验码计算并将校验码加入到数据矩阵中;在接收端,通过校验数据矩阵中的校验码可以检测加密数据在传输过程中是否被篡改。在保证数据机密性的同时,保证了数据的完整性。
3.本发明所述的加密方法与传统对称加密算法相比,具有算法简单,易于操作的特点。在软硬件实现上均可以达到较好的计算效率。
附图说明
图1是本发明所述方法的流程图。
具体实施方式
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
图1是本发明的复合并行数据加密解密的流程图。
本发明一种复合并行数据加密方法,如图1所示,该方法实施步骤如下:
步骤1,读取需要传输的数据,并且记录数据读取位置;
步骤2,将读取到的串行数据分成256比特的数据块,然后对划分好的数据块进行串并转换形成数据矩阵,并为每行数据生成一个校验值保存在数据矩阵中,通过矩阵变换和与给定的密钥矩阵进行矩阵操作形成传输矩阵,完成矩阵加密;
步骤3,将加密后的传输矩阵进行并串转换,发送给数据接收方,同时向接收方共享密钥矩阵;
步骤4,数据接收方接收到传输来的串行数据后,对串行数据进行串并转换,恢复出来传输矩阵,然后通过步骤2中矩阵变换的反变换恢复出带有校验值的数据矩阵;
步骤5,通过数据矩阵中每行数据的校验值,判断传输的数据是否被篡改并返回判断信息。
其中,在步骤1中所述的“读取需要传输的数据,并且记录数据读取位置”,其具体作法如下:
在通信过程中,需要传输的数据是一组串行数据,首先从串行数据中读取需要传输的部分,通过一个专门设计的计数器记录数据的读取位置,为数据的加密、恢复和校验做好准备。
其中,在步骤2中所述的“将读取到的串行数据分成256比特的数据块,然后对划分好的数据块进行串并转换形成数据矩阵,并为每行数据生成一个校验值保存在数据矩阵中,通过矩阵变换和与给定的密钥矩阵进行矩阵操作形成传输矩阵,完成矩阵加密”,其具体作法步骤如下:
步骤21,利用计数器将需要传输的串行数据流分成256比特的数据块,在此基础上每个数据块形成一个4*4的数据矩阵,每一个矩阵元素是一个16比特的数据,即每行每列均有64比特的数据;
步骤22,在读取数据形成数据矩阵的同时,对每一行数据进行一次CRC-16校验计算,即每64比特数据生成一个16比特的校验码,并插入到数据矩阵的第5行,最终形成一个5*4的数据矩阵;
步骤23,给出共享的两个5*4的密钥矩阵,分别命名为密钥矩阵B0、密钥矩阵B1;将5*4的数据矩阵进行矩阵变换,打乱数据顺序,相当于进行简单的矩阵乘法,再与密钥矩阵B0进行异或操作,与密钥矩阵B1进行同或操作,生成用来传输的传输矩阵,完成数据加密。
其中,在步骤21中所述的“利用计数器将需要传输的串行数据流分成256比特的数据块,在此基础上每个数据块形成一个4*4的数据矩阵,每一个矩阵元素是一个16比特的数据,即每行每列均有64比特的数据”,其具体作法如下:
首先使用专门设计的计数器将需要传输的串行数据流按照每256比特的大小分成若干个数据块,然后以256比特大小的数据块为单位,将每个数据块中的256比特数据转换成一个4行4列的数据矩阵,共16个元素,因此每个元素为一个16比特的数据,每行每列均有64比特的数据。
其中,在步骤22中所述的“CRC-16校验”,是指一种16位的循环冗余校验,它是数据通讯过程中最常用的校验方式,可以提供1/65536的误码碰撞概率。
其中,在步骤22中所述的“在读取数据形成数据矩阵的同时,对每一行数据进行一次CRC-16校验计算,即每64比特数据生成一个16比特的校验码,并插入到数据矩阵的第5行,最终形成一个5*4的数据矩阵”,其具体作法如下:
在读取数据形成数据矩阵时,每行均为64比特的数据,采用CRC-16校验的方式为每行数据生成一个16比特的校验码,并依次加入到数据矩阵的第5行。即第1行的校验码放在第5行第1列位置,第2行校验码放在第5行第2列位置,以此类推。当某一行的数据被篡改后,对应的校验码会发生变化,接收端可以及时发现数据的篡改。
其中,在步骤23中所述的“给出共享的两个5*4的密钥矩阵,分别命名为密钥矩阵B0、密钥矩阵B1;将5*4的数据矩阵进行矩阵变换,打乱数据顺序,相当于进行简单的矩阵乘法,再与密钥矩阵B0进行异或操作,与密钥矩阵B1进行同或操作,生成用来传输的传输矩阵,完成数据加密”,其具体作法如下:
数据发送端提供两个5*4的矩阵作为本发明所述对称加密方式的密钥矩阵,分别将这两个密钥矩阵命名为密钥矩阵B0和密钥矩阵B1;将步骤22中所述的5*4规模的数据矩阵进行矩阵变换,打乱原有矩阵中数据的顺序和位置,再将得到的新的乱序矩阵依次与密钥矩阵B0进行异或操作,与密钥矩阵B1进行同或操作,并将生成的新矩阵成为传输矩阵。至此完成数据矩阵的加密过程。
其中,在步骤3中所述的“将加密后的传输矩阵进行并串转换,发送给数据接收方,同时向接收方共享密钥矩阵”,其具体作法如下:
在数据进行并行加密后,需要将加密后的并行数据转换成串行数据,并发送出去。先将加密后的传输矩阵转换成串行数据,然后按照串行通信的要求依次发送给数据接收方。密钥矩阵作为对称加密的密钥需要以安全方式共享给接收方。
其中,在步骤4中所述的“数据接收方接收到传输来的串行数据后,对串行数据进行串并转换,恢复出来传输矩阵,然后通过步骤2中矩阵变换的反变换恢复出带有校验值的数据矩阵”,其具体作法步骤如下:
步骤41,对接收到的数据进行串并转换,得到5*4的密文矩阵;
步骤42,按照将密文矩阵与共享的密钥矩阵相融合,即与B1同或,B0异或,将融合后的矩阵按照加密时矩阵变换的操作进行反变换,得到原始的数据矩阵。
其中,在步骤41中所述的“对接收到的数据进行串并转换,得到5*4的密文矩阵”,其具体作法如下:
数据接收方在接到传输来的串行数据后,对串行数据进行串并转换,从串行数据中可以得到5*4的加密后的密文矩阵,也即传输矩阵。
其中,在步骤42中所述的“按照将密文矩阵与共享的密钥矩阵相融合,即与B1同或,B0异或,将融合后的矩阵按照加密时矩阵变换的操作进行反变换,得到原始的数据矩阵”,其具体作法如下:
将得到的密文矩阵、密钥矩阵B0和密钥矩阵B1进行矩阵运算,采用与步骤2中所述“通过矩阵变换和与给定的密钥矩阵进行矩阵操作形成传输矩阵,完成矩阵加密”的矩阵操作的反顺序操作完成。即首先将密文矩阵与密钥矩阵B1进行矩阵的同或操作,再于密钥矩阵B0进行矩阵的异或操作,最后再进行矩阵变换的反变换,可以得到原始的数据矩阵。
其中,在步骤5中所述的“通过数据矩阵中每行数据的校验值,判断传输的数据是否被篡改并返回判断信息”,其具体作法步骤如下:
步骤51,对得到的数据矩阵的前四行的数据分别进行CRC-16校验码计算,并且与第五行数据进行比对;
步骤52,若CRC-16校验码比对正确,则将数据存入RAM中;若校验码比对错误,则将数据丢弃并返回该数据块的地址和错误数据的地址给发送方;发送方可以根据初始地址和错误数据地址找到错误数据并重新发送被篡改的数据。
其中,在步骤51中所述的“对得到的数据矩阵的前四行的数据分别进行CRC-16校验码计算,并且与第五行数据进行比对”,其具体作法如下:
对于接收端得到的数据矩阵,每行均为64比特的数据,采用CRC-16校验的方式为每行数据生成一个16比特的校验码,并依次与数据矩阵的第5行中对应位置的校验码进行对比。即第1行的校验码与第5行第1列位置的校验码进行比对,第2行的校验码与第5行第2列位置的校验码进行比对,以此类推。当某一行的数据被篡改后,对应的校验码会发生变化,接收端可以及时发现数据的篡改。
其中,在步骤52中所述的“若CRC-16校验码比对正确,则将数据存入存储器中;若校验码比对错误,则将数据丢弃并返回该数据块的地址和错误数据的地址给发送方;发送方可以根据初始地址和错误数据地址找到错误数据并重新发送被篡改的数据”,其具体作法如下:
在CRC-16校验码的比对过程中,如果校验码比对一致,则表示改数据没有被篡改,与发送端发送的数据一致,则将该行数据存入到接收端的存储器中,该行数据传输完成;如果校验码不对不一致,则将该行数据丢弃,并将该数据块的地址和错误的行号一同发送给数据发送端,发送端可以根据初始地址和错误数据地址找到错误数据并重新发送被篡改的数据。
Claims (6)
1.一种复合并行数据加密方法,其特征在于:该方法具体步骤包括:
步骤1,读取需要传输的数据,并且记录数据读取位置;
步骤2,将读取到的串行数据分成256比特的数据块,然后对划分好的数据块进行串并转换形成数据矩阵,并为每行数据生成一个校验值保存在数据矩阵中,通过矩阵变换和与给定的密钥矩阵进行矩阵操作形成传输矩阵,完成矩阵加密;
步骤3,将加密后的传输矩阵进行并串转换,发送给数据接收方,同时向接收方共享密钥矩阵;
步骤4,数据接收方接收到传输来的串行数据后,对串行数据进行串并转换,恢复出来传输矩阵,然后通过步骤2中矩阵变换的反变换恢复出带有校验值的数据矩阵;
步骤5,通过数据矩阵中每行数据的校验值,判断传输的数据是否被篡改并返回判断信息;
通过以上步骤,本发明提供了一种复合并行数据加密方法,针对数据通信过程中的数据安全问题,以串行数据转换成并行数据进行处理的方式,实现了通信数据的加密和校验,解决了通信过程中数据安全的问题。
2.根据权利要求1所述的一种复合并行数据加密方法,其特征在于:
在步骤1中所述的“读取需要传输的数据,并且记录数据读取位置”,其具体作法如下:
在通信过程中,需要传输的数据是一组串行数据,首先从串行数据中读取需要传输的部分,通过一个专门设计的计数器记录数据的读取位置,为数据的加密、恢复和校验做好准备。
3.根据权利要求1所述的一种复合并行数据加密方法,其特征在于:
在步骤2中所述的“将读取到的串行数据分成256比特的数据块,然后对划分好的数据块进行串并转换形成数据矩阵,并为每行数据生成一个校验值保存在数据矩阵中,通过矩阵变换和与给定的密钥矩阵进行矩阵操作形成传输矩阵,完成矩阵加密”,其具体作法步骤如下:
步骤21,利用计数器将需要传输的串行数据流分成256比特的数据块,在此基础上每个数据块形成一个4*4的数据矩阵,每一个矩阵元素是一个16比特的数据,即每行每列均有64比特的数据;
步骤22,在读取数据形成数据矩阵的同时,对每一行数据进行一次CRC-16校验计算,即每64比特数据生成一个16比特的校验码,并插入到数据矩阵的第5行,最终形成一个5*4的数据矩阵;
步骤23,给出共享的两个5*4的密钥矩阵,分别命名为密钥矩阵B0、密钥矩阵B1;将5*4的数据矩阵进行矩阵变换,打乱数据顺序,相当于进行简单的矩阵乘法,再与密钥矩阵B0进行异或操作,与密钥矩阵B1进行同或操作,生成用来传输的传输矩阵,完成数据加密;
其中,在步骤21中所述的“利用计数器将需要传输的串行数据流分成256比特的数据块,在此基础上每个数据块形成一个4*4的数据矩阵,每一个矩阵元素是一个16比特的数据,即每行每列均有64比特的数据”,其具体作法如下:
首先使用专门设计的计数器将需要传输的串行数据流按照每256比特的大小分成预定数据块,然后以256比特大小的数据块为单位,将每个数据块中的256比特数据转换成一个4行4列的数据矩阵,共16个元素,因此每个元素为一个16比特的数据,每行每列均有64比特的数据;
其中,在步骤22中所述的“CRC-16校验”,是指一种16位的循环冗余校验,它是数据通讯过程中最常用的校验方式,能提供1/65536的误码碰撞概率;
其中,在步骤22中所述的“在读取数据形成数据矩阵的同时,对每一行数据进行一次CRC-16校验计算,即每64比特数据生成一个16比特的校验码,并插入到数据矩阵的第5行,最终形成一个5*4的数据矩阵”,其具体作法如下:
在读取数据形成数据矩阵时,每行均为64比特的数据,采用CRC-16校验的方式为每行数据生成一个16比特的校验码,并依次加入到数据矩阵的第5行;即第1行的校验码放在第5行第1列位置,第2行校验码放在第5行第2列位置,以此类推;当某一行的数据被篡改后,对应的校验码会发生变化,接收端能及时发现数据的篡改;
其中,在步骤23中所述的“给出共享的两个5*4的密钥矩阵,分别命名为密钥矩阵B0、密钥矩阵B1;将5*4的数据矩阵进行矩阵变换,打乱数据顺序,相当于进行简单的矩阵乘法,再与密钥矩阵B0进行异或操作,与密钥矩阵B1进行同或操作,生成用来传输的传输矩阵,完成数据加密”,其具体作法如下:
数据发送端提供两个5*4的矩阵作为本发明所述对称加密方式的密钥矩阵,分别将这两个密钥矩阵命名为密钥矩阵B0和密钥矩阵B1;将步骤22中所述的5*4规模的数据矩阵进行矩阵变换,打乱原有矩阵中数据的顺序和位置,再将得到的新的乱序矩阵依次与密钥矩阵B0进行异或操作,与密钥矩阵B1进行同或操作,并将生成的新矩阵成为传输矩阵,至此完成数据矩阵的加密过程。
4.根据权利要求1所述的一种复合并行数据加密方法,其特征在于:
在步骤3中所述的“将加密后的传输矩阵进行并串转换,发送给数据接收方,同时向接收方共享密钥矩阵”,其具体作法如下:
在数据进行并行加密后,需要将加密后的并行数据转换成串行数据,并发送出去;先将加密后的传输矩阵转换成串行数据,然后按照串行通信的要求依次发送给数据接收方;密钥矩阵作为对称加密的密钥需要以安全方式共享给接收方。
5.据权利要求1所述的一种复合并行数据加密方法,其特征在于:
在步骤4中所述的“数据接收方接收到传输来的串行数据后,对串行数据进行串并转换,恢复出来传输矩阵,然后通过步骤2中矩阵变换的反变换恢复出带有校验值的数据矩阵”,其具体作法步骤如下:
步骤41,对接收到的数据进行串并转换,得到5*4的密文矩阵;
步骤42,按照将密文矩阵与共享的密钥矩阵相融合,即与B1同或,B0异或,将融合后的矩阵按照加密时矩阵变换的操作进行反变换,得到原始的数据矩阵;
其中,在步骤41中所述的“对接收到的数据进行串并转换,得到5*4的密文矩阵”,其具体作法如下:
数据接收方在接到传输来的串行数据后,对串行数据进行串并转换,从串行数据中能得到5*4的加密后的密文矩阵,也即传输矩阵;
其中,在步骤42中所述的“按照将密文矩阵与共享的密钥矩阵相融合,即与B1同或,B0异或,将融合后的矩阵按照加密时矩阵变换的操作进行反变换,得到原始的数据矩阵”,其具体作法如下:
将得到的密文矩阵、密钥矩阵B0和密钥矩阵B1进行矩阵运算,采用与步骤2中所述“通过矩阵变换和与给定的密钥矩阵进行矩阵操作形成传输矩阵,完成矩阵加密”的矩阵操作的反顺序操作完成;即首先将密文矩阵与密钥矩阵B1进行矩阵的同或操作,再于密钥矩阵B0进行矩阵的异或操作,最后再进行矩阵变换的反变换,能得到原始的数据矩阵。
6.据权利要求1所述的一种复合并行数据加密方法,其特征在于:
在步骤5中所述的“通过数据矩阵中每行数据的校验值,判断传输的数据是否被篡改并返回判断信息”,其具体作法步骤如下:
步骤51,对得到的数据矩阵的前四行的数据分别进行CRC-16校验码计算,并且与第五行数据进行比对;
步骤52,若CRC-16校验码比对正确,则将数据存入RAM中;若校验码比对错误,则将数据丢弃并返回该数据块的地址和错误数据的地址给发送方;发送方能根据初始地址和错误数据地址找到错误数据并重新发送被篡改的数据;
其中,在步骤51中所述的“对得到的数据矩阵的前四行的数据分别进行CRC-16校验码计算,并且与第五行数据进行比对”,其具体作法如下:
对于接收端得到的数据矩阵,每行均为64比特的数据,采用CRC-16校验的方式为每行数据生成一个16比特的校验码,并依次与数据矩阵的第5行中对应位置的校验码进行对比;即第1行的校验码与第5行第1列位置的校验码进行比对,第2行的校验码与第5行第2列位置的校验码进行比对,以此类推;当一行的数据被篡改后,对应的校验码会发生变化,接收端能及时发现数据的篡改;
其中,在步骤52中所述的“若CRC-16校验码比对正确,则将数据存入存储器中;若校验码比对错误,则将数据丢弃并返回该数据块的地址和错误数据的地址给发送方;发送方可以根据初始地址和错误数据地址找到错误数据并重新发送被篡改的数据”,其具体作法如下:
在CRC-16校验码的比对过程中,如果校验码比对一致,则表示改数据没有被篡改,与发送端发送的数据一致,则将该行数据存入到接收端的存储器中,该行数据传输完成;如果校验码不对不一致,则将该行数据丢弃,并将该数据块的地址和错误的行号一同发送给数据发送端,发送端能根据初始地址和错误数据地址找到错误数据并重新发送被篡改的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711084839.8A CN107911354B (zh) | 2017-11-07 | 2017-11-07 | 一种复合并行数据加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711084839.8A CN107911354B (zh) | 2017-11-07 | 2017-11-07 | 一种复合并行数据加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107911354A true CN107911354A (zh) | 2018-04-13 |
CN107911354B CN107911354B (zh) | 2020-07-21 |
Family
ID=61843730
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711084839.8A Active CN107911354B (zh) | 2017-11-07 | 2017-11-07 | 一种复合并行数据加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107911354B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108809642A (zh) * | 2018-06-14 | 2018-11-13 | 南瑞集团有限公司 | 一种基于fpga的多通道数据万兆加密认证高速传输实现方法 |
CN110300449A (zh) * | 2019-07-26 | 2019-10-01 | 电子科技大学 | 一种基于伪多径的安全通信方法及装置 |
CN113055184A (zh) * | 2021-03-22 | 2021-06-29 | 中国工商银行股份有限公司 | 数据加解密方法及装置 |
TWI793961B (zh) * | 2020-01-14 | 2023-02-21 | 新唐科技股份有限公司 | 安全積體電路及其方法 |
CN117097559A (zh) * | 2023-10-17 | 2023-11-21 | 天津德科智控股份有限公司 | Eps转向角度报文传输验证方法 |
CN117349860A (zh) * | 2023-10-08 | 2024-01-05 | 娄底职业技术学院 | 一种基于矩阵变化和数据切分的文件存储系统及方法 |
CN117768146A (zh) * | 2023-11-07 | 2024-03-26 | 眉山市大数据产业发展有限公司 | 一种适用于农业信息化大数据服务的数据完整和保密传输实现方法 |
CN118075001A (zh) * | 2024-03-13 | 2024-05-24 | 数盾信息科技股份有限公司 | 一种适用于高速网络的实时数据高速加密方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1729660A (zh) * | 2002-10-17 | 2006-02-01 | 松下电器产业株式会社 | 分组发送接收装置 |
CN101710852A (zh) * | 2009-11-06 | 2010-05-19 | 北京交通大学 | 具有加密功能的ldpc码编/解码方法和编/解码器 |
CN103427980A (zh) * | 2013-07-30 | 2013-12-04 | 西北大学 | 一种基于双矩阵变换的ofdm系统物理层安全算法 |
CN104780022A (zh) * | 2015-04-10 | 2015-07-15 | 清华大学 | 基于信道编码矩阵动态变化的物理层安全传输方法及系统 |
CN104809407A (zh) * | 2015-05-05 | 2015-07-29 | 南京信息工程大学 | 云存储前端数据加解密及校验方法和系统 |
-
2017
- 2017-11-07 CN CN201711084839.8A patent/CN107911354B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1729660A (zh) * | 2002-10-17 | 2006-02-01 | 松下电器产业株式会社 | 分组发送接收装置 |
CN101710852A (zh) * | 2009-11-06 | 2010-05-19 | 北京交通大学 | 具有加密功能的ldpc码编/解码方法和编/解码器 |
CN103427980A (zh) * | 2013-07-30 | 2013-12-04 | 西北大学 | 一种基于双矩阵变换的ofdm系统物理层安全算法 |
CN104780022A (zh) * | 2015-04-10 | 2015-07-15 | 清华大学 | 基于信道编码矩阵动态变化的物理层安全传输方法及系统 |
CN104809407A (zh) * | 2015-05-05 | 2015-07-29 | 南京信息工程大学 | 云存储前端数据加解密及校验方法和系统 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108809642B (zh) * | 2018-06-14 | 2021-04-27 | 南瑞集团有限公司 | 一种基于fpga的多通道数据万兆加密认证高速传输实现方法 |
CN108809642A (zh) * | 2018-06-14 | 2018-11-13 | 南瑞集团有限公司 | 一种基于fpga的多通道数据万兆加密认证高速传输实现方法 |
CN110300449A (zh) * | 2019-07-26 | 2019-10-01 | 电子科技大学 | 一种基于伪多径的安全通信方法及装置 |
CN110300449B (zh) * | 2019-07-26 | 2022-01-11 | 电子科技大学 | 一种基于伪多径的安全通信方法及装置 |
TWI793961B (zh) * | 2020-01-14 | 2023-02-21 | 新唐科技股份有限公司 | 安全積體電路及其方法 |
CN113055184A (zh) * | 2021-03-22 | 2021-06-29 | 中国工商银行股份有限公司 | 数据加解密方法及装置 |
CN113055184B (zh) * | 2021-03-22 | 2022-11-29 | 中国工商银行股份有限公司 | 数据加解密方法及装置 |
CN117349860A (zh) * | 2023-10-08 | 2024-01-05 | 娄底职业技术学院 | 一种基于矩阵变化和数据切分的文件存储系统及方法 |
CN117097559A (zh) * | 2023-10-17 | 2023-11-21 | 天津德科智控股份有限公司 | Eps转向角度报文传输验证方法 |
CN117097559B (zh) * | 2023-10-17 | 2023-12-19 | 天津德科智控股份有限公司 | Eps转向角度报文传输验证方法 |
CN117768146A (zh) * | 2023-11-07 | 2024-03-26 | 眉山市大数据产业发展有限公司 | 一种适用于农业信息化大数据服务的数据完整和保密传输实现方法 |
CN118075001A (zh) * | 2024-03-13 | 2024-05-24 | 数盾信息科技股份有限公司 | 一种适用于高速网络的实时数据高速加密方法 |
CN118075001B (zh) * | 2024-03-13 | 2024-08-16 | 数盾信息科技股份有限公司 | 一种适用于高速网络的实时数据高速加密方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107911354B (zh) | 2020-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107911354A (zh) | 一种复合并行数据加密方法 | |
AU2008327506B2 (en) | Method and system for encryption of data | |
CN101170554B (zh) | 资讯安全传递系统 | |
CN101447870B (zh) | 一种基于分布式口令技术的私钥安全存储方法 | |
CN102904726B (zh) | 用于量子密钥分配系统的经典信道消息认证方法和装置 | |
CN103778590B (zh) | 利用数字图像存储和传输信息的方法和装置 | |
CN103684772B (zh) | 动态缺失加密系统 | |
CN114219483B (zh) | 基于lwe-cpabe的区块链数据共享方法、设备和存储介质 | |
CN101262341A (zh) | 一种会务系统中混合加密方法 | |
CN102208976B (zh) | 基于编码向量加密的安全网络编码方法 | |
CN106973056A (zh) | 一种面向对象的安全芯片及其加密方法 | |
CN105897748B (zh) | 一种对称密钥的传输方法及设备 | |
CN107332657A (zh) | 一种基于区块链数字签名的加密方法及系统 | |
CN113726512B (zh) | 密钥生成和分发方法、密钥生成装置、密钥管理系统 | |
CN105391554A (zh) | 一种采用密文实现指纹匹配的方法和系统 | |
CN104380651A (zh) | 生成伪随机序列的方法和对数据流进行编码或解码的方法 | |
CN108964870B (zh) | 基于自同步混沌密码的铁路应答器报文安全增强方法 | |
CN103500294B (zh) | 一种文件加解密方法和装置 | |
CN103346875A (zh) | 混沌保密通信系统中数字混沌密码的产生方法 | |
CN106027231A (zh) | 一种量子密钥分发后处理中对误码进行级联纠错的方法 | |
CN101651538A (zh) | 一种基于可信密码模块的数据安全传输方法 | |
CN104735094B (zh) | 基于信息分离的数据安全传输系统及方法 | |
CN109150505A (zh) | 一种用于sap系统的信息传输方法及装置 | |
CN109633693A (zh) | 基于国产密码的北斗二代导航系统抗欺骗方案 | |
JPH0244389A (ja) | Icカード機器 |
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 |