Arithmetic Architectures for Finite Fields m GF (p ) with Cryptographic Applications DISSERTATION zur Erlangung des Grades eines Doktor-Ingenieurs der Fakulta¨t fu¨r Elektrotechnik und Informationstechnik an der Ruhr-Universita¨t Bochum von Jorge Guajardo Merchan aus Caracas, Venezuela Bochum, 2004 Copyright (cid:13)c 2004JorgeGuajardoMerchan. AllRightsReserved. TheauthorherebygrantstotheRuhr-Universita¨tBochumpermissiontoreproduceanddistrib- utepubliclypaperandelectroniccopiesofthisthesisdocumentinwholeorinpart. Theauthor [email protected] Dissertationsubmittedon: May20th,2004 Dissertationdefendedon: July16th,2004 DissertationAdvisor: Prof. Dr.-Ing. ChristofPaar DissertationReader: Prof. Dr. ColinD.Walter To the memory of my father, Jorge Guajardo Plantamura (1929–1997), To my mother and sister who always have supported me, and to my loves, Kathy and Matteo. Dissertation Abstract Finite fields are essential building blocks of many cryptographic schemes. Traditionally, crypto- graphicapplicationsdevelopedonhardwarehavetriedtotakeadvantageoftheeaseofimplementation offieldsoftheformGF(2n)toreducecostsandincreaseperformance. Inrecentyears,however,there hasbeenarenewedinterestontheimplementationofcryptographicsystemsbasedonoddcharacteristic finite fields GF(pm), p a prime, which have found applications in areas such as elliptic curve cryptog- raphy,identity-basedencryption,andshortsignatureschemes,tonameafew. Thereareseveralreasons why these fields have become attractive. First, they provide for greater diversity at the time of imple- mentationandthisisdirectedrelatedtosecurity. Forexample,certainattackswhichhavebeenshownto besuccessfulagainstellipticcurvesdefinedovercompositebinaryfieldsGF((2n)m)maynotcarryover to elliptic curves defined over GF((pn)m) where p is an odd prime. Thus, by considering alternative implementationoptions,weare,inaway,safeguardingagainstfutureattacks. Second,andperhapsmore appealingtothepractitioner,incertaincasesfieldsofoddcharacteristicofferadvantages,suchasshorter signature sizes, which simply can not be achieved with fields of characteristic two. Thus, the need to providehardwarearchitecturesfortheirefficientimplementation. Wetacklethisprobleminthisthesis. Inparticular,wefocusontheimplementationofhardwarearchitecturesforaddition,multiplication,and inversioninfieldsGF(pm). The first part of the dissertation surveys previous architectures used to implement addition and mul- tiplication over GF(p) as such operations are the basic building blocks used to implement GF(pm) multipliers. WemakeparticularemphasisonarchitecturesforsmallGF(p)fieldswherep < 32. Atthe end of this section, we propose a new method to design GF(p) multipliers which can achieve up to a 30%improvementoverpreviousarchitectures. Forcompleteness,wealsosurveypreviousarchitectures forlargeGF(p)fieldssuchasthoseusedinDL-basedandRSA-basedsystems. The second part of this thesis is concerned with multiplier architectures for fields GF(pm). We generalize architectures originally proposed for fields GF(2n) to the odd characteristic case. Both Least Significant Digit (LSD) multiplier architectures and Most Significant Digit (MSD) architectures are introduced and their time and area complexities compared. We implemented an arithmetic unit for GF(3m) fields on an FPGA and compared its performance to previous implementations and to our theoreticalcomplexitymodelswhichagreewithourpracticalresults. Inaddition,weprovideathorough treatment of the cubing operation in fields of characteristic three and propose irreducible polynomials which reduce both the complexity of the multiplier and the cubing unit. In the appendix, we provide exhaustivelistsofirreducibletrinomialsoverGF(3). AlthoughLSDandMSDmultiplierarchitectures allow the designer to trade area and performance according to his/her needs, these architectures suffer fromseveraldrawbacks: theyuseglobalsignalsandtheyarenotveryregular,thusnotverysuitablefor VLSI systems. As a result, we developed systolic designs for GF(pm) fields based on our previously proposed LSD multipliers. In addition, for fixed p, we incorporate the notion of scalability, which has been extensively studied in the context of GF(2n) and GF(p) based systems. Here by scalability we mean the ability to process fields GF(pm), for constant p and different values of m without recurring to changing the hardware or to reconfigurability, as in the case of FPGAs. We implemented the basic cell of an LSD-based systolic multiplier on 0.18µm CMOS technology and provided time and area complexities. Finally, we tackle the problem of inversion in fields GF(qm), q = pn, by giving a generalization of theItohandTsujiiinversionalgorithmtofieldsofoddcharacteristicandastandardbasisrepresentation. Weintroducefamiliesofirreduciblepolynomialswhichreducethecomplexityofexponentiatingtothe ii DissertationAbstract q-thpowerwhereq = pn andpisthefieldcharacteristic. Byreducingthecomplexityofthisoperation, wealsoreducetheoveralltimerequiredtocomputeaninverseinGF(qm). Kurzdarstellung der Dissertation EndlicheKo¨rpersindeinwesentlicherBestandteilkryptographischerVerfahren. Konventionellekryp- tographischeAnwendungeninHardwarebenutzenBina¨rko¨rperGF(2n)umdenRechenaufwandzure- duzierenunddieRechengeschwindigkeitzusteigern. IndenvergangenenJahrenhabenjedochendlichen Ko¨rper ungerader Charakteristik GF(pm), wobei p eine Primzahl ist, stark an Bedeutung gewonnen. EinsatzgebietedieserKo¨rpersindbeispielsweisekryptographischeVerfahrenbasierendaufelliptischen Kurven, identita¨tsbezogene Verschlu¨sselung sowie kurze digitale Signaturen. Die Gru¨nde fu¨r das In- teresse an diesen Ko¨rpern sind vielseitig. Einerseits stellen sie einen wichtigen zusa¨tzlichen System- parameter dar, welcher sich direkt auf die kryptographische Sicherheit auswirkt. Beispielsweise sind bestimmte Angriffe gegen kryptographische Verfahren basierend auf elliptischen Kurven, welche u¨ber Bina¨rko¨rpern definiert sind, u¨ber Erweiterungsko¨rpern mit ungerader Charakteristik mo¨glicherweise nichterfolgreich. AndererseitsweisendieseKo¨rperinbestimmtenFa¨llenpraktischeVorteilegegenu¨ber Bina¨rko¨rpern auf. So ko¨nnen z.B. basierend auf diesen Ko¨rpern ku¨rzere digitale Signaturen erzeugt werden. Um eine effiziente Implementierung zu gewa¨hrleisten, ist die Entwicklung geeigneter Hard- warearchitekturenunabdingbar. DieseDissertationbescha¨ftigtsichmitdemEntwurfsolcherArchitek- turen. Insbesondere werden Implementierungen von Hardwarearchitekturen fu¨r Addition, Multiplika- tionundInversioninKo¨rpernGF(pm)entwickelt. Der erste Teil der Dissertation untersucht bereits bekannte Architekturen fu¨r Addition und Multip- likation in Ko¨rpern GF(p), welche als grundlegende Funktionsbausteine fu¨r die Implementierung von Multiplizierern in GF(pm) dienen. Insbesondere stehen Architekturen fu¨r kleine Ko¨rper GF(p) mit p < 32,imMittelpunkt. AmEndediesesAbschnittswirdeineneueMethodefu¨rdenEntwurfvonMul- tiplizierern vorgestellt, welche bis zu 30% effizienter als bisherige Multiplizierer sind. Die U¨bersicht umfasst auch Architekturen fu¨r große Ko¨rper GF(p), wie sie in DL-basierten und RSA-basierten Sys- temeneingesetztwerden. Der zweite Teil der Arbeit behandelt Architekturen fu¨r Multiplizierer fu¨r Ko¨rper GF(pm). Die fu¨r die Multiplikation in Ko¨rpern GF(2n) vorgeschlagenen Architekturen werden fu¨r den Fall ungerader Charakteristik verallgemeinert. Es werden die Strukturen der LSD- (Least Significant Digit) und der MSD- (Most Significant Digit) Multiplizierer vorgestellt und deren Aufwand bezu¨glich Fla¨che und Laufzeitverglichen. SchließlichwirddieRealisierungeinerArithmetikeinheitfu¨rKo¨rperGF(3m)auf einemFPGAbeschreibenundderenMerkmalemitbekanntenImplementierungenverglichen. Beidem VergleichmitdemtheoretischhergeleitetenKomplexita¨tsmodellisteinegrundlegendeU¨bereinstimmung zu verzeichnen. Des Weiteren wird eine sorgfa¨ltige Analyse von Cubing-Einheiten in Ko¨rpern der CharakteristikDreidurchgefu¨hrtundirreduziblesPolynomevorgestellt,welchesowohldieKomplexita¨t des Multiplizierers als auch die der Cubing-Einheit reduzieren. Obwohl die Architekturen von LSD- undMSD-MultipliziererndemAnwenderdieWahlderFla¨cheundDurchsatzrateerlauben,leidendiese Architekturen an Einschra¨nkungen: Es werden globale und unregelma¨ßige Verbindungen verwendet, welchefu¨rVLSI-Implementierungennichtwu¨nschenswertsind. AusdiesemGrundwirdeinesystolis- che Architektur fu¨r Ko¨rper GF(pm) basierend auf den existierenden Ansa¨tzen fu¨r LSD-Multiplizierer vorgestellt. Fu¨r festes p wird zusa¨tzlich noch der Begriff der Skalierbarkeit beru¨cksichtigt, welcher im Kontext von GF(2n) und GF(p) basierten Architekturen in der Literatur detailliert untersucht wurde. MitSkalierbarkeitisthierdieMo¨glichkeitgemeint,inKo¨rpernGF(pm)mitverschiedenenWertenmzu rechnen,ohneA¨nderungenanderHardwareoder,imFallvonFPGAs,Rekonfigurationenvornehmenzu mu¨ssen. DiegrundlegendeStruktureinesLSD-basiertensystolischenMultipliziererswurdefu¨r0.18µm CMOSTechnologieentworfenunddessenZeit-undFla¨chenaufwanddargestellt. iv KurzdarstellungderDissertation Schließlich wird das Problem der Inversion in Ko¨rpern GF(qm), q = pn, durch eine Verallge- meinerung des Inversions-Algorithmus von Itoh und Tsujii fu¨r Ko¨rper allgemeiner Charakteristik und Polynomialbasen-Repra¨sentation gelo¨st. Es werden Familien von irreduziblen Polynomen zur Reduk- tion des Aufwands von Exponentiationen mit Potenzen q = pn vorgestellt, wobei p die Charakteristik desKo¨rpersist. DurchdieReduktionderKomplexita¨tdieserOperationwirdauchdiegesamtebeno¨tigte ZeitzurBerechnungeinerInverseninGF(qm)verringert. Contents ListofTables ix ListofFigures xi ListofAlgorithms xiii Preface xv 1 Introduction 1 1.1 HardwareComplexityConsiderations . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 SummaryofResearchContributionsandDissertationOutline . . . . . . . . . . . . . . . 6 1.3 NotesandFurtherReferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2 MathematicalBackground 9 2.1 Groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.2 RingsandFields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.3 PolynomialRings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.4 ConstructionofFiniteFieldsGF(pm) . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.5 Polynomial,Normal,andDualBases . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.6 IrreduciblePolynomials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.6.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.6.2 IrreducibleBinomials. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.6.3 IrreducibleTrinomials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.6.4 IrreducibleAOPsandESPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 2.7 NotesandFurtherReferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3 ArchitecturesforArithmetic inSmallGF(p)Fields 33 3.1 IntegerAdders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.1.1 Ripple-CarryAdders(RCA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 3.1.2 Carry-LookaheadAdders(CLA) . . . . . . . . . . . . . . . . . . . . . . . . . . 36 3.1.3 Carry-SaveAdders(CSA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.1.4 Carry-DelayedAdders(CDA) . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 vi Contents 3.1.5 SummaryandComparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.2 GF(p)Adders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 3.2.1 TableLook-UpBasedArchitectures . . . . . . . . . . . . . . . . . . . . . . . . 43 3.2.2 CombinatorialArchitectures . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 3.2.3 HybridArchitectures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.2.4 SummaryandComparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.3 GF(p)Multipliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 3.3.1 TableLook-UpandHybridBasedArchitectures . . . . . . . . . . . . . . . . . . 56 3.3.2 CombinatorialArchitectures . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 3.3.3 NewGF(p)Multipliersforp <25 . . . . . . . . . . . . . . . . . . . . . . . . 60 3.4 NotesandFurtherReferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4 Algorithms forArithmetic inLargeGF(p)Fields 69 4.1 BasicMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 4.1.1 School-bookMethodforModularMultiplication . . . . . . . . . . . . . . . . . 70 4.1.2 InterleavedMultiplicationReductionMethod . . . . . . . . . . . . . . . . . . . 73 4.2 AdvancedAlgorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 4.2.1 SedlakModularReduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 4.2.2 BarretModularReduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 4.2.3 Brickell’sModularReduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 4.2.4 Quisquater’sModularReduction . . . . . . . . . . . . . . . . . . . . . . . . . . 79 4.3 MontgomeryModularReduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 4.3.1 TowardsHigherRadixMontgomeryMultipliers . . . . . . . . . . . . . . . . . . 84 4.3.2 AvoidingQuotientDeterminationinHighRadixMontgomery . . . . . . . . . . 86 4.3.3 High-RadixMontgomeryExponentiationonFPGAs . . . . . . . . . . . . . . . 89 4.3.4 Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 4.4 NotesandFurtherReferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 5 Semi-SystolicArchitecturesforArithmeticinGF(pm) 93 5.1 PreviousGF(pm)Multipliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 5.1.1 Non-generalMultipliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 5.1.2 GeneralMultipliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 5.2 AdderArchitecturesforGF(pm) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 5.3 SerialMultipliersforGF(pm) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 5.3.1 LeastSignificantElement(LSE)FirstMultiplier . . . . . . . . . . . . . . . . . 98 5.3.2 MostSignificantElementFirstMultiplier(MSE) . . . . . . . . . . . . . . . . . 98 5.3.3 ModularReduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 5.3.4 Area/TimeComplexityofLSEandMSEMultipliers . . . . . . . . . . . . . . . 100 5.4 Digit-Serial/ParallelMultipliersforGF(pm) . . . . . . . . . . . . . . . . . . . . . . . 101 5.4.1 LeastSignificantDigit-Element(LSDE)Multipliers . . . . . . . . . . . . . . . 102 5.4.2 MostSignificantDigit-ElementFirstMultiplier(MSDE) . . . . . . . . . . . . . 103 5.4.3 ModularReductionforLSDEandMSDEMultipliers . . . . . . . . . . . . . . . 104 5.4.4 Area/TimeComplexityofLSDEMultipliersforOptimalIrreduciblePolynomials105 5.4.5 Area/TimeComplexityofMSDEMultipliersforOptimalIrreduciblePolynomials107 5.4.6 CommentsonIrreduciblePolynomialsofDegreemoverGF(p) . . . . . . . . . 108
Description: