CN102902510A - 一种有限域求逆器 - Google Patents

一种有限域求逆器 Download PDF

Info

Publication number
CN102902510A
CN102902510A CN2012102757337A CN201210275733A CN102902510A CN 102902510 A CN102902510 A CN 102902510A CN 2012102757337 A CN2012102757337 A CN 2012102757337A CN 201210275733 A CN201210275733 A CN 201210275733A CN 102902510 A CN102902510 A CN 102902510A
Authority
CN
China
Prior art keywords
node
tree
search tree
input
finite field
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012102757337A
Other languages
English (en)
Other versions
CN102902510B (zh
Inventor
唐韶华
易海博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN201210275733.7A priority Critical patent/CN102902510B/zh
Priority to PCT/CN2012/085948 priority patent/WO2014026451A1/zh
Priority to US14/236,336 priority patent/US9389835B2/en
Priority to EP12879153.0A priority patent/EP2735963B1/en
Publication of CN102902510A publication Critical patent/CN102902510A/zh
Application granted granted Critical
Publication of CN102902510B publication Critical patent/CN102902510B/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
    • 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
    • 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/74Selecting or encoding within a word the position of one or more bits having a specified value, e.g. most or least significant one or zero detection, priority encoders

Landscapes

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

Abstract

本发明公开了一种有限域求逆器,包括输入端口、输出端口和用于执行运算数a(x)在有限域GF(2n)上基于查找树结构的求逆运算的查找树求逆单元;查找树求逆单元设有左查找树和右查找树;左查找树和右查找树均包括用于处理有限域GF(2n)上的求逆运算的树节点和树节点之间的连线,树节点包括根节点、内部节点和叶子节点,每一条从根节点到一个叶子节点的路径表示有限域GF(2n)上的一个元素;所述树节点之间的连线将表示运算数a(x)的路径与表示求逆结果b(x)的路径连接起来。本发明通过查找树求逆单元实现了有限域上的元素的求逆运算,在计算有限域GF(2n)上的求逆运算时相对于现有的有限域求逆器更为高效。

Description

一种有限域求逆器
技术领域
本发明涉及一种对有限域的元素进行求逆的装置。
背景技术
有限域是仅含有限多个元素的域,广泛地运用于各种工程领域。目前,有限域的求逆运算大致可以分为四类:基于费马定理的求逆运算,基于扩展欧几里德定理的求逆运算,基于蒙哥马利算法的求逆运算和基于查找表技术的求逆运算。
有限域的各类运算被有效地运用于各种密码应用和编码技术中。有效的有限域的求逆运算的设计,对于密码算法的实现,起着至关重要的作用。现有技术中存在的多种公知的有限域的求逆器,包括软件求逆器和硬件求逆器,均存在着不足之处,例如性能指标达不到高速度、小面积和低功耗的要求。
发明内容
为了克服现有技术的不足,本发明的目的在于提供一种有限域求逆器,利用查找树结构对有限域的元素进行求逆,在计算有限域GF(2n)上的求逆运算时相对于现有的有限域求逆器更为高效,具有高速度、小面积和低功耗的特点。
本发明的目的通过以下技术方案实现:一种有限域求逆器,包括:
输入端口,用于输入运算数a(x);
查找树求逆单元,用于执行运算数a(x)在有限域GF(2n)上基于查找树结构的求逆运算;
输出端口,用于输出运算数a(x)的求逆结果b(x);
所述查找树求逆单元设有左查找树和右查找树;左查找树和右查找树均包括用于处理有限域GF(2n)上的求逆运算的树节点和树节点之间的连线,树节点包括根节点、内部节点和叶子节点,每一条从根节点到一个叶子节点的路径表示有限域GF(2n)上的一个元素;所述树节点之间的连线将表示运算数a(x)的路径与表示求逆结果b(x)的路径连接起来。
所述查找树求逆单元中,运算数a(x)由根节点到一个叶子节点n1的路径表示,求逆结果b(x)由根节点到一个叶子节点n2的路径表示,所述连线设置在叶子节点n1和叶子节点n2之间。
所述查找树求逆单元中,树节点包括NXOR逻辑门、AND逻辑门以及数据选择器MUX;NXOR逻辑门的一个输入为运算数a(x)的比特数值,另一个输入为i2;AND逻辑门的一个输入为i0,另外一个输入为NXOR逻辑门的输出;数据选择器MUX设有数据输入i2、来自其孩子节点的选通输入i3、求逆输出o2及传输给其父节点的输出o3;当树节点为根节点时,i0为1;当树节点为内部节点或叶子节点,且为左孩子节点时,i2=0;当树节点为内部节点或叶子节点,且为右孩子节点时,i2=1;当树节点为根节点或内部节点时,AND逻辑门将逻辑与运算结果输出给其孩子节点;当树节点为叶子节点时,AND逻辑门将逻辑与运算结果输出给与其连接的叶子节点;左查找树的根节点i2=0,右查找树的根节点i2=1。
所述运算数a(x)和求逆结果b(x)具有如下形式:
a(x)=an-1xn-1+an-2xn-2+...+a0
b(x)=bn-1xn-1+bn-2xn-2+...+b0
与现有技术相比,本发明具有以下优点和技术效果:
本发明通过查找树的结构实现了有限域的求逆运算,在计算GF(2n)上的求逆运算上相对于现有的有限域求逆器有着明显的高速度、小面积及低功耗的优势,并可以广泛运用于各种工程领域,特别是密码算法的硬件实现和各种数学问题的求解中。
附图说明
图1为本发明的实施例的有限域求逆器的结构示意图。
图2为本发明的实施例的查找树求逆单元的结构示意图。
图3为本发明的实施例的各类树节点的结构示意图。
图4为本发明的实施例的查找树求逆单元用于查找所需求逆的有限域元素的结构示意图。
图5为本发明的实施例的查找树求逆单元用于查找有限域元素的逆的结构示意图。
具体实施方式
下面结合实施例及附图,对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例
如图1所示,本发明的有限域求逆器包括输入端口、输出端口和查找树单元。
下面分别对本发明的求逆器的各组成部分做详细介绍:
(1)输入端口:如图1所示,本发明的实施例的求逆器的输入端口用于输入运算数a(x)。
a(x)可以表示为以下形式:
a(x)=an-1xn-1+an-2xn-2+...+a0
其中an-1,an-2,2,...,a0均是GF(2)上的元素。
(2)输出端口:如图1所示,输出端口用于输出求解有限域元素a(x)的逆b(x)。
b(x)可以表示为以下形式:
b(x)=bn-1xn-1+bn-2xn-2+...+b0
其中bn-1,bn-2,...,b0均是GF(2)上的元素。
(3)查找树单元:查找树单元作为求逆器的主要的部件,是本发明的核心部件,包括多个树节点以及节点之间的连线等。
如图2所示,所有树节点除了叶子节点均有左孩子节点和右孩子节点,左孩子节点的数值为0,右孩子节点的数值为1。每一条从根节点到一个叶子节点的路径代表一个有限域GF(2n)上的元素。如果一个有限域GF(2n)上的元素a(x)是由根节点到一个叶子节点n1的路径表示,并且a(x)的逆是由根节点到一个叶子节点n2的路径表示,那么叶子节点n1和叶子节点n2之间有一条连线。
如图3所示,查找树结构的树节点包括三类树节点,图3(1)、图3(2)、图3(3)分别是根节点、内部节点和叶子节点。三类树节点的内部电路都是一样的,均包括两个逻辑门,即NXOR和AND逻辑门,以及数据选择器MUX。
i1和i2是NXOR的两个输入,i1=ai,i2=0/1;AND的一个输入i0是来自其父亲节点的输出,另一个输入是NXOR的输出;o1=o2是AND的输出,直接输出到此节点的左右孩子节点。如果树节点是左孩子节点,那么NXOR的两个输入分别是ai和0;否则,NXOR的两个输入分别是ai和1。根据如图3所示,有如下逻辑表示,o0=(NOT(i1 XOR i2))AND i0,o1=(NOT(i1 XOR i2))AND i0
三类树节点所不同的是输入输出端口。例如,在根节点中,i0=1,i1=an-1,i2=0/1,an-1是有限域元素a(x)的第n-1个比特的数值,NXOR逻辑门将a(x)的第n-1个比特的数值an-1与另一输入i2进行逻辑运算后,将运算结果输入到AND逻辑门的一个输入端,AND逻辑门将所述运算结果与1进行逻辑与运算后,将逻辑与运算结果分别输出给根节点的左孩子和右孩子;在内部节点中,i1=ai,i2=0/1,ai是有限域元素a(x)的第i个比特的数值,NXOR逻辑门将a(x)的第i个比特的数值ai与另一输入i2进行逻辑运算后,将运算结果输入到AND逻辑门的一个输入端,AND逻辑门将所述运算结果与来自该内部节点的父节点的输出i0进行逻辑与运算后,将逻辑与运算结果分别输出给该内部节点的左孩子和右孩子;在叶子节点中,i1=a0,i2=0/1,a0是有限域元素a(x)的第0个比特的数值,NXOR逻辑门将a(x)的第0个比特的数值a0与另一输入i2进行逻辑运算后,将运算结果输入到AND逻辑门的一个输入端,AND逻辑门将所述运算结果与来自该叶子节点的父节点的输出i0进行逻辑与运算后,将逻辑与运算结果输出给与其相连接的叶子节点。当树节点是左孩子节点时,i2=0;当树节点是右孩子节点时,i2=1。本发明包括左查找树和右查找树两棵查找树,左查找树的根节点i2=0,右查找树的根节点i2=1。
数据选择器MUX定义如下:i2是数据输入和i3是选通输入,i3是来自此节点的孩子节点的输入;o2和o3是输出,o2是输出到求逆器的输出端口,即b(x)的一部分,o3输出到此节点的父亲节点。有o3=i3;而且仅当i3=1时,o2=i2,即当来自该节点的孩子节点的输出为1时,求逆器在该节点的输出结果为NXOR逻辑门的输入i2
下面以n=4为例说明本发明的求逆器的工作过程。
首先,如图4所示,找出哪一条路径代表需要求逆的有限域元素a(x)。
假设需要求逆的元素a(x)=x,二进制表示形式即(0010)2。由于an-1=n1=1,所以n1节点在正确的路径上,AND逻辑门输出的值为1并送到左、右孩子节点中。在n2节点中,由于i1=0,i2=0,i0=1,所以AND逻辑门输出为1,并送到左、右孩子节点中,即n2节点也在正确的路径上。用同样的方法可以得到n3节点和n4节点均在正确的路径上,所以路径n1到n4即代表(0010)2,也就是a(x)。由于n4节点连着n5节点,所以n4节点的AND逻辑门输出送到n5节点。即a(x)存在有限域上的逆。
其次,如图5所示,找出哪一条路径代表需要求逆的有限域元素a(x)的逆b(x)。
由于n4节点连着n5节点,所以n4节点的输出数值1,送到n5节点。n5节点可以直接把数值1传输到其父亲节点n6节点,以及祖先节点n7节点和n8节点。同时,n5节点、n6节点、n7节点和n8节点把内部的数值(即NXOR逻辑门的输入i2)输出到输出端口,即b(x)。所以,b(x)即是a(x)的逆。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (6)

1.一种有限域求逆器,其特征在于,包括:
输入端口,用于输入运算数a(x);
查找树求逆单元,用于执行运算数a(x)在有限域GF(2n)上基于查找树结构的求逆运算;
输出端口,用于输出运算数a(x)的求逆结果b(x);
所述查找树求逆单元设有左查找树和右查找树;左查找树和右查找树均包括用于处理有限域GF(2n)上的求逆运算的树节点和树节点之间的连线,树节点包括根节点、内部节点和叶子节点,每一条从根节点到一个叶子节点的路径表示有限域GF(2n)上的一个元素;所述树节点之间的连线将表示运算数a(x)的路径与表示求逆结果b(x)的路径连接起来。
2.根据权利要求1所述的有限域求逆器,其特征在于,所述查找树求逆单元中,运算数a(x)由根节点到一个叶子节点n1的路径表示,求逆结果b(x)由根节点到一个叶子节点n2的路径表示,所述连线设置在叶子节点n1和叶子节点n2之间。
3.根据权利要求1所述的有限域求逆器,其特征在于,所述根节点和内部节点均有左孩子节点和右孩子节点,左孩子节点的数值为0,右孩子节点的数值为1。
4.根据权利要求2所述的有限域求逆器,其特征在于,所述查找树求逆单元的树节点采用逻辑门电路实现。
5.根据权利要求4所述的有限域求逆器,其特征在于,所述查找树求逆单元中,树节点包括NXOR逻辑门、AND逻辑门以及数据选择器MUX;NXOR逻辑门的一个输入为运算数a(x)的比特数值,另一个输入为i2;AND逻辑门的一个输入为i0,另外一个输入为NXOR逻辑门的输出;数据选择器MUX设有数据输入i2、来自其孩子节点的选通输入i3、求逆输出o2及传输给其父节点的输出o3;当树节点为根节点时,i0为1;当树节点为内部节点或叶子节点,且为左孩子节点时,i2=0;当树节点为内部节点或叶子节点,且为右孩子节点时,i2=1;当树节点为根节点或内部节点时,AND逻辑门将逻辑与运算结果输出给其孩子节点;当树节点为叶子节点时,AND逻辑门将逻辑与运算结果输出给与其连接的叶子节点;左查找树的根节点i2=0,右查找树的根节点i2=1。
6.根据权利要求1所述的有限域求逆器,其特征在于,所述运算数a(x)和运算数b(x)具有如下形式:
a(x)=an-1xn-1+an-2xn-2+...+a0
b(x)=bn-1xn-1+bn-2xn-2+...+b0
CN201210275733.7A 2012-08-03 2012-08-03 一种有限域求逆器 Active CN102902510B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201210275733.7A CN102902510B (zh) 2012-08-03 2012-08-03 一种有限域求逆器
PCT/CN2012/085948 WO2014026451A1 (zh) 2012-08-03 2012-12-05 一种有限域求逆器
US14/236,336 US9389835B2 (en) 2012-08-03 2012-12-05 Finite field inverter
EP12879153.0A EP2735963B1 (en) 2012-08-03 2012-12-05 Galois field inversion device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210275733.7A CN102902510B (zh) 2012-08-03 2012-08-03 一种有限域求逆器

Publications (2)

Publication Number Publication Date
CN102902510A true CN102902510A (zh) 2013-01-30
CN102902510B CN102902510B (zh) 2016-04-13

Family

ID=47574759

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210275733.7A Active CN102902510B (zh) 2012-08-03 2012-08-03 一种有限域求逆器

Country Status (4)

Country Link
US (1) US9389835B2 (zh)
EP (1) EP2735963B1 (zh)
CN (1) CN102902510B (zh)
WO (1) WO2014026451A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107797790A (zh) * 2017-11-03 2018-03-13 深圳职业技术学院 一种基于全一不可约多项式的有限域求逆器
CN107885486A (zh) * 2017-12-04 2018-04-06 深圳职业技术学院 一种基于查找树的复合有限域求逆装置
CN108874367A (zh) * 2018-06-29 2018-11-23 深圳职业技术学院 一种基于乘方运算的复合有限域求逆器及其求逆方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6138133A (en) * 1998-02-06 2000-10-24 Samsung Electronics Co., Ltd. Circuit for calculating the inverse of an arbitrary element of a finite field
CN101572602A (zh) * 2008-04-28 2009-11-04 陈婧 一种基于硬件设计的有限域求逆的方法及装置
US20100306299A1 (en) * 2009-06-02 2010-12-02 Itt Manufacturing Enterprises, Inc. Circuits and Methods for Performing Exponentiation and Inversion of Finite Field Elements

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4975867A (en) 1987-06-26 1990-12-04 Digital Equipment Corporation Apparatus for dividing elements of a Galois Field GF (2QM)
US6862354B1 (en) * 2000-09-29 2005-03-01 Cisco Technology, Inc. Stream cipher encryption method and apparatus that can efficiently seek to arbitrary locations in a key stream
US6779011B2 (en) 2001-02-28 2004-08-17 Maxtor Corporation System for performing multiplication and division in GF(22M)
JP4328487B2 (ja) * 2002-01-28 2009-09-09 インターナショナル・ビジネス・マシーンズ・コーポレーション 組合せ回路、暗号回路、その生成方法及びプログラム
US20030219118A1 (en) 2002-05-23 2003-11-27 Beverly Harlan T. Optimized multiplicative inverse
US7451310B2 (en) * 2002-12-02 2008-11-11 International Business Machines Corporation Parallelizable authentication tree for random access storage
US8904171B2 (en) * 2011-12-30 2014-12-02 Ricoh Co., Ltd. Secure search and retrieval

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6138133A (en) * 1998-02-06 2000-10-24 Samsung Electronics Co., Ltd. Circuit for calculating the inverse of an arbitrary element of a finite field
CN101572602A (zh) * 2008-04-28 2009-11-04 陈婧 一种基于硬件设计的有限域求逆的方法及装置
US20100306299A1 (en) * 2009-06-02 2010-12-02 Itt Manufacturing Enterprises, Inc. Circuits and Methods for Performing Exponentiation and Inversion of Finite Field Elements

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107797790A (zh) * 2017-11-03 2018-03-13 深圳职业技术学院 一种基于全一不可约多项式的有限域求逆器
CN107885486A (zh) * 2017-12-04 2018-04-06 深圳职业技术学院 一种基于查找树的复合有限域求逆装置
CN107885486B (zh) * 2017-12-04 2021-09-07 深圳职业技术学院 一种基于查找树的复合有限域求逆装置
CN108874367A (zh) * 2018-06-29 2018-11-23 深圳职业技术学院 一种基于乘方运算的复合有限域求逆器及其求逆方法
CN108874367B (zh) * 2018-06-29 2022-05-13 深圳职业技术学院 一种基于乘方运算的复合有限域求逆器及其求逆方法

Also Published As

Publication number Publication date
EP2735963B1 (en) 2019-10-23
US20150067011A1 (en) 2015-03-05
EP2735963A1 (en) 2014-05-28
EP2735963A4 (en) 2015-04-01
US9389835B2 (en) 2016-07-12
CN102902510B (zh) 2016-04-13
WO2014026451A1 (zh) 2014-02-20

Similar Documents

Publication Publication Date Title
Ding The weight distribution of some irreducible cyclic codes
Shamsujjoha et al. A low power fault tolerant reversible decoder using mos transistors
Srivastava et al. A hybrid design for high performance large-scale sorting on FPGA
CN102521211B (zh) 一种求解有限域上线性方程组的并行装置
Rashidi et al. Efficient and low‐complexity hardware architecture of Gaussian normal basis multiplication over GF (2m) for elliptic curve cryptosystems
Xie et al. High-throughput finite field multipliers using redundant basis for FPGA and ASIC implementations
CN102902510B (zh) 一种有限域求逆器
WO2018204898A1 (en) Fast binary counters based on symmetric stacking and methods for same
Ghadiry et al. DLPA: Discrepant low PDP 8-bit adder
CN102130744B (zh) 计算循环冗余校验码的方法和装置
CN107885486A (zh) 一种基于查找树的复合有限域求逆装置
Rashidi et al. Efficient Implementation of Low Time Complexity and Pipelined Bit-Parallel Polynomial Basis Multiplier over Binary Finite Fields.
Cilardo Modular inversion based on digit‐level speculative addition
Rashidi et al. Full‐custom hardware implementation of point multiplication on binary edwards curves for application‐specific integrated circuit elliptic curve cryptosystem applications
Sghaier et al. Fast Constant-Time Modular Inversion over F p Resistant to Simple Power Analysis Attacks for IoT Applications
Rashidi et al. High-speed and pipelined finite field bit-parallel multiplier over GF (2 m) for elliptic curve cryptosystems
Shekhawat et al. Low power magnitude comparator circuit design
Shirakol et al. Design and implementation of 16-bit carry skip adder using efficient low power high performance full adders
Kamuti Cycle index of internal direct product groups
Chowdhury et al. Formulation and design of useful logic gates using quaternary algebra
Verma et al. Design & analysis of low power, area-efficient carry select adder
Cai et al. A configurable nonlinear operation unit for neural network accelerator
Sun et al. Design of scalable hardware architecture for dual-field montgomery modular inverse computation
Kamio et al. Procedures for Multiple Input Functions with DNA Strands (Evolutionary Advancement in Fundamental Theories of Computer Science)
Pandey et al. Efficient Design and Implementation of DFA Based Pattern Matching on Hardware

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant