Binary Field Multiplication

18
1 1 1

Transcript of Binary Field Multiplication

Page 1: Binary Field Multiplication

1111

Page 2: Binary Field Multiplication

TOEPLITZ MATRIX APPROACH

FOR BINARY FIELD

MULTIPLICATION USING

QUADRINOMIALS

2222

UNDER THE GUIDENCE Dr. D SRIDHARAN,

Associate. Prof.Dept of ECE, CEG

ABY AUGUSTINE TOMM.E VLSI DESIGN

REG NO: 2011236001

Page 3: Binary Field Multiplication

CONTENTS

�BINARY FIELDBINARY FIELDBINARY FIELDBINARY FIELD

�MULTIPLICATION EXAMPLEMULTIPLICATION EXAMPLEMULTIPLICATION EXAMPLEMULTIPLICATION EXAMPLE

�SAMPLE OUTPUT IN MATLABSAMPLE OUTPUT IN MATLABSAMPLE OUTPUT IN MATLABSAMPLE OUTPUT IN MATLAB

BINARY FIELD MULTIPLICATION

�SAMPLE OUTPUT IN MATLABSAMPLE OUTPUT IN MATLABSAMPLE OUTPUT IN MATLABSAMPLE OUTPUT IN MATLAB

�BASE PAPER DESCRIPTIONBASE PAPER DESCRIPTIONBASE PAPER DESCRIPTIONBASE PAPER DESCRIPTION

3333

Page 4: Binary Field Multiplication

BINARY FIELDBINARY FIELDBINARY FIELDBINARY FIELD

�GF(2GF(2GF(2GF(2mmmm) ) ) ) Finite Field of binary polynomials.

�A(x) = a0x0 + a1x1 + a2x2 + … + am-2xm-2

+ am-1xm-1,

�ai = {0, 1}.

BINARY FIELD MULTIPLICATION

�ai = {0, 1}.

�GF(2GF(2GF(2GF(2mmmm) ) ) ) -Elements can take 2222mmmm different values .

� Maximal term in a number in GF(2GF(2GF(2GF(2mmmm)))) is xxxxmmmm----1111

�MATLAB code for generating Binary Field

gf8 = gf([0:7],3); % Galois vector in GF(2^3)4444

Page 5: Binary Field Multiplication

GF(8) BINARY FIELD m=3

IntegerRepresentation

BinaryRepresentation

Element of GF(8)

0 000 0

1 001 1

BINARY FIELD MULTIPLICATION

2 010 A

3 011 A + 1

4 100 A2

5 101 A2 + 1

6 110 A2 + A

7 111 A2 + A + 1 5555

Page 6: Binary Field Multiplication

BINARY FIELD conti…

�For each binary field, an irreducible

polynomial f(x)f(x)f(x)f(x) is defined

�f (x)f (x)f (x)f (x) = T(x) + xm,

BINARY FIELD MULTIPLICATION

�f (x)f (x)f (x)f (x) = T(x) + x ,

�T(x)T(x)T(x)T(x) = x0 + t1x1 + t2x2 + … + tm-2xm-2 + tm-

1xm-1

�All operations in GF(GF(GF(GF(2222mmmm)))) are performed

modulo f(x)f(x)f(x)f(x).

6666

Page 7: Binary Field Multiplication

PRIMITIVE POLYNOMIAL FOR A GF(2m)

�m = 4; % Or choose any positive integer

value of m.

�alph = gf(2,m) % Primitive element in

GF(2^m)

BINARY FIELD MULTIPLICATION

GF(2^m)

The output is

�alph = GF(2^4) array. Primitive Primitive Primitive Primitive

polynomial = D^4+D+1polynomial = D^4+D+1polynomial = D^4+D+1polynomial = D^4+D+1 (19 decimal)

7777

Page 8: Binary Field Multiplication

BINARY FIELD conti…

� ThereThereThereThere areareareare twotwotwotwo defineddefineddefineddefined operations,operations,operations,operations, namelynamelynamelynamely

additionadditionadditionaddition andandandand multiplicationmultiplicationmultiplicationmultiplication....

� ResultResultResultResult ofofofof addingaddingaddingadding orororor multiplyingmultiplyingmultiplyingmultiplying twotwotwotwo elementselementselementselements

fromfromfromfrom thethethethe fieldfieldfieldfield isisisis alwaysalwaysalwaysalways anananan elementelementelementelement inininin thethethethe fieldfieldfieldfield....

mmmm ==== 3333;;;;

BINARY FIELD MULTIPLICATION

