CN109358836B - 一种基于表结构的复合域除法装置 - Google Patents

一种基于表结构的复合域除法装置 Download PDF

Info

Publication number
CN109358836B
CN109358836B CN201811226508.8A CN201811226508A CN109358836B CN 109358836 B CN109358836 B CN 109358836B CN 201811226508 A CN201811226508 A CN 201811226508A CN 109358836 B CN109358836 B CN 109358836B
Authority
CN
China
Prior art keywords
field
operation module
module
calculate
multiplication
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
CN201811226508.8A
Other languages
English (en)
Other versions
CN109358836A (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 CN201811226508.8A priority Critical patent/CN109358836B/zh
Publication of CN109358836A publication Critical patent/CN109358836A/zh
Application granted granted Critical
Publication of CN109358836B publication Critical patent/CN109358836B/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/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/535Dividing only

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于表结构的复合域除法装置,包括输入端口、输出端口、控制器、乘法运算模块、加法运算模块、求逆运算模块和GF((2n)2)平方运算模块。控制器包括控制输入输出端口和调度相连模块计算复合域的除法的控制电路;加法运算模块包括用于计算GF(2n)加法的查找结构;乘法运算模块包括用于计算GF(2n)乘法的查找结构;求逆运算模块包括用于计算GF(2n)求逆的查找结构;平方运算模块包括用于计算GF(2n)平方的查找结构。本发明基于表结构实现了复合域除法运算,在计算GF((2n)2)上的除法运算上相对于现有的复合域除法器更为高效。

Description

一种基于表结构的复合域除法装置
技术领域
本发明涉及一种对复合域的两个元素进行相除的装置,特别涉及一种基于表结构的复合域除法装置。
背景技术
复合域,又称复合有限域,是有限域的一种特殊形式。有限域是含有有限个元素的数域,由伽罗瓦首先发现,所以以他的名字命名。有限域被广泛地运用于通讯、安全、存储等领域。有限域上的运算被称为有限域计算,包括有限域加法、乘法、求逆、除法、平方、乘方等,是密码运算的主要组成部分。常用的复合域是GF((2n)2),域的大小是(2n)2,它的子域是GF(2n)。因为复合域是GF((2n)2)的运算包含子域GF(2n)运算,所以通过优化GF(2n)运算可以提升GF((2n)2)的运算效率。复合域除法是最复杂的有限域运算之一,是密码学中的基础运算,在密码系统和编码技术中起了重要作用。复合域除法的设计方法一般基于代数方法,即使用代数理论进行除法运算,使用乘法和求逆实现。而现有技术中存在的复合域除法装置较少基于表结构来实现除法。在实时和对速度敏感的环境下,使用基于表结构的复合域除法装置来实现有限域除法可以提高运算效率。
发明内容
为了克服现有技术的上述缺点与不足,本发明的目的在于提供一种基于表结构的复合域除法装置,在计算GF((2n)2)的除法运算,相对于现有的有限域除法器能够提高运算速度,可以广泛运用于各种工程领域。
本发明的目的通过以下技术方案实现:
一种基于表结构的复合域除法装置,包括:
输入端口,包括用于输入复合域GF((2n)2)的被除数a(x)的端口a、用于输入复合域GF((2n)2)的除数b(x)的端口b、用于输入时钟信号t的端口clk、用于输入复合域GF((2n)2)的不可约多项式q(x)的端口q和用于输入子域GF(2n)的不可约多项式p(x)的端口p;
输出端口,包括用于输出复合域GF((2n)2)的除法运算结果c(x)的端口c;
加法运算模块,包括用于计算GF(2n)加法的查找表结构;
乘法运算模块,包括用于计算GF(2n)乘法的查找表结构;
求逆运算模块,包括用于计算GF(2n)求逆的查找表结构;
平方运算模块,包括用于计算GF(2n)平方的查找表结构;
控制器,与输入端口、输出端口、加法运算模块、乘法运算模块、求逆运算模块、平方运算模块连接;包括控制输入端口、输出端口和与调度相连的模块计算复合域GF((2n)2)的除法的控制电路。
所述输入端口的被除数a(x)和除数b(x),表示成系数的形式为:
a(x)=a(ah,al),
b(x)=b(bh,bl),
ah,al,bh,bl是有限域GF(2n)的元素;
所述输入端口的复合域GF((2n)2)的不可约多项式q(x),表示成多项式的形式为:
q(x)=x2+x+e,
e是有限域GF(2n)的常数。
所述输入端口的子域GF(2n)的不可约多项式p(x),可以表示成多项式的形式:
p(x)=xn+pn-1xn-1+pn-2xn-2+...+p1x+1,
pn-1,pn-2,...,p1是有限域GF(2)的元素,即二进制数(0)2和(1)2中的一个数;
所述输出端口的复合域GF((2n)2)的除法运算结果c(x),可以表示成多项式的形式:
c(x)=chx+cl
ch,cl是有限域GF(2n)的元素;
所述输出端口的复合域GF((2n)2)的除法运算结果c(x),表示成系数的形式:
c(x)=c(ch,cl),
ch,cl是有限域GF(2n)的元素。
所述加法运算模块用于计算两个已知元素f(x),g(x)的加法:
令:
f(x)=fn-1xn-1+fn-2xn-2+...+f0
g(x)=gn-1xn-1+gn-2xn-2+...+g0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
其中,fn-1,fn-2,...,f0,gn-1,gn-2,...,g0,hn-1,hn-2,...,h0是有限域GF(2)的元素;
计算h(x)=f(x)+g(x)的步骤如下:
首先,在加法查找表的第一列查找f(x),然后在加法查找表的第二列查找g(x),找到后,其所在行的第三列的元素就是f(x)+g(x)的加法运算结果,并存储至h(x),
Figure BDA0001836071360000031
是h(x)=f(x)+g(x)的运算结果。
所述乘法运算模块用于计算GF(2n)的两个已知元素f(x),g(x)的乘法h(x)=f(x)×g(x);
令:
f(x)=fn-1xn-1+fn-2xn-2+...+f0
g(x)=gn-1xn-1+gn-2xn-2+...+g0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
其中,fn-1,fn-2,...,f0,gn-1,gn-2,...,g0,hn-1,hn-2,...,h0是有限域GF(2)的元素;
计算h(x)=f(x)×g(x)的步骤如下:
首先,在乘法查找表的第一列查找f(x),然后在乘法查找表的第二列查找g(x),找到后,其所在行的第三列的元素就是f(x)×g(x)的加法运算结果,并存储至h(x),
Figure BDA0001836071360000032
是h(x)=f(x)×g(x)的运算结果。
所述求逆运算模块,用于计算GF(2n)的已知元素f(x)的求逆h(x)=f(x)-1
令:
f(x)=fn-1xn-1+fn-2xn-2+...+f0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
其中,fn-1,fn-2,...,f0,hn-1,hn-2,...,h0是有限域GF(2)的元素;
计算h(x)=f(x)-1的步骤如下:
首先,在求逆查找表的第一列查找f(x),找到后,其所在行的第二列的元素就是f(x)的求逆运算结果,并存储至h(x),
Figure BDA0001836071360000033
是h(x)=f(x)-1的运算结果。
所述平方运算模块,用于计算GF(2n)的已知元素f(x)的平方h(x)=f(x)2
令:
f(x)=fn-1xn-1+fn-2xn-2+...+f0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
其中,fn-1,fn-2,...,f0,hn-1,hn-2,...,h0是有限域GF(2)的元素;
计算h(x)=f(x)2的步骤如下:
首先,在平方查找表的第一列查找f(x),找到后,其所在行的第二列的元素就是f(x)的平方运算结果,并存储至h(x),
Figure BDA0001836071360000041
是h(x)=f(x)2的运算结果。
所述控制器监听输入端口a,接收复合有限域GF((2n)2)的被除数a(x)的端口a;监听输入端口b,接收复合有限域GF((2n)2)的除数b(x)的端口b;监听输入端口clk,接收时钟信号t;监听输入端口q,接收复合有限域GF((2n)2)的不可约多项式q(x);监听输入端口p,接收子域GF(2n)的不可约多项式p(x)。
所述输入端口的时钟信号t是单比特信号,取值是0或1,代表低电平或高电平;低电平转向高电平代表一个时钟周期的开始。
基于表结构的复合域除法装置,计算GF((2n)2)的除法c(x)=a(x)÷b(x)的步骤如下:
令a(x)=ahx+al和b(x)=bhx+bl
等待时钟信号由低电平转向高电平;
第一个时钟周期,调用求逆运算模块计算s0=bl -1,s0,bl是子域GF(2n)的元素;
第二个时钟周期,调用乘法运算模块计算s1=als0,s1,al,s0是子域GF(2n)的元素;
第三个时钟周期,调用乘法运算模块计算s2=bhs1,s2,bh,s1是子域GF(2n)的元素;
第四个时钟周期,调用乘法运算模块计算s3=bhs0,s3,bh,s0是子域GF(2n)的元素;
第五个时钟周期,调用乘法运算模块计算s4=es3,s4,e,s3是子域GF(2n)的元素;
第六个时钟周期,调用平方运算模块计算s5=bh 2,s5,bh是子域GF(2n)的元素;
第七个时钟周期,调用乘法运算模块计算s6=s5e,s6,s5,e是子域GF(2n)的元素;
第八个时钟周期,调用乘法运算模块计算s7=s6s0,s7,s6,s0是子域GF(2n)的元素;
第九个时钟周期,调用加法运算模块计算s8=bh+bl,s8,bh,bl是子域GF(2n)的元素;
第十个时钟周期,调用加法运算模块计算s9=s7+s8,s9,s7,s8是子域GF(2n)的元素;
第十一个时钟周期,调用加法运算模块计算s10=ah+s2,s10,ah,s2是子域GF(2n)的元素;
第十二个时钟周期,调用求逆运算模块计算s11=s9 -1,s11,s9是子域GF(2n)的元素;
第十三个时钟周期,调用乘法运算模块计算s12=s10s11,s12,s10,s11是子域GF(2n)的元素;
第十四个时钟周期,调用乘法运算模块计算s13=s12s4,s13,s12,s4是子域GF(2n)的元素;
第十五个时钟周期,调用加法运算模块计算s14=s13+s1,s14,s13,s1是子域GF(2n)的元素;
令c(x)=chx+cl,ch=s12,cl=s14,ch,cl是子域GF(2n)的元素,c(x)是复合域GF((2n)2)的元素,c(x)是a(x)=ahx+al和b(x)=bhx+bl的除法运算结果;
所述控制器计算GF((2n)2)的除法c(x)=a(x)÷b(x)完成后,将c(x)输出至输出端口c。
与现有技术相比,本发明具有以下优点和有益效果:
本发明的基于表结构的复合域除法装置,通过表结构实现了复合域的除法运算,通过预先存储子域的运算结果,在进行大域运算时,可以通过查找表提高运算速度,在计算GF((2n)2)的除法运算相对于现有的有限域除法器提高了性能,可以广泛运用于各种工程领域。
附图说明
图1为本发明的实施例的一种基于表结构的复合域除法装置的结构示意图。
具体实施方式
下面结合实施例,对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例
如图1所示,本发明的一种基于表结构的复合域除法装置包括输入端口、输出端口、控制器、乘法运算模块、加法运算模块、求逆运算模块和平方运算模块。
所述输入端口,包括用于输入复合域GF((2n)2)的被除数a(x)的端口a、用于输入复合域GF((2n)2)的除数b(x)的端口b、用于输入时钟信号t的端口clk、用于输入复合域GF((2n)2)的不可约多项式q(x)的端口q和用于输入子域GF(2n)的不可约多项式p(x)的端口p;
所述输出端口,包括用于输出复合域GF((2n)2)的除法运算结果c(x)的端口c;
所述加法运算模块,包括用于计算GF(2n)加法的查找表结构;
所述乘法运算模块,包括用于计算GF(2n)乘法的查找表结构;
所述求逆运算模块,包括用于计算GF(2n)求逆的查找表结构;
所述平方运算模块,包括用于计算GF(2n)平方的查找表结构;
所述控制器,与输入端口、输出端口、加法运算模块、乘法运算模块、求逆运算模块、平方运算模块连接;包括控制输入端口、输出端口和与调度相连的模块计算复合域GF((2n)2)的除法的控制电路。
所述输入端口的被除数a(x)和除数b(x),可以表示成多项式的形式:
a(x)=ahx+al
b(x)=bhx+bl
ah,al,bh,bl是有限域GF(2n)的元素。
所述输入端口的被除数a(x)和除数b(x),可以表示成系数的形式:
a(x)=a(ah,al),
b(x)=b(bh,bl),
ah,al,bh,bl是有限域GF(2n)的元素。
所述输入端口的时钟信号t是单比特信号,取值是0或1,代表低电平或高电平;低电平转向高电平代表一个时钟周期的开始。
所述输入端口的复合域GF((2n)2)的不可约多项式q(x),可以表示成多项式的形式:
q(x)=x2+x+e,
e是有限域GF(2n)的常数。
所述输入端口的子域GF(2n)的不可约多项式p(x),可以表示成多项式的形式:
p(x)=xn+pn-1xn-1+pn-2xn-2+...+p1x+1,
pn-1,pn-2,...,p1是有限域GF(2)的元素,即二进制数(0)2和(1)2中的一个数。
所述输出端口的复合域GF((2n)2)的除法运算结果c(x),可以表示成多项式的形式:
c(x)=chx+cl
ch,cl是有限域GF(2n)的元素。
所述输出端口的复合域GF((2n)2)的除法运算结果c(x),可以表示成系数的形式:
c(x)=c(ch,cl),
ch,cl是有限域GF(2n)的元素。
所述控制器与输入端口相连,监听输入端口a,接收复合有限域GF((2n)2)的被除数a(x)的端口a;监听输入端口b,接收复合有限域GF((2n)2)的除数b(x)的端口b;监听输入端口clk,接收时钟信号t;监听输入端口q,接收复合有限域GF((2n)2)的不可约多项式q(x);监听输入端口p,接收子域GF(2n)的不可约多项式p(x)。
所述控制器与加法运算模块、乘法运算模块、求逆运算模块和平方运算模块相连,令a(x)=ahx+al和b(x)=bhx+bl,计算GF((2n)2)的除法c(x)=a(x)÷b(x)的步骤如下:
等待时钟信号由低电平转向高电平;
第一个时钟周期,调用求逆运算模块计算s0=bl -1,s0,bl是子域GF(2n)的元素;
第二个时钟周期,调用乘法运算模块计算s1=als0,s1,al,s0是子域GF(2n)的元素;
第三个时钟周期,调用乘法运算模块计算s2=bhs1,s2,bh,s1是子域GF(2n)的元素;
第四个时钟周期,调用乘法运算模块计算s3=bhs0,s3,bh,s0是子域GF(2n)的元素;
第五个时钟周期,调用乘法运算模块计算s4=es3,s4,e,s3是子域GF(2n)的元素;
第六个时钟周期,调用平方运算模块计算s5=bh 2,s5,bh是子域GF(2n)的元素;
第七个时钟周期,调用乘法运算模块计算s6=s5e,s6,s5,e是子域GF(2n)的元素;
第八个时钟周期,调用乘法运算模块计算s7=s6s0,s7,s6,s0是子域GF(2n)的元素;
第九个时钟周期,调用加法运算模块计算s8=bh+bl,s8,bh,bl是子域GF(2n)的元素;
第十个时钟周期,调用加法运算模块计算s9=s7+s8,s9,s7,s8是子域GF(2n)的元素;
第十一个时钟周期,调用加法运算模块计算s10=ah+s2,s10,ah,s2是子域GF(2n)的元素;
第十二个时钟周期,调用求逆运算模块计算s11=s9 -1,s11,s9是子域GF(2n)的元素;
第十三个时钟周期,调用乘法运算模块计算s12=s10s11,s12,s10,s11是子域GF(2n)的元素;
第十四个时钟周期,调用乘法运算模块计算s13=s12s4,s13,s12,s4是子域GF(2n)的元素;
第十五个时钟周期,调用加法运算模块计算s14=s13+s1,s14,s13,s1是子域GF(2n)的元素;
令c(x)=chx+cl,ch=s12,cl=s14,ch,cl是子域GF(2n)的元素,c(x)是复合域GF((2n)2)的元素,c(x)是a(x)=ahx+al和b(x)=bhx+bl的除法运算结果。
所述控制器与输出端口相连,计算GF((2n)2)的除法c(x)=a(x)÷b(x)完成后,将c(x)输出至输出端口c。
所述加法运算模块,包含加法查找表结构,用于计算GF(2n)的两个已知元素f(x),g(x)的加法h(x)=f(x)+g(x),其中,
f(x)=fn-1xn-1+fn-2xn-2+...+f0
g(x)=gn-1xn-1+gn-2xn-2+...+g0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
fn-1,fn-2,...,f0,gn-1,gn-2,...,g0,hn-1,hn-2,...,h0是有限域GF(2)的元素;
计算h(x)=f(x)+g(x)使用加法查找表结构,描述如下:
对于有限域GF(2n)的每两个元素,计算加法,假定GF(2n)的两个元素是α和β,计算δ=(α+β)modp(x),mod是模运算,δ是GF(2n)元素,则α存在加法查找表的第一列,β存在加法查找表的第二列,δ存在加法查找表的第三列;
计算h(x)=f(x)+g(x)的步骤如下:
首先,在加法查找表的第一列查找f(x),然后在加法查找表的第二列查找g(x),找到后,其所在行的第三列的元素就是f(x)+g(x)的加法运算结果,并存储至h(x),
Figure BDA0001836071360000081
是h(x)=f(x)+g(x)的运算结果。
所述乘法运算模块,包含乘法查找表结构,用于计算GF(2n)的两个已知元素f(x),g(x)的乘法h(x)=f(x)×g(x),其中,
f(x)=fn-1xn-1+fn-2xn-2+...+f0
g(x)=gn-1xn-1+gn-2xn-2+...+g0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
fn-1,fn-2,...,f0,gn-1,gn-2,...,g0,hn-1,hn-2,...,h0是有限域GF(2)的元素;
计算h(x)=f(x)×g(x)使用乘法查找表结构,描述如下:
对于有限域GF(2n)的每两个元素,计算乘法,假定GF(2n)的两个元素是α和β,计算δ=(α×β)modp(x),mod是模运算,δ是GF(2n)元素,则α存在乘法查找表的第一列,β存在乘法查找表的第二列,δ存在乘法查找表的第三列;
计算h(x)=f(x)×g(x)的步骤如下:
首先,在乘法查找表的第一列查找f(x),然后在乘法查找表的第二列查找g(x),找到后,其所在行的第三列的元素就是f(x)×g(x)的加法运算结果,并存储至h(x),
Figure BDA0001836071360000091
是h(x)=f(x)×g(x)的运算结果。
所述求逆运算模块,包含求逆查找表结构,用于计算GF(2n)的已知元素f(x)的求逆h(x)=f(x)-1,其中,
f(x)=fn-1xn-1+fn-2xn-2+...+f0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
fn-1,fn-2,...,f0,hn-1,hn-2,...,h0是有限域GF(2)的元素;
计算h(x)=f(x)-1使用查找表结构,结构的描述如下:
对于有限域GF(2n)的每一个元素,计算求逆,假定GF(2n)元素是α,计算β=α-1modp(x),mod是模运算,β是GF(2n)元素,则α存在求逆查找表的第一列,β存在求逆查找表的第二列;
计算h(x)=f(x)-1的步骤如下:
首先,在求逆查找表的第一列查找f(x),找到后,其所在行的第二列的元素就是f(x)的求逆运算结果,并存储至h(x),
Figure BDA0001836071360000093
是h(x)=f(x)-1的运算结果。
所述平方运算模块,包含平方查找表结构,用于计算GF(2n)的已知元素f(x)的平方h(x)=f(x)2,其中,
f(x)=fn-1xn-1+fn-2xn-2+...+f0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
fn-1,fn-2,...,f0,hn-1,hn-2,...,h0是有限域GF(2)的元素;
计算h(x)=f(x)2使用查找表结构,结构的描述如下:
对于有限域GF(2n)的每一个元素,计算平方,假定GF(2n)元素是α,计算β=α2modp(x),mod是模运算,β是GF(2n)元素,则α存在平方查找表的第一列,β存在平方查找表的第二列;
计算h(x)=f(x)2的步骤如下:
首先,在平方查找表的第一列查找f(x),找到后,其所在行的第二列的元素就是f(x)的平方运算结果,并存储至h(x),
Figure BDA0001836071360000101
是h(x)=f(x)2的运算结果。
下面以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)的元素;
输出端口的除法运算结果c(x)是复合域GF((24)2)的元素,可以表示成多项式的形式:
c(x)=chx+cl
ch,cl是有限域GF(24)的元素;
输入端口的时钟信号t是单比特信号,时钟周期是20纳秒;
控制器计算GF((24)2)的除法c(x)=a(x)÷b(x)步骤如下:
运算控制器接收输入被除数a(x)、除数b(x)、时钟信号t、GF((24)2)的不可约多项式q(x)=x2+x+9,GF(24)的不可约多项式p(x)=x4+x+1,等待时钟信号t由低电平转向高电平(由0变成1);
第一个时钟周期,调用求逆运算模块计算s0=bl -1,s0,bl是子域GF(24)的元素;
第二个时钟周期,调用乘法运算模块计算s1=als0,s1,al,s0是子域GF(24)的元素;
第三个时钟周期,调用乘法运算模块计算s2=bhs1,s2,bh,s1是子域GF(24)的元素;
第四个时钟周期,调用乘法运算模块计算s3=bhs0,s3,bh,s0是子域GF(24)的元素;
第五个时钟周期,调用乘法运算模块计算s4=es3,s4,e,s3是子域GF(24)的元素;
第六个时钟周期,调用平方运算模块计算s5=bh 2,s5,bh是子域GF(24)的元素;
第七个时钟周期,调用乘法运算模块计算s6=s5e,s6,s5,e是子域GF(24)的元素;
第八个时钟周期,调用乘法运算模块计算s7=s6s0,s7,s6,s0是子域GF(24)的元素;
第九个时钟周期,调用加法运算模块计算s8=bh+bl,s8,bh,bl是子域GF(24)的元素;
第十个时钟周期,调用加法运算模块计算s9=s7+s8,s9,s7,s8是子域GF(24)的元素;
第十一个时钟周期,调用加法运算模块计算s10=ah+s2,s10,ah,s2是子域GF(24)的元素;
第十二个时钟周期,调用求逆运算模块计算s11=s9 -1,s11,s9是子域GF(24)的元素;
第十三个时钟周期,调用乘法运算模块计算s12=s10s11,s12,s10,s11是子域GF(24)的元素;
第十四个时钟周期,调用乘法运算模块计算s13=s12s4,s13,s12,s4是子域GF(24)的元素;
第十五个时钟周期,调用加法运算模块计算s14=s13+s1,s14,s13,s1是子域GF(24)的元素;
令c(x)=chx+cl,ch=s12,cl=s14,ch,cl是子域GF(24)的元素,c(x)是复合域GF((24)2)的元素,c(x)是a(x)=ahx+al和b(x)=bhx+bl的除法运算结果。控制器将c(x)输出至输出端口c。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (5)

