CN108268243A - A kind of compositum multiplier based on lookup - Google Patents
A kind of compositum multiplier based on lookup Download PDFInfo
- Publication number
- CN108268243A CN108268243A CN201810089913.3A CN201810089913A CN108268243A CN 108268243 A CN108268243 A CN 108268243A CN 201810089913 A CN201810089913 A CN 201810089913A CN 108268243 A CN108268243 A CN 108268243A
- Authority
- CN
- China
- Prior art keywords
- layer
- node
- multiplication
- port
- nodes
- 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/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/52—Multiplying; Dividing
- G06F7/523—Multiplying 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)
- Complex Calculations (AREA)
Abstract
本发明公开了一种基于查找的复合域乘法装置,包括输入端口、输出端口、控制器、乘法运算模块和加法运算模块。输入端口包括用于输入复合域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)2)的乘法的控制电路;加法运算模块包括用于计算GF(2n)加法的查找结构;乘法运算模块包括用于计算GF(2n)乘法的查找结构。本发明基于查找实现了复合域乘法运算,在计算GF((2n)2)上的乘法运算上相对于现有的复合域乘法器更为高效。
The invention discloses a compound field multiplication device based on search, which includes an input port, an output port, a controller, a multiplication operation module and an addition operation module. The input ports include port a for input of the first operand a(x) of the composite field GF((2 n ) 2 ), port a for input of the second operand b of the composite field GF((2 n ) 2 ) Port b of (x), port clk for input clock signal t, port q for input irreducible polynomial q(x) of composite field GF((2 n ) 2 ) and port q for input subfield GF(2 The port p of the irreducible polynomial p(x) of n ); the output port includes the port c for outputting the multiplication result c(x) of the composite field GF((2 n ) 2 ); the controller includes the control input and output ports and A control circuit that schedules connected components to compute multiplications of the composite field GF((2 n ) 2 ); the addition module includes lookup structures for computing GF(2 n ) additions; the multiplication module includes functions for computing GF(2 n ) multiplications lookup structure. The invention realizes the multiplication operation of the composite field based on the search, and is more efficient in calculating the multiplication operation on the GF((2 n ) 2 ) than the existing multiplier of the composite field.
Description
技术领域technical field
本发明涉及一种对复合域的两个元素进行相乘的装置,特别涉及一种基于查找的复合域乘法装置。The invention relates to a device for multiplying two elements of a composite field, in particular to a search-based multiplication device for a composite field.
背景技术Background technique
复合域是有限域的一种类型,又称复合有限域。有限域由伽罗瓦首先发现,是含有有限个元素的数域,被广泛地运用于通讯、安全、存储等领域。有限域上的运算被称为有限域计算,包括有限域加法、乘法、求逆、除法等。Composite fields are a type of finite fields, also known as compound finite fields. Finite fields, first discovered by Galois, are number fields containing finite elements, and are widely used in communication, security, storage and other fields. Operations on finite fields are called finite field computations, including finite field addition, multiplication, inversion, division, etc.
常用的复合域是GF((2n)2),域的大小是(2n)2,它的子域是GF(2n)。因为复合域是GF((2n)2)的运算包含子域GF(2n)运算,所以通过优化GF(2n)运算可以提升GF((2n)2)的运算效率。复合域乘法是复合域最复杂的运算之一,是密码学中的基础运算,在密码系统和编码技术中起了重要作用。复合域乘法的设计方法一般基于代数方法,即使用代数理论进行乘法运算。基于代数的乘法装置在运算速度方向相对较慢。The commonly used composite field is GF((2 n ) 2 ), the size of the field is (2 n ) 2 , and its subfield is GF(2 n ). Because the composite domain is GF((2 n ) 2 ) operation includes subfield GF(2 n ) operation, so the operation efficiency of GF((2 n ) 2 ) can be improved by optimizing the GF(2 n ) operation. Compound field multiplication is one of the most complex operations in compound fields, and it is the basic operation in cryptography, which plays an important role in cryptosystem and coding technology. The design method of composite field multiplication is generally based on the algebraic method, that is, the multiplication operation is carried out using algebraic theory. Algebra-based multiplication devices are relatively slow in terms of speed of operation.
发明内容Contents of the invention
为了克服现有技术的上述缺点与不足,本发明的目的在于提供一种基于查找的复合域乘法装置,通过查找实现了复合域的乘法运算,在计算GF((2n)2)的乘法运算相对于现有的有限域乘法器更为高效。In order to overcome the above-mentioned shortcomings and deficiencies of the prior art, the object of the present invention is to provide a compound field multiplication device based on search, which realizes the multiplication of the compound field by searching, and calculates the multiplication of GF ((2 n ) 2 ) Compared with the existing finite field multiplier, it is more efficient.
本发明的目的通过以下技术方案实现:The object of the present invention is achieved through the following technical solutions:
一种基于查找的复合域乘法装置,包括:A look-up based compound field multiplication apparatus comprising:
输入端口,包括用于输入复合域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;Input ports, including port a for input to the first operand a(x) of the composite field GF((2 n ) 2 ), the second operand for input to the composite field GF((2 n ) 2 ) Port b of b(x), port clk for input clock signal t, port q for input irreducible polynomial q(x) of complex field GF((2 n ) 2 ) and port q for input subfield GF( 2 n ) the port p of the irreducible polynomial p(x);
输出端口,用于输出复合域GF((2n)2)的乘法运算结果c(x),记为端口c;The output port is used to output the multiplication result c(x) of the composite field GF((2 n ) 2 ), denoted as port c;
加法运算模块,包括用于计算GF(2n)的两个已知元素的加法的查找树结构;An addition operation module, including a search tree structure for calculating the addition of two known elements of GF(2 n );
乘法运算模块,包括用于计算GF(2n)的两个已知元素的乘法的查找树结构;A multiplication operation module comprising a search tree structure for calculating the multiplication of two known elements of GF(2 n );
控制器,包括用于控制输入输出端口控制电路和用于调度加法运算模块和乘法运算模块计算复合域GF((2n)2)的乘法的控制电路。The controller includes a control circuit for controlling the input and output ports and a control circuit for scheduling the addition operation module and the multiplication operation module to calculate the multiplication of the composite field GF((2 n ) 2 ).
所述加法查找树结构包含两颗查找树,每颗树包含n层,最上面一层为根节点所在的层,称为第0层;则最下面一层,即叶子节点所在的层是第n-1层;The addition search tree structure includes two search trees, each tree contains n layers, and the top layer is the layer where the root node is located, which is called the 0th layer; then the bottom layer, that is, the layer where the leaf nodes are located is the layer 0. n-1 layer;
扩展层在查找树的叶子节点下的一层,扩展层的每个节点与三个叶子节点相连;The expansion layer is one layer below the leaf nodes of the search tree, and each node of the expansion layer is connected to three leaf nodes;
所有树节点除了叶子节点均有左孩子节点和右孩子节点;All tree nodes except leaf nodes have left child nodes and right child nodes;
左根节点和左孩子节点代表数值0,右根节点和右孩子节点代表数值1;The left root node and left child node represent the value 0, and the right root node and right child node represent the value 1;
每一条从根节点到一个叶子节点的路径分别代表一个GF(2n)的元素。Each path from the root node to a leaf node represents an element of GF(2 n ).
所述加法运算模块的计算过程如下:The calculation process of the addition operation module is as follows:
对于GF(2n)的两个已知元素f(x),g(x)的加法h(x)=f(x)+g(x),其中,For the addition h(x)=f(x)+g(x) of two known elements f(x) and g(x) of GF(2 n ), where,
f(x)=fn-1xn-1+fn-2xn-2+...+f0,f(x)=f n-1 x n-1 +f n-2 x n-2 +...+f 0 ,
g(x)=gn-1xn-1+gn-2xn-2+...+g0,g(x)=g n-1 x n-1 +g n-2 x n-2 +...+g 0 ,
h(x)=hn-1xn-1+hn-2xn-2+...+h0,h(x)=h n-1 x n-1 +h n-2 x n-2 +...+h 0 ,
fn-1,fn-2,...,f0,gn-1,gn-2,...,g0,hn-1,hn-2,...,h0是有限域GF(2)的元素;f n-1 ,f n-2 ,...,f 0 ,g n-1 ,g n-2 ,...,g 0 ,h n-1 ,h n-2 ,...,h 0 is an element of the finite field GF(2);
若GF(2n)的加法h(x)=f(x)+g(x),并且从第0层到第n-1层的节点nf的路径代表GF(2n)的元素f(x),从第0层到第n-1层的节点ng的路径代表GF(2n)的元素g(x),则第n-1层的节点nf和ng与扩展层的节点ns相连;若从第0层到第n-1层的节点nh的路径代表GF(2n)的元素h(x),则第n-1层的节点nh与扩展层的节点ns相连;If the addition h(x) of GF(2 n )=f(x)+g(x), and the path from layer 0 to node n f of layer n-1 represents the element f ( x), the path from the 0th layer to the node n g of the n-1th layer represents the element g(x) of GF(2 n ), then the nodes n f and n g of the n-1th layer and the nodes of the expansion layer n s are connected; if the path from the 0th layer to the node n h of the n-1th layer represents the element h(x) of GF(2 n ), then the node n h of the n-1th layer and the node n of the expansion layer s connected;
计算h(x)=f(x)+g(x)的步骤如下:The steps to calculate h(x)=f(x)+g(x) are as follows:
首先,对于f(x)=fn-1xn-1+fn-2xn-2+...+f0,判断从第0层到第n-1层的节点nf的路径代表GF(2n)的元素f(x);First, for f(x)=f n-1 x n-1 +f n-2 x n-2 +...+f 0 , determine the path from layer 0 to node n f of layer n-1 represents the element f(x) of GF(2 n );
然后,对于g(x)=gn-1xn-1+gn-2xn-2+...+g0,从第0层到第n-1层的节点ng的路径代表GF(2n)的元素g(x);Then, for g(x)=g n-1 x n-1 +g n-2 x n-2 +...+g 0 , the path of node n g from layer 0 to layer n-1 represents element g(x) of GF(2 n );
若第n-1层的节点nf和ng与扩展层的节点ns相连,并且第n-1层的节点nh与扩展层的节点ns相连,则从第0层到第n-1层的节点nh的路径代表的GF(2n)的元素是h(x)=f(x)+g(x),即是h(x)=f(x)+g(x)的运算结果。If the nodes n f and n g of the n-1th layer are connected to the node n s of the expansion layer, and the node n h of the n-1th layer is connected to the node n s of the expansion layer, then from the 0th layer to the n-th The element of GF(2 n ) represented by the path of node n h in layer 1 is h(x)=f(x)+g(x), namely It is the calculation result of h(x)=f(x)+g(x).
所述乘法查找树结构包含两颗查找树,每颗树包含n层;最上面一层即根节点所在的层,称为第0层;则最下面一层,即叶子节点所在的层是第n-1层;The multiplication search tree structure includes two search trees, each tree contains n layers; the top layer is the layer where the root node is located, which is called the 0th layer; the bottom layer, that is, the layer where the leaf nodes are located is the layer 0 n-1 layer;
扩展层在查找树的叶子节点下的一层,扩展层的每个节点与三个叶子节点相连;The expansion layer is one layer below the leaf nodes of the search tree, and each node of the expansion layer is connected to three leaf nodes;
所有树节点除了叶子节点均有左孩子节点和右孩子节点;All tree nodes except leaf nodes have left child nodes and right child nodes;
左根节点和左孩子节点代表数值0,右根节点和右孩子节点代表数值1;The left root node and left child node represent the value 0, and the right root node and right child node represent the value 1;
每一条从根节点到一个叶子节点的路径分别代表一个GF(2n)的元素。Each path from the root node to a leaf node represents an element of GF(2 n ).
所述乘法运算模块的计算过程如下:The calculation process of the multiplication module is as follows:
GF(2n)的两个已知元素f(x),g(x)的乘法h(x)=f(x)×g(x),其中,The multiplication of two known elements f(x) and g(x) of GF(2 n ) h(x)=f(x)×g(x), where,
f(x)=fn-1xn-1+fn-2xn-2+...+f0,f(x)=f n-1 x n-1 +f n-2 x n-2 +...+f 0 ,
g(x)=gn-1xn-1+gn-2xn-2+...+g0,g(x)=g n-1 x n-1 +g n-2 x n-2 +...+g 0 ,
h(x)=hn-1xn-1+hn-2xn-2+...+h0,h(x)=h n-1 x n-1 +h n-2 x n-2 +...+h 0 ,
fn-1,fn-2,...,f0,gn-1,gn-2,...,g0,hn-1,hn-2,...,h0是有限域GF(2)的元素;f n-1 ,f n-2 ,...,f 0 ,g n-1 ,g n-2 ,...,g 0 ,h n-1 ,h n-2 ,...,h 0 is an element of the finite field GF(2);
若GF(2n)的乘法h(x)=f(x)×g(x),并且从第0层到第n-1层的节点nf的路径代表GF(2n)的元素f(x),从第0层到第n-1层的节点ng的路径代表GF(2n)的元素g(x),则第n-1层的节点nf和ng与扩展层的节点ns相连;若从第0层到第n-1层的节点nh的路径代表GF(2n)的元素h(x),则第n-1层的节点nh与扩展层的节点ns相连;If the multiplication h(x) of GF(2 n )=f(x)×g(x), and the path from layer 0 to node n f of layer n-1 represents the element f ( x), the path from the 0th layer to the node n g of the n-1th layer represents the element g(x) of GF(2 n ), then the nodes n f and n g of the n-1th layer and the nodes of the expansion layer n s are connected; if the path from the 0th layer to the node n h of the n-1th layer represents the element h(x) of GF(2 n ), then the node n h of the n-1th layer and the node n of the expansion layer s connected;
计算h(x)=f(x)×g(x)的步骤如下:The steps to calculate h(x)=f(x)×g(x) are as follows:
首先,对于f(x)=fn-1xn-1+fn-2xn-2+...+f0,判断从第0层到第n-1层的节点nf的路径代表GF(2n)的元素f(x);First, for f(x)=f n-1 x n-1 +f n-2 x n-2 +...+f 0 , determine the path from layer 0 to node n f of layer n-1 represents the element f(x) of GF(2 n );
然后,对于g(x)=gn-1xn-1+gn-2xn-2+...+g0,从第0层到第n-1层的节点ng的路径代表GF(2n)的元素g(x);Then, for g(x)=g n-1 x n-1 +g n-2 x n-2 +...+g 0 , the path of node n g from layer 0 to layer n-1 represents element g(x) of GF(2 n );
若第n-1层的节点nf和ng与扩展层的节点ns相连,并且第n-1层的节点nh与扩展层的节点ns相连,则从第0层到第n-1层的节点nh的路径代表的GF(2n)的元素是h(x)=f(x)×g(x),即是h(x)=f(x)×g(x)的运算结果。If the nodes n f and n g of the n-1th layer are connected to the node n s of the expansion layer, and the node n h of the n-1th layer is connected to the node n s of the expansion layer, then from the 0th layer to the n-th The element of GF(2 n ) represented by the path of node n h in layer 1 is h(x)=f(x)×g(x), namely It is the calculation result of h(x)=f(x)×g(x).
所述第一运算数a(x)、第二运算数b(x)、乘法运算结果c(x)的多项式表达式分别为:The polynomial expressions of the first operand a(x), the second operand b(x), and the multiplication result c(x) are respectively:
a(x)=ahx+al,a(x)=a h x+a l ,
b(x)=bhx+bl,b(x)=b h x+b l ,
c(x)=chx+cl,c(x)=c h x+c l ,
ah,al,bh,bl是有限域GF(2n)的元素;ch,cl是有限域GF(2n)的元素;a h , a l , b h , b l are elements of finite field GF(2 n ); c h , c l are elements of finite field GF(2 n );
所述第一运算数a(x)、第二运算数b(x)、乘法运算结果c(x)的系数形式为:The coefficient forms of the first operand a(x), the second operand b(x), and the multiplication result c(x) are:
a(x)=a(ah,al),a(x)=a(a h ,a l ),
b(x)=b(bh,bl),b(x)=b(b h , b l ),
c(x)=c(ch,cl),c(x)=c(c h ,c l ),
ah,al,bh,bl是有限域GF(2n)的元素;ch,cl是有限域GF(2n)的元素。a h , a l , b h , b l are elements of finite field GF(2 n ); c h , c l are elements of finite field GF(2 n ).
所述调度加法运算模块和乘法运算模块计算GF((2n)2)的乘法c(x)=a(x)×b(x)的步骤如下:The steps of scheduling the addition module and the multiplication module to calculate the multiplication c(x)=a(x)×b(x) of GF((2 n ) 2 ) are as follows:
令a(x)=ahx+al和b(x)=bhx+bl,,Let a(x) = a h x + a l and b(x) = b h x + b l ,
等待时钟信号由低电平转向高电平;第一个时钟周期,调用乘法运算模块计算s0=ahbh,s0,ah,bh是子域GF(2n)的元素;第二个时钟周期,调用乘法运算模块计算s1=ahbl,s1,ah,bl是子域GF(2n)的元素;第三个时钟周期,调用乘法运算模块计算s2=albh,s2,al,bh是子域GF(2n)的元素;第四个时钟周期,调用乘法运算模块计算s3=albl,s3,al,bl是子域GF(2n)的元素;第五个时钟周期,调用乘法运算模块计算s4=s0e,s4,s0,e是子域GF(2n)的元素;第六个时钟周期,调用加法运算模块计算s5=s4+s3,s5,s4,s3是子域GF(2n)的元素;第七个时钟周期,调用加法运算模块计算s6=s0+s1,s6,s0,s1是子域GF(2n)的元素;第八个时钟周期,调用加法运算模块计算s7=s6+s2,s7,s6,s2是子域GF(2n)的元素;令c(x)=chx+cl,ch=s7,cl=s5,ch,cl是子域GF(2n)的元素,c(x)是复合域GF((2n)2)的元素,c(x)是a(x)=ahx+al和b(x)=bhx+bl的乘法运算结果。Wait for the clock signal to turn from low level to high level; in the first clock cycle, call the multiplication module to calculate s 0 =a h b h , s 0 , a h , b h are the elements of the subfield GF(2 n ); In the second clock cycle, call the multiplication module to calculate s 1 =a h b l , s 1 , a h , b l are the elements of the subfield GF(2 n ); in the third clock cycle, call the multiplication module to calculate s 2 = a l b h , s 2 , a l , b h are the elements of the subfield GF(2 n ); in the fourth clock cycle, call the multiplication module to calculate s 3 = a l b l , s 3 , a l , b l is the element of the subfield GF(2 n ); in the fifth clock cycle, call the multiplication module to calculate s 4 =s 0 e, s 4 , s 0 , e are the elements of the subfield GF(2 n ); In the sixth clock cycle, call the addition module to calculate s 5 =s 4 +s 3 , s 5 , s 4 , and s 3 are elements of the subfield GF(2 n ); in the seventh clock cycle, call the addition module to calculate s 6 =s 0 +s 1 , s 6 , s 0 , s 1 are the elements of the subfield GF(2 n ); in the eighth clock cycle, call the addition operation module to calculate s 7 =s 6 +s 2 , s 7 , s 6 , s 2 are the elements of the subfield GF(2 n ); let c(x)= ch x+c l , ch = s 7 , cl = s 5 , ch , c l are the subfields An element of GF(2 n ), c(x) is an element of the composite field GF((2 n ) 2 ), c(x) is a(x)=a h x+a l and b(x)=b h The result of the multiplication operation of x+b l .
所述时钟信号t是单比特信号,取值是0或1,代表低电平或高电平;低电平转向高电平代表一个时钟周期的开始。The clock signal t is a single-bit signal, which takes a value of 0 or 1, representing a low level or a high level; turning from a low level to a high level represents the beginning of a clock cycle.
与现有技术相比,本发明具有以下优点和有益效果:Compared with the prior art, the present invention has the following advantages and beneficial effects:
本发明的加法运算模块、乘法运算模块包含两棵查找树,再由控制器调度加法运算模块和乘法运算模块计算复合域GF((2n)2)的乘法。本发明通过查找实现了复合域的乘法运算,在计算GF((2n)2)的乘法运算相对于现有的有限域乘法器能够提高性能,在计算复合域乘法时的速度更快,可以广泛使用在密码系统和数据通信中,提高加密解密速度以及数据编码解码的速度。The addition operation module and the multiplication operation module of the present invention include two search trees, and then the controller dispatches the addition operation module and the multiplication operation module to calculate the multiplication of the composite field GF((2 n ) 2 ). The present invention realizes the multiplication operation of the compound field by searching, and the multiplication operation of calculating GF((2 n ) 2 ) can improve the performance compared with the existing finite field multiplier, and the speed of calculating the multiplication of the compound field is faster, which can It is widely used in cryptographic systems and data communications to increase the speed of encryption and decryption as well as the speed of data encoding and decoding.
附图说明Description of drawings
图1为本发明的实施例的一种基于查找的复合域乘法装置的结构示意图。FIG. 1 is a schematic structural diagram of a search-based compound field multiplication device according to an embodiment of the present invention.
图2为加法运算模块的查找树结构如下图GF(24)。Figure 2 shows the search tree structure of the addition module as shown in Figure GF(2 4 ).
图3为乘法运算模块的查找树结构如下图GF(24)。Figure 3 shows the search tree structure of the multiplication module as shown in Figure GF(2 4 ).
具体实施方式Detailed ways
下面结合实施例,对本发明作进一步地详细说明,但本发明的实施方式不限于此。The present invention will be described in further detail below in conjunction with the examples, but the embodiments of the present invention are not limited thereto.
实施例Example
如图1所示,基于查找的复合域乘法装置,包括:As shown in Figure 1, the search-based compound field multiplication device includes:
输入端口,包括用于输入复合域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;Input ports, including port a for input to the first operand a(x) of the composite field GF((2 n ) 2 ), the second operand for input to the composite field GF((2 n ) 2 ) Port b of b(x), port clk for input clock signal t, port q for input irreducible polynomial q(x) of complex field GF((2 n ) 2 ) and port q for input subfield GF( 2 n ) the port p of the irreducible polynomial p(x);
输出端口,用于输出复合域GF((2n)2)的乘法运算结果c(x),记为端口c;The output port is used to output the multiplication result c(x) of the composite field GF((2 n ) 2 ), denoted as port c;
控制器,包括用于控制输入输出端口控制电路和用于调度加法运算模块和乘法运算模块计算复合域GF((2n)2)的乘法的控制电路;A controller, including a control circuit for controlling the input and output ports and a control circuit for scheduling the addition module and the multiplication module to calculate the multiplication of the composite field GF((2 n ) 2 );
加法运算模块,包括用于计算GF(2n)的两个已知元素的加法的查找树结构。An addition operation module, including a search tree structure for the addition of two known elements of GF(2 n ).
乘法运算模块,包括用于计算GF(2n)的两个已知元素的乘法的查找树结构。A multiplication module, including a search tree structure for computing the multiplication of two known elements of GF(2 n ).
(1)输入端口(1) Input port
所述输入端口包括用于输入复合域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;The input ports include port a for inputting the first operand a(x) of the composite field GF((2 n ) 2 ), the second operand a(x) for inputting the composite field GF((2 n ) 2 ) Port b for number b(x), port clk for input clock signal t, port q for input irreducible polynomial q(x) of composite field GF((2 n ) 2 ) and port q for input subfield GF port p of the irreducible polynomial p(x) of (2 n );
所述输入端口的第一运算数a(x)和第二运算数b(x),可以表示成多项式的形式:The first operand a(x) and the second operand b(x) of the input port can be expressed as a polynomial form:
a(x)=ahx+al,a(x)=a h x+a l ,
b(x)=bhx+bl,b(x)=b h x+b l ,
ah,al,bh,bl是有限域GF(2n)的元素。a h , a l , b h , b l are elements of the finite field GF(2 n ).
所述输入端口的第一运算数a(x)和第二运算数b(x),可以表示成系数的形式:The first operand a(x) and the second operand b(x) of the input port can be expressed in the form of coefficients:
a(x)=a(ah,al),a(x)=a(a h ,a l ),
b(x)=b(bh,bl),b(x)=b(b h , b l ),
ah,al,bh,bl是有限域GF(2n)的元素。a h , a l , b h , b l are elements of the finite field GF(2 n ).
所述输入端口的时钟信号t是单比特信号,取值是0或1,代表低电平或高电平;低电平转向高电平代表一个时钟周期的开始。The clock signal t of the input port is a single-bit signal, and its value is 0 or 1, representing low level or high level; turning from low level to high level represents the beginning of a clock cycle.
所述输入端口的复合域GF((2n)2)的不可约多项式q(x),可以表示成多项式的形式:The irreducible polynomial q(x) of the composite field GF((2 n ) 2 ) of the input port can be expressed as a polynomial form:
q(x)=x2+x+e,q(x)= x2 +x+e,
e是有限域GF(2n)的常数。e is a constant of the finite field GF(2 n ).
所述输入端口的子域GF(2n)的不可约多项式p(x),可以表示成多项式的形式:The irreducible polynomial p(x) of the subfield GF(2 n ) of the input port can be expressed as a polynomial form:
p(x)=xn+pn-1xn-1+pn-2xn-2+...+p1x+1,p(x)=x n +p n-1 x n-1 +p n-2 x n-2 +...+p 1 x+1,
pn-1,pn-2,...,p1是有限域GF(2)的元素,即二进制数(0)2和(1)2中的一个数。p n-1 ,p n-2 ,...,p 1 are elements of the finite field GF(2), that is, one of the binary numbers (0) 2 and (1) 2 .
(2)输出端口(2) Output port
输出端口的复合域GF((2n)2)的乘法运算结果c(x),可以表示成系数的形式:The multiplication result c(x) of the complex field GF((2 n ) 2 ) at the output port can be expressed in the form of coefficients:
c(x)=c(ch,cl),c(x)=c(c h ,c l ),
ch,cl是有限域GF(2n)的元素。c h , c l are elements of the finite field GF(2 n ).
(3)加法运算模块(3) Addition operation module
如图2所示,所述加法运算模块,包含加法查找树结构,用于计算GF(2n)的两个已知元素f(x),g(x)的加法h(x)=f(x)+g(x),其中,As shown in Figure 2, the addition operation module includes an addition search tree structure, which is used to calculate the addition of two known elements f(x) and g(x) of GF(2 n ) h(x)=f( x)+g(x), where,
f(x)=fn-1xn-1+fn-2xn-2+...+f0,f(x)=f n-1 x n-1 +f n-2 x n-2 +...+f 0 ,
g(x)=gn-1xn-1+gn-2xn-2+...+g0,g(x)=g n-1 x n-1 +g n-2 x n-2 +...+g 0 ,
h(x)=hn-1xn-1+hn-2xn-2+...+h0,h(x)=h n-1 x n-1 +h n-2 x n-2 +...+h 0 ,
fn-1,fn-2,...,f0,gn-1,gn-2,...,g0,hn-1,hn-2,...,h0是有限域GF(2)的元素;f n-1 ,f n-2 ,...,f 0 ,g n-1 ,g n-2 ,...,g 0 ,h n-1 ,h n-2 ,...,h 0 is an element of the finite field GF(2);
计算h(x)=f(x)+g(x)使用加法查找树结构,描述如下:Calculating h(x)=f(x)+g(x) uses addition to find the tree structure, described as follows:
查找树结构包含两颗查找树,每颗树包含n层,把最上面一层,即根节点所在的层称为第0层,则最下面一层,即叶子节点所在的层是第n-1层;The search tree structure contains two search trees, and each tree contains n layers. The top layer, that is, the layer where the root node is located is called the 0th layer, and the bottom layer, that is, the layer where the leaf nodes are located is the nth- 1 story;
扩展层在查找树的叶子节点下的一层,扩展层的每个节点与三个叶子节点相连;The expansion layer is one layer below the leaf nodes of the search tree, and each node of the expansion layer is connected to three leaf nodes;
所有树节点除了叶子节点均有左孩子节点和右孩子节点;All tree nodes except leaf nodes have left child nodes and right child nodes;
左节点(左根节点和左孩子节点)代表数值0,右节点(右根节点和右孩子节点)代表数值1;The left node (left root node and left child node) represents the value 0, and the right node (right root node and right child node) represents the value 1;
每一条从根节点到一个叶子节点的路径分别代表一个GF(2n)的元素;例如,由左根节点开始,包括左根节点的左孩子节点、左根节点的左孩子节点的左孩子节点等节点,直到最左边的叶子节点结束(第n-1层的最左边的节点)的路径代表GF(2n)的元素(00...00)2;Each path from the root node to a leaf node represents a GF(2 n ) element; for example, starting from the left root node, including the left child node of the left root node, the left child node of the left child node of the left root node Waiting for nodes until the path ending at the leftmost leaf node (the leftmost node of the n-1th layer) represents the element (00...00) 2 of GF(2 n );
若GF(2n)的加法h(x)=f(x)+g(x),并且从第0层到第n-1层的节点nf的路径代表GF(2n)的元素f(x),从第0层到第n-1层的节点ng的路径代表GF(2n)的元素g(x),则第n-1层的节点nf和ng与扩展层的节点ns相连;若从第0层到第n-1层的节点nh的路径代表GF(2n)的元素h(x),则第n-1层的节点nh与扩展层的节点ns相连;If the addition h(x) of GF(2 n )=f(x)+g(x), and the path from layer 0 to node n f of layer n-1 represents the element f ( x), the path from the 0th layer to the node n g of the n-1th layer represents the element g(x) of GF(2 n ), then the nodes n f and n g of the n-1th layer and the nodes of the expansion layer n s are connected; if the path from the 0th layer to the node n h of the n-1th layer represents the element h(x) of GF(2 n ), then the node n h of the n-1th layer and the node n of the expansion layer s connected;
计算h(x)=f(x)+g(x)的步骤如下:The steps to calculate h(x)=f(x)+g(x) are as follows:
首先,对于f(x)=fn-1xn-1+fn-2xn-2+...+f0,判断从第0层到第n-1层的节点nf的路径代表GF(2n)的元素f(x);First, for f(x)=f n-1 x n-1 +f n-2 x n-2 +...+f 0 , determine the path from layer 0 to node n f of layer n-1 represents the element f(x) of GF(2 n );
然后,对于g(x)=gn-1xn-1+gn-2xn-2+...+g0,从第0层到第n-1层的节点ng的路径代表GF(2n)的元素g(x);Then, for g(x)=g n-1 x n-1 +g n-2 x n-2 +...+g 0 , the path of node n g from layer 0 to layer n-1 represents element g(x) of GF(2 n );
若第n-1层的节点nf和ng与扩展层的节点ns相连,并且第n-1层的节点nh与扩展层的节点ns相连,则从第0层到第n-1层的节点nh的路径代表的GF(2n)的元素是h(x)=f(x)+g(x),即是h(x)=f(x)+g(x)的运算结果。If the nodes n f and n g of the n-1th layer are connected to the node n s of the expansion layer, and the node n h of the n-1th layer is connected to the node n s of the expansion layer, then from the 0th layer to the n-th The element of GF(2 n ) represented by the path of node n h in layer 1 is h(x)=f(x)+g(x), namely It is the calculation result of h(x)=f(x)+g(x).
(4)乘法运算模块(4) Multiplication operation module
如图3所示,所述乘法运算模块,包含乘法查找树结构,用于计算GF(2n)的两个已知元素f(x),g(x)的乘法h(x)=f(x)×g(x),其中,As shown in Figure 3, the multiplication operation module includes a multiplication search tree structure, which is used to calculate the multiplication of two known elements f(x) and g(x) of GF(2 n ) h(x)=f( x)×g(x), where,
f(x)=fn-1xn-1+fn-2xn-2+...+f0,f(x)=f n-1 x n-1 +f n-2 x n-2 +...+f 0 ,
g(x)=gn-1xn-1+gn-2xn-2+...+g0,g(x)=g n-1 x n-1 +g n-2 x n-2 +...+g 0 ,
h(x)=hn-1xn-1+hn-2xn-2+...+h0,h(x)=h n-1 x n-1 +h n-2 x n-2 +...+h 0 ,
fn-1,fn-2,...,f0,gn-1,gn-2,...,g0,hn-1,hn-2,...,h0是有限域GF(2)的元素;f n-1 ,f n-2 ,...,f 0 ,g n-1 ,g n-2 ,...,g 0 ,h n-1 ,h n-2 ,...,h 0 is an element of the finite field GF(2);
计算h(x)=f(x)×g(x)使用乘法查找树结构,描述如下:Calculate h(x)=f(x)×g(x) using multiplication to find the tree structure, described as follows:
查找树结构包含两颗查找树,每颗树包含n层,把最上面一层,即根节点所在的层称为第0层,则最下面一层,即叶子节点所在的层是第n-1层;The search tree structure contains two search trees, and each tree contains n layers. The top layer, that is, the layer where the root node is located is called the 0th layer, and the bottom layer, that is, the layer where the leaf nodes are located is the nth- 1 story;
扩展层在查找树的叶子节点下的一层,扩展层的每个节点与三个叶子节点相连;The expansion layer is one layer below the leaf nodes of the search tree, and each node of the expansion layer is connected to three leaf nodes;
所有树节点除了叶子节点均有左孩子节点和右孩子节点;All tree nodes except leaf nodes have left child nodes and right child nodes;
左节点(左根节点和左孩子节点)代表数值0,右节点(右根节点和右孩子节点)代表数值1;The left node (left root node and left child node) represents the value 0, and the right node (right root node and right child node) represents the value 1;
每一条从根节点到一个叶子节点的路径分别代表一个GF(2n)的元素;例如,由左根节点开始,包括左根节点的左孩子节点、左根节点的左孩子节点的左孩子节点等节点,直到最左边的叶子节点结束(第n-1层的最左边的节点)的路径代表GF(2n)的元素(00...00)2;Each path from the root node to a leaf node represents a GF(2 n ) element; for example, starting from the left root node, including the left child node of the left root node, the left child node of the left child node of the left root node Waiting for nodes until the path ending at the leftmost leaf node (the leftmost node of the n-1th layer) represents the element (00...00) 2 of GF(2 n );
若GF(2n)的乘法h(x)=f(x)×g(x),并且从第0层到第n-1层的节点nf的路径代表GF(2n)的元素f(x),从第0层到第n-1层的节点ng的路径代表GF(2n)的元素g(x),则第n-1层的节点nf和ng与扩展层的节点ns相连;若从第0层到第n-1层的节点nh的路径代表GF(2n)的元素h(x),则第n-1层的节点nh与扩展层的节点ns相连;If the multiplication h(x) of GF(2 n )=f(x)×g(x), and the path from layer 0 to node n f of layer n-1 represents the element f ( x), the path from the 0th layer to the node n g of the n-1th layer represents the element g(x) of GF(2 n ), then the nodes n f and n g of the n-1th layer and the nodes of the expansion layer n s are connected; if the path from the 0th layer to the node n h of the n-1th layer represents the element h(x) of GF(2 n ), then the node n h of the n-1th layer and the node n of the expansion layer s connected;
计算h(x)=f(x)×g(x)的步骤如下:The steps to calculate h(x)=f(x)×g(x) are as follows:
首先,对于f(x)=fn-1xn-1+fn-2xn-2+...+f0,判断从第0层到第n-1层的节点nf的路径代表GF(2n)的元素f(x);First, for f(x)=f n-1 x n-1 +f n-2 x n-2 +...+f 0 , determine the path from layer 0 to node n f of layer n-1 represents the element f(x) of GF(2 n );
然后,对于g(x)=gn-1xn-1+gn-2xn-2+...+g0,从第0层到第n-1层的节点ng的路径代表GF(2n)的元素g(x);Then, for g(x)=g n-1 x n-1 +g n-2 x n-2 +...+g 0 , the path of node n g from layer 0 to layer n-1 represents element g(x) of GF(2 n );
若第n-1层的节点nf和ng与扩展层的节点ns相连,并且第n-1层的节点nh与扩展层的节点ns相连,则从第0层到第n-1层的节点nh的路径代表的GF(2n)的元素是h(x)=f(x)×g(x),即是h(x)=f(x)×g(x)的运算结果。If the nodes n f and n g of the n-1th layer are connected to the node n s of the expansion layer, and the node n h of the n-1th layer is connected to the node n s of the expansion layer, then from the 0th layer to the n-th The element of GF(2 n ) represented by the path of node n h in layer 1 is h(x)=f(x)×g(x), namely It is the calculation result of h(x)=f(x)×g(x).
(5)控制器(5) Controller
所述控制器与输入端口相连,监听输入端口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)。所述控制器与加法运算模块、乘法运算模块相连,所述控制器与输出端口相连,计算GF((2n)2)的乘法c(x)=a(x)×b(x)完成后,将c(x)输出至输出端口c。The controller is connected to the input port, monitors the input port a, and receives the port a of the first operand a(x) of the composite finite field GF((2 n ) 2 ); monitors the input port b, and receives the composite finite field GF( Port b of the second operand b(x) of (2 n ) 2 ); monitor input port clk, receive clock signal t; monitor input port q, receive irreducible polynomial of composite finite field GF((2 n ) 2 ) q(x); monitor the input port p, and receive the irreducible polynomial p(x) of the subfield GF(2 n ). The controller is connected to the addition module and the multiplication module, and the controller is connected to the output port, after the multiplication c(x)=a(x)×b(x) of GF((2 n ) 2 ) is calculated , outputs c(x) to output port c.
令a(x)=ahx+al和b(x)=bhx+bl,计算GF((2n)2)的乘法c(x)=a(x)×b(x)的步骤如下:Let a(x)=a h x+a l and b(x)=b h x+b l , calculate the multiplication of GF((2 n ) 2 ) c(x)=a(x)×b(x) The steps are as follows:
等待时钟信号由低电平转向高电平;Wait for the clock signal to change from low level to high level;
第一个时钟周期,调用乘法运算模块计算s0=ahbh,s0,ah,bh是子域GF(2n)的元素;In the first clock cycle, call the multiplication module to calculate s 0 =a h b h , s 0 , a h , and b h are the elements of the subfield GF(2 n );
第二个时钟周期,调用乘法运算模块计算s1=ahbl,s1,ah,bl是子域GF(2n)的元素;In the second clock cycle, call the multiplication module to calculate s 1 =a h b l , s 1 , a h , b l are the elements of the subfield GF(2 n );
第三个时钟周期,调用乘法运算模块计算s2=albh,s2,al,bh是子域GF(2n)的元素;In the third clock cycle, call the multiplication module to calculate s 2 =a l b h , where s 2 , a l , and b h are elements of the subfield GF(2 n );
第四个时钟周期,调用乘法运算模块计算s3=albl,s3,al,bl是子域GF(2n)的元素;In the fourth clock cycle, call the multiplication module to calculate s 3 =al b l , s 3 , a l , b l are the elements of the subfield GF(2 n ) ;
第五个时钟周期,调用乘法运算模块计算s4=s0e,s4,s0,e是子域GF(2n)的元素;In the fifth clock cycle, call the multiplication module to calculate s 4 =s 0 e, s 4 , s 0 , and e are elements of the subfield GF(2 n );
第六个时钟周期,调用加法运算模块计算s5=s4+s3,s5,s4,s3是子域GF(2n)的元素;In the sixth clock cycle, call the addition module to calculate s 5 =s 4 +s 3 , s 5 , s 4 , and s 3 are elements of the subfield GF(2 n );
第七个时钟周期,调用加法运算模块计算s6=s0+s1,s6,s0,s1是子域GF(2n)的元素;In the seventh clock cycle, call the addition module to calculate s 6 =s 0 +s 1 , s 6 , s 0 , and s 1 are elements of the subfield GF(2 n );
第八个时钟周期,调用加法运算模块计算s7=s6+s2,s7,s6,s2是子域GF(2n)的元素;In the eighth clock cycle, call the addition module to calculate s 7 =s 6 +s 2 , s 7 , s 6 , and s 2 are elements of the subfield GF(2 n );
令c(x)=chx+cl,ch=s7,cl=s5,ch,cl是子域GF(2n)的元素,c(x)是复合域GF((2n)2)的元素,c(x)是a(x)=ahx+al和b(x)=bhx+bl的乘法运算结果。Let c(x)=ch x +c l , c h =s 7 , c l =s 5 , c h , c l are elements of the subfield GF(2 n ), c(x) is the compound field GF( (2 n ) 2 ), c(x) is the multiplication result of a(x)=a h x+a l and b(x)=b h x+b l .
本实施例以n=4为例说明本发明的计算乘法的工作过程。In this embodiment, n=4 is taken as an example to illustrate the working process of calculating multiplication in the present invention.
输入端口的第一运算数a(x)是复合域GF((24)2)的元素,可以表示成多项式的形式:The first operand a(x) of the input port is an element of the compound field GF((2 4 ) 2 ), which can be expressed as a polynomial:
a(x)=ahx+al,a(x)=a h x+a l ,
ah,al是有限域GF(24)的元素;a h , a l are the elements of the finite field GF(2 4 );
输入端口的第二运算数b(x)是复合域GF((24)2)的元素,可以表示成多项式的形式:The second operand b(x) of the input port is an element of the composite field GF((2 4 ) 2 ), which can be expressed as a polynomial:
b(x)=bhx+bl,b(x)=b h x+b l ,
bh,bl是有限域GF(24)的元素;b h , b l are the elements of the finite field GF(2 4 );
输出端口的运算数c(x)是复合域GF((24)2)的元素,可以表示成多项式的形式:The operand c(x) of the output port is an element of the compound field GF((2 4 ) 2 ), which can be expressed as a polynomial:
c(x)=chx+cl,c(x)=c h x+c l ,
ch,cl是有限域GF(24)的元素;c h , c l are the elements of the finite field GF(2 4 );
输入端口的时钟信号t是单比特信号,时钟周期是20纳秒;The clock signal t of the input port is a single-bit signal, and the clock period is 20 nanoseconds;
控制器计算GF((24)2)的乘法c(x)=a(x)×b(x)步骤如下:The steps for the controller to calculate the multiplication c(x)=a(x)×b(x) of GF((2 4 ) 2 ) are as follows:
运算控制器接收输入第一运算数a(x)、第二运算数b(x)、时钟信号t、GF((24)2)的不可约多项式q(x)=x2+x+9,GF(24)的不可约多项式p(x)=x4+x+1,等待时钟信号t由低电平转向高电平(由0变成1);The operation controller receives and inputs the first operand a(x), the second operand b(x), the clock signal t, and the irreducible polynomial q(x)=x 2 +x+9 of GF((2 4 ) 2 ) , the irreducible polynomial p(x) of GF(2 4 )=x 4 +x+1, waiting for the clock signal t to change from low level to high level (from 0 to 1);
第一个时钟周期,调用乘法运算模块计算s0=ahbh,s0,ah,bh是子域GF(2n)的元素;In the first clock cycle, call the multiplication module to calculate s 0 =a h b h , s 0 , a h , and b h are the elements of the subfield GF(2 n );
第二个时钟周期,调用乘法运算模块计算s1=ahbl,s1,ah,bl是子域GF(2n)的元素;In the second clock cycle, call the multiplication module to calculate s 1 =a h b l , s 1 , a h , b l are the elements of the subfield GF(2 n );
第三个时钟周期,调用乘法运算模块计算s2=albh,s2,al,bh是子域GF(2n)的元素;In the third clock cycle, call the multiplication module to calculate s 2 =a l b h , where s 2 , a l , and b h are elements of the subfield GF(2 n );
第四个时钟周期,调用乘法运算模块计算s3=albl,s3,al,bl是子域GF(2n)的元素;In the fourth clock cycle, call the multiplication module to calculate s 3 =al b l , s 3 , a l , b l are the elements of the subfield GF(2 n ) ;
第五个时钟周期,调用乘法运算模块计算s4=s0e,s4,s0,e是子域GF(2n)的元素;In the fifth clock cycle, call the multiplication module to calculate s 4 =s 0 e, s 4 , s 0 , and e are elements of the subfield GF(2 n );
第六个时钟周期,调用加法运算模块计算s5=s4+s3,s5,s4,s3是子域GF(2n)的元素;In the sixth clock cycle, call the addition module to calculate s 5 =s 4 +s 3 , s 5 , s 4 , and s 3 are elements of the subfield GF(2 n );
第七个时钟周期,调用加法运算模块计算s6=s0+s1,s6,s0,s1是子域GF(2n)的元素;In the seventh clock cycle, call the addition module to calculate s 6 =s 0 +s 1 , s 6 , s 0 , and s 1 are elements of the subfield GF(2 n );
第八个时钟周期,调用加法运算模块计算s7=s6+s2,s7,s6,s2是子域GF(2n)的元素;In the eighth clock cycle, call the addition module to calculate s 7 =s 6 +s 2 , s 7 , s 6 , and s 2 are elements of the subfield GF(2 n );
令c(x)=chx+cl,ch=s7,cl=s5,ch,cl是子域GF(24)的元素,c(x)是复合域GF((24)2)的元素,c(x)是a(x)=ahx+al和b(x)=bhx+bl的乘法运算结果;控制器将c(x)输出至输出端口c。Let c(x)=ch x +c l , c h =s 7 , c l =s 5 , c h , c l are elements of the subfield GF(2 4 ), c(x) is the compound field GF( (2 4 ) 2 ), c(x) is the multiplication result of a(x)=a h x+a l and b(x)=b h x+b l ; the controller outputs c(x) to output port c.
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。The above-mentioned embodiment is a preferred embodiment of the present invention, but the embodiment of the present invention is not limited by the embodiment, and any other changes, modifications, substitutions and combinations made without departing from the spirit and principle of the present invention , simplification, all should be equivalent replacement methods, and are all included in the protection scope of the present invention.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810089913.3A CN108268243B (en) | 2018-01-30 | 2018-01-30 | Composite domain multiplication device based on search |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810089913.3A CN108268243B (en) | 2018-01-30 | 2018-01-30 | Composite domain multiplication device based on search |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108268243A true CN108268243A (en) | 2018-07-10 |
CN108268243B CN108268243B (en) | 2021-06-04 |
Family
ID=62777118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810089913.3A Active CN108268243B (en) | 2018-01-30 | 2018-01-30 | Composite domain multiplication device based on search |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108268243B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109358836A (en) * | 2018-10-22 | 2019-02-19 | 深圳职业技术学院 | A Table Structure-Based Composite Field Division Device |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080021947A1 (en) * | 2006-07-18 | 2008-01-24 | Amitabha Sinha | Triple-base number digital signal and numerical processing system |
CN101650644A (en) * | 2009-04-10 | 2010-02-17 | 北京邮电大学 | Galois field multiplying unit realizing device |
CN101860413A (en) * | 2009-01-27 | 2010-10-13 | 汤姆森许可贸易公司 | Network recoding method and device for recoding coded symbols |
CN106407400A (en) * | 2016-09-21 | 2017-02-15 | 中国科学院信息工程研究所 | A real-time summary generating method for streaming data |
CN106909339A (en) * | 2017-02-22 | 2017-06-30 | 深圳职业技术学院 | A kind of Galois field multiplier based on binary tree structure |
CN107015782A (en) * | 2017-04-12 | 2017-08-04 | 深圳职业技术学院 | A kind of Galois field multiplier based on irreducible trinomial |
-
2018
- 2018-01-30 CN CN201810089913.3A patent/CN108268243B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080021947A1 (en) * | 2006-07-18 | 2008-01-24 | Amitabha Sinha | Triple-base number digital signal and numerical processing system |
CN101860413A (en) * | 2009-01-27 | 2010-10-13 | 汤姆森许可贸易公司 | Network recoding method and device for recoding coded symbols |
CN101650644A (en) * | 2009-04-10 | 2010-02-17 | 北京邮电大学 | Galois field multiplying unit realizing device |
CN106407400A (en) * | 2016-09-21 | 2017-02-15 | 中国科学院信息工程研究所 | A real-time summary generating method for streaming data |
CN106909339A (en) * | 2017-02-22 | 2017-06-30 | 深圳职业技术学院 | A kind of Galois field multiplier based on binary tree structure |
CN107015782A (en) * | 2017-04-12 | 2017-08-04 | 深圳职业技术学院 | A kind of Galois field multiplier based on irreducible trinomial |
Non-Patent Citations (1)
Title |
---|
易海博: ""有限域运算和多变量公钥密码硬件的优化和设计"", 《中国博士学位论文全文数据库 信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109358836A (en) * | 2018-10-22 | 2019-02-19 | 深圳职业技术学院 | A Table Structure-Based Composite Field Division Device |
CN109358836B (en) * | 2018-10-22 | 2022-11-11 | 深圳职业技术学院 | A Table Structure-Based Composite Field Division Device |
Also Published As
Publication number | Publication date |
---|---|
CN108268243B (en) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chung et al. | A high-performance elliptic curve cryptographic processor over GF (p) with SPA resistance | |
CN103942028B (en) | Apply large integer multiplication operation method and device in cryptographic technique | |
Kudithi | An efficient hardware implementation of the elliptic curve cryptographic processor over prime field | |
CN103793199B (en) | A kind of fast rsa password coprocessor supporting dual domain | |
CN103942031A (en) | Elliptic domain curve operational method and elliptic domain curve arithmetic unit | |
CN102521211B (en) | Parallel device for solving linear equation set on finite field | |
CN114063973B (en) | Galois Field Multiplier and Erasure Codec System | |
CN107015782A (en) | A kind of Galois field multiplier based on irreducible trinomial | |
CN106445464A (en) | Compound finite domain multiplier based on heartbeat model | |
CN102184088B (en) | Method and device for realizing finite domain multiplication based on serial and parallel combination | |
CN107885486B (en) | A complex finite field inversion device based on search tree | |
US7958180B2 (en) | Multiplier engine | |
CN102253822B (en) | Modular (2<n>-3) multiplier | |
CN106909339A (en) | A kind of Galois field multiplier based on binary tree structure | |
CN108897526B (en) | Compound finite field inverter based on multiple square operations and inversion method thereof | |
CN108268243A (en) | A kind of compositum multiplier based on lookup | |
CN101630244A (en) | System and method of double-scalar multiplication of streamlined elliptic curve | |
CN112631546B (en) | High-performance modular multiplier based on KO-8 algorithm | |
KR101309797B1 (en) | Method for generating sparse w-NAF key, method for processing and method for encrypting thereof | |
JP3659320B2 (en) | Multiplication module, multiplication inverse element operation circuit, multiplication inverse element operation control system, device using the multiplication inverse element operation, encryption device, error correction decoder | |
CN103942027B (en) | A kind of fast parallel multiplier of restructural | |
Lee et al. | Efficient $ M $-ary exponentiation over $ GF (2^{m}) $ using subquadratic KA-based three-operand Montgomery multiplier | |
CN108008934B (en) | A lookup table based complex finite field inversion device | |
CN109358836B (en) | A Table Structure-Based Composite Field Division Device | |
CN102646033B (en) | Provide implementation method and the device of the RSA Algorithm of encryption and signature function |
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 | ||
CP03 | Change of name, title or address |
Address after: 518000 Xili street xilihu town xilihu bank, Nanshan District, Shenzhen City, Guangdong Province Patentee after: Shenzhen Vocational and Technical University Country or region after: China Address before: Shenzhen Vocational and Technical College Shahe West Road Nanshan District Shenzhen Guangdong Province Patentee before: SHENZHEN POLYTECHNIC Country or region before: China |