[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN107885486B - 一种基于查找树的复合有限域求逆装置 - Google Patents

一种基于查找树的复合有限域求逆装置 Download PDF

Info

Publication number
CN107885486B
CN107885486B CN201711259841.4A CN201711259841A CN107885486B CN 107885486 B CN107885486 B CN 107885486B CN 201711259841 A CN201711259841 A CN 201711259841A CN 107885486 B CN107885486 B CN 107885486B
Authority
CN
China
Prior art keywords
node
tree
inversion
finite field
layer
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
Application number
CN201711259841.4A
Other languages
English (en)
Other versions
CN107885486A (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.)
Shenzhen Polytechnic
Original Assignee
Shenzhen Polytechnic
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 Shenzhen Polytechnic filed Critical Shenzhen Polytechnic
Priority to CN201711259841.4A priority Critical patent/CN107885486B/zh
Publication of CN107885486A publication Critical patent/CN107885486A/zh
Application granted granted Critical
Publication of CN107885486B publication Critical patent/CN107885486B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/724Finite field arithmetic
    • G06F7/726Inversion; Reciprocal calculation; Division of elements of a finite field

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明公开了一种基于查找树的复合有限域求逆装置,其特征在于,包括控制器、输入端口、输出端口和运算器;所述输入端口用于输入复合有限域GF((2n)2)的求逆运算数a(x);所述控制器用于调用所述运算器对所述求逆运算数a(x)进行求逆运算,获得复合有限域GF((2n)2)的求逆运算结果b(x);所述运算器用于运行加法运算、乘法运算、平方运算和基于查找树的求逆运算;所述输出端口用于输出所述求逆运算结果b(x)。本发明能够有效提高有限域求逆的运算效率。

Description

一种基于查找树的复合有限域求逆装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于查找树的复合有限域求逆装置。
背景技术
有限域求逆属于有限域运算,与有限域加法、乘法、除法、平方、乘方等运算一起被密码算法广泛使用。复合有限域属于有限域,复合有限域求逆的特点是需要进行子域的运算。常用的复合有限域是GF((2n)2),域的大小是(2n)2,它的子域是GF(2n)。GF((2n)2)的求逆运算一般需要子域GF(2n)的加法、乘法、求逆等运算。因为复合有限域是GF((2n)2)求逆包含子域GF(2n)运算,所以通过优化GF(2n)运算可以提升GF((2n)2)的求逆效率。
现有技术中的复合有限域求逆器在实时和对速度敏感的环境下,无法实现有限域求逆所要达到的运算效率。
发明内容
本发明针对现有技术中存在的问题,提供了一种基于查找树的复合有限域求逆装置,能够有效提高有限域求逆的运算效率。
本发明就上述技术问题而提出的技术方案如下:
本发明提供一种基于查找树的复合有限域求逆装置,包括控制器、输入端口、输出端口和运算器;
所述输入端口用于输入复合有限域GF((2n)2)的求逆运算数a(x);
所述控制器用于调用所述运算器对所述求逆运算数a(x)进行求逆运算,获得复合有限域GF((2n)2)的求逆运算结果b(x);
所述运算器用于运行加法运算、乘法运算、平方运算和基于查找树的求逆运算;
所述输出端口用于输出所述求逆运算结果b(x)。
进一步地,所述求逆运算数a(x)的多项式表示形式为a(x)=ahx+al
所述求逆运算结果b(x)的多项式表示形式为b(x)=bhx+bl;b(x)=a(x)-1
其中,ah,al,bh,bl均为有限域GF(2n)的元素。
进一步地,所述运算器包括加法运算模块、乘法运算模块、平方运算模块和求逆运算模块;
所述输入端口还用于输入时钟信号;
所述控制器具体用于在第一个时钟周期,调用所述加法运算模块计算s0=ah+al,调用所述平方运算模块计算s1=ah 2,调用所述乘法运算模块计算s3=ah×al
在第二个时钟周期,调用所述平方运算模块计算s2=al 2,调用所述乘法运算模块计算s4=s1×e;
在第三个时钟周期,调用所述加法运算模块计算s5=s4+s3
在第四个时钟周期,调用所述加法运算模块计算s6=s5+s2
在第五个时钟周期,调用所述求逆运算模块计算s7=s6 -1
在第六个时钟周期,调用所述乘法运算模块计算bl=s0×s7
在第七个时钟周期,调用所述乘法运算模块计算bh=ah×s7,进而计算b(x)=bhx+bl
其中,s0,ah,s1,al,s2,s3,s4,s5,s6,s7,bl,bh均为有限域GF(2n)的元素,e为有限域GF(2n)的常数。
进一步地,所述加法运算模块包括n个异或逻辑门,用于针对有限域GF(2n)的两个已知元素c(x)和d(x),计算ei=ci+di,进而获得加法运算结果
Figure BDA0001493293820000031
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,d(x)=dn-1xn-1+dn-2xn-2+...+d0,e(x)=en- 1xn-1+en-2xn-2+...+e0,i=0,1,...,n-1,n≥1,+是有限域GF(2n)的加法运算,cn-1,cn-2,...,c0,dn-1,dn-2,...,d0,en-1,en-2,...,e0均为有限域GF(2n)的元素。
进一步地,所述乘法运算模块包括多个与逻辑门和异或逻辑门,用于针对有限域GF(2n)的两个已知元素c(x)和d(x),计算
Figure BDA0001493293820000032
Figure BDA0001493293820000033
j=0,1,...,2n-2,进而计算
Figure BDA0001493293820000034
i=0,1,...,n-1,n≥1,获得乘法运算结果
Figure BDA0001493293820000035
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,d(x)=dn-1xn-1+dn-2xn-2+...+d0,e(x)=en- 1xn-1+en-2xn-2+...+e0,mod为模运算,p(x)=xn+pn-1xn-1+...+1为有限域GF(2n)的不可约多项式,pn-1,pn-2,...,p1,vjl,cl,dk,Sj,ei,vji均为有限域GF(2n)的元素。
进一步地,所述平方运算模块包括多个与逻辑门和异或逻辑门,用于针对有限域GF(2n)的已知元素c(x),计算
Figure BDA0001493293820000036
Figure BDA0001493293820000037
j=0,1,...,2n-2,进而计算
Figure BDA0001493293820000038
i=0,1,...,n-1,n≥1,获得平方运算结果
Figure BDA0001493293820000039
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,e(x)=en-1xn-1+en-2xn-2+...+e0,mod为模运算,p(x)=xn+pn-1xn-1+...+1为有限域GF(2n)的不可约多项式,pn-1,pn-2,...,p1,vjl,cl,ck,Sj,ei,vji均为有限域GF(2n)的元素。
进一步地,所述求逆运算模块包括多个与逻辑门和异或逻辑门,用于针对有限域GF(2n)的已知元素c(x),基于查找树计算e(x)=c(x)-1
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,e(x)=en-1xn-1+en-2xn-2+...+e0,cn-1,cn-2,...,c0,en-1,en-2,...,e0均为有限域GF(2n)的元素。
进一步地,所述求逆运算模块具体用于构建两颗查找树,每颗查找树具有n层,分别对应第0层至第n-1层;每棵查找树的第0层分别具有一个树节点,一个设为左节点,另一个设为右节点;从第0层到第n-2层,每一层的每个树节点具有两个子节点,分别设为左节点和右节点并作为下一层的树节点;其中,左节点代表数值0,右节点代表数值1;
对于c(x)=cn-1xn-1+cn-2xn-2+...+c0,从c0开始,根据c0的值对第0层的两个树节点进行标记,若c0的值为0,则标记两个树节点中的左节点,若为1,则标记两个树节点中的右节点,从而获得第0层标记节点;
根据c1的值对第0层标记节点所具有的两个子节点进行标记,若c1的值为0,则标记两个子节点中的左节点,若c1的值为1,则标记两个子节点中的右节点,从而获得第1层标记节点;
依次对每一层进行标记,直到获得第n-1层标记节点;
若所述第n-1层标记节点与第n-1层的另一个树节点相连,则判定c(x)有逆元;
判断相连的树节点是左节点还是右节点,若是左节点则设置en-1=0,若是右节点则设置en-1=1;
判断相连的树节点所属的第n-2层的树节点是左节点还是右节点,若是左节点则设置en-2=0,若是右节点则设置en-2=1;
依次对每一层进行判断,直到设置出e0的值,从而获得求逆运算结果
Figure BDA0001493293820000051
本发明实施例提供的技术方案带来的有益效果是:
在复合有限域求逆运算中,基于查找树进行求逆运算,相对于现有技术中的有限域求逆器,有效提高运算效率,可广泛应用于对称加密(如DES、AES),公钥密码和Rainbow、TTS、UOV签名等数学领域和工程领域。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的基于查找树的复合有限域求逆装置的有限域乘法器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种基于查找树的复合有限域求逆装置,参见图1,包括控制器1、输入端口、输出端口b和运算器;
所述输入端口包括端口a,用于输入复合有限域GF((2n)2)的求逆运算数a(x);
所述控制器1用于调用所述运算器对所述求逆运算数a(x)进行求逆运算,获得复合有限域GF((2n)2)的求逆运算结果b(x);
所述运算器用于运行加法运算、乘法运算、平方运算和基于查找树的求逆运算;
所述输出端口b用于输出所述求逆运算结果b(x)。
其中,控制器分别与输入端口、输出端口、运算器连接,用于调度相连接的部件。输入端口包括端口a,用于输入复合有限域GF((2n)2)的求逆运算数a(x),输出端口包括端口b,用于输出复合有限域GF((2n)2)的求逆运算结果b(x)。
进一步地,所述求逆运算数a(x)的多项式表示形式为a(x)=ahx+al
所述求逆运算结果b(x)的多项式表示形式为b(x)=bhx+bl;b(x)=a(x)-1
其中,ah,al,bh,bl均为有限域GF(2n)的元素。
需要说明的是,GF((2n)2)的不可约多项式是q(x)=x2+x+e,e是有限域GF(2n)的常数。求逆运算数a(x)由两个n比特的数组成,可以表示为多项式形式,也可表示成系数的形式,如a(x)=a(ah,al),ah,al是有限域GF(2n)的元素。求逆运算结果b(x)的由两个n比特的数组成,可以表示成多项式的形式,也可表示成系数的形式,如b(x)=b(bh,bl),bh,bl是有限域GF(2n)的元素。
进一步地,所述运算器包括加法运算模块2、乘法运算模块3、平方运算模块4和求逆运算模块5;
所述输入端口还包括端口clk,用于输入时钟信号;
所述控制器1具体用于在第一个时钟周期,调用所述加法运算模块计算s0=ah+al,调用所述平方运算模块计算s1=ah 2,调用所述乘法运算模块计算s3=ah×al
在第二个时钟周期,调用所述平方运算模块计算s2=al 2,调用所述乘法运算模块计算s4=s1×e;
在第三个时钟周期,调用所述加法运算模块计算s5=s4+s3
在第四个时钟周期,调用所述加法运算模块计算s6=s5+s2
在第五个时钟周期,调用所述求逆运算模块计算s7=s6 -1
在第六个时钟周期,调用所述乘法运算模块计算bl=s0×s7
在第七个时钟周期,调用所述乘法运算模块计算bh=ah×s7,进而计算b(x)=bhx+bl
其中,s0,ah,s1,al,s2,s3,s4,s5,s6,s7,bl,bh均为有限域GF(2n)的元素,e为有限域GF(2n)的常数。
需要说明的是,控制器1分别与加法运算模块4、第一乘法运算模块5、第二乘法运算模块6、第一平方运算模块7、第二平方运算模块8和求逆运算模块9连接。输入端口还包括端口clk,用于输入时钟信号。控制器还用于解析所述时钟信号。时钟信号是单比特信号,取值是0或1,代表低电平或高电平,低电平转向高电平代表一个时钟周期的开始。加法运算模块包括用于计算GF(2n)加法的逻辑门电路;乘法运算模块包括用于计算GF(2n)乘法的逻辑门电路;平方运算模块包括用于计算GF(2n)平方的逻辑门电路;求逆运算模块包括用于计算GF(2n)求逆的查找结构。
进一步地,所述加法运算模块包括n个异或逻辑门,用于针对有限域GF(2n)的两个已知元素c(x)和d(x),计算ei=ci+di,进而获得加法运算结果
Figure BDA0001493293820000071
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,d(x)=dn-1xn-1+dn-2xn-2+...+d0,e(x)=en- 1xn-1+en-2xn-2+...+e0,i=0,1,...,n-1,n≥1,+是有限域GF(2n)的加法运算,cn-1,cn-2,...,c0,dn-1,dn-2,...,d0,en-1,en-2,...,e0均为有限域GF(2n)的元素。
需要说明的是,有限域GF(2n)的加法使用异或逻辑门,因此加法运算模块包括n个异或逻辑门,用于计算GF(2n)的两个已知元素c(x)和d(x)的加法e(x)=c(x)+d(x)。在具体运行时,对于i=0,1,...,n-1,计算ei=ci+di,即可获得加法运算结果
Figure BDA0001493293820000081
进一步地,所述乘法运算模块包括多个与逻辑门和异或逻辑门,用于针对有限域GF(2n)的两个已知元素c(x)和d(x),计算
Figure BDA0001493293820000082
Figure BDA0001493293820000083
j=0,1,...,2n-2,进而计算
Figure BDA0001493293820000084
i=0,1,...,n-1,n≥1,获得乘法运算结果
Figure BDA0001493293820000085
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,d(x)=dn-1xn-1+dn-2xn-2+...+d0,e(x)=en- 1xn-1+en-2xn-2+...+e0,mod为模运算,p(x)=xn+pn-1xn-1+...+1为有限域GF(2n)的不可约多项式,pn-1,pn-2,...,p1,vjl,cl,dk,Sj,ei,vji均为有限域GF(2n)的元素。
需要说明的是,有限域GF(2n)的加法使用异或逻辑门、乘法使用与逻辑门,因此乘法运算模块包含多个与逻辑门和异或逻辑门,用于计算GF(2n)的两个已知元素c(x)和d(x)的乘法e(x)=c(x)×d(x)。在具体运行时,对于j=0,1,...,2n-2,计算
Figure BDA0001493293820000086
Figure BDA0001493293820000087
对于i=0,1,...,n-1,计算
Figure BDA0001493293820000088
最后获得乘法运算结果
Figure BDA0001493293820000089
进一步地,所述平方运算模块包括多个与逻辑门和异或逻辑门,用于针对有限域GF(2n)的已知元素c(x),计算
Figure BDA00014932938200000810
Figure BDA00014932938200000811
j=0,1,...,2n-2,进而计算
Figure BDA00014932938200000812
i=0,1,...,n-1,n≥1,获得平方运算结果
Figure BDA00014932938200000813
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,e(x)=en-1xn-1+en-2xn-2+...+e0,mod为模运算,p(x)=xn+pn-1xn-1+...+1为有限域GF(2n)的不可约多项式,pn-1,pn-2,...,p1,vjl,cl,ck,Sj,ei,vji均为有限域GF(2n)的元素。
需要说明的是,有限域GF(2n)的加法使用异或逻辑门、乘法使用与逻辑门,因此乘法运算模块包含多个与逻辑门和异或逻辑门,用于计算GF(2n)的已知元素c(x)的平方e(x)=c(x)2。在具体运行时,对于j=0,1,...,2n-2,计算
Figure BDA0001493293820000091
Figure BDA0001493293820000092
对于i=0,1,...,n-1,计算
Figure BDA0001493293820000093
最后获得平方运算结果
Figure BDA0001493293820000094
进一步地,所述求逆运算模块包括多个与逻辑门和异或逻辑门,用于针对有限域GF(2n)的已知元素c(x),基于查找树计算e(x)=c(x)-1
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,e(x)=en-1xn-1+en-2xn-2+...+e0,cn-1,cn-2,...,c0,en-1,en-2,...,e0均为有限域GF(2n)的元素。
进一步地,所述求逆运算模块具体用于构建两颗查找树,每颗查找树具有n层,分别对应第0层至第n-1层;每棵查找树的第0层分别具有一个树节点,一个设为左节点,另一个设为右节点;从第0层到第n-2层,每一层的每个树节点具有两个子节点,分别设为左节点和右节点并作为下一层的树节点;其中,左节点代表数值0,右节点代表数值1;
对于c(x)=cn-1xn-1+cn-2xn-2+...+c0,从c0开始,根据c0的值对第0层的两个树节点进行标记,若c0的值为0,则标记两个树节点中的左节点,若为1,则标记两个树节点中的右节点,从而获得第0层标记节点;
根据c1的值对第0层标记节点所具有的两个子节点进行标记,若c1的值为0,则标记两个子节点中的左节点,若c1的值为1,则标记两个子节点中的右节点,从而获得第1层标记节点;
依次对每一层进行标记,直到获得第n-1层标记节点;
若所述第n-1层标记节点与第n-1层的另一个树节点相连,则判定c(x)有逆元;
判断相连的树节点是左节点还是右节点,若是左节点则设置en-1=0,若是右节点则设置en-1=1;
判断相连的树节点所属的第n-2层的树节点是左节点还是右节点,若是左节点则设置en-2=0,若是右节点则设置en-2=1;
依次对每一层进行判断,直到设置出e0的值,从而获得求逆运算结果
Figure BDA0001493293820000101
需要说明的是,每棵树的第0层的树节点为根节点,一棵树的根节点设为左根节点,另一棵树的根节点设为右根节点。从第0层到第n-2层,每一层的每个树节点具有两个子节点作为下一层的树节点,例如,第0层的两个根节点分别具有两个子节点作为第1层的树节点,因此第1层具有4个树节点。第n-1层中的树节点为叶子节点。每一条从根节点开始到叶子节点结束的路径分别代表一个GF(2n)的元素。例如,从左根节点开始,到其两个子节点的左节点,直到最左边的叶子节点结束(第n-1层的最左边的节点)的路径代表GF(2n)的元素(00...00)2
若GF(2n)的求逆e(x)=c(x)-1,并且从第0层到第n-1层的节点nt的路径代表GF(2n)的元素c(x),从第0层到第n-1层的节点nk的路径代表GF(2n)的元素e(x),则第n-1层的节点nk与nt相连。因此,求逆运算模块的运行过程如下:
首先,对于c(x)=cn-1xn-1+cn-2xn-2+...+c0,判断c0的值是0还是1,若为0,则标记左根节点,反之则标记右根节点;
接着,查找第0层标记的根节点具有两个子节点,判断c1的值是0还是1,若为0,则标记左节点,反之则标记右节点;
接下来往下每一层都依据这样的判断方法标记节点,直到第n-1层,标记某个叶子节点;
若标记的叶子节点与另一个叶子节点相连,则c(x)有逆元,标记这个相连的叶子节点;
若这个叶子节点是左节点,则en-1=0,若这个叶子节点是右节点,则en-1=1;
若这个叶子节点的父亲节点(即该叶子节点所属的树节点)是左节点,则en-2=0,若这个叶子节点的父亲节点是右节点,则en-2=1;
接下来往上每一层都依据这样的判断方法计算ei的值,直到第0层为止;
最后,
Figure BDA0001493293820000111
是e(x)=c(x)-1的运算结果。
下面以n=4为例说明本发明实施例提供的复合有限域求逆装置的工作过程。
输入端口的运算数a(x)是复合有限域GF((24)2)的元素,可以表示成多项式的形式:
a(x)=ahx+al
ah,al是有限域GF(24)的元素。
输出端口的运算数b(x)是复合有限域GF((24)2)的元素,可以表示成多项式的形式:
b(x)=bhx+bl
bh,bl是有限域GF(24)的元素。
输入端口的时钟信号clk是单比特信号,时钟周期是20纳秒。
控制器用于调度其他部件,计算GF((24)2)的b(x)=a(x)-1的求逆,其中GF((24)2)的不可约多项式是q(x)=x2+x+9,步骤如下:
首先,第一个时钟周期,调用加法运算模块计算s0=ah+al,s0,ah,al是有限域GF(24)的元素;
调用平方运算模块计算s1=ah 2,s1,ah是有限域GF(24)的元素;
调用乘法运算模块计算s3=ah×al,s3,ah,al是有限域GF(24)的元素;
接着,第二个时钟周期,调用平方运算模块计算s2=al 2,s2,al是有限域GF(24)的元素;
调用乘法运算模块计算s4=s1×e,s4,s1,e是有限域GF(24)的元素;
然后,第三个时钟周期,调用加法运算模块计算s5=s4+s3,s5,s4,s3是有限域GF(24)的元素;
接着,第四个时钟周期,调用加法运算模块计算s6=s5+s2,s6,s5,s2是有限域GF(24)的元素;
然后,第五个时钟周期,调用求逆运算模块计算s7=s6 -1,s7,s6是有限域GF(24)的元素;
接着,第六个时钟周期,调用乘法运算模块计算bl=s0×s7,bl,s0,s7是有限域GF(24)的元素;
然后,第七个时钟周期,调用乘法运算模块计算bh=ah×s7,bl,ah,s7是有限域GF(24)的元素;
最后,b(x)=bhx+bl是a(x)=ahx+al的逆元。
本发明实施例在复合有限域求逆运算中,基于查找树进行求逆运算,相对于现有技术中的有限域求逆器,有效提高运算效率,可广泛应用于对称加密(如DES、AES),公钥密码和Rainbow、TTS、UOV签名等数学领域和工程领域。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种基于查找树的复合有限域求逆装置,其特征在于,包括控制器、输入端口、输出端口和运算器;
所述输入端口用于输入复合有限域GF((2n)2)的求逆运算数a(x);
所述控制器用于调用所述运算器对所述求逆运算数a(x)进行求逆运算,获得复合有限域GF((2n)2)的求逆运算结果b(x);
所述运算器用于运行加法运算、乘法运算、平方运算和基于查找树的求逆运算;
所述输出端口用于输出所述求逆运算结果b(x);
所述求逆运算数a(x)的多项式表示形式为a(x)=ahx+al
所述求逆运算结果b(x)的多项式表示形式为b(x)=bhx+bl;b(x)=a(x)-1
其中,ah,al,bh,bl均为有限域GF(2n)的元素;
所述运算器包括加法运算模块、乘法运算模块、平方运算模块和求逆运算模块;
所述输入端口还用于输入时钟信号;
所述控制器具体用于在第一个时钟周期,调用所述加法运算模块计算s0=ah+al,调用所述平方运算模块计算s1=ah 2,调用所述乘法运算模块计算s3=ah×al
在第二个时钟周期,调用所述平方运算模块计算s2=al 2,调用所述乘法运算模块计算s4=s1×e;
在第三个时钟周期,调用所述加法运算模块计算s5=s4+s3
在第四个时钟周期,调用所述加法运算模块计算s6=s5+s2
在第五个时钟周期,调用所述求逆运算模块计算s7=s6 -1
在第六个时钟周期,调用所述乘法运算模块计算bl=s0×s7
在第七个时钟周期,调用所述乘法运算模块计算bh=ah×s7,进而计算b(x)=bhx+bl
其中,s0,ah,s1,al,s2,s3,s4,s5,s6,s7,bl,bh均为有限域GF(2n)的元素,e为有限域GF(2n)的常数。
2.如权利要求1所述的基于查找树的复合有限域求逆装置,其特征在于,所述加法运算模块包括n个异或逻辑门,用于针对有限域GF(2n)的两个已知元素c(x)和d(x),计算ei=ci+di,进而获得加法运算结果
Figure FDA0002969506490000021
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,d(x)=dn-1xn-1+dn-2xn-2+...+d0,e(x)=en-1xn-1+en-2xn-2+...+e0,i=0,1,...,n-1,n≥1,+是有限域GF(2n)的加法运算,cn-1,cn-2,...,c0,dn-1,dn-2,...,d0,en-1,en-2,...,e0均为有限域GF(2n)的元素。
3.如权利要求1所述的基于查找树的复合有限域求逆装置,其特征在于,所述乘法运算模块包括多个与逻辑门和异或逻辑门,用于针对有限域GF(2n)的两个已知元素c(x)和d(x),计算
Figure FDA0002969506490000022
Figure FDA0002969506490000023
进而计算
Figure FDA0002969506490000024
获得乘法运算结果
Figure FDA0002969506490000025
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,d(x)=dn-1xn-1+dn-2xn-2+...+d0,e(x)=en-1xn-1+en-2xn-2+...+e0,mod为模运算,p(x)=xn+pn-1xn-1+...+1为有限域GF(2n)的不可约多项式,pn-1,pn-2,...,p1,vjl,cl,dk,Sj,ei,vji均为有限域GF(2n)的元素。
4.如权利要求1所述的基于查找树的复合有限域求逆装置,其特征在于,所述平方运算模块包括多个与逻辑门和异或逻辑门,用于针对有限域GF(2n)的已知元素c(x),计算
Figure FDA0002969506490000031
进而计算
Figure FDA0002969506490000032
获得平方运算结果
Figure FDA0002969506490000033
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,e(x)=en-1xn-1+en-2xn-2+...+e0,mod为模运算,p(x)=xn+pn-1xn-1+...+1为有限域GF(2n)的不可约多项式,pn-1,pn-2,...,p1,vjl,cl,ck,Sj,ei,vji均为有限域GF(2n)的元素。
5.如权利要求1所述的基于查找树的复合有限域求逆装置,其特征在于,所述求逆运算模块包括多个与逻辑门和异或逻辑门,用于针对有限域GF(2n)的已知元素c(x),基于查找树计算e(x)=c(x)-1
其中,c(x)=cn-1xn-1+cn-2xn-2+...+c0,e(x)=en-1xn-1+en-2xn-2+...+e0,cn-1,cn-2,...,c0,en-1,en-2,...,e0均为有限域GF(2n)的元素。
6.如权利要求5所述的基于查找树的复合有限域求逆装置,其特征在于,所述求逆运算模块具体用于构建两颗查找树,每颗查找树具有n层,分别对应第0层至第n-1层;每棵查找树的第0层分别具有一个树节点,一个设为左节点,另一个设为右节点;从第0层到第n-2层,每一层的每个树节点具有两个子节点,分别设为左节点和右节点并作为下一层的树节点;其中,左节点代表数值0,右节点代表数值1;
对于c(x)=cn-1xn-1+cn-2xn-2+...+c0,从c0开始,根据c0的值对第0层的两个树节点进行标记,若c0的值为0,则标记两个树节点中的左节点,若为1,则标记两个树节点中的右节点,从而获得第0层标记节点;
根据c1的值对第0层标记节点所具有的两个子节点进行标记,若c1的值为0,则标记两个子节点中的左节点,若c1的值为1,则标记两个子节点中的右节点,从而获得第1层标记节点;
依次对每一层进行标记,直到获得第n-1层标记节点;
若所述第n-1层标记节点与第n-1层的另一个树节点相连,则判定c(x)有逆元;
判断相连的树节点是左节点还是右节点,若是左节点则设置en-1=0,若是右节点则设置en-1=1;
判断相连的树节点所属的第n-2层的树节点是左节点还是右节点,若是左节点则设置en-2=0,若是右节点则设置en-2=1;
依次对每一层进行判断,直到设置出e0的值,从而获得求逆运算结果
Figure FDA0002969506490000041
CN201711259841.4A 2017-12-04 2017-12-04 一种基于查找树的复合有限域求逆装置 Active CN107885486B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711259841.4A CN107885486B (zh) 2017-12-04 2017-12-04 一种基于查找树的复合有限域求逆装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711259841.4A CN107885486B (zh) 2017-12-04 2017-12-04 一种基于查找树的复合有限域求逆装置

Publications (2)

Publication Number Publication Date
CN107885486A CN107885486A (zh) 2018-04-06
CN107885486B true CN107885486B (zh) 2021-09-07

Family

ID=61772960

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711259841.4A Active CN107885486B (zh) 2017-12-04 2017-12-04 一种基于查找树的复合有限域求逆装置

Country Status (1)

Country Link
CN (1) CN107885486B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108874365A (zh) * 2018-06-29 2018-11-23 深圳职业技术学院 一种基于不可约三项式的有限域求逆器及有限域求逆方法
CN108897526B (zh) * 2018-06-29 2022-10-21 深圳职业技术学院 一种基于多次平方运算的复合有限域求逆器及其求逆方法
CN109656513B (zh) * 2018-12-07 2022-11-11 深圳职业技术学院 一种基于心动模型的复合有限域除法装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101572602A (zh) * 2008-04-28 2009-11-04 陈婧 一种基于硬件设计的有限域求逆的方法及装置
CN101630244A (zh) * 2009-07-28 2010-01-20 哈尔滨工业大学深圳研究生院 一种流水线型椭圆曲线双标量乘法系统及方法
CN102902510A (zh) * 2012-08-03 2013-01-30 华南理工大学 一种有限域求逆器
CN106909339A (zh) * 2017-02-22 2017-06-30 深圳职业技术学院 一种基于二叉树结构的有限域乘法器

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4905161B2 (ja) * 2007-01-31 2012-03-28 富士通株式会社 Raid装置及びガロア体を用いたデータ復元装置
CN104639282B (zh) * 2013-11-14 2018-09-11 杭州海康威视数字技术股份有限公司 通信系统中rs译码方法及其装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101572602A (zh) * 2008-04-28 2009-11-04 陈婧 一种基于硬件设计的有限域求逆的方法及装置
CN101630244A (zh) * 2009-07-28 2010-01-20 哈尔滨工业大学深圳研究生院 一种流水线型椭圆曲线双标量乘法系统及方法
CN102902510A (zh) * 2012-08-03 2013-01-30 华南理工大学 一种有限域求逆器
CN106909339A (zh) * 2017-02-22 2017-06-30 深圳职业技术学院 一种基于二叉树结构的有限域乘法器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"有限域运算和多变量公钥密码硬件的优化和设计";易海博;《中国博士学位论文全文数据库》;20150815(第8期);I136-11 *

Also Published As

Publication number Publication date
CN107885486A (zh) 2018-04-06

Similar Documents

Publication Publication Date Title
CN110351087B (zh) 流水线型的蒙哥马利模乘运算方法
Hossain et al. High‐performance elliptic curve cryptography processor over NIST prime fields
US20210256165A1 (en) Protecting parallel multiplication operations from external monitoring attacks
GB2323457A (en) A finite field multiplication system
CN107885486B (zh) 一种基于查找树的复合有限域求逆装置
US8416951B2 (en) Method and a device for generating a pseudorandom string
Lee et al. Subquadratic Space-Complexity Digit-Serial Multipliers Over $ GF (2^{m}) $ Using Generalized $(a, b) $-Way Karatsuba Algorithm
Rashid et al. An optimized architecture for binary huff curves with improved security
Costello et al. A brief discussion on selecting new elliptic curves
Rahman et al. Efficient hardware implementation of 256-bit ECC processor over prime field
Noor et al. Resource shared galois field computation for energy efficient AES/CRC in IoT applications
CN109933304B (zh) 适用于国密sm2p256v1算法的快速蒙哥马利模乘器运算优化方法
Järvinen et al. A generalization of addition chains and fast inversions in binary fields
Vijayakumar et al. Comparative study of hyperelliptic curve cryptosystem over prime field and its survey
Nawari et al. Fpga based implementation of elliptic curve cryptography
CN108008934B (zh) 一种基于查找表的复合有限域求逆装置
Houria et al. A comparison between the secp256r1 and the koblitz secp256k1 bitcoin curves
CN117692126A (zh) 一种基于低复杂度模乘算法的Paillier同态加密方法及系统
Lee et al. Efficient $ M $-ary exponentiation over $ GF (2^{m}) $ using subquadratic KA-based three-operand Montgomery multiplier
Thampi et al. Montgomery multiplier for faster cryptosystems
CN108268243B (zh) 一种基于查找的复合域乘法装置
Al-Khaleel et al. An elliptic curve cryptosystem design based on FPGA pipeline folding
CN102135871A (zh) 利用混沌原理产生随机数的装置及其动态口令牌
Nirmal et al. Novel Delay Efficient Approach for Vedic Multiplier with Generic Adder Module
Cousins et al. Accelerating Computations on Encrypted Data with an FPGA

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