1.一种基于表结构的复合域除法装置,其特征在于,包括:
输入端口,包括用于输入复合域GF((2n)2)的被除数a(x)的端口a、用于输入复合域GF((2n)2)的除数b(x)的端口b、用于输入时钟信号t的端口clk、用于输入复合域GF((2n)2)的不可约多项式q(x)的端口q和用于输入子域GF(2n)的不可约多项式p(x)的端口p;
输出端口,包括用于输出复合域GF((2n)2)的除法运算结果c(x)的端口c;
加法运算模块,包括用于计算GF(2n)加法的查找表结构;
乘法运算模块,包括用于计算GF(2n)乘法的查找表结构;
求逆运算模块,包括用于计算GF(2n)求逆的查找表结构;
平方运算模块,包括用于计算GF(2n)平方的查找表结构;
控制器,与输入端口、输出端口、加法运算模块、乘法运算模块、求逆运算模块、平方运算模块连接;包括控制输入端口、输出端口和与调度相连的模块计算复合域GF((2n)2)的除法的控制电路;
所述加法运算模块用于计算两个已知元素f(x),g(x)的加法:
令:
f(x)=fn-1xn-1+fn-2xn-2+...+f0
g(x)=gn-1xn-1+gn-2xn-2+...+g0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
其中,fn-1,fn-2,...,f0,gn-1,gn-2,...,g0,hn-1,hn-2,...,h0是有限域GF(2)的元素;计算h(x)=f(x)+g(x)的步骤如下:
首先,在加法查找表的第一列查找f(x),然后在加法查找表的第二列查找g(x),找到后,其所在行的第三列的元素就是f(x)+g(x)的加法运算结果,并存储至h(x),
Figure FDA0003838254270000011
是h(x)=f(x)+g(x)的运算结果;
所述乘法运算模块用于计算GF(2n)的两个已知元素f(x),g(x)的乘法h(x)=f(x)×g(x);令:
f(x)=fn-1xn-1+fn-2xn-2+...+f0
g(x)=gn-1xn-1+gn-2xn-2+...+g0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
其中,fn-1,fn-2,...,f0,gn-1,gn-2,...,g0,hn-1,hn-2,...,h0是有限域GF(2)的元素;
计算h(x)=f(x)×g(x)的步骤如下:
首先,在乘法查找表的第一列查找f(x),然后在乘法查找表的第二列查找g(x),找到后,其所在行的第三列的元素就是f(x)×g(x)的加法运算结果,并存储至h(x),
Figure FDA0003838254270000021
是h(x)=f(x)×g(x)的运算结果;
所述求逆运算模块,用于计算GF(2n)的已知元素f(x)的求逆h(x)=f(x)-1
令:
f(x)=fn-1xn-1+fn-2xn-2+...+f0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
其中,fn-1,fn-2,...,f0,hn-1,hn-2,...,h0是有限域GF(2)的元素;计算h(x)=f(x)-1的步骤如下:
首先,在求逆查找表的第一列查找f(x),找到后,其所在行的第二列的元素就是f(x)的求逆运算结果,并存储至h(x),
Figure FDA0003838254270000022
是h(x)=f(x)-1的运算结果;
所述平方运算模块,用于计算GF(2n)的已知元素f(x)的平方h(x)=f(x)2
令:
f(x)=fn-1xn-1+fn-2xn-2+...+f0
h(x)=hn-1xn-1+hn-2xn-2+...+h0
其中,fn-1,fn-2,...,f0,hn-1,hn-2,...,h0是有限域GF(2)的元素;计算h(x)=f(x)2的步骤如下:
首先,在平方查找表的第一列查找f(x),找到后,其所在行的第二列的元素就是f(x)的平方运算结果,并存储至h(x),
Figure FDA0003838254270000023
是h(x)=f(x)2的运算结果。
2.根据权利要求1所述的基于表结构的复合域除法装置,其特征在于,所述输入端口的被除数a(x)和除数b(x),表示成系数的形式为:
a(x)=a(ah,al),
b(x)=b(bh,bl),
ah,al,bh,bl是有限域GF(2n)的元素;
所述输入端口的复合域GF((2n)2)的不可约多项式q(x),表示成多项式的形式为:
q(x)=x2+x+e,
e是有限域GF(2n)的常数;
所述输入端口的子域GF(2n)的不可约多项式p(x),表示成多项式的形式:
Figure FDA0003838254270000031
pn-1,pn-2,...,p1是有限域GF(2)的元素,即二进制数(0)2和(1)2中的一个数;所述输出端口的复合域GF((2n)2)的除法运算结果c(x),表示成多项式的形式:
c(x)=chx+cl
ch,cl是有限域GF(2n)的元素;
所述输出端口的复合域GF((2n)2)的除法运算结果c(x),表示成系数的形式:
c(x)=c(ch,cl),
ch,cl是有限域GF(2n)的元素。
3.根据权利要求1所述的基于表结构的复合域除法装置,其特征在于,所述控制器监听输入端口a,接收复合有限域GF((2n)2)的被除数a(x)的端口a;监听输入端口b,接收复合有限域GF((2n)2)的除数b(x)的端口b;监听输入端口clk,接收时钟信号t;监听输入端口q,接收复合有限域GF((2n)2)的不可约多项式q(x);监听输入端口p,接收子域GF(2n)的不可约多项式p(x)。
4.根据权利要求1所述的基于表结构的复合域除法装置,其特征在于,所述输入端口的时钟信号t是单比特信号,取值是0或1,代表低电平或高电平;低电平转向高电平代表一个时钟周期的开始。
5.权利要求2所述的基于表结构的复合域除法装置,其特征在于,计算GF((2n)2)的除法c(x)=a(x)÷b(x)的步骤如下:
令a(x)=ahx+al和b(x)=bhx+bl
等待时钟信号由低电平转向高电平;
第一个时钟周期,调用求逆运算模块计算s0=bl -1,s0,bl是子域GF(2n)的元素;
第二个时钟周期,调用乘法运算模块计算s1=als0,s1,al,s0是子域GF(2n)的元素;
第三个时钟周期,调用乘法运算模块计算s2=bhs0,s2,bh,s0是子域GF(2n)的元素;
第四个时钟周期,调用乘法运算模块计算s3=bhs0,s3,bh,s0是子域GF(2n)的元素;
第五个时钟周期,调用乘法运算模块计算s4=es3,s4,e,s3是子域GF(2n)的元素;
第六个时钟周期,调用平方运算模块计算s5=bh 2,s5,bh是子域GF(2n)的元素;
第七个时钟周期,调用乘法运算模块计算s6=s5e,s6,s5,e是子域GF(2n)的元素;
第八个时钟周期,调用乘法运算模块计算s7=s6s0,s7,s6,s0是子域GF(2n)的元素;
第九个时钟周期,调用加法运算模块计算s8=bh+bl,s8,bh,bl是子域GF(2n)的元素;
第十个时钟周期,调用加法运算模块计算s9=s7+s8,s9,s7,s8是子域GF(2n)的元素;
第十一个时钟周期,调用加法运算模块计算s10=ah+s2,s10,ah,s2是子域GF(2n)的元素;
第十二个时钟周期,调用求逆运算模块计算s11=s9 -1,s11,s9是子域GF(2n)的元素;
第十三个时钟周期,调用乘法运算模块计算s12=s10s11,s12,s10,s11是子域GF(2n)的元素;
第十四个时钟周期,调用乘法运算模块计算s13=s12s4,s13,s12,s4是子域GF(2n)的元素;
第十五个时钟周期,调用加法运算模块计算s14=s13+s1,s14,s13,s1是子域GF(2n)的元素;
令c(x)=chx+cl,ch=s12,cl=s14,ch,cl是子域GF(2n)的元素,c(x)是复合域GF((2n)2)的元素,c(x)是a(x)=ahx+al和b(x)=bhx+bl的除法运算结果;
所述控制器计算GF((2n)2)的除法c(x)=a(x)÷b(x)完成后,将c(x)输出至输出端口c。
CN201811226508.8A 2018-10-22 2018-10-22 一种基于表结构的复合域除法装置 Active CN109358836B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811226508.8A CN109358836B (zh) 2018-10-22 2018-10-22 一种基于表结构的复合域除法装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811226508.8A CN109358836B (zh) 2018-10-22 2018-10-22 一种基于表结构的复合域除法装置

