CN110266481B - 基于矩阵的后量子加、解密方法与解密装置 - Google Patents
基于矩阵的后量子加、解密方法与解密装置 Download PDFInfo
- Publication number
- CN110266481B CN110266481B CN201910517238.4A CN201910517238A CN110266481B CN 110266481 B CN110266481 B CN 110266481B CN 201910517238 A CN201910517238 A CN 201910517238A CN 110266481 B CN110266481 B CN 110266481B
- Authority
- CN
- China
- Prior art keywords
- matrix
- polynomial
- key
- multiplication
- vector
- 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
Images
Classifications
-
- 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/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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/0852—Quantum cryptography
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于矩阵的后量子加、解密方法与解密装置。后量子解密方法包括:将密文信息以向量形式与密钥矩阵得到一个98×98的矩阵,然后将该矩阵转换成两个7×7的子矩阵;判断两个子矩阵是否至少有一个可逆,若至少有一个可逆则选择任意一个可逆的子矩阵;将选择的子矩阵的求逆结果与密钥矩阵进行多项式乘法运算,然后将多项式乘法运算结果与另一个子矩阵再次进行多项式乘法运算得到矩阵B″,矩阵B″每一个元素是变量yi的线性组合;将矩阵B″与密钥矩阵C进行多项式减法运算得到矩阵B″′=B″‑C,密钥矩阵C每一个元素是变量yi的线性组合;进行线性方程组B″′=0的求解,方程组的解是yi;然后将yi以向量形式进行乘法运算得到解密后的明文z=t×y,i=1,…,49。本发明的解密速度快。
Description
技术领域
本发明涉及加解密算法,尤其涉及基于简单矩阵的后量子加密方法,对应的解密方法及解密装置。
背景技术
加密是将明文转换成密文,而解密是将密文转换成明文。在对称密码中,加密和解密使用同一密钥,加密和解密算法一般是对合运算或使用相同的算法。而在非对称密码中,加密和解密使用不同密钥,加密密钥公开,被称为公钥,解密密钥保密,被称为私钥,加密和解密算法一般完全不同。非对称密码的解密算法一般比较复杂。
非对称密码(公钥密码)主要有RSA、椭圆曲线密码等,但由于它们基于大整数分解或离散对数问题,存在被量子计算机攻击的弱点。抗量子计算攻击的公钥加密算法,如格密码、多变量密码等,它们的安全性建立在NPC问题上,能够抵御量子计算机和传统计算机攻击,被认为是下一代公钥密码的候选算法,可以在云计算、大数据、物联网、区块链等新一代信息技术中广泛应用。
在多变量加密算法中,如HFE、PMI+等加密算法,它们的安全性基础是求解有限域上的多元多项式困难问题,在应用时存在加密速度慢等缺点。
发明内容
本发明的目的是针对上述现有技术存在的加密安全性能较低、解密速度较慢的缺陷,提供一种基于矩阵的后量子加、解密方法与解密装置。
本发明的后量子加密方法包括步骤:
步骤1,获取明文pi,i=1,...,49;
步骤2,将任意两个明文进行乘法运算,形成明文矩阵wij=pi×pj,i,j=1,2,...,49;
步骤3,将密钥矩阵存储阵列中的各矩阵元素chij,h=1,2,...,98,i,j=1,2,...,49与明文矩阵wij中的对应的矩阵元素进行乘法运算,并存入密钥矩阵存储阵列中对应的位置;
步骤4,将密钥向量存储阵列中各向量的元素vhi,h=1,2,...,98,i=1,2,...,49与明文中各对应元素进行乘法运算,并存入密钥向量存储阵列中各向量的对应位置vhi=vhi×pi;
步骤5,将各密钥dh,h=1,2,...,98与对应密钥矩阵存储阵列的矩阵的所有元素chij,h=1,2,...,98,i,j=1,2,...,49以及密钥向量存储阵列的向量的所有元素vhi,h=1,2,...,98,i=1,2,...,49进行加法运算,并将相加结果以向量形式dh=dh+chij+vhi,h=1,2,...,98,i,j=1,2,...,49存储为密文。
本发明提出的解密方法,包括步骤:
步骤1,获取密文信息wi,i=1,2,...,98;
步骤2,将所述密文信息以向量形式与密钥矩阵s进行乘法运算得到矩阵x=s×w,所述s为98×98的矩阵;
步骤3,将矩阵x转换成两个7×7的子矩阵E′1;
步骤4,判断两个子矩阵E′1是否至少有一个可逆,若至少有一个可逆则选择任意一个可逆的子矩阵E′1继续下一步骤;
步骤5,将子矩阵E′1的求逆结果E′1 -1与密钥矩阵B进行多项式乘法运算,然后将多项式乘法运算结果与另一个子矩阵再次进行多项式乘法运算得到矩阵B″,密钥矩阵B的规模为7×7,其每一个元素是变量yi,i=1,2,...,49的线性组合;
步骤6,将矩阵B″与密钥矩阵C进行多项式减法运算得到矩阵B″′=B″-C,密钥矩阵C的规模为7×7,其每一个元素是变量yi,i=1,2,...,49的线性组合;
步骤7,进行线性方程组B″′=0的求解,方程组的解是yi,i=1,2,...,49;
步骤8,将yi,i=1,2,...,49以向量形式进行乘法运算得到解密后的明文z=t×y,t是一个密钥矩阵,规模是49×49。
进一步,所述步骤4中当两个子矩阵不可逆时,包括步骤:
将变量矩阵A′的可逆矩阵A′-1分别和两个子矩阵E′1进行多项式乘法运算得到矩阵A1和A2,然后分别将两个矩阵进行多项式减法运算得到矩阵A1'=A1-B和A2'=A2-C,变量矩阵A′-1的规模是7×7,其元素是变量ai′,i=1,2,...,49,矩阵B、C分别是两个密钥矩阵,规模是7×7,它的每一个元素是变量yi,i=1,2,...,49的线性组合;
对线形方程组A1'=0,A2'=0进行求解,所述线形方程组的解为yi,i=1,2,...,49,ai′,i=1,2,...,49,然后继续执行步骤8得到所述明文。
进一步,若所述矩阵A′是不可逆的,则提示解密失败。
本发明提出的后量子解密装置,采用了上述技术方案中的后量子解密方法进行解密。
具体的,该解密装置包括:
明密文管理器,用于存储所述明文和密文;
矩阵向量乘法运算器,用于接收向量形式的密文并将所述密文与密钥矩阵进行乘法运算;
矩阵求逆运算器,用于对所述子矩阵进行求逆运算;
多项式矩阵乘法器,用于执行所述多项式乘法运算;
求解线性方程组运算器,用于求解所述线性方程组;
多项式矩阵减法运算器,用于执行所述多项式减法运算;
中央处理器,用于控制所述明密文管理器、矩阵向量乘法运算器、矩阵求逆运算器、多项式矩阵乘法器、求解线性方程组运算器、多项式矩阵减法运算器的运行;
存储器,用于所述中央处理器控制各部件运行时的临时存储。
优选的,所述明密文管理器、矩阵向量乘法运算器、矩阵求逆运算器、多项式矩阵乘法器、求解线性方程组运算器以及多项式矩阵减法运算器均包含对应的存储器。
优选的,还包括:复合域乘法阵列,所述复合域乘法阵列包含有限域乘法器和乘法调度器,所述乘法调度器接收所述矩阵向量乘法运算器、多项式矩阵乘法器的控制指令对所述有限域乘法器进行调度执行乘法运算。
具体的,所述存储器包括RAM和寄存器。
优选的,所述存储器的存取单元为双字节,所述寄存器的存储空间是双字节。
本发明公开实施例提供的技术方案有以下有益效果:
本发明实施例提供的一种基于简单矩阵的后量子加密装置,能够进行公钥加密,输入需要加密的明文至本装置,经过计算后,输出相应的密文。同样的,本发明的后量子解密装置,能够进行私钥解密,输入需要解密的密文至本装置,经过计算后,输出相应的明文。本装置具有速度快、安全级别高、能够抵御量子计算机攻击等特点。
附图说明
图1示出了本发明的结构示意图。
具体实施方式
下面结合附图和实施例对发明进行详细的说明,且所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。
本发明的后量子加密方法,主要包含了以下5个步骤:
步骤1,获取明文pi,i=1,...,49;
步骤2,将任意两个明文进行乘法运算,形成明文矩阵wij=pi×pj,i,j=1,2,...,49;
步骤3,将密钥矩阵存储阵列中的各矩阵元素chij,h=1,2,...,98,i,j=1,2,...,49与明文矩阵wij中的对应的矩阵元素进行乘法运算,并存入密钥矩阵存储阵列中对应的位置;
步骤4,将密钥向量存储阵列中各向量的元素vhi,h=1,2,...,98,i=1,2,...,49与明文中各对应元素进行乘法运算,并存入密钥向量存储阵列中各向量的对应位置vhi=vhi×pi;
步骤5,将各密钥dh,h=1,2,...,98与对应密钥矩阵存储阵列的矩阵的所有元素chij,h=1,2,...,98,i,j=1,2,...,49以及密钥向量存储阵列的向量的所有元素vhi,h=1,2,...,98,i=1,2,...,49进行加法运算,并将相加结果以向量形式dh=dh+chij+vhi,h=1,2,...,98,i,j=1,2,...,49存储为密文。
然后我们需要对上述加密的密文进行解密。图1示出了本发明解密装置的一个优选实施例的详细硬件框图。本发明的解密装置包括中央处理器、存储器、明密文管理器、矩阵向量乘法运算器、矩阵求逆运算器、多项式矩阵乘法器、求解线性方程组运算器、复合域查表乘法阵列、多项式矩阵减法运算器、输入接口和输出接口等几大部件。
中央处理器,包括解密处理器和接口控制器,是本装置的核心部件。其中接口控制器,用于从本装置的输入端口接收密文,从本装置的输出端口输出明文。
存储器,包括RAM和寄存器,是本装置的存储部件。存储器的RAM,包括100M字节存储空间,用于存储矩阵密钥存储器的密钥矩阵元素、密文存储器的密文元素、明文存储器的明文元素、矩阵求逆存储器的矩阵元素、多项式乘法存储器的矩阵多项式元素、增广矩阵存储器的矩阵元素;存取单位是双字节,可同时读取两个单位的数据,或写两个单位的数据。存储器的寄存器,包括500个寄存器,每个寄存器的存储空间是双字节,用于存储复合域加法阵列和复合域查表乘法阵列的结果。
RAM包含以下7个端口:
地址端口ra0和ra1:RAM地址Src.1和Src.2,可同时读取两个地址的数据;
数据输入端口rd0和rd1:将rd0的数据写至地址ra0的RAM以及将rd1的数据写至地址ra1的RAM;
数据输出端口ro0和ro1:将地址ra0和ra1的RAM数据读取至ro0和ro1;
使能信号端口re0和re1:re0=0时将地址ra0的RAM数据读取至ro0,re0=1时将地址ra1的RAM数据读取至ro1,re1=0时将rd0的数据写至地址ra0的RAM,re1=1时将rd1的数据写至地址ra1的RAM。
明密文管理器,包括密文存储器和明文存储器,是本装置的输入输出部件。明文存储器用于存储明文zi,i=1,...,49,可以表示为z=z(z1,z2,...,z49),每个元素代表两个字节,是特定有限域GF(216)的元素,明文信息共98字节。密文存储器,用于存储密文wi,i=1,...,98,可以表示为w=w(w1,w2,...,w98),每个元素代表两个字节,是特定有限域GF(216)的元素,密文信息共196字节。
复合域查表乘法阵列,包括并行运算的49个有限域乘法器和乘法调度器,是本装置的基础运算部件。其中有限域乘法器用于计算有限域GF(216)的两个元素的乘积,有限域GF(216)的元素可以表示为a(a16a15...a1)2,其中a16,a15,...,a1的值是0或1。有限域GF(216)的两个元素a(a16a15...a1)2和b(b16b15...b1)2的乘法运算使用基于复合有限域GF((28)2)的查找表,a(ahal)8×b(bhbl)8=c(chcl)8,其中ah,al,bh,bl,ch,cl是GF(28)的元素。GF(28)的乘法基于查找表实现,在表中每一行中存储第一个运算数、第二个运算数以及运算结果。其中乘法调度器,用于调度并行运行的49个有限域乘法器,在一个周期内完成计算。
矩阵向量乘法运算器,包括矩阵向量乘法电路和矩阵密钥存储器,是本装置的逻辑运算部件。其中矩阵向量乘法电路,用于完成任意两个矩阵和向量的乘法,矩阵规模为49×49或98×98,向量规模为49或98。而矩阵密钥存储器用于管理矩阵密钥在RAM中的存储和读取,矩阵规模为49×49或98×98。
矩阵求逆运算器,包括矩阵求逆运算电路和矩阵求逆存储器,是本装置的逻辑运算部件。其中,矩阵求逆运算电路,用于完成任意矩阵的求逆,矩阵规模为7×7。矩阵求逆存储器,用于管理求逆矩阵在RAM中的存储和读取,矩阵规模为7×7。
多项式矩阵乘法器,包括多项式矩阵乘法电路和多项式乘法存储器,是本装置的逻辑运算部件。其中,多项式矩阵乘法电路用于完成矩阵和矩阵之间的乘法,矩阵元素为多项式,矩阵规模为7×7。多项式乘法存储器用于管理多项式矩阵在RAM中的存储和读取。
求解线性方程组运算器,包括求解线性方程组运算电路和增广矩阵存储器,是本装置的逻辑运算部件。其中求解线性方程组运算电路使用高斯约当消元法用于求解线性方程组,矩阵规模为49×49。增广矩阵存储器用于管理增广矩阵在RAM中的存储和读取。
多项式矩阵减法运算器,包括多项式矩阵减法电路和多项式减法存储器,是本装置的逻辑运算部件。其中,多项式矩阵减法电路,用于矩阵之间的减法,矩阵元素是多项式,矩阵规模为7×7。多项式减法存储器,用于管理多项式在RAM中的存储和读取。
通过本发明的解密装置进行解密的详细过程为:
(1)解密处理器从明密文管理器的密文存储器中获取密文信息wi,i=1,2,...,98;
(2)解密处理器将密文信息以向量形式送入矩阵向量乘法运算器,矩阵向量乘法运算器的矩阵向量乘法电路完成矩阵向量乘法x=s×w,s是一个密钥矩阵存储在矩阵密钥存储器,规模是98×98;
(3)解密处理器将矩阵向量乘法运算器的运算结果向量xi,i=1,2,...,98,转换成两个7×7的矩阵E′1、E′2,形式如下:
(4)解密处理器将矩阵E′1送入矩阵求逆运算器,矩阵求逆运算器的矩阵求逆运算电路对矩阵E′1进行求逆,并将E′1 -1存入矩阵求逆存储器;
(5)若矩阵E′1是可逆的,做第(6)步,否则做第(10)步;
(6)解密处理器将矩阵E′1 -1送入多项式矩阵乘法器,多项式矩阵乘法器的多项式矩阵乘法电路完成多项式矩阵乘法B′=B×E′1 -1,并存入多项式乘法存储器,B是一个密钥矩阵,规模是7×7,它的每一个元素是变量yi,i=1,2,...,49的线性组合;
(7)解密处理器将矩阵E′2送入多项式矩阵乘法器,多项式矩阵乘法器的多项式矩阵乘法电路完成多项式矩阵乘法B″=B'×E′2,并存入多项式乘法存储器;
(8)解密处理器将矩阵B″送入多项式矩阵减法运算器,多项式矩阵减法运算器的多项式矩阵减法电路完成多项式矩阵减法B″′=B″-C,并存入多项式减法存储器,C是一个密钥矩阵,规模是7×7,它的每一个元素是变量yi,i=1,2,...,49的线性组合;
(9)解密处理器将矩阵B″′送入求解线性方程组运算器,并存入求解线性方程组运算器的增广矩阵存储器,求解线性方程组运算器的求解线性方程组运算电路完成线性方程组B″′=0的求解,方程组的解是yi,i=1,2,...,49;接下来执行第(22)步;
(10)解密处理器将矩阵E′2送入矩阵求逆运算器,矩阵求逆运算器的矩阵求逆运算电路对矩阵E′2进行求逆,并将E′2 -1存入矩阵求逆存储器;
(11)若矩阵E′2是可逆的,做第(12)步,否则做第(16)步;
(12)解密处理器将矩阵E′2 -1送入多项式矩阵乘法器,多项式矩阵乘法器的多项式矩阵乘法电路完成多项式矩阵乘法C'=C×E′2 -1,并存入多项式乘法存储器,C是一个密钥矩阵,规模是7×7,它的每一个元素是变量yi,i=1,2,...,49的线性组合;
(13)解密处理器将矩阵E′1送入多项式矩阵乘法器,多项式矩阵乘法器的多项式矩阵乘法电路完成多项式矩阵乘法C″=C'×E′1,并存入多项式乘法存储器;
(14)解密处理器将矩阵C″送入多项式矩阵减法运算器,多项式矩阵减法运算器的多项式矩阵减法电路完成多项式矩阵减法C″′=C″-B,并存入多项式减法存储器,B是一个密钥矩阵,规模是7×7,它的每一个元素是变量yi,i=1,2,...,49的线性组合;
(15)解密处理器将矩阵C″′送入求解线性方程组运算器,并存入求解线性方程组运算器的增广矩阵存储器,求解线性方程组运算器的求解线性方程组运算电路完成线性方程组C″′=0的求解,方程组的解是yi,i=1,2,...,49;接下来执行第(22)步;
(16)解密处理器将矩阵A′的可逆矩阵A′-1和矩阵E′1送入多项式矩阵乘法器,多项式矩阵乘法器的多项式矩阵乘法电路完成多项式矩阵乘法A1=A′-1×E′1,并存入多项式乘法存储器,A′-1是一个变量矩阵,规模是7×7,它的元素是变量a′i,i=1,2,...,49;
(17)解密处理器将矩阵A1和矩阵B送入多项式矩阵减法运算器,多项式矩阵减法运算器的多项式矩阵减法电路完成多项式矩阵减法A1'=A1-B,并存入多项式减法存储器,B是一个密钥矩阵,规模是7×7,它的每一个元素是变量yi,i=1,2,...,49的线性组合;
(18)解密处理器将矩阵A′-1和矩阵E′2送入多项式矩阵乘法器,多项式矩阵乘法器的多项式矩阵乘法电路完成多项式矩阵乘法A2=A′-1×E′2,并存入多项式乘法存储器;
(19)解密处理器将矩阵A2和矩阵C送入多项式矩阵减法运算器,多项式矩阵减法运算器的多项式矩阵减法电路完成多项式矩阵减法A2'=A2-C,并存入多项式减法存储器,C是一个密钥矩阵,规模是7×7,它的每一个元素是变量yi,i=1,2,...,49的线性组合;
(20)解密处理器将矩阵A1'和矩阵A2'送入求解线性方程组运算器,并存入求解线性方程组运算器的增广矩阵存储器,求解线性方程组运算器的求解线性方程组运算电路完成线性方程组A1'=0,A2'=0的求解,方程组的解是yi,i=1,2,...,49,a′i,i=1,2,...,49;
(21)若矩阵A′是可逆的,做第(22)步,否则解密处理器将解密失败的信号发送给接口控制器;
(22)解密处理器将yi,i=1,2,...,49以向量形式送入矩阵向量乘法运算器,矩阵向量乘法运算器的矩阵向量乘法电路完成矩阵向量乘法z=t×y,t是一个密钥矩阵存储在矩阵密钥存储器,规模是49×49;
(23)解密处理器将zi,i=1,2,...,49以向量形式送入明密文管理器,并存储在明密文管理器的明文存储器,完成解密。
本发明能够进行私钥解密,输入需要解密的密文至本装置,经过计算后,输出相应的明文。本装置具有速度快、安全级别高、能够抵御量子计算机攻击等特点。
上述实施例仅用于说明本发明的具体实施方式。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和变化,这些变形和变化都应属于本发明的保护范围。
Claims (8)
1.一种后量子加密方法,其特征在于,包括步骤:
步骤1,获取明文pi;
步骤2,将任意两个明文进行乘法运算,形成明文矩阵wij=pi×pj;
步骤3,将密钥矩阵存储阵列中的各矩阵元素chij与明文矩阵wij中的对应的矩阵元素进行乘法运算,并存入密钥矩阵存储阵列中对应的位置;
步骤4,将密钥向量存储阵列中各向量的元素vhi与明文中各对应元素进行乘法运算,并存入密钥向量存储阵列中各向量的对应位置vhi=vhi×pi;
步骤5,将各密钥dh与对应密钥矩阵存储阵列的矩阵的所有元素chij以及密钥向量存储阵列的向量的所有元素vhi进行加法运算,并将相加结果以向量形式dh=dh+chij+vhi存储为密文;
h=1,2,…,98;i=1,2,…,49;j=1,2,…,49;
所述后量子加密方法的解密方法,包括步骤:
步骤1,获取密文信息wi,i=1,2,...,98;
步骤2,将所述密文信息以向量形式与密钥矩阵s进行乘法运算得到矩阵x=s×w,所述s为98×98的矩阵;
步骤3,将矩阵x转换成两个7×7的子矩阵E′1;
步骤4,判断两个子矩阵E′1是否至少有一个可逆,若至少有一个可逆则选择任意一个可逆的子矩阵E′1继续下一步骤;
步骤5,将子矩阵E′1的求逆结果E′1 -1与密钥矩阵B进行多项式乘法运算,然后将多项式乘法运算结果与另一个子矩阵再次进行多项式乘法运算得到矩阵B”,密钥矩阵B的规模为7×7,其每一个元素是变量yi的线性组合;i=1,2,…,49;
步骤6,将矩阵B”与密钥矩阵C进行多项式减法运算得到矩阵B”'=B”-C,密钥矩阵C的规模为7×7,其每一个元素是变量yi的线性组合;i=1,2,…,49;
步骤7,进行线性方程组B”'=0的求解,方程组的解是yi,i=1,2,...,49;
步骤8,将yi以向量形式进行乘法运算得到解密后的明文z=t×y,t是一个密钥矩阵,规模是49×49;i=1,2,…,49。
2.基于权利要求1所述的后量子加密方法的解密方法,其特征在于,所述步骤4中当两个子矩阵不可逆时,包括步骤:
将变量矩阵A′的可逆矩阵A′-1分别和两个子矩阵E′1进行多项式乘法运算得到矩阵A1和A2,然后分别将两个矩阵进行多项式减法运算得到矩阵A1'=A1-B和A2'=A2-C,变量矩阵A′-1的规模是7×7,其元素是变量ai′,i=1,2,...,49,矩阵B、C分别是两个密钥矩阵,规模是7×7,它的每一个元素是变量yi,i=1,2,...,49的线性组合;
对线形方程组A1'=0,A2'=0进行求解,所述线形方程组的解为yi,i=1,2,...,49,ai′,i=1,2,...,49,然后继续执行步骤8得到所述明文。
3.基于权利要求2所述的后量子加密方法的解密方法,其特征在于,若所述变量矩阵A′是不可逆的,则提示解密失败。
4.一种后量子解密装置,其特征在于,采用如权利要求1至3任意一项所述的后量子加密方法的解密方法进行解密,包括:
明密文管理器,用于存储所述明文和密文;
矩阵向量乘法运算器,用于接收向量形式的密文并将所述密文与密钥矩阵进行乘法运算;
矩阵求逆运算器,用于对所述子矩阵进行求逆运算;
多项式矩阵乘法器,用于执行所述多项式乘法运算;
求解线性方程组运算器,用于求解所述线性方程组;
多项式矩阵减法运算器,用于执行所述多项式减法运算;
中央处理器,用于控制所述明密文管理器、矩阵向量乘法运算器、矩阵求逆运算器、多项式矩阵乘法器、求解线性方程组运算器、多项式矩阵减法运算器的运行;
存储器,用于所述中央处理器控制各部件运行时的临时存储。
5.如权利要求4述的后量子解密装置,其特征在于,所述明密文管理器、矩阵向量乘法运算器、矩阵求逆运算器、多项式矩阵乘法器、求解线性方程组运算器以及多项式矩阵减法运算器均包含对应的存储器。
6.如权利要求4所述的后量子解密装置,其特征在于,还包括:
复合域乘法阵列,所述复合域乘法阵列包含有限域乘法器和乘法调度器,所述乘法调度器接收所述矩阵向量乘法运算器、多项式矩阵乘法器的控制指令对所述有限域乘法器进行调度执行乘法运算。
7.如权利要求4所述的后量子解密装置,其特征在于,所述存储器包括RAM和寄存器。
8.如权利要求7所述的后量子解密装置,其特征在于,所述存储器的存取单元为双字节,所述寄存器的存储空间是双字节。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910517238.4A CN110266481B (zh) | 2019-06-14 | 2019-06-14 | 基于矩阵的后量子加、解密方法与解密装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910517238.4A CN110266481B (zh) | 2019-06-14 | 2019-06-14 | 基于矩阵的后量子加、解密方法与解密装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110266481A CN110266481A (zh) | 2019-09-20 |
CN110266481B true CN110266481B (zh) | 2022-05-20 |
Family
ID=67918437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910517238.4A Active CN110266481B (zh) | 2019-06-14 | 2019-06-14 | 基于矩阵的后量子加、解密方法与解密装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110266481B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111130755B (zh) * | 2019-12-30 | 2023-05-09 | 世纪恒通科技股份有限公司 | 一种基于签名的矩阵双重加密方法 |
CN113472525B (zh) * | 2021-06-24 | 2022-07-26 | 南京航空航天大学 | 基于后量子密码Saber算法的低内存占用密钥生成方法和加解密方法及其系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314580A (zh) * | 2011-09-20 | 2012-01-11 | 西安交通大学 | 一种基于向量和矩阵运算的支持计算的加密方法 |
CN103259643A (zh) * | 2012-08-14 | 2013-08-21 | 苏州大学 | 一种矩阵全同态加密方法 |
CN103457726A (zh) * | 2013-08-26 | 2013-12-18 | 华南理工大学 | 基于矩阵的多变量公钥加密方法 |
CN103973439A (zh) * | 2014-05-08 | 2014-08-06 | 华中科技大学 | 一种多变量公钥加密方法 |
CN107015782A (zh) * | 2017-04-12 | 2017-08-04 | 深圳职业技术学院 | 一种基于不可约三项式的有限域乘法器 |
CN108650076A (zh) * | 2018-05-16 | 2018-10-12 | 南通大学 | 基于量子可逆逻辑的aes加密系统硬件模块的实现方法 |
CN108712256A (zh) * | 2018-07-02 | 2018-10-26 | 复旦大学 | 一种基于椭圆曲线子域子码的加密解密算法 |
CN108989056A (zh) * | 2018-09-28 | 2018-12-11 | 深圳职业技术学院 | 一种基于掩码的彩虹签名装置和方法 |
CN109460535A (zh) * | 2018-11-14 | 2019-03-12 | 深圳职业技术学院 | 一种基于云的有限域矩阵求逆装置及求逆方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5966877B2 (ja) * | 2012-11-20 | 2016-08-10 | 富士通株式会社 | 復号方法、復号プログラム、復号装置、および鍵生成方法 |
CN107294697B (zh) * | 2017-07-21 | 2019-08-13 | 西安电子科技大学 | 基于明文相似矩阵的对称全同态加密方法 |
CN108768923A (zh) * | 2018-03-29 | 2018-11-06 | 南通大学 | 一种基于量子可逆逻辑线路的加密算法的聊天实时加密方法 |
-
2019
- 2019-06-14 CN CN201910517238.4A patent/CN110266481B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314580A (zh) * | 2011-09-20 | 2012-01-11 | 西安交通大学 | 一种基于向量和矩阵运算的支持计算的加密方法 |
CN103259643A (zh) * | 2012-08-14 | 2013-08-21 | 苏州大学 | 一种矩阵全同态加密方法 |
CN103457726A (zh) * | 2013-08-26 | 2013-12-18 | 华南理工大学 | 基于矩阵的多变量公钥加密方法 |
CN103973439A (zh) * | 2014-05-08 | 2014-08-06 | 华中科技大学 | 一种多变量公钥加密方法 |
CN107015782A (zh) * | 2017-04-12 | 2017-08-04 | 深圳职业技术学院 | 一种基于不可约三项式的有限域乘法器 |
CN108650076A (zh) * | 2018-05-16 | 2018-10-12 | 南通大学 | 基于量子可逆逻辑的aes加密系统硬件模块的实现方法 |
CN108712256A (zh) * | 2018-07-02 | 2018-10-26 | 复旦大学 | 一种基于椭圆曲线子域子码的加密解密算法 |
CN108989056A (zh) * | 2018-09-28 | 2018-12-11 | 深圳职业技术学院 | 一种基于掩码的彩虹签名装置和方法 |
CN109460535A (zh) * | 2018-11-14 | 2019-03-12 | 深圳职业技术学院 | 一种基于云的有限域矩阵求逆装置及求逆方法 |
Non-Patent Citations (4)
Title |
---|
《A post-quantum secure communication system for cloud manufacturing safety》;Haibo Yi;《Journal of Intelligent Manufacturing》;20201017;全文 * |
《Securing Edge Devices in the Post-Quantum Internet of Things Using Lattice-Based Cryptography》;Zhe Liu等;《HUMAN-DRIVEN EDGE COMPUTING AND COMMUNICATION》;20180228;全文 * |
《Towards data storage in cryptographic systems: an efficient hardware 》architecture based on multivariate scheme for secure storage applications》;Haibo Yi等;《Cluster Computing》;20180214;全文 * |
《有限域运算和多变量公钥密码硬件的优化和设计》;易海博;《中国博士学位论文全文数据库信息科技辑》;20150815;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110266481A (zh) | 2019-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110363030B (zh) | 用于执行基于格的密码操作的方法和处理设备 | |
US11917053B2 (en) | Combined SHA2 and SHA3 based XMSS hardware accelerator | |
TWI581126B (zh) | 計算系統及其加解密裝置與加解密方法 | |
US11405213B2 (en) | Low latency post-quantum signature verification for fast secure-boot | |
CN106685663B (zh) | 一种环域上误差学习问题的加密方法及电路 | |
Aboytes-González et al. | Design of a strong S-box based on a matrix approach | |
JP6575532B2 (ja) | 暗号化装置、復号装置、暗号処理システム、暗号化方法、復号方法、暗号化プログラム、及び復号プログラム | |
CN109460536B (zh) | 一种矩阵运算的安全外包方法 | |
TWI686722B (zh) | 用於加密操作之指數分拆技術 | |
JP2019519801A (ja) | 安全かつ効率的なブロック暗号アルゴリズムの実現方法と装置 | |
CN110266481B (zh) | 基于矩阵的后量子加、解密方法与解密装置 | |
JP2020190614A (ja) | 暗号処理システム、暗号処理装置、暗号処理プログラム、及び暗号処理方法 | |
CN105814833B (zh) | 用于安全的数据变换的方法和系统 | |
KR20230141045A (ko) | 암호 프로세서 장치 및 이를 채용하는 데이터 처리 장치 | |
JP7155173B2 (ja) | 外部監視攻撃からモジュラーインバージョン演算を保護すること | |
CN112740618A (zh) | 签名装置、验证装置、签名系统、签名方法、签名程序、验证方法以及验证程序 | |
CN110224829B (zh) | 基于矩阵的后量子加密方法及装置 | |
US10333699B1 (en) | Generating a pseudorandom number based on a portion of shares used in a cryptographic operation | |
Beckwith et al. | A Flexible Shared Hardware Accelerator for NIST-Recommended Algorithms CRYSTALS-Kyber and CRYSTALS-Dilithium with SCA Protection | |
US8995659B2 (en) | Parameterized random data generator providing a sequence of bytes with uniform statistical distribution | |
EP3419213B1 (en) | Computer implemented method, computer system and computer readable computer program product | |
US20240171401A1 (en) | Method for calculating using an one-way function effienct in a zero knowledge proof, and apparatus implementing the same method | |
US20240007266A1 (en) | Reconfigurable side-channel resistant double-throughput aes accelerator | |
JP2006502437A (ja) | 暗号化回路装置及び方法 | |
US20240031127A1 (en) | Lightweight side-channel protection for polynomial multiplication in post-quantum signatures |
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 |