mmmm ==== 3333;;;;

elselselsels ==== gfgfgfgf([([([([0000::::2222^m^m^m^m----1111]',m)]',m)]',m)]',m);;;;

multbmultbmultbmultb ==== elselselsels * els' % Multiply els by its own

matrix transpose.

� multb = GF(2^3) array. Primitive polynomial =

D^3+D+1 (11 decimal)8888

Page 9: Binary Field Multiplication

MODULO 11 MULTIPLICATION

0 0 0 0 0 0 0 0

0 1 2 3 4 5 6 7

0 2 4 6 3 1 7 5

BINARY FIELD MULTIPLICATION

012

0 1 2 3 4 5 6 70 1 2 3 4 5 6 70 1 2 3 4 5 6 70 1 2 3 4 5 6 7

0 2 4 6 3 1 7 5

0 3 6 5 7 4 1 2

0 4 3 7 6 2 5 1

0 5 1 4 2 7 3 6

0 6 7 1 5 3 2 4

0 7 5 2 1 6 4 39999

234567

Page 10: Binary Field Multiplication

INTRODUCTION TO ALGORITHM

� InInInIn thethethethe recentrecentrecentrecent past,past,past,past, subquadraticsubquadraticsubquadraticsubquadratic spacespacespacespace complexitycomplexitycomplexitycomplexity

multipliersmultipliersmultipliersmultipliers havehavehavehave beenbeenbeenbeen proposedproposedproposedproposed forforforfor binarybinarybinarybinary fieldsfieldsfieldsfields

defineddefineddefineddefined bybybyby irreducibleirreducibleirreducibleirreducible trinomialstrinomialstrinomialstrinomials andandandand somesomesomesome specificspecificspecificspecific

BINARY FIELD MULTIPLICATION

pentanomialspentanomialspentanomialspentanomials....

� ForForForFor suchsuchsuchsuch multipliers,multipliers,multipliers,multipliers, alternativealternativealternativealternative irreducibleirreducibleirreducibleirreducible

polynomialspolynomialspolynomialspolynomials cancancancan alsoalsoalsoalso bebebebe used,used,used,used, inininin particular,particular,particular,particular, nearlynearlynearlynearly allallallall

oneoneoneone polynomialspolynomialspolynomialspolynomials (NAOPs)(NAOPs)(NAOPs)(NAOPs) seemseemseemseem totototo bebebebe betterbetterbetterbetter thanthanthanthan

pentanomialspentanomialspentanomialspentanomials10

Page 11: Binary Field Multiplication

� ForForForFor improvedimprovedimprovedimproved efficiency,efficiency,efficiency,efficiency, multiplicationmultiplicationmultiplicationmultiplication modulomodulomodulomodulo anananan

NAOPNAOPNAOPNAOP isisisis performedperformedperformedperformed viaviaviavia modulomodulomodulomodulo aaaa quadrinomialquadrinomialquadrinomialquadrinomial

whosewhosewhosewhose degreedegreedegreedegree isisisis oneoneoneone moremoremoremore thanthanthanthan thatthatthatthat ofofofof thethethethe

originaloriginaloriginaloriginal NAOPNAOPNAOPNAOP

ForForForFor hardwarehardwarehardwarehardware implementationimplementationimplementationimplementation ofofofof certaincertaincertaincertain

BINARY FIELD MULTIPLICATION

INTRODUCTION TO ALGORITHM conti…

� ForForForFor hardwarehardwarehardwarehardware implementationimplementationimplementationimplementation ofofofof certaincertaincertaincertain

cryptosystems,cryptosystems,cryptosystems,cryptosystems, aaaa finitefinitefinitefinite----fieldfieldfieldfield multipliermultipliermultipliermultiplier cancancancan bebebebe oneoneoneone

ofofofof thethethethe mostmostmostmost spacespacespacespace demandingdemandingdemandingdemanding blocksblocksblocksblocks

� InInInIn orderorderorderorder totototo makemakemakemake suchsuchsuchsuch aaaa multipliermultipliermultipliermultiplier circuitcircuitcircuitcircuit----efficient,efficient,efficient,efficient,

lowlowlowlow weightweightweightweight irreducibleirreducibleirreducibleirreducible polynomialspolynomialspolynomialspolynomials areareareare usedusedusedused forforforfor

definingdefiningdefiningdefining thethethethe finitefinitefinitefinite fieldsfieldsfieldsfields11

Page 12: Binary Field Multiplication

INTRODUCTION TO ALGORITHM conti…

� ForForForFor anananan irreducibleirreducibleirreducibleirreducible polynomial,polynomial,polynomial,polynomial, withwithwithwith coefficientscoefficientscoefficientscoefficients

beingbeingbeingbeing 0000 andandandand 1111 only,only,only,only, thethethethe leastleastleastleast weightweightweightweight isisisis three,three,three,three, dodododo

notnotnotnot existexistexistexist forforforfor allallallall degreesdegreesdegreesdegrees

BINARY FIELD MULTIPLICATION

12

Page 13: Binary Field Multiplication

QUADRINOMIAL APPROACH

� Use a low weight composite, instead of Use a low weight composite, instead of Use a low weight composite, instead of Use a low weight composite, instead of

irreducibleirreducibleirreducibleirreducible

� Reduce the circuit requirement of the Reduce the circuit requirement of the Reduce the circuit requirement of the Reduce the circuit requirement of the

multipliermultipliermultipliermultiplier

PastPastPastPast----Composite binomials of the form X^n+1 Composite binomials of the form X^n+1 Composite binomials of the form X^n+1 Composite binomials of the form X^n+1

BINARY FIELD MULTIPLICATION

� PastPastPastPast----Composite binomials of the form X^n+1 Composite binomials of the form X^n+1 Composite binomials of the form X^n+1 Composite binomials of the form X^n+1

� ForForForFor reducedreducedreducedreduced redundancy,redundancy,redundancy,redundancy, suchsuchsuchsuch aaaa binomialbinomialbinomialbinomial isisisis

chosenchosenchosenchosen totototo bebebebe thethethethe productproductproductproduct ofofofof X+X+X+X+1111 andandandand anananan

irreducibleirreducibleirreducibleirreducible allallallall----oneoneoneone polynomialpolynomialpolynomialpolynomial (AOP)(AOP)(AOP)(AOP)

� TheTheTheThe multiplicationmultiplicationmultiplicationmultiplication ofofofof X+X+X+X+1111 andandandand anananan NAOPNAOPNAOPNAOP resultsresultsresultsresults

inininin aaaa polynomialpolynomialpolynomialpolynomial ofofofof weightweightweightweight fourfourfourfour 13

Page 14: Binary Field Multiplication

SELECTED IRREDUCIBLE NAOPS OF DEGREE mBINARY FIELD MULTIPLICATION

14

Page 15: Binary Field Multiplication

SEQUENTIAL MULTIPLIER WITH SERIAL OUTPUTSEQUENTIAL MULTIPLIER WITH SERIAL OUTPUTSEQUENTIAL MULTIPLIER WITH SERIAL OUTPUTSEQUENTIAL MULTIPLIER WITH SERIAL OUTPUT

…….. ……

XOR TREEXOR TREEXOR TREEXOR TREE

b’l2b’n-1 b’0 b’l1-1 b’l1 b’l2-1

15

an-1 al2 al2-1 al1 al1-1 a0

……..

…….. ……..

…….. ……

……..

Page 16: Binary Field Multiplication

REFERENCE

� IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS,

VOL. 20, NO. 3, MARCH 2012 449 Toeplitz Matrix Approach for Binary Field

Multiplication Using Quadrinomials . M. Anwar Hasan, Ashkan Hosseinzadeh

Namin, and Christophe Negre

� O. Ahmadi and A. Menezes, “Irreducible polynomials of maximum weight,”

Utilitas Math., vol. 72, pp. 111–123, 2007..

� W. Diffie and M. E. Hellman, “New directions in cryptography,” IEEE Trans.

Inf.Theory, vol. 24, no. 6, pp. 644–654, Nov. 1976.

BINARY FIELD MULTIPLICATION

Inf.Theory, vol. 24, no. 6, pp. 644–654, Nov. 1976.

� C. Doche, “Redundant trinomials for finite fields of characteristic 2,” in Proc.

ACISP, 2005, pp. 122–133.

� H. Fan and M. A. Hasan, “A new approach to sub-quadratic space complexity

parallel multipliers for extended binary fields,” IEEE Trans.Comput., vol. 56, no.

2, pp. 224–233, Sep. 2007.

� M. A. Hasan and C. Negre, “Subquadratic space complexity multiplier for a class

of binary fields using toeplitz matrix approach,” in Proc. 19th IEEE Symp.

Comput. Arithmet. (ARITH19), Jun. 2009, pp. 67–75.

16

Page 17: Binary Field Multiplication

17171717

Page 18: Binary Field Multiplication

18181818