Publications (2)

Publication Number Publication Date
CN109358836A CN109358836A (zh) 2019-02-19
CN109358836B true CN109358836B (zh) 2022-11-11

Family

ID=65346049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811226508.8A Active CN109358836B (zh) 2018-10-22 2018-10-22 一种基于表结构的复合域除法装置

Country Status (1)

Country Link
CN (1) CN109358836B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1841982A (zh) * 2005-03-31 2006-10-04 中国科学院空间科学与应用研究中心 一种高速译码芯片
CN108268243A (zh) * 2018-01-30 2018-07-10 深圳职业技术学院 一种基于查找的复合域乘法装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200834411A (en) * 2007-02-06 2008-08-16 Univ Nat Chiao Tung Method of accomplishing finite field divider structure
US20100054621A1 (en) * 2008-08-26 2010-03-04 Qualcomm Incorporated Dual lookup table design for edge-directed image scaling

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1841982A (zh) * 2005-03-31 2006-10-04 中国科学院空间科学与应用研究中心 一种高速译码芯片
CN108268243A (zh) * 2018-01-30 2018-07-10 深圳职业技术学院 一种基于查找的复合域乘法装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
域数据模型的研究与实现;赵雷;《中国优秀博士论文全文数据库 信息科技辑》;20061215;第I138-24页 *

Also Published As

Publication number Publication date
CN109358836A (zh) 2019-02-19

Similar Documents

Publication Publication Date Title
Smart Elliptic curve cryptosystems over small fields of odd characteristic
EP1653428A4 (en) DEVICE, METHOD AND PROGRAM FOR ELLIPTICAL CURVE CODING, AND COMPUTER-READABLE RECORDING MEDIUM RECORDING SUCH A PROGRAM
EP1449063A1 (en) Galois field multiplier system
US8862651B2 (en) Method and apparatus for modulus reduction
CN103942031A (zh) 椭圆域曲线运算方法和椭圆域曲线运算器
CN102314330B (zh) 一种复合有限域乘法器
CN101277119A (zh) 里德所罗门码解码器硬件复用方法及其低硬件复杂度解码装置
WO2023134130A1 (zh) 伽罗华域乘法器及纠删编解码系统
JP4180024B2 (ja) 乗算剰余演算器及び情報処理装置
CN109358836B (zh) 一种基于表结构的复合域除法装置
CN107885486B (zh) 一种基于查找树的复合有限域求逆装置
CN108008934B (zh) 一种基于查找表的复合有限域求逆装置
CN102891689B (zh) 一种错误位置多项式求解方法及装置
CN202217262U (zh) 一种复合有限域乘法器
CN108874367B (zh) 一种基于乘方运算的复合有限域求逆器及其求逆方法
CN108268243B (zh) 一种基于查找的复合域乘法装置
CN103023659A (zh) 一种参数位宽可扩展的ecc加密硬件装置
CN100517214C (zh) 一种实现二进制多项式运算的硬件配置方法及硬件系统
CN103092816A (zh) 一种并行rs编码中常系数矩阵的生成装置和方法
CN108897526A (zh) 一种基于多次平方运算的复合有限域求逆器及其求逆方法
CN103152059A (zh) Ccsds系统rs编码中常系数矩阵的生成装置和方法
KR20080050054A (ko) 성긴 w-NAF 키 생성방법,이를 이용한 연산 방법 및암호화 방법
CN103023512B (zh) Atsc系统rs编码中常系数矩阵的生成装置和方法
Zierler A conversion algorithm for logarithms on GF (2n)
CN103095418B (zh) Cmmb系统rs编码中常系数矩阵的生成装置和方法

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