CN107797790A - 一种基于全一不可约多项式的有限域求逆器 - Google Patents
一种基于全一不可约多项式的有限域求逆器 Download PDFInfo
- Publication number
- CN107797790A CN107797790A CN201711070673.4A CN201711070673A CN107797790A CN 107797790 A CN107797790 A CN 107797790A CN 201711070673 A CN201711070673 A CN 201711070673A CN 107797790 A CN107797790 A CN 107797790A
- Authority
- CN
- China
- Prior art keywords
- finite field
- mrow
- msup
- msub
- module
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods 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/72—Methods 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/724—Finite field arithmetic
- G06F7/726—Inversion; Reciprocal calculation; Division of elements of a finite field
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Complex Calculations (AREA)
Abstract
本发明涉及一种基于全一不可约多项式的有限域求逆器,包括控制器、输入控制模块、有限域运算器、运算模块和输出控制模块;所述控制器用于控制并调度所述输入控制模块、所述输出控制模块和所述有限域运算器之间的数据传输;所述输入控制模块用于在检测到有限域GF(2n)上具有全一不可约多项式时,输入求逆运算数a(x);所述有限域运算器用于调用所述运算模块对所述求逆运算数a(x)进行有限域求逆运算,获得求逆运算结果b(x);所述运算模块用于运行平方运算、乘法运算和模运算;所述输出控制模块用于输出所述求逆运算结果b(x)。本发明能够提高有限域求逆运算的效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于全一不可约多项式的有限域求逆器。
背景技术
有限域是仅含有限多个元素的域,它的特点是有限域的所有运算的结果都是有限域的元素。所以有限域运算一般需要不可约多项式参与运算,保证运算结果仍在域上。不可约多项式又称既约多项式,是次数大于零的有理数系数多项式,它的特点是不能分解为两个次数较低但都大于零的有理数系数多项式。在有限域上,不可约多项式是次数大于零的多项式,除了常数和常数与本身的乘积以外,它再不能被有限域上的其他多项式整除。
有限域GF(2n)是在数学和工程领域应用最广的有限域之一,域的大小是2n。它的元素可以用多项式表示,也可以用二进制形式表示,其中n是正整数。GF(2n)求逆是所有有限域运算中最常用的运算之一,一般基于标准基、正规基、双基底、三角基等设计。有限域求逆需要不可约多项式参与,而它的运算效率往往受不可约多项式的影响。
现有技术中存在的有限域求逆器较少使用特殊的不可约多项式,例如全一多项式,使得有限域求逆运算效率低下。
发明内容
本发明针对现有技术中存在的问题,提供了一种基于全一不可约多项式的有限域求逆器,能够提高有限域求逆运算的效率。
本发明就上述技术问题而提出的技术方案如下:
一方面,本发明提供一种基于全一不可约多项式的有限域求逆器,包括控制器、输入控制模块、有限域运算器、运算模块和输出控制模块;
所述控制器用于控制并调度所述输入控制模块、所述输出控制模块和所述有限域运算器之间的数据传输;
所述输入控制模块用于在检测到有限域GF(2n)上具有全一不可约多项式时,输入求逆运算数a(x);
所述有限域运算器用于调用所述运算模块对所述求逆运算数a(x)进行有限域求逆运算,获得求逆运算结果b(x);
所述运算模块用于运行平方运算、乘法运算和模运算;
所述输出控制模块用于输出所述求逆运算结果b(x)。
进一步地,所述求逆运算数a(x)的多项式形式为a(x)=an-1xn-1+an-2xn-2+...+a0;
所述求逆运算结果b(x)的多项式形式为
其中,an-1,an-2,...,a0和bn-1,bn-2,...,b0均为有限域GF(2)的元素,n≥1。
进一步地,所述运算模块包括时钟同步单元、平方运算单元、乘法运算单元和乘法模运算单元;
所述时钟同步单元用于同步所述平方运算单元和所述乘法运算单元;
所述平方运算单元用于接受所述时钟同步单元的调度,计算有限域元素的平方;
所述乘法运算单元用于接受所述时钟同步单元的调度,计算有限域元素的乘法;
所述乘法模运算单元用于计算有限域的模运算。
进一步地,所述有限域运算器具体用于通过所述时钟同步单元调用所述平方运算单元并调用所述乘法模运算,计算获得所述求逆运算数a(x)的平方运算a(x)2;
通过所述时钟同步单元调用所述平方运算单元并调用所述乘法模运算,计算获得所述a(x)2的平方运算结果a(x)4=(a(x)2)2,并通过所述时钟同步单元调用所述乘法运算单元计算
通过所述时钟同步单元调用所述平方运算单元并调用所述乘法模运算,计算获得所述a(x)4的平方运算结果a(x)8=(a(x)4)2,并通过所述时钟同步单元调用所述乘法运算单元计算直到通过所述时钟同步单元调用所述乘法运算单元计算从而获得所述求逆运算结果b(x)。
进一步地,所述乘法模运算单元具体用于在所述平方运算单元进行平方运算获得多项式k2n-2x2n-2+k2n-3x2n-3+...+k0后,对所述多项式k2n-2x2n-2+k2n-3x2n-3+...+k0中的每一项kmxm,采用m=m%(n+1)运算进行转换,并将转换结果进行整理,获得多项式tn-1xn-1+tn-2xn-2+...+t0,k0,k1,...,k2n-2,t0,t1,...,tn-1为有限域GF(2)的元素;采用异或逻辑门计算所述多项式tn-1xn-1+tn-2xn-2+...+t0中的所有系数,从而获得平方运算结果;
其中,所述转换结果如下:
进一步地,所述有限域求逆器还包括时钟控制模块和寄存器组模块;
所述时钟控制模块用于时钟信号的管理;
所述寄存器组模块用于存储所述有限域求逆器运行过程中产生的数据;
所述控制器还用于控制并调度所述时钟控制模块和所述寄存器组模块。
进一步地,所述有限域求逆器还包括键盘输入模块;
所述键盘输入模块用于输入有限域GF(2n)的大小n的二进制、所述时钟信号的频率以及所述求逆运算数a(x)的系数。
进一步地,所述输入控制模块具体用于在检测到有限域GF(2n)上具有全一不可约多项式,且所述有限域GF(2n)的大小n和所述时钟信号的频率输入正确时,根据输入的所述求逆运算数a(x)的系数生成所述求逆运算数a(x),并将所述求逆运算数a(x)存储至所述寄存器组模块;
所述输入控制模块还用于在检测到有限域GF(2n)上不具有全一不可约多项式,或者所述有限域GF(2n)的大小n、所述时钟信号的频率输入错误时,输出错误提醒,并结束工作。
进一步地,所述有限域求逆器还包括屏幕输出模块;
所述屏幕输出模块用于在屏幕上显示所述求逆运算结果b(x)和所述错误提醒。
进一步地,所述有限域求逆器还包括内存储器模块;
所述内存储器模块用于存储有限域求逆运算中产生的数据。
本发明实施例提供的技术方案带来的有益效果是:
本发明提供的基于全一不可约多项式的有限域求逆器,能够基于全一不可约多项式,对输入的求逆运算数进行平方运算、乘法运算和模运算,获得有限域求逆运算结果,在计算有限域求逆上相对于现有的求逆器明显提高运算速度,可以广泛适用于有限域求解线性方程组,对称加密(如DES、AES),公钥密码和Rainbow、TTS、UOV签名等数学领域和工程领域。
附图说明
附图1是本发明-实施例的基于全一不可约多项式的有限域求逆器的结构示意图。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述。
本发明实施例提供了一种基于全一不可约多项式的有限域求逆器,参见图1,包括控制器1、输入控制模块2、有限域运算器3、运算模块4和输出控制模块5;
所述控制器1用于控制并调度所述输入控制模块2、所述输出控制模块5和所述有限域运算器3之间的数据传输;
所述输入控制模块2用于在检测到有限域GF(2n)上具有全一不可约多项式时,输入求逆运算数a(x);
所述有限域运算器3用于调用所述运算模块对所述求逆运算数a(x)进行有限域求逆运算,获得求逆运算结果b(x);
所述运算模块4用于运行平方运算、乘法运算和模运算;
所述输出控制模块5用于输出所述求逆运算结果b(x)。
进一步地,所述有限域求逆器还包括时钟控制模块6和寄存器组模块7;
所述时钟控制模块6用于时钟信号的管理;
所述寄存器组模块7用于存储所述有限域求逆器运行过程中产生的数据;
所述控制器1还用于控制并调度所述时钟控制模块6和所述寄存器组模块7。
进一步地,所述有限域求逆器还包括键盘输入模块8;
所述键盘输入模块8用于输入有限域GF(2n)的大小n的二进制、所述时钟信号的频率以及所述求逆运算数a(x)的系数。
进一步地,所述输入控制模块2具体用于在检测到有限域GF(2n)上具有全一不可约多项式,且所述有限域GF(2n)的大小n和所述时钟信号的频率输入正确时,根据输入的所述求逆运算数a(x)的系数生成所述求逆运算数a(x),并将所述求逆运算数a(x)存储至所述寄存器组模块;
所述输入控制模块2还用于在检测到有限域GF(2n)上不具有全一不可约多项式,或者所述有限域GF(2n)的大小n、所述时钟信号的频率输入错误时,输出错误提醒,并结束工作。
进一步地,所述有限域求逆器还包括屏幕输出模块9;
所述屏幕输出模块9用于在屏幕上显示所述求逆运算结果b(x)和所述错误提醒。
进一步地,所述有限域求逆器还包括内存储器模块10;
所述内存储器模块10用于存储有限域求逆运算中产生的数据。
另外,所述有限域求逆器还包括电源供电模块11,用于给所述有限域求逆器供电。
需要说明的是,控制器为有限域求逆器的核心部件,分别与输入控制模块、输出控制模块、寄存器组模块、电源供电模块、时钟控制模块、有限域运算器连接,用于控制和调度与它相连的器件。
输入控制模块为有限域求逆器的输入部件,用于有限域求逆器输入的控制和检查。输入控制模块与控制器相互连接,接受控制器的调度。输入控制模块与键盘输入模块相连,读取键盘输入模块的数据,检查输入是否正确,其检查三类输入的格式,即求逆运算所在有限域GF(2n)的大小n、求逆运算数a(x)、时钟信号clk。具体的,检查GF(2n)是否在求逆器的运算范围内,检查a(x)的长度是否为n,时钟信号是否为(01)2、(10)2、(11)2中的一个数值。输入控制模块以键盘输入模块的“确认”按钮电信号来分隔不同输入,若输入错误,则反馈错误信息传输至输出控制模块。
键盘输入模块为有限域求逆器的键盘部件,用于有限域求逆器所需数据的输入。键盘输入模块与输入控制模块相连,将键盘产生的输入传送至输入控制模块。有限域求逆器包含四个按键,分别是“0”、“1”、“确认”、“电源”。按击按键“0”和“1”分别代表比特“0”和比特“1”;按击按键“确认”代表当前的一个输入结束;按击按键“电源”代表改变装置供电状态,由关机状态改变成开机状态或由开机状态改变成关机状态。其中,键盘输入模块通过按键“0”和“1”依次以二进制的形式输入乘法运算所在有限域GF(2n)大小n、求逆运算数a(x)和时钟信号clk,每输入一类数据,按击“确认”按键。
输出控制模块为有限域求逆器的输出部件,用于有限域求逆器输出的控制。有限域求逆器与控制器相互连接,接受控制器的调度;输出控制模块与屏幕输出模块相连,输送需要输出的数据,包含求逆运算结果b(x)、有限域求逆器信息e等。
屏幕输出模块为有限域求逆器的显示模块,用于有限域求逆器的信息显示。屏幕输出模块包含1块10CM*3CM的液晶显示屏,可以显示0-9数字和26个大小写英文字母。屏幕输出模块与输出控制模块相连,将输出控制模块的信息显示在屏幕上;
寄存器组模块为有限域求逆器的存储部件,用于存储有限域求逆器运行中产生的数据。寄存器组模块的大小是100字节,每个寄存器的大小是单字节,共100个寄存器r0,r1,...,r99。寄存器组模块与控制器相连,控制器具有读写寄存器的功能。
电源供电模块为有限域求逆器的电源部件,用于有限域求逆器供电和充电。电源供电模块包含2000MA锂电池以及一个USB 3.0端口,可以通过USB数据线连接USB充电器或计算机USB端口充电。电源供电模块与控制器相互连接,接受控制器的调度。
时钟控制模块为有限域求逆器的时钟部件,用于有限域求逆器各部件的时钟信号管理。时钟控制模块有10MHz、20MHz、50MHz三种时钟频率工作模式,默认在20MHz时钟频率下工作。时钟控制模块与控制器相互连接,控制器可设置它的工作模式。
内存储器模块为有限域求逆器的内存模块,用于存储有限域运算产生的数据。内存储器模块与有限域运算器相连,有限域运算器具有读写内容的能力。
进一步地,所述求逆运算数a(x)的多项式形式为a(x)=an-1xn-1+an-2xn-2+...+a0;
所述求逆运算结果b(x)的多项式形式为
其中,an-1,an-2,...,a0和bn-1,bn-2,...,b0均为有限域GF(2)的元素,n≥1。
另外,求逆运算数a(x)还可以表示成如下的向量形式:
a(x)=a(an-1,an-2,...,a0);
其中,an-1,an-2,...,a0是有限域GF(2)的元素。
求逆运算结果b(x)还可以表示成如下的多项式形式:
b(x)=bn-1xn-1+bn-2xn-2+...+b0;
其中,bn-1,bn-2,...,b0是有限域GF(2)的元素。
进一步地,如图1所示,所述运算模块4包括时钟同步单元41、平方运算单元42、乘法运算单元43和乘法模运算单元44;
所述时钟同步单元41用于同步所述平方运算单元42和所述乘法运算单元43;
所述平方运算单元42用于接受所述时钟同步单元41的调度,计算有限域元素的平方;
所述乘法运算单元43用于接受所述时钟同步单元41的调度,计算有限域元素的乘法;
所述乘法模运算单元44用于计算有限域的模运算。
进一步地,所述有限域运算器具体用于通过所述时钟同步单元调用所述平方运算单元并调用所述乘法模运算,计算获得所述求逆运算数a(x)的平方运算a(x)2;
通过所述时钟同步单元调用所述平方运算单元并调用所述乘法模运算,计算获得所述a(x)2的平方运算结果a(x)4=(a(x)2)2,并通过所述时钟同步单元调用所述乘法运算单元计算
通过所述时钟同步单元调用所述平方运算单元并调用所述乘法模运算,计算获得所述a(x)4的平方运算结果a(x)8=(a(x)4)2,并通过所述时钟同步单元调用所述乘法运算单元计算直到通过所述时钟同步单元调用所述乘法运算单元计算从而获得所述求逆运算结果b(x)。
进一步地,所述乘法模运算单元具体用于在所述平方运算单元进行平方运算获得多项式k2n-2x2n-2+k2n-3x2n-3+...+k0后,对所述多项式k2n-2x2n-2+k2n-3x2n-3+...+k0中的每一项kmxm,采用m=m%(n+1)运算进行转换,并将转换结果进行整理,获得多项式tn-1xn-1+tn-2xn-2+...+t0,k0,k1,...,k2n-2,t0,t1,...,tn-1为有限域GF(2)的元素;采用异或逻辑门计算所述多项式tn-1xn-1+tn-2xn-2+...+t0中的所有系数,从而获得平方运算结果;
其中,所述转换结果如下:
需要说明的是,有限域运算器用于控制有限域求逆器的运算。有限域运算器与控制器相互连接,接受控制器的调度。有限域运算器与乘法模运算单元、内存储器模块、时钟同步模块单元连接。
时钟同步单元为有限域求逆器的同步模块,用于平方运算和乘法运算的同步。时钟同步模块与平方运算单元和乘法运算单元相连,通过时钟信号控制两个单元。所述平方运算单元和乘法运算单元中所包含的加法和乘法运算分别使用异或逻辑门和与逻辑门进行运算。
下面以n=4为例详细说明本实施例中的有限域求逆器的工作流程。
按击键盘输入模块的键盘上的按键“电源”,控制器通知有限域求逆器的所有部件开始工作,屏幕输出模块的液晶屏上显示“INVERTER”;
等待屏幕输出模块的液晶屏上显示“OPERAND”,通过按击键盘输入模块的键盘上的“0”和“1”按键,输入有限域GF(2n)的大小n的二进制,并按击“确认”按键;
等待屏幕输出模块的液晶屏上显示“FIELD”,通过按击键盘输入模块的键盘上的“0”和“1”按键,输入求逆运算数a(x)的系数,即表达式a(x)=a3x3+a2x2+a1x+a0的系数,并按击“确认”按键;a(x)是GF(24)的元素,a3,a2,a1,a0均是有限域GF(2)的元素,取值为0或1;
等待屏幕输出模块的液晶屏上显示“CLOCK”,通过按击键盘输入模块的键盘上的“0”和“1”按键,输入时钟信号的频率,即(01)2,表示10MHz,并按击“确认”按键;
输入控制模块检测有限域GF(24)上是否有全一不可约多项式,a(x)的长度是否为4,时钟信号是否为(01)2、(10)2、(11)2中的一个数值,若有误则反馈错误信息至输出控制模块,屏幕输出模块“ERROR”信息,并结束工作;否则,输入控制模块将a(x)输送至寄存器组模块,并存储;
控制器输送a(x)至有限域运算器;
时钟同步单元开始同步平方运算单元和乘法运算单元;
有限域运算器调用平方运算单元和乘法模运算单元计算a(x)2;
有限域运算器将a(x)2输送到乘法运算单元,并调用平方运算单元和乘法模运算单元计算a(x)4=(a(x)2)2;
有限域运算器将a(x)4输送到乘法运算单元,使乘法运算单元计算a(x)6=a(x)2×a(x)4,并调用平方运算单元和乘法模运算单元计算a(x)8=(a(x)4)2;
有限域运算器将a(x)8输送到乘法运算单元,使乘法运算单元计算a(x)14=a(x)6×a(x)8,直到乘法运算单元计算即a(x)的逆元a(x)-1为止;
有限域运算器将b(x)=a(x)-1输送至控制器,控制器将其输送到输出控制模块,显示在屏幕上。
本发明实施例能够基于全一不可约多项式,对输入的求逆运算数进行平方运算、乘法运算和模运算,获得有限域求逆运算结果,在计算有限域求逆上相对于现有的求逆器明显提高运算速度,可以广泛适用于有限域求解线性方程组,对称加密(如DES、AES),公钥密码和Rainbow、TTS、UOV签名等数学领域和工程领域。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种基于全一不可约多项式的有限域求逆器,其特征在于,包括控制器、输入控制模块、有限域运算器、运算模块和输出控制模块;
所述控制器用于控制并调度所述输入控制模块、所述输出控制模块和所述有限域运算器之间的数据传输;
所述输入控制模块用于在检测到有限域GF(2n)上具有全一不可约多项式时,输入求逆运算数a(x);
所述有限域运算器用于调用所述运算模块对所述求逆运算数a(x)进行有限域求逆运算,获得求逆运算结果b(x);
所述运算模块用于运行平方运算、乘法运算和模运算;
所述输出控制模块用于输出所述求逆运算结果b(x)。
2.如权利要求1所述的基于全一不可约多项式的有限域求逆器,其特征在于,所述求逆运算数a(x)的多项式形式为a(x)=an-1xn-1+an-2xn-2+...+a0;
所述求逆运算结果b(x)的多项式形式为:
<mrow>
<mi>b</mi>
<mrow>
<mo>(</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mi>a</mi>
<msup>
<mrow>
<mo>(</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
<mo>=</mo>
<mi>a</mi>
<msup>
<mrow>
<mo>(</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>&times;</mo>
<mi>a</mi>
<msup>
<mrow>
<mo>(</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<msup>
<mn>2</mn>
<mn>2</mn>
</msup>
</msup>
<mo>&times;</mo>
<mo>...</mo>
<mo>&times;</mo>
<mi>a</mi>
<msup>
<mrow>
<mo>(</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<msup>
<mn>2</mn>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
</msup>
<mo>=</mo>
<msub>
<mi>b</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<msup>
<mi>x</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
<mo>+</mo>
<msub>
<mi>b</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>2</mn>
</mrow>
</msub>
<msup>
<mi>x</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>2</mn>
</mrow>
</msup>
<mo>+</mo>
<mo>...</mo>
<mo>+</mo>
<msub>
<mi>b</mi>
<mn>0</mn>
</msub>
<mo>;</mo>
</mrow>
其中,an-1,an-2,...,a0和bn-1,bn-2,...,b0均为有限域GF(2)的元素,n≥1。
3.如权利要求2所述的基于全一不可约多项式的有限域求逆器,其特征在于,所述运算模块包括时钟同步单元、平方运算单元、乘法运算单元和乘法模运算单元;
所述时钟同步单元用于同步所述平方运算单元和所述乘法运算单元;
所述平方运算单元用于接受所述时钟同步单元的调度,计算有限域元素的平方;
所述乘法运算单元用于接受所述时钟同步单元的调度,计算有限域元素的乘法;
所述乘法模运算单元用于计算有限域的模运算。
4.如权利要求3所述的基于全一不可约多项式的有限域求逆器,其特征在于,所述有限域运算器具体用于通过所述时钟同步单元调用所述平方运算单元并调用所述乘法模运算,计算获得所述求逆运算数a(x)的平方运算a(x)2;
通过所述时钟同步单元调用所述平方运算单元并调用所述乘法模运算,计算获得所述a(x)2的平方运算结果a(x)4=(a(x)2)2,并通过所述时钟同步单元调用所述乘法运算单元计算
通过所述时钟同步单元调用所述平方运算单元并调用所述乘法模运算,计算获得所述a(x)4的平方运算结果a(x)8=(a(x)4)2,并通过所述时钟同步单元调用所述乘法运算单元计算直到通过所述时钟同步单元调用所述乘法运算单元计算从而获得所述求逆运算结果b(x)。
5.如权利要求4所述的基于全一不可约多项式的有限域求逆器,其特征在于,所述乘法模运算单元具体用于在所述平方运算单元进行平方运算获得多项式k2n-2x2n-2+k2n-3x2n-3+...+k0后,对所述多项式k2n-2x2n-2+k2n-3x2n-3+...+k0中的每一项kmxm,采用m=m%(n+1)运算进行转换,并将转换结果进行整理,获得多项式tn-1xn-1+tn-2xn-2+...+t0,k0,k1,...,k2n-2,t0,t1,...,tn-1为有限域GF(2)的元素;采用异或逻辑门计算所述多项式tn-1xn-1+tn-2xn-2+...+t0中的所有系数,从而获得平方运算结果;
其中,所述转换结果如下:
<mrow>
<msub>
<mi>k</mi>
<mi>m</mi>
</msub>
<msup>
<mi>x</mi>
<mi>m</mi>
</msup>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<msub>
<mi>k</mi>
<mi>m</mi>
</msub>
<mo>,</mo>
<mi>m</mi>
<mo>=</mo>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>k</mi>
<mi>m</mi>
</msub>
<mi>x</mi>
<mo>,</mo>
<mi>m</mi>
<mo>=</mo>
<mn>1</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>k</mi>
<mi>m</mi>
</msub>
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
<mo>,</mo>
<mi>m</mi>
<mo>=</mo>
<mn>2</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>...</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>k</mi>
<mi>m</mi>
</msub>
<msup>
<mi>x</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
<mo>,</mo>
<mi>m</mi>
<mo>=</mo>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>k</mi>
<mi>m</mi>
</msub>
<mo>(</mo>
<msup>
<mi>x</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
<mo>+</mo>
<msup>
<mi>x</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>2</mn>
</mrow>
</msup>
<mo>+</mo>
<mo>...</mo>
<mo>+</mo>
<mn>1</mn>
<mo>)</mo>
<mo>,</mo>
<mi>m</mi>
<mo>=</mo>
<mi>n</mi>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>k</mi>
<mi>m</mi>
</msub>
<mo>,</mo>
<mi>m</mi>
<mo>=</mo>
<mi>n</mi>
<mo>+</mo>
<mn>1</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>k</mi>
<mi>m</mi>
</msub>
<mi>x</mi>
<mo>,</mo>
<mi>m</mi>
<mo>=</mo>
<mi>n</mi>
<mo>+</mo>
<mn>2</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>....</mn>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>.</mo>
</mrow>
6.如权利要求1所述的基于全一不可约多项式的有限域求逆器,其特征在于,所述有限域求逆器还包括时钟控制模块和寄存器组模块;
所述时钟控制模块用于时钟信号的管理;
所述寄存器组模块用于存储所述有限域求逆器运行过程中产生的数据;
所述控制器还用于控制并调度所述时钟控制模块和所述寄存器组模块。
7.如权利要求6所述的基于全一不可约多项式的有限域求逆器,其特征在于,所述有限域求逆器还包括键盘输入模块;
所述键盘输入模块用于输入有限域GF(2n)的大小n的二进制、所述时钟信号的频率以及所述求逆运算数a(x)的系数。
8.如权利要求7所述的基于全一不可约多项式的有限域求逆器,其特征在于,所述输入控制模块具体用于在检测到有限域GF(2n)上具有全一不可约多项式,且所述有限域GF(2n)的大小n和所述时钟信号的频率输入正确时,根据输入的所述求逆运算数a(x)的系数生成所述求逆运算数a(x),并将所述求逆运算数a(x)存储至所述寄存器组模块;
所述输入控制模块还用于在检测到有限域GF(2n)上不具有全一不可约多项式,或者所述有限域GF(2n)的大小n、所述时钟信号的频率输入错误时,输出错误提醒,并结束工作。
9.如权利要求8所述的基于全一不可约多项式的有限域求逆器,其特征在于,所述有限域求逆器还包括屏幕输出模块;
所述屏幕输出模块用于在屏幕上显示所述求逆运算结果b(x)和所述错误提醒。
10.如权利要求1所述的基于全一不可约多项式的有限域求逆器,其特征在于,所述有限域求逆器还包括内存储器模块;
所述内存储器模块用于存储有限域求逆运算中产生的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711070673.4A CN107797790B (zh) | 2017-11-03 | 2017-11-03 | 一种基于全一不可约多项式的有限域求逆器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711070673.4A CN107797790B (zh) | 2017-11-03 | 2017-11-03 | 一种基于全一不可约多项式的有限域求逆器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107797790A true CN107797790A (zh) | 2018-03-13 |
CN107797790B CN107797790B (zh) | 2021-07-09 |
Family
ID=61549131
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711070673.4A Active CN107797790B (zh) | 2017-11-03 | 2017-11-03 | 一种基于全一不可约多项式的有限域求逆器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107797790B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108874365A (zh) * | 2018-06-29 | 2018-11-23 | 深圳职业技术学院 | 一种基于不可约三项式的有限域求逆器及有限域求逆方法 |
CN108897526A (zh) * | 2018-06-29 | 2018-11-27 | 深圳职业技术学院 | 一种基于多次平方运算的复合有限域求逆器及其求逆方法 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1996004602A1 (en) * | 1994-07-29 | 1996-02-15 | Certicom Corp. | Elliptic curve encryption systems |
US7167886B2 (en) * | 2003-05-06 | 2007-01-23 | Lsi Logic Corporation | Method for constructing logic circuits of small depth and complexity for operation of inversion in finite fields of characteristic 2 |
CN101572602A (zh) * | 2008-04-28 | 2009-11-04 | 陈婧 | 一种基于硬件设计的有限域求逆的方法及装置 |
US20100161701A1 (en) * | 2008-12-18 | 2010-06-24 | Microsoft Corporation | Polynomial representation for symbolic computation |
CN101969374A (zh) * | 2010-10-27 | 2011-02-09 | 北京航空航天大学 | 分组密码算法中混淆层的实现方法 |
CN102902510A (zh) * | 2012-08-03 | 2013-01-30 | 华南理工大学 | 一种有限域求逆器 |
CN104639314A (zh) * | 2014-12-31 | 2015-05-20 | 深圳先进技术研究院 | 基于aes加密/解密算法的装置和流水控制方法 |
CN106300345A (zh) * | 2016-09-19 | 2017-01-04 | 国电南瑞科技股份有限公司 | 基于改进Prony算法的低频振荡参数辨识方法 |
CN106445464A (zh) * | 2016-10-13 | 2017-02-22 | 深圳职业技术学院 | 一种基于心动模型的复合有限域乘法器 |
CN106856432A (zh) * | 2017-03-21 | 2017-06-16 | 深圳职业技术学院 | 多变量数字签名装置 |
CN106936569A (zh) * | 2017-05-18 | 2017-07-07 | 北京万协通信息技术有限公司 | 一种抗功耗攻击的sm4算法掩码s盒的实现方法 |
US20170212968A1 (en) * | 2016-01-22 | 2017-07-27 | Easy-Logic Technology Limited | Circuit Verification |
CN107015782A (zh) * | 2017-04-12 | 2017-08-04 | 深圳职业技术学院 | 一种基于不可约三项式的有限域乘法器 |
-
2017
- 2017-11-03 CN CN201711070673.4A patent/CN107797790B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1996004602A1 (en) * | 1994-07-29 | 1996-02-15 | Certicom Corp. | Elliptic curve encryption systems |
US7167886B2 (en) * | 2003-05-06 | 2007-01-23 | Lsi Logic Corporation | Method for constructing logic circuits of small depth and complexity for operation of inversion in finite fields of characteristic 2 |
CN101572602A (zh) * | 2008-04-28 | 2009-11-04 | 陈婧 | 一种基于硬件设计的有限域求逆的方法及装置 |
US20100161701A1 (en) * | 2008-12-18 | 2010-06-24 | Microsoft Corporation | Polynomial representation for symbolic computation |
CN101969374A (zh) * | 2010-10-27 | 2011-02-09 | 北京航空航天大学 | 分组密码算法中混淆层的实现方法 |
CN102902510A (zh) * | 2012-08-03 | 2013-01-30 | 华南理工大学 | 一种有限域求逆器 |
CN104639314A (zh) * | 2014-12-31 | 2015-05-20 | 深圳先进技术研究院 | 基于aes加密/解密算法的装置和流水控制方法 |
US20170212968A1 (en) * | 2016-01-22 | 2017-07-27 | Easy-Logic Technology Limited | Circuit Verification |
CN106300345A (zh) * | 2016-09-19 | 2017-01-04 | 国电南瑞科技股份有限公司 | 基于改进Prony算法的低频振荡参数辨识方法 |
CN106445464A (zh) * | 2016-10-13 | 2017-02-22 | 深圳职业技术学院 | 一种基于心动模型的复合有限域乘法器 |
CN106856432A (zh) * | 2017-03-21 | 2017-06-16 | 深圳职业技术学院 | 多变量数字签名装置 |
CN107015782A (zh) * | 2017-04-12 | 2017-08-04 | 深圳职业技术学院 | 一种基于不可约三项式的有限域乘法器 |
CN106936569A (zh) * | 2017-05-18 | 2017-07-07 | 北京万协通信息技术有限公司 | 一种抗功耗攻击的sm4算法掩码s盒的实现方法 |
Non-Patent Citations (1)
Title |
---|
易海博: "有限域运算和多变量公钥密码硬件的优化和设计", 《中国博士学位论文电子期刊网 信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108874365A (zh) * | 2018-06-29 | 2018-11-23 | 深圳职业技术学院 | 一种基于不可约三项式的有限域求逆器及有限域求逆方法 |
CN108897526A (zh) * | 2018-06-29 | 2018-11-27 | 深圳职业技术学院 | 一种基于多次平方运算的复合有限域求逆器及其求逆方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107797790B (zh) | 2021-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102207847B (zh) | 基于蒙哥马利模乘运算的数据加解密处理方法及装置 | |
Pan et al. | Low-latency digit-serial and digit-parallel systolic multipliers for large binary extension fields | |
US20080065713A1 (en) | Signal processing apparatus and method for performing modular multiplication in an electronic device, and smart card using the same | |
Asif et al. | High‐throughput multi‐key elliptic curve cryptosystem based on residue number system | |
CN107797790A (zh) | 一种基于全一不可约多项式的有限域求逆器 | |
WO1993002413A1 (en) | High-speed modulo exponentiator device | |
Kumar | Elliptic curve cryptography for constrained devices | |
Liu et al. | High performance FPGA implementation of elliptic curve cryptography over binary fields | |
CN107015782A (zh) | 一种基于不可约三项式的有限域乘法器 | |
CN107728993A (zh) | 一种基于全一不可约多项式的有限域乘法器 | |
CN106445464A (zh) | 一种基于心动模型的复合有限域乘法器 | |
US5206824A (en) | Method and apparatus for exponentiation over GF(2n) | |
JP4180024B2 (ja) | 乗算剰余演算器及び情報処理装置 | |
Choi et al. | ECC coprocessor over a NIST prime field using fast partial Montgomery reduction | |
CN108259179A (zh) | 一种基于sm9标识密码算法的加解密协处理器及其运算方法 | |
CN107885486A (zh) | 一种基于查找树的复合有限域求逆装置 | |
KR100508092B1 (ko) | 저전력 모듈로 곱셈을 수행하는 연산장치 | |
US11522680B2 (en) | Method and apparatus for computing hash function | |
CN108008934A (zh) | 一种基于查找表的复合有限域求逆装置 | |
WO2020186125A1 (en) | Ultra low power core for lightweight encryption | |
Zhang et al. | Ultra high-performance ASIC implementation of SM2 with power-analysis resistance | |
Singh et al. | Report on Cryptographic Hardware Design using Vedic Mathematics | |
Kim et al. | LFSR multipliers over GF (2m) defined by all-one polynomial | |
CN208766637U (zh) | 一种有限域求逆器 | |
CN108268243B (zh) | 一种基于查找的复合域乘法装置 |
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 |