CN103490883A - 一种多变量公钥加密/解密系统及加密/解密方法 - Google Patents

一种多变量公钥加密/解密系统及加密/解密方法 Download PDF

Info

Publication number
CN103490883A
CN103490883A CN201310425409.3A CN201310425409A CN103490883A CN 103490883 A CN103490883 A CN 103490883A CN 201310425409 A CN201310425409 A CN 201310425409A CN 103490883 A CN103490883 A CN 103490883A
Authority
CN
China
Prior art keywords
processor
parts
data
transferred
hash
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
Application number
CN201310425409.3A
Other languages
English (en)
Other versions
CN103490883B (zh
Inventor
唐韶华
沈伍强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN201310425409.3A priority Critical patent/CN103490883B/zh
Priority to PCT/CN2013/089899 priority patent/WO2015039397A1/zh
Publication of CN103490883A publication Critical patent/CN103490883A/zh
Priority to EP20140174680 priority patent/EP2854330A3/en
Application granted granted Critical
Publication of CN103490883B publication Critical patent/CN103490883B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme

Landscapes

  • Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种多变量公钥加密/解密系统,由加密模块和解密模块组成,其中加密模块包含处理器、将明文变成密文的公钥变换部件;解密模块包含处理器、仿射变换求逆部件一、同构求逆部件、陷门部件、同构部件和仿射变换求逆部件二,其中陷门部件包含模求幂部件和多项式求逆部件,各部件执行相应的运算,最后得到一组或多组数据,处理器分别计算这些数据的杂凑值:若某组数据的杂凑值与预先存储在处理器中的明文杂凑冗余数据相同,则将该组数据作为解密后的明文存储并输出;若都不满足,处理器向用户输出解密错误的警告信息。本发明的系统及方法,其安全性和运算效率高。

Description

一种多变量公钥加密/解密系统及加密/解密方法
技术领域
本发明涉及信息安全领域,特别涉及一种多变量公钥加密/解密系统及加密/解密方法。
背景技术
密码技术是信息安全的核心和基础,广泛应用于网络通信、电子商务、银行、国防军事等领域。密码技术包括对称密码和非对称密码,非对称密码也称为公钥密码。
目前公钥密码的安全性主要依赖于大整数分解和离散对数求解等困难问题,如RSA、ECC等。然而,自提出在量子计算机上能够实现大整数分解和离散对数求解的方法后,这类传统的公钥密码便受到巨大的威胁,影响到各个行业。因此,人们致力于寻找一种能够抵御量子计算机攻击的密码系统以满足信息安全的需求,并将这类系统称为后量子密码,而多变量公钥密码便是其中的一种。
发明内容
本发明的主要目的在于克服现有技术的缺点与不足,提供一种多变量公钥加密/解密系统,其安全性和运算效率高。
本发明的另一目的在于提供一种多变量公钥加密/解密方法,其安全性和运算效率高。
本发明的目的通过以下的技术方案实现:
一种多变量公钥加密/解密系统,包含:
A、加密模块,用于对待加密的明文进行加密处理,形成密文、完成加密,其包括处理器、公钥变换部件,待加密的明文传输到处理器后,处理器计算其杂凑值,得到相应的明文杂凑冗余数据,并存储明文和明文杂凑冗余数据,然后将明文数据传输至公钥变换部件中,通过将明文数据分别代入多变量多项式,得到加密后的密文,密文随后被传输到处理器中存储,处理器再将密文和明文杂凑冗余数据一起传输给其他用户的解密模块,此处的明文杂凑冗余数据起到探测明文的作用;
B、解密模块,用于对其他用户发来的密文和其明文杂凑冗余数据进行解密处理,形成明文、完成解密,其包括处理器、仿射变换求逆部件一、同构求逆部件、陷门部件、同构部件和仿射变换求逆部件二,其中陷门部件包含模求幂部件和多项式求逆部件,收到密文和其明文杂凑冗余数据后,处理器先将明文杂凑冗余数据存储,然后将密文传输给仿射变换求逆部件一进行仿射变换求逆运算,然后传输到同构求逆部件进行同构求逆运算,接着传输到陷门部件的模求幂部件和多项式求逆部件,分别进行模求幂运算、多项式求逆运算,将多项式求逆运算所得的一组或多组的解传输到同构部件进行同构运算,再传输到仿射变换求逆部件二进行仿射变换求逆运算,最终传输到处理器,对传输过来的一组或多组数据,处理器分别计算每组数据的杂凑值,若所得的某组数据杂凑值与预先存储在处理器中的明文杂凑冗余数据相等,则将该组数据作为解密后的明文存储并输出;若都不满足,处理器向用户输出解密错误的警告信息。
所述的多变量公钥加密/解密系统还包含选择器,其与处理器相连,当选择器处于开状态时,系统的加密模块工作,当选择器处于闭状态时,系统的解密模块工作。用户一用加密模块加密,形成密文后传输给用户二,用户二用解密模块解密,二者构成一个整的系统,反过来一样,用户二用加密模块加密,形成密文后传输给用户一,用户一用解密模块解密,因此同一个用户需要同时具备两个不同的装置,即加密模块、解密模块,才可以满足需求,给用户带来不便;采用包含选择器的方案后,同一用户只需要同一个装置,用户根据自己的需要选择装置进行加密或者解密,非常方便。
所述的处理器包含与选择器相连的调度器,选择器的开状态、闭状态由处理器中的调度器识别、处理,存储在处理器中的数据由调度器控制、调度到各个相应的部件进行相应的操作。
所述的处理器还包含Hash探测器、存储器,处理器中计算数据的杂凑值由Hash探测器完成,处理器中存储数据由存储器完成。
一种多变量公钥加密/解密方法,包含以下顺序的步骤:
(1)加密过程:
a、待加密的明文传输到处理器后,处理器计算其杂凑值,得到明文杂凑冗余数据,并存储明文和明文杂凑冗余数据;
b、将明文数据传输至公钥变换部件中,通过将明文数据代入多变量多项式,得到加密后的密文;
c、密文随后传输到处理器中存储,处理器将密文与明文杂凑冗余数据一起传输给其他用户的解密模块;
(2)解密过程:
a、收到其他用户发来的密文和明文杂凑冗余数据后,处理器先将明文杂凑冗余数据存储,再将密文传输给仿射变换求逆部件一进行仿射变换求逆运算;
b、然后传输到同构求逆部件进行同构求逆运算;
c、接着传输到陷门部件的模求幂部件和多项式求逆部件,分别进行模求幂运算、多项式求逆运算,多项式求逆运算得一组或多组的解;
d、将多项式求逆运算所得的一组或多组的解传输到同构部件进行同构运算;
e、再传输到仿射变换求逆部件二进行仿射变换求逆运算;
f、最终传输到处理器,对传输过来的一组或多组的数据,处理器分别计算每组数据的杂凑值,若某组数据的杂凑值与处理器存储的明文杂凑冗余数据相等,则将该组数据作为解密后的明文存储并输出;若都不满足,处理器向用户输出解密错误的警告信息。
本发明所述的多变量公钥加密/解密方法,所述的步骤(1)加密过程包含:
a、待加密的明文(x1',...,xn')∈Fn传输到处理器后,处理器计算其杂凑值(h1',...,hj')=Hash(x1',...,xn'),得到明文杂凑冗余数据(h1',...,hj'),其中Hash(·)是密码学上安全的单向函数,存储明文和明文杂凑冗余数据;
b、将明文(x1',...,xn')数据传输至公钥变换部件中,公钥变换部件将明文数据代入公钥映射P(x1,...,xn),即分别计算各个多变量多项式p1(x1',...,xn'),...,pn(x1',...,xn')的值,其值分别记为y1',...,yn',(y1',...,yn')就是加密后的密文;
c、密文(y1',...,yn')随后传输到处理器中存储,处理器将密文(y1',...,yn')和明文杂凑冗余数据(h1',...,hj')一起传输给其他用户的解密模块;
步骤(2)解密过程包含:
a、收到其他用户发来的密文(y1',...,yn')和明文杂凑冗余数据(h1',...,hj')后,处理器先将明文杂凑冗余数据(h1',...,hj')存储,再将密文(y1',...,yn')传输给仿射变换求逆部件一进行仿射变换求逆运算
Figure BDA0000383116640000031
b、然后将
Figure BDA0000383116640000032
传输到同构求逆部件进行同构求逆运算
c、接着将
Figure BDA0000383116640000034
传输给陷门部件,分别进行模求幂运算、多项式求逆运算,即模求幂部件利用关系式t·v≡1mod(qn-1)计算出t的逆v,进而计算
Figure BDA0000383116640000041
然后多项式求逆部件利用概率的Berlekamp算法,求出
Figure BDA0000383116640000042
关于未知变量
Figure BDA0000383116640000043
的解,此解为一组或多组,且最多为d组,因此将该解集记为
Figure BDA0000383116640000044
d、将
Figure BDA0000383116640000048
传输到同构部件进行同构运算
e、再将所得数据传输到仿射变换求逆部件二进行仿射变换求逆运算 ( x i 1 ′ , . . . , x in ′ ) = S - 1 ( x ‾ i 1 , . . . , x ‾ in ) ;
f、最终将(xi1',...,xin')传输到处理器,处理器计算(xi1',...,xin')的杂凑值,若某组i的数据(xi1',...,xin')的杂凑值与明文杂凑冗余数据(h1',...,hj')相等,则将该组数据(xi1',...,xin')作为解密后的明文输出;若对于所有的i都有(xi1',...,xin')≠(h1',...,hj'),则处理器向用户输出解密错误的警告信息。
所述的多变量公钥加密/解密方法,在步骤(1)加密过程之前还包含以下步骤:当选择器处于开状态时,系统的加密模块工作,其中选择器与处理器相连;
在步骤(2)解密过程之前还包含以下步骤:当选择器处于闭状态时,系统的解密模块工作,其中选择器与处理器相连。
所述的处理器包含与选择器相连的调度器,选择器的开状态、闭状态由处理器中的调度器识别、处理,存储在处理器中的数据由调度器控制、调度到各个相应的部件进行相应的操作。
所述的处理器还包含Hash探测器、存储器,处理器中计算数据的杂凑值由Hash探测器完成,处理器中存储数据由存储器完成。
本发明与现有技术相比,具有如下优点和有益效果:
第一,在适当的参数选择下,可以抵御多变量公钥密码目前已知的代数攻击,安全性高。
第二,加密、解密所需时间短,响应快。
附图说明
图1为本发明一种多变量公钥加密/解密系统的结构示意图。
具体实施方式
如图1,一种多变量公钥加密/解密系统,包含:
A、选择器,其与处理器中的调度器相连,当选择器处于开状态时,系统的加密模块工作,当选择器处于闭状态时,系统的解密模块工作;
B、加密模块,用于对待加密的明文进行加密处理,形成密文、完成加密,其包括处理器、公钥变换部件,待加密的明文被传输到处理器,其中处理器包含调度器、Hash探测器、存储器,Hash探测器计算明文的杂凑值,得到明文杂凑冗余数据,并将明文及其明文杂凑冗余数据存储在存储器里,然后将该明文数据传输至公钥变换部件中,公钥变换部件将明文数据代入公钥映射,即分别计算公钥映射的各个多变量多项式的值,得到加密后的密文,密文随后传输到处理器的存储器中存储,处理器将密文和明文杂凑冗余数据一起传输给其他用户的解密模块;
C、解密模块,用于对其他用户发来的密文和明文杂凑冗余数据进行解密处理,形成明文、完成解密,其包括处理器、仿射变换求逆部件一、同构求逆部件、陷门部件、同构部件和仿射变换求逆部件二,其中陷门部件包含模求幂部件和多项式求逆部件,处理器将密文传输给仿射变换求逆部件一进行仿射变换求逆运算,然后传输到同构求逆部件进行同构求逆运算,接着传输给陷门部件的模求幂部件和多项式求逆部件,分别进行模求幂运算、多项式求逆运算,将多项式求逆运算所得的一组或多组的解传输到同构部件进行同构运算,再传输到仿射变换求逆部件二进行仿射变换求逆运算,最终传输到处理器,对传输过来的一组或多组的数据,处理器分别计算这些数据的杂凑值,若某组数据的杂凑值与明文杂凑冗余数据相等,则将该组数据作为解密后的明文存储并输出;若都不满足,处理器向用户输出解密错误的警告信息。
多变量公钥加密/解密系统首次使用前,需要进行初始化,如下所示:
(1)除陷门部件外,系统所有部件的算术运算都是建立在一个阶为q、特征为2的有限域F上,其中q=2k
Figure BDA0000383116640000052
(2)选取一个度为
Figure BDA0000383116640000055
的不可约多项式f(y)∈F[y],然后定义有限域F的n维扩域E=F[y]/(f(y)),显然,扩域E是同构于
Figure BDA0000383116640000051
且有qn个元素,陷门部件的所有运算都是基于扩域E的;
(3)令多变量公钥密码系统的方程个数为n,变量个数也为n;
(4)在同构部件里,令
Figure BDA0000383116640000054
是扩域E到Fn的标准F-线性同构,它具有以下的性质:
Figure BDA0000383116640000061
类似地,在同构求逆部件里,定义
Figure BDA0000383116640000062
是Fn到E的同构映射,它具有以下的性质:
(5)在仿射变换求逆部件一里,令是从Fn到Fn的随机选择的可逆仿射变换,类似地,在仿射变换求逆部件二里,也令
Figure BDA0000383116640000064
是从Fn到Fn的随机选择的可逆仿射变换;
(6)在陷门部件里,定义扩域E上的一个陷门单向函数G(X),它的形式如下
G(X)=g(X)t,
其中, g ( X ) = Σ i = 1 d ( X - h i ) , X , h i ∈ E , d = deg ( g ( X ) ) , D = deg ( G ( X ) ) , t ∈ Z q n 且gcd(t,qn-1)=1;另外,记v是t的逆,则有关系式t·v≡1mod(qn-1);
(7)在公钥变换部件里,设
Figure BDA00003831166400000610
是一个从Fn到Fn的中心映射,它的形式为:
P ‾ ( x 1 , . . . , x n ) = ( p ‾ 1 ( x 1 , . . . , x n ) , . . . , p ‾ n ( x 1 , . . . , x n ) )
其中,是基域F上的n元多项式;
(8)在公钥变换部件里,也设P是一个从Fn到Fn的公钥映射,它的形式为:
P(x1,...,xn)=(p1(x1,...,xn),...,pn(x1,...,xn))
其中,
Figure BDA00003831166400000613
是基域F上的n元多项式;
(9)初始化中心映射和公钥映射P,令其分别为:
Figure BDA0000383116640000067
(10)以上相关映射的数据在系统初始化之后是存储在存储器里,在系统工作过程中,它们是由调度器控制和调度到各个相应的部件里进行相关操作的。
初始化完成后,系统就可以正式使用。
一种多变量公钥加密/解密方法,包含以下顺序的步骤:
(1)加密过程:
a、当选择器处于开状态时,系统的加密模块工作,选择器与处理器的调度器相连,其中,处理器包含调度器、Hash探测器和存储器,待加密的明文(x1',...,xn')∈Fn传输到处理器后,Hash探测器计算其杂凑值(h1',...,hj')=Hash(x1',...,xn'),得到明文杂凑冗余数据(h1',...,hj'),其中Hash(·)是密码学上安全的单向函数,然后将明文及其杂凑冗余数据存储在存储器里;
b、将该明文(x1',...,xn')传输至公钥变换部件中,公钥变换部件将数据代入公钥映射P(x1,...,xn)里,即分别计算各个多变量多项式p1(x1',...,xn'),...,pn(x1',...,xn')的值,其值分别记为y1',...,yn',数据(y1',...,yn')就是加密后的密文;
c、密文(y1',...,yn')随后传输到处理器中存储,处理器再将密文(y1',...,yn')与明文杂凑冗余数据(h1',...,hj')一起传输给其他用户的解密模块;
(2)解密过程:
a、当选择器处于闭状态时,系统的解密模块工作,收到其他用户发来的密文(y1',...,yn')和明文杂凑冗余数据(h1',...,hj')后,处理器先将明文杂凑冗余数据(h1',...,hj')存储,再将密文(y1',...,yn')传输给仿射变换求逆部件一进行仿射变换求逆运算 ( y ‾ 1 , . . . , y ‾ n ) = T - 1 ( y 1 ′ , . . . , y n ′ ) ;
b、然后将
Figure BDA0000383116640000072
传输到同构求逆部件进行同构求逆运算
Figure BDA0000383116640000073
c、接着将
Figure BDA0000383116640000074
传输给陷门部件,分别进行模求幂运算、多项式求逆运算,即模求幂部件利用关系式t·v≡1mod(qn-1)计算出t的逆v,进而计算
Figure BDA0000383116640000075
然后多项式求逆部件利用概率的Berlekamp算法,求出
Figure BDA0000383116640000076
关于未知变量的解,此解可能有多组,且最多为d组,因此将该解集记为
Figure BDA0000383116640000078
d、将传输到同构部件进行同构运算
Figure BDA00003831166400000710
e、再将所得数据传输到仿射变换求逆部件二进行仿射变换求逆运算 ( x i 1 ′ , . . . , x in ′ ) = S - 1 ( x ‾ i 1 , . . . , x ‾ in ) ;
f、最终将(xi1',...,xin')传输到处理器,处理器分别计算(xi1',...,xin')的杂凑值,若某组i的数据(xi1',...,xin')的杂凑值与明文杂凑冗余数据(h1',...,hj')相等,则将该组数据(xi1',...,xin')作为解密后的明文输出;若对于所有的i都有(xi1',...,xin')≠(h1',...,hj'),则处理器向用户输出解密错误的警告信息。
下面以一个具体的例子来详细介绍系统的初始化过程:
(1)除陷门部件外,所有部件的运算都是基于阶为q=2的有限域F上,其中,基域F包含2个元素,这些元素分别为{0,1};
(2)选择不可约多项式f(y)=y5+y2+1,然后定义F的扩域E=F[y]/(f(y)),其包含25=32个元素;
(3)系统里的方程个数和变量个数均为n=5;
(4)在同构部件里,有式子在同构求逆部件里,有式子
Figure BDA0000383116640000084
(5)在仿射变换求逆部件一里,初始化 T = 0 1 1 0 1 0 0 1 1 0 1 1 0 1 0 0 1 0 0 0 0 0 0 1 0 x 1 x 2 x 3 x 4 x 5 + 1 0 1 0 1 , 在仿射变换求逆部件二里,初始化 T = 0 0 0 1 0 1 0 1 0 1 0 1 0 0 0 0 1 0 0 1 1 0 0 0 0 x 1 x 2 x 3 x 4 x 5 + 1 0 0 1 0 ;
(6)在陷门部件里,初始化g为
g(X)=[X-(y4+y3+y2)][X-(y3+y2+y+1)][X-(y4+y3+1)]则d=3,另外,初始化t=16,则有G(X)=g(X)16=X48+y3X32+(y4+y3+y+1)X16+y4+y3+y2+y+1;
(7)在公钥变换部件里,容易通过式子
Figure BDA0000383116640000085
得到公钥变换P的具体式,其分别包括以下5个式子:
p1(x1,x2,x3,x4,x5)=x1x2+x1x3+x1x4+x1+x2x3+x3x4+x3x5+x4x5+1
p2(x1,x2,x3,x4,x5)=x1x2+x1x3+x2x5+x3x4+x3x5+x4+1
p3(x1,x2,x3,x4,x5)=x1x5+x2x3+x2+x3x5+x4x5+x5+1
p4(x1,x2,x3,x4,x5)=x1x2+x2x3+x4x5
p5(x1,x2,x3,x4,x5)=x1x2+x1x4+x1x5+x1+x2x4+x3x4+x3+x4+1
在系统初始化之后,下面将详细地描述对于明文(1,0,1,1,0)的加密和它的解密。另外,为了简单地说明整个加密和解密的过程,不失一般性可设明文(1,0,1,1,0)的杂凑值为(1,1,1),在此实例中j=3。
加密过程:
(1)选择器处于开状态;
(2)对于待加密的明文M=(1,0,1,1,0),处理器调用Hash探测器计算它的杂凑值(1,1,1)=Hash(M),即得到明文杂凑冗余数据(1,1,1),并将明文数据(1,0,1,1,0)和它的明文杂凑冗余数据(1,1,1)存储于存储器里,然后,处理器将明文(1,0,1,1,0)传输给公钥变换部件;
(3)公钥变换部件接收到数据后,与处理器进行交互,调用函数P,并分别计算p1(1,0,1,1,0),...,p5(1,0,1,1,0),得到结果(1,0,1,0,0),并将它返回存储器中;
(4)处理器将数据(1,0,1,0,0)作为明文(1,0,1,1,0)的密文,然后将密文(1,0,1,0,0)和它的明文杂凑冗余数据(1,1,1)一起输出给用户(或设备);
解密过程:
(1)选择器处于闭状态;
(2)对于待解密的数据(1,0,1,0,0)和它的明文杂凑冗余数据(1,1,1),输入端把它们传输给处理器并存于存储器中,然后处理器将密文数据(1,0,1,0,0)传输给仿射变换求逆部件一;
(3)仿射变换求逆部件一收到数据(1,0,1,0,0)后,先与处理器进行交互,调用程序并计算T-1(1,0,1,0,0)=(1,0,1,1,1),然后将结果(1,0,1,1,1)传给同构求逆部件;
(4)同构求逆部件接收到数据(1,0,1,1,1)后,先与处理器进行交互,然后对数据进行作用,将它映射为扩域F上的元素y4+y3+y2+1,并将其传输给陷门部件;
(5)陷门部件收到数据y4+y3+y2+1后,先与处理器进行交互,然后调用模求幂子部件,计算出t的逆v=2,进而计算(y4+y3+y2+1)v,其结果为(y4+y3+y2+1)2=y4+y2+y,之后陷门部件调用多项式求逆子部件,求解出方程g(X)=y4+y2+y关于未知变量X的解,即方程
[X-(y4+y3+y2)][X-(y3+y2+y+1)][X-(y4+y3+1)]=y4+y2+y的解,其中方程的解集为{y3,y4+y3,y4+y3+y}。最后陷门部件将此解集{y3,y4+y3,y4+y3+y}传输给同构部件;
(6)同构部件接收到数据集{y3,y4+y3,y4+y3+y}后,先与处理器进行交互,然后将它们分别映射为基域F上的5维向量,得到{(0,0,0,1,0),(0,0,0,1,1),(0,1,0,1,1)},最后同构部件将数据集{(0,0,0,1,0),(0,0,0,1,1),(0,1,0,1,1)}传递给仿射变换求逆部件二;
(7)仿射变换求逆部件二收到数据集{(0,0,0,1,0),(0,0,0,1,1),(0,1,0,1,1)}后,与处理器进行交互,运行程序并分别计算S-1(0,0,0,1,0)、S-1(0,0,0,1,1)和S-1(0,1,0,1,1),得到结果{(0,0,0,1,0),(1,0,1,1,0),(1,0,0,1,0)},最后将此数据集返回给存储器;
(8)处理器调用Hash探测器,分别计算数据(0,0,0,1,0)、(1,0,1,1,0)和(1,0,0,1,0)的杂凑值,其中只有数据(1,0,1,1,0)的杂凑值为(1,1,1),即Hash(1,0,1,1,0)=(1,1,1),它等于存储器里的明文杂凑冗余数据(1,1,1);
(9)处理器将数据(1,0,1,1,0)作为解密后的明文输出给用户(或设备)。
上述实施例为本发明较简单的实施方式,但本发明的实施方式并不受上述实施例的限制,本发明推荐的系统参数为:q=2,n=160,d=6和t=128,其安全级别可达到2105,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (9)

1.一种多变量公钥加密/解密系统,其特征在于,包含:
A、加密模块,用于对待加密的明文进行加密处理,形成密文、完成加密,其包括处理器、公钥变换部件,待加密的明文传输到处理器后,处理器计算其杂凑值,得到相应的明文杂凑冗余数据,并存储明文和明文杂凑冗余数据,然后将明文数据传输至公钥变换部件中,通过将明文数据分别代入多变量多项式,得到加密后的密文,密文随后被传输到处理器中存储,处理器再将密文和明文杂凑冗余数据一起传输给其他用户的解密模块,此处的明文杂凑冗余数据起到探测明文的作用;
B、解密模块,用于对其他用户发来的密文和其明文杂凑冗余数据进行解密处理,形成明文、完成解密,其包括处理器、仿射变换求逆部件一、同构求逆部件、陷门部件、同构部件和仿射变换求逆部件二,其中陷门部件包含模求幂部件和多项式求逆部件,收到密文和其明文杂凑冗余数据后,处理器先将明文杂凑冗余数据存储,然后将密文传输给仿射变换求逆部件一进行仿射变换求逆运算,然后传输到同构求逆部件进行同构求逆运算,接着传输到陷门部件的模求幂部件和多项式求逆部件,分别进行模求幂运算、多项式求逆运算,将多项式求逆运算所得的一组或多组的解传输到同构部件进行同构运算,再传输到仿射变换求逆部件二进行仿射变换求逆运算,最终传输到处理器,对传输过来的一组或多组数据,处理器分别计算每组数据的杂凑值,若所得的某组数据杂凑值与预先存储在处理器中的明文杂凑冗余数据相等,则将该组数据作为解密后的明文存储并输出;若都不满足,处理器向用户输出解密错误的警告信息。
2.根据权利要求1所述的多变量公钥加密/解密系统,其特征在于,还包含选择器,其与处理器相连,当选择器处于开状态时,系统的加密模块工作,当选择器处于闭状态时,系统的解密模块工作。
3.根据权利要求2所述的多变量公钥加密/解密系统,其特征在于,所述的处理器包含与选择器相连的调度器,选择器的开状态、闭状态由处理器中的调度器识别、处理,存储在处理器中的数据由调度器控制、调度到各个相应的部件进行相应的操作。
4.根据权利要求1所述的多变量公钥加密/解密系统,其特征在于,所述的处理器还包含Hash探测器、存储器,处理器中计算数据的杂凑值由Hash探测器完成,处理器中存储数据由存储器完成。
5.一种多变量公钥加密/解密方法,包含以下顺序的步骤:
(1)加密过程:
a、待加密的明文传输到处理器后,处理器计算其杂凑值,得到明文杂凑冗余数据,并存储明文和明文杂凑冗余数据;
b、将明文数据传输至公钥变换部件中,通过将明文数据代入多变量多项式,得到加密后的密文;
c、密文随后传输到处理器中存储,处理器将密文与明文杂凑冗余数据一起传输给其他用户的解密模块;
(2)解密过程:
a、收到其他用户发来的密文和明文杂凑冗余数据后,处理器先将明文杂凑冗余数据存储,再将密文传输给仿射变换求逆部件一进行仿射变换求逆运算;
b、然后传输到同构求逆部件进行同构求逆运算;
c、接着传输到陷门部件的模求幂部件和多项式求逆部件,分别进行模求幂运算、多项式求逆运算,多项式求逆运算得一组或多组的解;
d、将多项式求逆运算所得的一组或多组的解传输到同构部件进行同构运算;
e、再传输到仿射变换求逆部件二进行仿射变换求逆运算;
f、最终传输到处理器,对传输过来的一组或多组的数据,处理器分别计算每组数据的杂凑值,若某组数据的杂凑值与处理器存储的明文杂凑冗余数据相等,则将该组数据作为解密后的明文存储并输出;若都不满足,处理器向用户输出解密错误的警告信息。
6.根据权利要求5所述的多变量公钥加密/解密方法,其特征在于,
所述的步骤(1)加密过程包含:
a、待加密的明文(x1',...,xn')∈Fn传输到处理器后,处理器计算其杂凑值(h1',...,hj')=Hash(x1',...,xn'),得到明文杂凑冗余数据(h1',...,hj'),其中Hash(·)是密码学上安全的单向函数,存储明文和明文杂凑冗余数据;
b、将明文(x1',...,xn')数据传输至公钥变换部件中,公钥变换部件将明文数据代入公钥映射P(x1,...,xn),即分别计算各个多变量多项式p1(x1',...,xn'),...,pn(x1',...,xn')的值,其值分别记为y1',...,yn',(y1',...,yn')就是加密后的密文;
c、密文(y1',...,yn')随后传输到处理器中存储,处理器将密文(y1',...,yn')和明文杂凑冗余数据(h1',...,hj')一起传输给其他用户的解密模块;
步骤(2)解密过程包含:
a、收到其他用户发来的密文(y1',...,yn')和明文杂凑冗余数据(h1',...,hj')后,处理器先将明文杂凑冗余数据(h1',...,hj')存储,再将密文(y1',...,yn')传输给仿射变换求逆部件一进行仿射变换求逆运算
Figure FDA0000383116630000031
b、然后将传输到同构求逆部件进行同构求逆运算
Figure FDA0000383116630000033
c、接着将
Figure FDA00003831166300000311
传输给陷门部件,分别进行模求幂运算、多项式求逆运算,即模求幂部件利用关系式t·v≡1mod(qn-1)计算出t的逆v,进而计算
Figure FDA0000383116630000034
然后多项式求逆部件利用概率的Berlekamp算法,求出
Figure FDA0000383116630000035
关于未知变量
Figure FDA0000383116630000036
的解,此解为一组或多组,且最多为d组,因此将该解集记为
Figure FDA0000383116630000037
d、将
Figure FDA00003831166300000312
传输到同构部件进行同构运算
Figure FDA0000383116630000039
e、再将所得数据传输到仿射变换求逆部件二进行仿射变换求逆运算
( x i 1 ′ , . . . , x in ′ ) = S - 1 ( x ‾ i 1 , . . . , x ‾ in ) ;
f、最终将(xi1',...,xin')传输到处理器,处理器计算(xi1',...,xin')的杂凑值,若某组i的数据(xi1',...,xin')的杂凑值与明文杂凑冗余数据(h1',...,hj')相等,则将该组数据(xi1',...,xin')作为解密后的明文输出;若对于所有的i都有(xi1',...,xin')≠(h1',...,hj'),则处理器向用户输出解密错误的警告信息。
7.根据权利要求5所述的多变量公钥加密/解密方法,其特征在于,在步骤(1)加密过程之前还包含以下步骤:当选择器处于开状态时,系统的加密模块工作,其中选择器与处理器相连;
在步骤(2)解密过程之前还包含以下步骤:当选择器处于闭状态时,系统的解密模块工作,其中选择器与处理器相连。
8.根据权利要求7所述的多变量公钥加密/解密方法,其特征在于,所述的处理器包含与选择器相连的调度器,选择器的开状态、闭状态由处理器中的调度器识别、处理,存储在处理器中的数据由调度器控制、调度到各个相应的部件进行相应的操作。
9.根据权利要求5所述的多变量公钥加密/解密方法,其特征在于,所述的处理器还包含Hash探测器、存储器,处理器中计算数据的杂凑值由Hash探测器完成,处理器中存储数据由存储器完成。
CN201310425409.3A 2013-09-17 2013-09-17 一种多变量公钥加密/解密系统及加密/解密方法 Expired - Fee Related CN103490883B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310425409.3A CN103490883B (zh) 2013-09-17 2013-09-17 一种多变量公钥加密/解密系统及加密/解密方法
PCT/CN2013/089899 WO2015039397A1 (zh) 2013-09-17 2013-12-18 一种多变量公钥加密/解密系统及加密/解密方法
EP20140174680 EP2854330A3 (en) 2013-09-17 2014-06-27 System and method for multivariate public key encryption/decryption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310425409.3A CN103490883B (zh) 2013-09-17 2013-09-17 一种多变量公钥加密/解密系统及加密/解密方法

Publications (2)

Publication Number Publication Date
CN103490883A true CN103490883A (zh) 2014-01-01
CN103490883B CN103490883B (zh) 2016-10-05

Family

ID=49830859

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310425409.3A Expired - Fee Related CN103490883B (zh) 2013-09-17 2013-09-17 一种多变量公钥加密/解密系统及加密/解密方法

Country Status (3)

Country Link
EP (1) EP2854330A3 (zh)
CN (1) CN103490883B (zh)
WO (1) WO2015039397A1 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103780383A (zh) * 2014-01-13 2014-05-07 华南理工大学 一种基于超球面的多变量公钥签名/验证系统及方法
CN103780382A (zh) * 2014-01-13 2014-05-07 华南理工大学 一种基于超球面的多变量公钥加密/解密系统及方法
CN104009848A (zh) * 2014-05-26 2014-08-27 华南理工大学 一种混合型的多变量数字签名系统及方法
CN106134128A (zh) * 2014-01-31 2016-11-16 谷歌公司 使用关联私钥部分更快的公钥加密的系统和方法
CN106330463A (zh) * 2016-09-09 2017-01-11 华南理工大学 一种多变量公钥的签名系统和方法
CN106712950A (zh) * 2017-01-18 2017-05-24 中译语通科技(北京)有限公司 基于同余数的rsa公钥加密算法对语料数据的加密方法
CN106921485A (zh) * 2015-12-24 2017-07-04 航天信息股份有限公司 基于矩阵运算的加密解密方法
CN109379178A (zh) * 2018-11-15 2019-02-22 成都卫士通信息产业股份有限公司 加解密装置构建方法、系统、介质及设备
US11991271B2 (en) 2018-07-31 2024-05-21 International Business Machines Corporation System and method for quantum resistant public key encryption

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102761415A (zh) * 2011-04-27 2012-10-31 航天信息股份有限公司 p元域SM2椭圆曲线的数字签名生成、验证及混合系统
CN102761413A (zh) * 2011-04-27 2012-10-31 航天信息股份有限公司 p元域SM2椭圆曲线公钥密码算法的实现系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383705A (zh) * 2007-09-05 2009-03-11 索尼(中国)有限公司 多变量公钥加密方法和装置及其解密方法和装置
CN101540673B (zh) * 2009-04-24 2011-02-16 武汉大学 公钥加解密方法及其数字签名方法
CN101834724B (zh) * 2010-04-27 2012-08-29 武汉大学 一种公钥认证加密方法及数字签名方法
CN101977109A (zh) * 2010-10-21 2011-02-16 李晨 线性混淆高次方程公钥密码算法
CN102340500B (zh) * 2011-07-13 2014-04-16 中国人民解放军海军计算技术研究所 可信计算平台安全管理系统及安全管理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102761415A (zh) * 2011-04-27 2012-10-31 航天信息股份有限公司 p元域SM2椭圆曲线的数字签名生成、验证及混合系统
CN102761413A (zh) * 2011-04-27 2012-10-31 航天信息股份有限公司 p元域SM2椭圆曲线公钥密码算法的实现系统

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
PRADHEEPKUMAR SINGARAVELU,ETC: "Viability of Multivariate Cryptosystems for WSN", 《IEEE》, 11 November 2010 (2010-11-11) *
XIN WANG,ETC: "An Improved Medium Field Multivariate Public Key Cryptosystem", 《IEEE》, 13 November 2008 (2008-11-13) *
刘辉: "多元多项式公钥密码体制的研究与应用", 《万方学位论文》, 9 June 2009 (2009-06-09) *
王鑫: "基于多变量多项式的公钥密码方案研究", 《万方学位论文》, 30 July 2010 (2010-07-30) *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3096488A4 (en) * 2014-01-13 2017-08-23 South China University Of Technology (SCUT) Hypersphere-based multivariable public key encryption/decryption system and method
CN103780382A (zh) * 2014-01-13 2014-05-07 华南理工大学 一种基于超球面的多变量公钥加密/解密系统及方法
WO2015103977A1 (zh) * 2014-01-13 2015-07-16 华南理工大学 一种基于超球面的多变量公钥加密/解密系统及方法
WO2015103932A1 (zh) * 2014-01-13 2015-07-16 华南理工大学 一种基于超球面的多变量公钥签名/验证系统及方法
US10142105B2 (en) 2014-01-13 2018-11-27 South China University Of Technology Hypersphere-based multivariable public key encryption/decryption system and method
CN103780382B (zh) * 2014-01-13 2017-01-18 华南理工大学 一种基于超球面的多变量公钥加密/解密系统及方法
US9948462B2 (en) 2014-01-13 2018-04-17 South China University Of Technology Hypersphere-based multivariable public key signature/verification system and method
CN103780383B (zh) * 2014-01-13 2017-05-31 华南理工大学 一种基于超球面的多变量公钥签名/验证系统及方法
CN103780383A (zh) * 2014-01-13 2014-05-07 华南理工大学 一种基于超球面的多变量公钥签名/验证系统及方法
CN106134128B (zh) * 2014-01-31 2019-09-17 谷歌有限责任公司 使用关联私钥部分更快的公钥加密的系统和方法
CN106134128A (zh) * 2014-01-31 2016-11-16 谷歌公司 使用关联私钥部分更快的公钥加密的系统和方法
CN104009848B (zh) * 2014-05-26 2017-09-29 华南理工大学 一种混合型的多变量数字签名系统及方法
CN104009848A (zh) * 2014-05-26 2014-08-27 华南理工大学 一种混合型的多变量数字签名系统及方法
CN106921485A (zh) * 2015-12-24 2017-07-04 航天信息股份有限公司 基于矩阵运算的加密解密方法
CN106330463A (zh) * 2016-09-09 2017-01-11 华南理工大学 一种多变量公钥的签名系统和方法
CN106330463B (zh) * 2016-09-09 2019-08-20 华南理工大学 一种多变量公钥的签名系统和方法
CN106712950A (zh) * 2017-01-18 2017-05-24 中译语通科技(北京)有限公司 基于同余数的rsa公钥加密算法对语料数据的加密方法
US11991271B2 (en) 2018-07-31 2024-05-21 International Business Machines Corporation System and method for quantum resistant public key encryption
CN109379178A (zh) * 2018-11-15 2019-02-22 成都卫士通信息产业股份有限公司 加解密装置构建方法、系统、介质及设备

Also Published As

Publication number Publication date
WO2015039397A1 (zh) 2015-03-26
CN103490883B (zh) 2016-10-05
EP2854330A2 (en) 2015-04-01
EP2854330A3 (en) 2015-05-20

Similar Documents

Publication Publication Date Title
CN103490883A (zh) 一种多变量公钥加密/解密系统及加密/解密方法
US9973334B2 (en) Homomorphically-created symmetric key
CN101374043B (zh) 密钥协商的方法、加/解密的方法及签名/验证的方法
CN103780382B (zh) 一种基于超球面的多变量公钥加密/解密系统及方法
CN106953722A (zh) 一种全同态加密的密文查询方法和系统
CN103414569A (zh) 一种建立抗攻击的公钥密码的方法
JPWO2012114452A1 (ja) 類似度算出システム及び類似度算出装置及びコンピュータプログラム及び類似度算出方法
KR101606317B1 (ko) 암호 시스템, 암호 방법, 암호 프로그램을 기록한 컴퓨터 판독가능한 기록 매체 및 복호 장치
CN105447361A (zh) 加密和相似性度量的方法、终端及服务器
CN101977109A (zh) 线性混淆高次方程公钥密码算法
CN102279840B (zh) 一种适用于信息加密技术应用的素数族快速生成方法
CN101911009B (zh) 用于以签名方案进行非对称加密的对策方法和设备
CN103490897A (zh) 一种多变量公钥签名/验证系统及签名/验证方法
CN102449951A (zh) 用于在电子组件中执行密码任务的方法
CN103973439A (zh) 一种多变量公钥加密方法
EP3002904A1 (en) Method for ciphering/deciphering and processing vectors of dimension n, where n is an integer greater or equal to 1
CN103346875A (zh) 混沌保密通信系统中数字混沌密码的产生方法
WO2014030706A1 (ja) 暗号化データベースシステム、クライアント装置およびサーバ、暗号化データ加算方法およびプログラム
CN107104788B (zh) 终端及其不可抵赖的加密签名方法和装置
US20170359177A1 (en) Method and System for Cryptographic Decision-making of Set Membership
CN102246456A (zh) 用于对抗对基于循环群的加密的侧通道攻击的系统和方法
CN103220130A (zh) 数字混沌保密通信的加密及解密方法
CN105099693B (zh) 一种传输方法及传输装置
Moldovyan et al. Commutative encryption method based on Hidden logarithm problem
CN103297221B (zh) 基于数字混沌编码算法的混沌保密通信系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20161005

Termination date: 20210917