Camellia: a 128-Bit Block Cipher Suitable for Multiple Platforms
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
g mel l iX e IPVEfit flo k gipher
uitle for wultiple ltforms
y z y
uzumro eoki etsuyshikw wsyuki und
z y z z
witsuru wtsui hiho worii tunkoxkjim oshio okit
y
xipp on elegrph nd elephone gorp ortion
IEI rikrino okD okosukD ungwD PQWEHVRU tpn
fmroDkndDshihogdislFnttFoFjp
z
witsuishi iletri gorp ortion
SEIEI yfunD umkurD ungwD PRUEVSHI tpn
fihikwDmtsuiDjuneISDtokitgdissFislFmeloFoFjp
er IFHX tuly IQD PHHH
er PFHX eptemer PTD PHHI
estrtF e present new IPVEit lo k ipher lled gmel liF gmelli
supp orts IPVEit lo ksizend IPVED IWPED nd PSTEit keysD iFeF the sme interfe
sp eitions s the edvned inryption tndrd @eiAF iieny on oth softE
wre nd hrdwre pltforms is remrkle hrteristi of gmelli in ddition
to its high level of seurityF st is onrmed tht gmelli provides strong seurity
ginst dierentil nd liner ryptnlysisF gompred to the ei nlistsD iFeF
weD gTD ijndelD erp entD nd woshD gmelli oers t lest omprle
enryption sp eed in softwre nd hrdwreF en optimized implementtion of gmelE
li in ssemly lnguge n enrypt on entiums s s @IFIQqrzA t the rte of RUI
wits p er seondF sn dditionD distinguishing feture is its smll hrdwre designF
e hrdwre implementtionD whih inludes enryptionD deryptionD nd the key
shedule for IPVEit keysD o upies only VFIPu gtes using HFIV"m gwy esg
lirryF his is in the smllest lss mong ll existing IPVEit lo k iphersF
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
gontents
I sntro dution I
P hesign tionle Q
PFI p Efuntion X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Q
PFP Efuntion X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Q
PFQ sE oxes X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Q
I
PFR pvE nd pv Efuntions X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Q
PFS uey hedule X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X R
Q erformne pigures S
QFI oftwre erformne X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X S
QFP rrdwre erformne X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X S
R oftwre smplementtion ehniques II
RFI etup X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X II
RFP ht ndomiztion X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X IP
RFQ qenerl quidelines X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X IV
S rrdwre ivlutions PH
SFI yp e IX pst smplementtionEI @pully lo op unrolled rhitetureA X X X X X X X X X PH
SFP yp e PX mll smplementtionEI @vo op rhitetureA X X X X X X X X X X X X X X X X PI
SFQ yp e QX mll smplementtionEP @p eil gse for pqeD vo op rhitetureA X X PP
SFR yp e RX pst smplementtionEP @ip eline rhitetureA X X X X X X X X X X X X X X X PR
T eurity PT
TFI hierentil nd viner gryptnlysis X X X X X X X X X X X X X X X X X X X X X X X X X PT
TFP runted hierentil gryptnlysis X X X X X X X X X X X X X X X X X X X X X X X X X PU
TFQ runted viner gryptnlysis X X X X X X X X X X X X X X X X X X X X X X X X X X X X PW
TFR gryptnlysis with smp ossile hierentil X X X X X X X X X X X X X X X X X X X X X X PW
TFS fo omerng ettk X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X PW
TFT righer yrder hierentil ettk X X X X X X X X X X X X X X X X X X X X X X X X X X X QH
TFU qure ettk X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X QH
TFV snterp oltion ettk nd viner ume ttk X X X X X X X X X X X X X X X X X X X X QI
TFW xo iquivlentueys X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X QI
TFIH lide ettk X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X QI
TFII eltedEkey ettk X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X QP
TFIP ttistil ests X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X QP
TFIQ smplementtion ettks X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X QP
TFIR frute pore ettks X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X QQ
U gonlusion QS
e ristory RI i
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
I sntro dution
his pp er presents IPVEit lo k ipher lled gmel liDwhihws jointly develop ed yx
nd witsuishi iletri gorp ortionF gmelli supp orts IPVEit lo k size nd IPVED IWPED nd
PSTEit key lengthsD nd so oers the sme interfe sp eitions s the edvned inryption
tndrd @eiAF he design gols of gmelli re s followsF
righ level of seurityF he reent dvnes in ryptnlyti tehniques re remrkleF e
quntittiveevlution of seurity ginst p owerful ryptnlyti tehniques suh s dierentil
ryptnlysis fWQ nd liner ryptnlysis wWR is onsidered to e essentil in designing ny
new lo k ipherF eevluted the seurityof gmelli y utilizing stteEofErt ryptnlyti
tehniquesF ehve onrmed tht gmelli hs no dierentil nd liner hrteristis tht
IPV
hold with proility more thn P F woreoverD gmelli ws designed to oer seurity ginst
other dvned ryptnlyti ttks inluding higher order dierentil ttks uWSD tuWUD
interp oltion ttks tuWUD eHHD reltedEkey ttks fWRD uWTD trunted dierentil tE
tks uWSD wWWD o omerng ttks WWD nd slide ttks fWWD fHHF
iieny on multiple pltformsF es ryptogrphi systems re needed in vrious ppliE
tionsD enryption lgorithms tht n e implemented eiently on wide rnge of pltforms
re desirleD howeverD few IPVEit lo k iphers re suitle for oth softwre nd hrdwre
implementtionF gmelli ws designed to oer exellent eieny in hrdwre nd softwre
implementtionsD inluding gte ount for hrdwre designD memory requirements in smrt rd
implementtionsD s well s p erformne on multiple pltformsF
gmelli onsists of only VEyEVEit sustitution tles @sE oxesA nd logil op ertions tht
neeiently implemented on wide vriety of pltformsF hereforeD it n e implemented
eiently in softwreD inluding the VEit pro essors used in lowEend smrt rdsD QPEit pro esE
sors widely used in gsD nd TREit pro essorsF gmelli do esn9t use QPEit integer dditions nd
multiplitionsD whih re extensively used in some softwreEoriented IPVEit lo k iphersF uh
op ertions p erformw ell on pltforms providing high degree of supp ortD eFgFD entiumssGsss or
ethlonD ut not s well on othersF hese op ertions n use longer ritil pth nd lrger
hrdwre implementtion requirementsF
he sE oxes of gmelli re designed to minimize hrdwre sizeF he four sE oxes re
V
ne equivlenttothe inversion funtion in the nite eld qp@P AF woreoverD we redued the
V R
inversion funtion in qp@P A to few qp@P A rithmeti op ertionsF st enled us to implement
the sE oxes yfewer gte ountsF
he key shedule is very simple nd shres prt of its pro edure with enryptionF st supp orts
onEtheEkey sukey genertion nd sukeys re omputle in ny orderF he memory requireE
ment for generting sukeys is quite smllY n eient implementtion requires out QPEyte
ew for IPVEit keys nd out TREyte ew for IWPE nd PSTEit keysF
tndrdiztion tivitiesF sn wrh PHHH x nd witsuishi iletri gorp ortion proE
p osed gmelli in resp onse to the ll for ontriutions fromsyGsig tg IGg PUD imingt
its eing dopted s n interntionl stndrdF sn eptemer PHHHD we sumitted gmelli to I
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
xisi @xew iurop en hemes for igntureD sntegrityD nd inryptionA pro jet s strong
ryptogrphi primitiveF sn eptem er PHHID gmelli ws seleted s ndidtes for the Pnd
hse of the xisi pro jetF
yutline of the pp erF his pp er is orgnized s followsX etion P desri es the rtionle
ehind gmelli9s designF etion Q disusses the p erformne of gmelliF etion R ontins
the tehniques for softwre implementtionF sn etion S we disuss our hrdwre evlutionsF
sn etion T weevluted gmelli9s strength ginst known ttksF e onlude in etion UF
por the sp eition of gmelliD plese see the seprte do ument titled p eition of
gmelli { IPVEit flo k gipherF4 e will follow the denitions nd nottion given in this
seprte pp erF P
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
P hesign tionle
PFI p Efuntion
C
he design strtegy of the p Efuntion of gmelli follows tht of the p Efuntion of iP uwe WVF
he min dierene etween iP nd gmelli is the doption of the IEround @onservtiveA x
@ustitutionEermuttion xetworkAD not the PEround xD iFeF EEF hen the IEround x
is used s the round funtion in peistel ipherD the theoretil evlution of the upp er ound
of dierentil nd liner hrteristi proility eomes more omplitedD ut the sp eed
under the sme level of rel4 seurity is exp eted to e improvedF ee etion T for detiled
disussions on seurityF
PFP Efuntion
he design rtionle of the Efuntion is similr to tht of the Efuntion of iPF ht isD for omE
puttionl eienyD it should e represented using only ytewise exlusiveEys nd for seurity
C
ginst dierentil nd liner ryptnlysisD its rnh numer should e optiml uw WWF
prom mong the liner trnsformtions tht stisfy these onditionsD wehose one onsidering
highly eient implementtion on QPEpro essors e HH nd highEend smrt rdsD s well s
VEit pro essorsF
PFQ sE oxes
V
es the sE oxes we dopted funtions ne equivlent to the inversion funtion in qp@P A for
enhned seurity nd smll hrdwre designF
st is well known tht the smllest of the mximum dierentil proility of funtions in
V T
qp@P Aws proven to e P D nd the smllest of the mximumliner proilit yoffuntionsin
V T
qp@P A is onjetured to e P F here is funtion ne equivlenttotheinversion funtion
V
in qp@P A tht hieves the est known of the mximum dierentil nd liner proilitiesD
T
P F e ho ose this kind of funtions s sE oxesF woreoverD the high degree of the fo olen
p olynomil of every output it of the sE oxes mkes it diult to ttk gmelli y higher order
dierentil ttksF he two ne funtions tht re p erformed t the input nd output of the
V V
inversion funtion in qp@P A omplites the expressions of the sE oxes in qp@P AD whihmkes
interp oltion ttks ineetiveF wking the four sE oxes dierent slightly improves seurity
ginst trunted dierentil ryptnlysis wWWF
V
por smll hrdwre designD the elements in qp@P An e represented s p olynomils with
R
o eients in the sueld qp@P AF sn other wordsD we n implement the sE oxes y using few
R
op ertions in the sueld qp@P A wsVVF wo ne funtions t the input nd output of
V
the inversion funtion in qp@P A lso ply role in ompliting the expressions of the sE oxes
R
in qp@P AF
I
PFR pvE nd pv Efuntions
I
pvEnd pv Efuntions re inserted4 etween every T rounds of peistel network to provide
nonEregulrity ross roundsF yne of the gols for suh design is to thwrt future unknown
ttksF st is one of merits of regulr peistel networks tht enryption nd deryption pro edures Q
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
I
re the sme exept for the order of the sukeysF sn gmelliD p vap v Efuntion lyers re
inserted every T roundsD ut this prop erty is still preservedF
I
he design riteri of pvE nd pv Efuntions re similr to those of the pvEfuntion of
ws wWUF he dierene etween ws nd gmelli is the ddition of IEit rottionF
his is exp eted to mke ytewise ryptnlysis hrderD ut it hs no negtive impt on
hrdwre size or sp eedF he design riteri re tht these funtions mustelinerforny xed
key nd tht their forms dep end on key vluesF ine these funtions re liner s long s the key
is xedD they do not mke the verge dierentil nd liner proilities of the ipher higherF
woreoverD these funtions re fst in oth softwre nd hrdwre sine they re onstruted y
logil op ertions suh s exhD yD yD nd rottionsF
PFS uey hedule
he design riteri of the key shedule re s followsF
IF st should e simple nd shre prt of its pro edure with enryptionGderyptionF
PF ukey genertion for IPVED IWPE nd PSTEit keys n e p erformed y using the sme key
shedule @iruitAF woreoverD the key shedule for IPVEit keys n e p erformed y using
prt of this iruitF
QF uey setup time should e shorter thn enryption timeF
sn ses where lrge mounts of dt re pro essed with single seret keyD the setup time
for key sheduling my e unimp ortntF yn the other hndD in pplitions in whihthe
key is hnged frequentlyDkey gilityisftorF yne si omp onentofkey gilityiskey
setup timeF
RF st should supp ort onEtheEy sukey genertionF
SF ynEtheEy sukey genertion should e omputle in the sme wy in oth enryption
nd deryptionF
ome iphers hve seprte key shedules for enryption nd deryptionF sn other
iphersD eFgFD ijndel hWV or erp ent efuWVD sukeys re omputle in the forwrd
diretion only nd require unwinding for deryptionF
TF here should e no equivlentkeysF
UF here should e no reltedEkey ttks or slide ttksF
griteri I nd P minly ddress smll hrdwre requirementsD griteri QD RD nd S re dE
vntgeous in terms of prtil pplitionsD nd griteri T nd U re for seurityF
he memory requirement for generting sukeys is quite smllF en eient implementtion
of gmelli for IPVEit keys requires IT ytes @aIPV itsA for the originl seret keyD u D nd IT
v
ytes @aIPV itsA for the intermedite keyD u F hus the required memory is QP ytesF imilrlyD
e
n eient implementtion of gmelli for IWPE nd PSTEit keys needs only TR ytesF R
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
Q erformne pigures
QFI oftwre erformne
le I summrizes the urrent softwre p erformne of gmelli on the ommonlyEused QPEit
nd TREit pro essorsF le P shows the softwre p erformne on the miropro essors used for
smrt rds nd em edded systemsD whih re equipp ed with the restrited memoryF qenerlly
sp ekingD the rst priority of the former is p eedD4 while tht of the ltter is ew sge nd
C C
yw sgeF4 ome of the dt re pulished in esu HHD gHID suwHID esu HHD HID
HID ut the others hve not een pulished yetF
he tles show tht gmelli n e eiently implemented on lowEend smrt rdsD QPEit
T Q
nd TREit pro essorsF e use the revitions w @megA for IH nd m@milliAfor IH in the
tlesF
yptimiztion levelF hen we o ded progrms using ssemly lngugeD we tried to use
mny tehniques desri ed in etion R to hieve the est p erformneF roweverD there is
ro omfor further impro vementF
yn the other hndD dep ending on the g ompiler usedD dierentssemly o des re pro dued
from the sme g o deF his mens tht the ssemly o des re not gurnteed to e optimlD
even if the g o de is optimizedF husD we did not sp end long time on optimizing g o deF
row to mesure sp eedF st is diult to mesure sp eed on modern pro essors sine there
re mny elementsD for exmpleD sttus of heD tht re eyond the users ontrol nd tht
inuene sp eedF e deided to mesure sp eed under the following onditions nd ssumptionsX
ell o des nd dt re orretly lignedF
snput nd output texts nd o des re preloded to the rst level heF
frnh preditions re orretF
etup funtion @exept for onEtheEy implementtionsA genertes sukeyEdep endent onE
stnts fromthe seret k eyD nd the onstnts re used y enryption or deryption funtionF
inryption @deryptionA funtion exept for onEtheEy implementtions n enrypt @deE
ryptA n integrl num er of lo ksF
e mesured the sp eed mny timesD nd hose the est result to eliminte he hit misses
nd other unontrollle ftorsF
e verged the sp eed num ers for lrge lo k enryptionD ut the vlues inlude ll
overheds inluding lo op nd funtion llsF
QFP rrdwre erformne
le Q represents the reent results on hrdwre p erformne of gmelli on esg @epplition
p ei sntegrted giruitA nd pqe @pield rogrmmle qte erryAF le R shows the
environment of our hrdwre design nd evlutionF S
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
le RX rrdwre evlution environment @esgD pqeA
vnguge @esgD pqeA erilogErhv
hesign lirry @esgA witsuishi iletri HFQS"mgwy esg lirry
witsuishi iletri HFIV"mgwy esg lirry
HFPS "mgwy esg lirry @rep orted ygig
ep ort PHHHA
@pqeA ilinx gRHHHv series
ilinx irtexi series
imultor @esgD pqeA erilogEv @exept for HFPS"mA
@esgA gSFI @used for HFPS"mA
vogi synthesis @esgA hesign gompiler version IWWVFHV @used for HFQS"mA
hesign gompiler version PHHHFIIEI @used for HFIV"mA
hesign gompiler version PHHHFHSEI @used for HFPS"mA
@pqeA ynplify version SFQFI nd evvsexgi version PFIi
@used for gRHHHv seriesA
ynplify version TFIFQ nd evvsexgi version QFQFHUi
@used for irtexi seriesA
le SX rrdwre design p oliies @outlineA
yp e op priority yutline of logi
yp e I pst implementtion fromthe viewp oin t of in@heA sp eed pigure I
yp e P mll implementtion fromthe viewp oin t of totl logi size pigure P
yp e Q mll implementtion @sp eil se for pqeA pigure Q
yp e R ip eline implementtion pigure R T
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
eevluted yp e I through yp e R logiF le S shows the top priorities of the logi typ esF
he detils of ehtyp e re desri ed in etion SF U Table 1: Camellia Software Performance (updated on Aug.31, 2001) Speed RAM Usage(*1) ROM Usage Key Size Processor Language Key setup(*2) Enc. / Dec. Key setup(*2) Enc. / Dec. Total size Key setup(*2) Enc. / Dec. Table Reference [bits] [cycles] [cycles] [Mbps] [bytes] [bytes] [bytes] [bytes] [bytes] [bytes] 128 1,570 308 290.9 288 20 15,012 6,788 0 8,224 [AIK+00b] 128 160 371 241.5 28 36 11,420 1,046 2,150 8,224 [AIK+00b] Pentium III (*4) Assembly 192 222 494 181.4 28 36 13,032 1,469 3,323 8,240 [AIK+00b] 256 226 494 181.4 28 36 13,048 1,485 3,323 8,240 [AIK+00b] 128 - 326 255.2 --29,285 ---[C01] Pentium III (*5) Assembly 128(Enc) 467 (*3) 0.72msec --20,110 ---[C01] 128(Dec) 474 (*3) 0.73msec --20,236 ---[C01] Pentium II (*6) ANSI C(*7) 128 263 577 66.6 44 64 9,461 1,600 3,733 4,128 [AIK+00b] Pentium III (*8) Java(*9) 128 9,091 793 161.4 ------Not published 128 158 326 261.9 48 48 21,040 1,600 2,928 16,512 [AIK+00b] 128 118 339 251.8 48 48 20,736 1,132 3,076 16,528 [AIK+00b] Alpha 21264 (*10) Assembly 192 176 445 191.9 48 48 22,196 1,668 4,000 16,528 [AIK+00b] 256 176 445 191.9 48 48 22,204 1,676 4,000 16,528 [AIK+00b] 128 - 282 210.2 --31,552 ---[C01] Alpha 21264 (*11) Assembly 128(Enc) 448 (*3) 0.97msec --25,792 ---[C01] 128(Dec) 435 (*3) 0.94msec --25,792 ---[C01] 128 - 355 144.2 --15,240 ---[C01] UltraSPARCIIi (*12) Assembly 128403 (*3) 1.01msec --23,992 ---[C01]
(*1) The figure includes stack area, and excludes text area and key area. (*2) Key schedule may be included. (*3) The figure includes key generation and one block encryption. This is achieved by using the on-the-fly subkey generation. (*4) IBM PC/AT compatible PC, Intel Pentium III (700MHz), 256KB on-die L2 cache, FreeBSD 4.0R, 128MB main memory. (*5) IBM PC/AT compatible PC, Intel Pentium III (650MHz), 256KB on-die L2 cache, Windows98 SE, 64MB main memory. (*6) IBM PC/AT compatible PC, Intel Pentium II (300MHz), 512KB L2 cache, Windows95, 160MB main memory. (*7) Microsoft Visual C++ 6 with the optimization options /G6 /Zp16 /ML /Ox /Ob2. (*8) IBM PC/AT compatible PC, Intel Pentium III (1GHz), 256KB on-die L2 cache, Windows2000, 512MB main memory. (*9) IBM Java Compiler 1.2.2 and IBM Java VM 1.2.2. (*10) Alpha 21264 (667MHz), Tru64 UNIX 4.0F, 2GB main memory. (*11) Alpha 21264 (463MHz), Tru64 UNIX V5.1, 512MB main memory. (*12) Ultra SPARC IIi (400MHz), Solaris 7, 256MB main memory. Copyright NTT and Mitsubishi Electric Corporation 2000-2001 Table 2: Camellia Software Performance for Smart Cards and Embedded Systems (updated on Aug.31, 2001) Speed RAM Usage ROM Usage Key Sharing Processor Language size Key setup(*1) Enc. / Dec. Key setup(*1) Enc. / Dec. Total size Key setup(*1) Enc. / Dec. Table Reference size(*2) [bits] [cycles] [cycles] [bytes] [bytes] [bytes] [bytes] [bytes] [bytes] [bytes] 10,217 (*3) 8051 (*7) Assembly 128 0 32 (*4) 990 0 702 288 0 [AIK+00b] 10.22msec 5,146 28,382 128 44 (*5) 62 (*5) 1,698358 1,183 288 -131 Not published 1.03msec 5.68msec (Enc) 35,951 (*3) Z80 (*8) Assembly 0 60 (*5) - 1,023 - 7.19msec 128 1,268 -797 Not published (Dec) 37,553 (*3) 0 60 (*5) - 1,042 - 7.51msec 2,380 4,100 H8/3113 (*9) Assembly 128 208 (*6) 0 - - --- [Y01a] 0.95msec 1.64msec 7,500 9,900 MC68HC705B16 (*10) Assembly 128 208 (*6) 0 - - - - - [Y01a] 3.57msec 4.71msec 5,679 8,430 MC68HC908AB32 (*11) Assembly 128 208 (*6) 0 - - - - - [Y01b] 0.71msec 1.05msec 642 1,236 M32Rx/D (*12) Assembly 128 44 (*5) 44 (*5) 8,684 1,3923,164 4,128 0 [AIK+00b] 6.42msec 12.36msec
(*1) Key schedule may be included. (*2) Some ROM size may be reduced, since some functions can be shared among key generation, encryption and decryption. (*3) The figure includes key generation and one block encryption. This is achieved by using the on-the-fly subkey generation. (*4) The figure includes stack area, and excludes text area and key area. (*5) The figure includes stack area, text area and key area. (*6) The figure shows the size of round keys. (*7) Intel 8051 (12MHz; 1cycle=12 oscillator periods) simulator on Unix. (*8) Z80 (5MHz) simulator on Windows. (*9) Hitachi H8/3113 (5MHz; 1cycle=2 oscillator periods) on Hitachi's E6000 Emulator. (*10) Motorola 6805 series MC68HC705B16 (2.1MHz) on Motorola's In-Circuit Simulator Kits. (*11) Motorola 6805 series MC68HC908AB32 (8MHz) on Motorola's In-Circuit Simulator Kits. (*12) Mitsubishi 32-bit microcomputer M32Rx/D (100MHz) on MSA2310 evaluation board.
Copyright NTT and Mitsubishi Electric Corporation 2000-2001 Table 3: Camellia Hardware Performance (updated on Aug.31, 2001) Speed Area Size Efficiency Key Max. Key Architecture Design Library size Key setup Latency Throughput Total(*2) Enc./Dec.(*4) Throughput/Area Reference delay(*1) Unit expan.(*3) [bits] [nsec] [nsec] [cycles] [Mbps] [unit] [unit] [unit] [Kbps/unit] Mitsubishi 0.35µm 128 24.36 109.35 1 1,170.55 272.82 55.91 216.91 4.29 [AIK+00b] Unrolled Type 1 Mitsubishi 0.18µm 128 40.00 40.00 1 3,200.00Kgate 355.10 -- 9.01 Not published Mitsubishi 0.18µm 128 45.96 45.96 1 2,785.00 244.90 -- 11.37 Not published Mitsubishi 0.35µm 128 110.20 27.67 21 220.28 11.35 4.98 6.37 19.41 [AIK+00a] Mitsubishi 0.35µm 128 117.04 28.73 21 212.16 9.66 5.75 3.91 21.96 [AIK+00b] Mitsubishi 0.18µm 128 144.88 36.22 21 168.28 8.51 -- 19.77 Not published ASIC Mitsubishi 0.18µm 128 25.92 6.48 21 940.62 27.46 -- 34.25 Not published Mitsubishi 0.18µm 128 28.20 7.05 21 864.57 21.45 -- 40.31 Not published Loop Type 2 Kgate Mitsubishi 0.18µm 128 23.20 5.80 21 1,050.90 11.87 -- 88.52 Not published Mitsubishi 0.18µm 128 137.24 34.31 21 177.65 8.12 -- 21.87 Not published Mitsubishi 0.18µm 128 12.96 3.24 21 1,881.25 44.30 -- 42.47 Not published 0.25µm 256 - 5.46 - 837.00 39.35 22.76 16.33 21.27 [C01] 0.25µm 256 - 11.51 - 397.00 23.12 13.30 9.67 17.17 [C01] Type 2 Xilinx XC4000XL 128 362.83 78.82 21 77.34 1,296 -- 59.68 [AIK+00b] CLB Type 3 Xilinx XC4000XL 128 - 50.00 21 122.01 874 --139.60 [AIK+00b] Loop Xilinx VirtexE 128 135.03 30.56 21 199.46 1,816 --109.83 [ISKM01] FPGA Type 2 Xilinx VirtexE 128 126.00 28.80 21 211.90 1,816 --116.69 [ISKM01] Xilinx VirtexE 128 127.04 26.80 21 227.42Slice 1,780 --127.76 [ISKM01] Unrolled Type 1 Xilinx VirtexE 128 97.70 318.50 1 401.89 9,426 -- 42.64 [ISKM01] Pipeline Type 4 Xilinx VirtexE 128 83.25 18.96 20 6,749.99 9,692 --696.45 [ISKM01]
(*1) Critical path of data encryption (or decryption) (*2) The figure includes key scheduling logic, encryption/decryption logic, data selector (if necessary), output register, subkey register and buffers for fan-out adjustment. (*3) The figure includes subkey register. (*4) The figure includes output register and data selector (if necessary).
Copyright NTT and Mitsubishi Electric Corporation 2000-2001
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
R oftwre smplementtion ehniques
his setion desri es how to implement gmelli eiently in softwreF sn most sesD n
implementtion n e divided into two prtsX setup inluding key shedule nd dt rndomE
iztionD tht isD enryption or deryptionF e rst desri e how to optimize the setup o deD nd
then desri e how to optimize the dt rndomiztion o deF
his setion desri es sp ei tehniques for VED QPED or TREit pro essorsF roweverD tehE
nique for VEit pro essors my e pplile to QPE or TREit pro essors nd tehnique for QPEit
pro essors my e pplile to TREit pro essorsF yther word sizes my need to e onsideredF
e ssume tht you rst implement gmelli using the sp eition s it isF his setion
will optimize the resulting o deF
xote tht in this setion word4 mens the nturl size of the trget pro essorF por exmpleD
the words of seEQP without ww tehnologyD seEQP with ww tehnology nd elph re QPED
TRED nd TREits long resp etivelyF
RFI etup
RFIFI tore ell ukeys
tore ll sukeys into memory one you generte them if you hve suient memoryD nd use
the stored sukeys for dt rndomiztionF
RFIFP ukey qenertion yrder
ou do not hve to ompute sukeys in orderF por exmpleD when you ompute sukeys for
IPVEit keyD rst ompute the sukeys tht only dep end on u D nd then ompute sukeys tht
v
only dep end on u F his redues the num er of registers or memory for storing u F
e e
RFIFQ y gnelltion rop erty in uey hedule
he key shedule of gmelli is sed on the peistel strutureF fetween the Pnd round nd the
Qrd roundD u is yed to n intermedite vlueF his struture uses nelltions of u F
v v
wore preiselyD the input of the Qrd round n e omputed y the following equtionsF
@
@righthlfA a p @u Y P A
vv I
for IPVEit keys
@left hlf A a p @u @righthlfAY P A
v P
@
@righthlfA a u p @u u Y P A
vv v I
for IWPE nd PSTEit keys
@left hlf A a u p @u @right hlf AY P A
v v P
sing the ove equtionsD we n eliminte Q nd P ys in v for IPVE nd IWPGPSTEit keysD
resp etivelyD ompred to the strightforwrd implementtion of the sp eitionF
RFIFR ottion fits for u D u D u D nd u
v e f
ou do not need to keep u D u D u Dndu D ut you should keep their rotted vlues when
v e f
generting sukeysF ou n generte sukeys y rotting the kept vlues y sumof in tegrl
multiples of IT IitsF II
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
RFIFS kl nd kl qenertion from k nd k
S T II IP
por IWPE nd PSTE it keysD you n use wordEoriented rottion to generte @kl Ykl A from
S T
@k Yk AD sine @kl Ykl A equls @k Yk A``` F his sves few instrutions ompred to genE
II IP S T II IP QP
erl rottionF
RFIFT ynEtheEy ukey qenertion
ou n generte sukeys onEtheEy F ell sukeys re one of the rotted vlues of u D u D
v
u Dndu F husD you rst generte u D u D u D nd u D nd then rotte themto get the
e f v e f
sukeysF efer to etion RFIFR for the rotted num ers of its for u D u D u Dndu F
v e f
RFIFU IPVEit key nd IWPGPSTEit key
sf your o de do es not need to use key sizes lrger thn IPV itsD you do not need to generte
u F ht isD you n omit the omputtions for the lst two p EfuntionsF
f
RFIFV row to otte n ilement in
VEit pro essorF es stted in etion RFIFRD the mount of rottion in its is sumof in tegrl
multiples of IT IF husD you n rotte n elementin yIT I its y rotting IEit left
or rightfollowed y PEyte moveF
QPEit pro essorF gonsider the use of doule preision shift instrutionX shrd or shld if
you re progrmming on seEQPF
RFIFW p Efuntion
uey shedule inludes p EfuntionsD ut the min usge of the p Efuntion is for dt rndomizE
tionF efer to etion RFPF
RFIFIH ueyed puntions
gmelli hs three keyed funtionsX itwise yD itwise yD nd itwise exhF gonsider the
use of selfEmo difying o deD if p ossileF
RFP ht ndomiztion
RFPFI indin gonversion
gmelli prefers ig endinF husD the o de for little endin pro essors needs dditionl o de
for endin onversionsF
he most strightforwrd implementtion onverts the endin when loding register from
I
memory nd storing register to memoryF ynly pvEndpv Efuntions re endin dep endentF
I
wore preiselyD only the IEit rottion in pvEorpv Efuntion is endin dep endentF his mens
tht you n onvert endins just efore or just fter the IEit rottion with the pproprite IP
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
sukey genertion shemeF e omintion of omputing endin onversion nd IEit rottion
my inrese the p erformne of gmelliF hetils re desri ed in etion RFPFPF
ome pro essors hve sp eil instrution for endin onversionF por exmpleD seEQP @fter
VHRVTA hs swp instrutionF se these instrutionsF roweverD do not use the yte swp
tehnique desri ed in gWVD epp endix eF he tehnique redues the o de sizeD ut it is not
fstD sine the memory lod nd store instrution inurs long ltenyF
es desri ed oveD the endin prolem only eets the IEit rottion of QPEit wordF
husD we do not need full TREit word endin onversionF
he following re generl metho ds to relize endin onversion for QPEit register xF sn
the following tehniquesD you n use either or insted of C in the equtionsD nd you n
swith the omputtionl order etween shifts inluding rottions nd exhs with n pproprite
onversion of msked onstntsF
trightforwrdF
x 2 @x ( AC@@x HxffHHA ( AC@@x ) A HxffHHAC@x ) A
PR V V PR
he tehnique hs high prllelismF
winimum op ertions without rottionF
x 2 @x ( AC @x ) A
IT IT
x 2 @@x HxffHHffA ( AC@@x ) A HxffHHffA
V V
sing rottionsF
x 2 @@x HxffHHffAbbb AC@@x``` A HxffHHffA
V V
sing iF xew sntel entiumfmily pro essors inluding entiums s s h ve very eetive
instrution for reordering dtD whih is lled pshufw sWWF S instrutions inluding pshufw
re suienttoonvert endin for TREit dtF
RFPFP IEit ottion in vittle indin snterprettion
es desri ed in etion RFPFID we do not need endin onversion when loding nd storing texts
I
if we n eiently implement IEit rottion in pvEndpv EfuntionsF
essuming x to e QPEit register tht ontins little endin dt to e rotted y IEitD we
n ompute IEit rottion y the following equtionF
x 2 @@PxA HxfefefefeAC@@xbbb A HxfefefefeA @IA
IS
yf ourseD this tehnique requires n pproprite hnges to sukey setup nd other funtionsF
xote tht C in iqution @IA n e repled with or D nd omputing Px n e done y
( D ``` or ddition with x itselfD nd you n swith the omputtionl order etween shifts
I I
inluding rottions nd exhs with n pproprite onversion of msked onstntsF
gonrmwhether y our pro essor hs exhxy instrutionD suhs pndn in seEQP nd i
HxfefefefeF in elphF sn this seD you do not need to prepre the onstntD IQ
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
RFPFQ hitening
he key dditions kw nd kw neomined into other keyed op ertions using the following
P R
equtionsF
@x k A y a @x y A kY
@x k A l a x @k l AY
@x k A l a @x l A @k l AY @PA
@x k A``` a @x``` A @k``` AY
I I I
@x k A l a @x l A @k l AY
where xD y D k D l re it stringsF edjust sukeys t setup to eliminte P ys in vF
RFPFR uey y
sing iqutions @PAD you n movekey ys to ny ple if the movement do es not go through
H
the EfuntionF por exmpleD hnging p Efuntion omputtion @ @ k AA to @ @ AA k
myimprove instrution shedulingF
RFPFS Efuntion
V V
s is dened y the rithmetis in qp@P AF roweverD do not ompute qp@P A rithmetisY insted
I
preompute nd hrdEo de tle in your progrmD see le R in the sp eitionF
e strongly suggest tht you lso preompute nd hrdEo de s D s Dnds tles in ddition
P Q R
to s Difyou hve suient memory nd VEit rottion is exp ensiveF sf you do not hve suient
I
memoryD the dt of s D s D nd s n e generted from the tle for s using one rottion
P Q R I
@ee etion RFS in the sp eitionAF
sf you hve suient memoryD nd ost of tle lo okup is hevyD s is true for the urrenttv
virtul mhinesD onsider the use of two sE oxomined tleD for exmple @s @y AYs @y AAF
I I P P
RFPFT Efuntion
QPEit pro essorF vet @ Y A a @@z Yz Yz Yz AY @z Yz Yz Yz AA e the input of Efuntion
v I P Q R S T U V
H H H H H H H H H H
nd @ Y Aa@@z Yz Yz Yz AY @z Yz Yz Yz AA e the output of EfuntionF
I P Q R S T U V
v
prompigure S in the sp eitionD y ou n see tht Efuntion n e omputed s followsF
2 @ ``` A
v v V
2 @ ``` A
v IT
2 @ bbb A
V
v v
2 @ bbb A
V
v
H
2
v
H
2
v
IR
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
he ritil pth of this omputtion is longF e n mo dify the omputtion s followsF
2 ```
V
2 2 ```
V
v v
2 bbb 2
V
v v v
2 2 ```
IT
v v
2 ``` 2
V
v v v
H H
2 2
v
v
he ritil pth of the ove omputtion is deresedF st seems tht the tehnique requires one
dditionl rottionD howeverD you n proly omine the rst step of the ove omputtion
nd Efuntion without ny dditionl ostF
VEit pro essor @orthogonl mnemonisAF sf the instrution in your pro essor n y
nyomintion of registers nd hs suientregistersDyou n ompute Efuntion yusing
just IT ys using pigure S in the sp eitionF
VEit pro essor @umultor sedAF sf your pro essor is umultor sedD minimizing
the numer of ys is not lwys go o d ideD sine the omputtion my require register lod
from memory nd store into memory mnytimesFhe following omputtion is optimized for
n umultor sed pro essorF
H
z 2 z z z z z
I R S T U
V
H H
z 2 z z z z
I P Q
R V
H H
z 2 z z z z
P U V
U R
H H
z 2 z z z z
I P R
Q U
H H
z 2 z z z z
I T U
T Q
H H
z 2 z z z z
I Q R
P T
H H
z 2 z z z z
R S T
S P
H H
z 2 z z z z
P Q R
I S
H
hen indexing z osts mny op ertionsD the following is usefulF
i
' 2 z z z z z z z z
I P Q R S T U V
H
z 2 ' z z
P S
I
H
z 2 ' z z
Q T
P
H
z 2 ' z z
R U
Q
H
2 ' z z z
I V
R
H
z 2 ' z z z
Q R S
S
H
z 2 ' z z z
I R T
T
H
z 2 ' z z z
I P U
U
H
2 ' z z z z
P Q V
V IS
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
RFPFU ustitution nd ermuttion
his setion desri es how to eiently ompute ompred to indep endently omputing
nd F
TREit pro essorF sf your pro essor hs suiently lrge rst level heD use the tehnique
C
desri ed in h WTF he tehnique prepres the following tles dened y iqutions @QAF
@y A a @s @y AYs @y AYs @y AY HYs @y AY HY HYs @y AA
I I I I I I I I I I I I
@y A a @ HYs @y AYs @y AYs @y AYs @y AYs @y AY HY HA
P P P P P P P P P P P P
@y A a @s @y AY HYs @y AYs @y AY HYs @y AYs @y AY HA
Q Q Q Q Q Q Q Q Q Q Q Q
@y A a @s @y AYs @y AY HYs @y AY HY HYs @y AYs @y AA
R R R R R R R R R R R R
@QA
@y A a @ HYs @y AYs @y AYs @y AY HYs @y AYs @y AYs @y AA
S S P S P S P S P S P S P S
@y A a @s @y AY HYs @y AYs @y AYs @y AY HYs @y AYs @y AA
T T Q T Q T Q T Q T Q T Q T
@y A a @s @y AYs @y AY HYs @y AYs @y AYs @y AY HYs @y AA
U U R U R U R U R U R U R U
@y A a @s @y AYs @y AYs @y AY HYs @y AYs @y AYs @y AY HA
V V I V I V I V I V I V I V
xextD ompute the following equtionX
V
w
H H H H H H H H
@z Yz Yz Yz Yz Yz Yz Yz A 2 @y A
i i
I P Q R S T U V
iaI
his tehnique requires the following op ertionsF
5 of tle lo okups V
5ofys U
ize of tle @ufA IT
sf the rst he of the trget pro essor is mo dertely lrgeD reple few of the tles
dened y iqutions @QA with the tles elowF
@y A a @s @y AYs @y AYs @y AYs @y AYs @y AYs @y AYs @y AYs @y AA
I I I I I I I I
@y A a @s @y AYs @y AYs @y AYs @y AYs @y AYs @y AYs @y AYs @y AA
P P P P P P P P
@RA
@y A a @s @y AYs @y AYs @y AYs @y AYs @y AYs @y AYs @y AYs @y AA
Q Q Q Q Q Q Q Q
@y A a @s @y AYs @y AYs @y AYs @y AYs @y AYs @y AYs @y AYs @y AA
R R R R R R R R
henD msk the neessry yte p ositionsF his tehnique requires the following op ertions if
you use just tles of iqutions @RAF
5 of tle lo okups V
5ofys U
5ofexhs V
ize of tle @ufA V
hen implementing this tehnique on elph rhiteture gWVD nd if the num er of registers
is insuient for storing onstnts for msking op ertionD use zp or zpnot instrutionsF IT
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
sf your pro essor n eiently opy hlf its of register to the other hlfD for exmE
pleD punpkldqGpunpkhdq or pshufw instrutions in seEQP sWW whih re relized fter enE
tium with ww tehnology nd entium sssD resp etivelyD prepre D D D nd
I P Q R
dened in iqutions @QAF henD ompute the following equtionX
H H H H H H H H
@z Yz Yz Yz Yz Yz Yz Yz A
I P Q R S T U V
2 @y A @y A @y A @y A # @ @y A @y A @y A @y AAY
I I P P Q Q R R I V P S Q T R U
where # denotes the op ertion tht opies the rst Rytes to the lst RytesF his tehnique
requires the following op ertionsF
5 of tle lo okups V
5ofys U
5of# s I
ize of tle @ufA V
QPEit pro essorF e HH shows eient implementtions of gmelliEtyp e sustitution nd
permuttion networksF yne of the tehniques prepres the following tles dened y iquE
tions @SAX
@y A a @s @y AYs @y AYs @y AY HA
IIIH I I I
@y A a @ HYs @y AYs @y AYs @y AA
HPPP P P P
@SA
@y A a @s @y AY HYs @y AYs @y AA
QHQQ Q Q Q
@y A a @s @y AYs @y AY HYs @y AA
RRHR R R R
henD ompute s followsX
h 2 @y A @y A @y A @y A
IIIH V HPPP S QHQQ T RRHR U
2 @y A @y A @y A @y A
IIIH I HPPP P QHQQ Q RRHR R
H H H H
A 2 h Yz Yz Yz @z
R Q P I
H H H H H H H H
A @ bbb A Yz Yz Yz A 2 @z Yz Yz Yz @z
V
R Q P I V U T S
his tehnique requires the following op ertionsF
5 of tle lo okups V
5ofys V
5 of rottions I
ize of tle @ufA R
e HH lso shows n implementtion tht is suitle for pro essor in whih rottion is very
ostlyF he tehnique prepres the following tles in ddition to tles dened y iqutions @SAX
@y A a @s @y AY HY HYs @y AA
IHHI I I
@y A a @s @y AYs @y AY HY HA
PPHH P P
@y A a @ HYs @y AYs @y AY HA
HQQH Q Q
@y A a @ HY HYs @y AYs @y AA
HHRR R R IU
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
henD ompute s followsX
h 2 @y A @y A @y A @y A
IIIH V HPPP S QHQQ T RRHR U
H H H H
@z Yz Yz Yz A 2 h @y A @y A @y A @y A
IIIH I HPPP P QHQQ Q RRHR R
I P Q R
H H H H
@z Yz Yz Yz A 2 h @y A @y A @y A @y A
IHHI I PPHH P HQQH Q HHRR R
S T U V
his tehnique requires the following op ertionsF
5 of tle lo okups IP
5ofys II
ize of tle @ufA V
RFPFV wking sndies for sE ox
ou n mke n index for sE oxy simply using shifts nd exhsF roweverD severl pro essors
hvespeil instrutions for mking n indexD for exmpleD movzx in seEQP sWW nd extl in
elph gWVF
movzx is fst op ertion in TD ut it n e used only for the two lest signint ytesF
e strightforwrd implementtion uses exD exD exD nd edx registers for storing @v Y AD
r r
nd P rottions re used for mking indiesY P rottions re used for reovering yte order in
the registers every roundF roweverD you n remove P rottions for reovering yte order every
round if you prepre rotted tlesF xote tht the yte order in registers returns to nturl
order every R roundsF
RFQ qenerl quidelines
his setion desri es generl guidelinesF he guidelines re useful to optimize gmelli s well
s other lo k iphersF lese refer to the optimiztion mnuls for eh pro essorF
evoid misligned dt essesF elmost ll pro essors penlize misligned dt essF
elign dt to the word oundryF
evoid prtil dt essesF wost pro essors hve funtion to ess smller prt thn
word sizeF roweverD this funtion my use p enltyF ho not ess prtil dtD even
if you do not need full size of word nd you hve suient memoryF
fe reful of the size of the heF sf the progrmor its dt exeeds the size of the heD
the sp eed of the progrm will signintly dereseF vo op unrolling nd tle expnsion
re go o d tehniques to sp eed up the progrmD ut do not exeed the size of the heF
se intrinsi funtionsF everl ompilers supp ort intrinsi funtionsF por exmpleD when
you use wirosoft isul gCC version T ompiler on seEQPD nd delre 5prgm
lrotlA4 nd use lrotl4D the ompiler genertes rottion instrutions in intrinsi@
ssemly lngugeF efer to the mnul of the ompiler tht you use for detilsF
wesuring preise sp eeds is diultF he running time of your o de dep ends on mny
ftorsX he hit missesD y interruptsD nd so onF purthermoreD the ryptogrphi IV
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
prop ertiesD for exmpleD the numer of lo ks to e enryptedD lso eet the running
timeF
e few pro essors hve n instrution to get the time stmpF por exmpleD seEQP @fter
entiumA hs rdts sWW nd elph hs rp gWVF st is go o d ide to use the time
stmp ounter for mesuring sp eedsD ut you should not diretly pply these instrutions
to outEofEorder rhitetures suh s T nd iTF
sf you wnt to mesure sp eed preiselyD onsult go o d guide o oksF por exmpleD if you
use entiumfmily pro essorsD refer to pHHF IW
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
S rrdwre ivlutions
sn etion QD we showed evlution results of hrdwre implementtions @esgD pqeA of
gmelliF sn this etionD we desri e the design p oliies of the four typ es of logi evluted in
etion QF he detils of ehtyp e re desri ed elowF
SFI yp e IX pst smplementtionEI @pully lo op unrolled rhitetureA
sn yp e ID we evlute the hrdwre implementtion @esg nd pqeA where the gol is to
hieve the fstest enryption nd deryption sp eed with no onsidertion of logi sizeF pigure I
outlines the yp e I logiF le T shows the si yp e I omp onentsF on Plaintext / Ciphertext
Encryption and Key Expansion Key Decryption Logic Logic (or Decryption) Subkey Registers
Output Critical Path of Key Expansion Critical Path of Data Encrypti Registers
Ciphertext / Plaintext
pigure IX yutline of yp e I @esgD pqeA
le TX he si yp e I omp onents
inryption nd ht rndomizing logi for enryption nd deryptionD
deryption logi whih onsists of omintionl logiF
yutput register egister for the enryption @deryptionA dtF
uey expnsion logi vogiinwhih sukeys re generted fromk eyD
whih onsists of omintionl logiF
ukey register egister for the output dt of key expnsion logiF
he design p oliies of these si omp onents re listed elowF
IF inryption nd deryption logi4 nd uey expnsion logi4
@A vo op rhiteture is not intro duedF PH
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
@A ip eline rhiteture is not intro duedF
@A ustitution tles @sE oxesA re designed y logi synthesis to olF
PF yutput register4 nd ukey register4
@A he size of yutput register is one lo k @aIPV itsAF
@A he size of ukey register is the totl length of ll sukeys in the lgorithmF
nder the ove design p oliiesD we evluted gmelli on esg nd pqe deviesF he
results re summrized in le Q in etion QF hroughput4 is dened s followsX
flo k size@IPV itsA
hroughputas a X
gritil pth of dt enryption@deryptionAse
SFP yp e PX mll smplementtionEI @vo op rhitetureA
sn yp e PD we evlute the hrdwre implementtions on esgs nd pqes with the gol of
hieving the smllest logi in enryption @nd deryptionAF pigure P outlines the yp e P logiF
le U shows the si yp e P omp onentsF
Key on Plaintext / Ciphertext
Key Schedule Logic Data Selector and a part of Key Expansion Logic One Round of Encryption and Decryption Logic Subkey Registers with sharing a part of Critical Path of Key Expansi (or Decryption) (or all of) Key Expansion Logic Critical Path of Data Encryption Output Registers
Ciphertext / Plaintext
pigure PX yutline of yp e P @esgD pqeA
he design p oliies of these si omp onents re s followsF
IF inryption nd deryption logi4 nd uey sheduling logi4
@A vo op rhiteture is intro dued @whih onsists of one round op ertionAF
@A ip eline rhiteture is not intro duedF PI
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
le UX he si yp e P omp onents
inryption nd ht rndomizing logi for one round op ertion of enryption nd
deryptionD whih inludes @ prt of A key expnsion logiD nd deryption logi
onsists of omintionl logisF
yutput register egister for the output @nd intermediteA dtF
ht seletor eletor whih selets either enryptionGderyption dt or output dtF
uey sheduling logi vogi in whih sukeys re generted using @ prt of A
key expnsion logi in enryption nd deryption logi nd
onsists of omintionl logisF
ukey register egister for the output dt of key sheduling logiF
@A ustitution tles @sE oxesA re optimized y hndF
@dA uey sheduling logi onsists @ prt of A key expnsion logi nd ontrol logiF
PF yutput register4D ukey register4 nd ht seletor4
@A he size of yutput register is one lo k @aIPV itsAF
@A he size of ukey register is tht of the sukeys used in inryption nd deryption
logiF
@A ht seletor is PEI seletorD whose size is one lo k @aIPV itsAF
nder the ove design p oliiesD weevluted gmelli on esgs nd pqesF he results
re summrized in le Q in etion QF hroughput4 is dened s followsX
flo k size@IPV itsA
X hroughputas a
gritil pth of dt enryption@deryptionAse lteny
SFQ yp e QX mll smplementtionEP @p eil gse for pqeD vo op rhiE
tetureA
sn yp e QD we evluted the hrdwre implementtion @pqeA s sp eil se of yp e PF
sn yp e QD we ssume tht ll sukeys re given nd re loded into pqe internl memoryF
pigure Q outlines the yp e Q logiF le V shows the si yp e Q omp onentsF
he design p oliies of these si omp onents re s followsF
IF inryption nd deryption logi4
@A vo op rhiteture is intro dued @whih onsists of one round op ertionAF
@A ip eline rhiteture is not intro duedF
@A ustitution tles @sE oxesA re optimized y hndF
PF yutput register4D ukey memory4 nd ht seletor4 PP
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
Plaintext / Ciphertext
Data Selector
One Round of Encryption and Subkeys Decryption (or Decryption) Logic Subkey Memory Critical Path of Data Encryption Output Registers
Ciphertext / Plaintext
pigure QX yutline of yp e Q @pqeA
le VX he si yp e Q omp onents
inryption nd ht rndomizing logi for one round op ertion of enryption nd
deryption logi deryptionD whih inludes @ prt of A key expnsion logiD nd
onsists of omintionl logiF
yutput register egister for the output @nd intermediteA dtF
ht seletor eletor whih selets either enryption @deryptionA dt or output dtF
ukey memory wemory for the sukeys loded fromoutsideF PQ
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
@A he size of yutput register is one lo k @aIPV itsAF
@A he size of ukey memory is the length of ll sukeys in the lgorithmF
@A ht seletor is PEI seletor whose size is one lo k @aIPV itsAF
nder the ove design p oliiesD weevluted gmelli on n pqeF he results re sumE
mrized in le QF hroughput4 is dened s followsX
flo k size@IPV itsA
hroughputas a X
gritil pth of dt enryption@deryptionAse lteny
SFR yp e RX pst smplementtionEP @ip eline rhitetureA
sn yp e RD we evlute the hrdwre implementtion @pqeA where the gol is to hieve
the fstest enryption nd deryption sp eed with no onsidertion of logi sizeF @he pip eline
rhiteture nnot relize ny feedk mo desD suh s gfgD gpfD nd ypfAF pigure R outlines
the yp e R logiF le W shows the si yp e R omp onentsF
Plaintext / Ciphertext
Encryption and Decryption Logic
Stage 1 1 round Register 1
Key Expansion Key Logic 1 round Stage n-1 Register n-1 Subkey Registers
Pipeline Stage 1 round Critical Path of Stage n Register n Critical Path of Key Expansion
Ciphertext / Plaintext
pigure RX yutline of yp e R @pqeA
he design p oliies of these si omp onents re s followsF
IF inryption nd deryption logi4 nd uey expnsion logi4
@A vo op rhiteture is not intro duedF
@A ip eline rhiteture is intro duedF
@A ustitution tles @sE oxesA re designed y logi synthesis to olF
@dA he size of egisters @I $ nA is one lo k @a IPV itsAF PR
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
le WX he si yp e R omp onents
inryption nd ht rndomizing logi for enryption nd deryptionD
deryption logi whih onsists of omintionl logiD nd
egisters @I $ nA for the output nd intermedite dtF
uey ixpnsion logi gomintionl logi in whih sukeys re generted fromthe k eyF
ukey register egister for the output dt fromk ey expnsion logiF
PF ukey register4
@A he size of ukey register is the totl length of ll sukeys in the lgorithmF
nder the ove design p oliiesD we evluted gmelli on n pqe deviesF he results
re summrized in le QF hroughput4 is dened s followsX
flo k size @IPV itsA
X hroughputas a
gritil pth of ip eline tge se PS
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
T eurity
TFI hierentil nd viner gryptnlysis
he most wellEknown nd p owerful pprohes to ttking mnylok iphers re dierentil
ryptnlysisD prop osed y fihm nd hmir fWQD nd liner ryptnlysisD intro dued y
wtsui wWRF here re severl metho ds of evluting seurity ginst these ttksD where
there is kind of dulity4 reltion etween them wWSD gWSX in other wordsD the seurity
ginst oth ttks n e evluted in similr wysF
st is known tht the upp er ounds of dierentilGliner hrteristi proilities nD for
severl lo k iphersD e estimted using the minimum num ers of dierentilGliner tive
sE oxes in some onseutive roundsF und uHH shows the minimum num ers of dierenE
tilGliner tive sE oxes for peistel iphers with onservtive x @EA round funtionF rereE
fterD we ssume tht liner trnsformtion is ijetiveF
henition I he rnhnumer f of liner trnsformtion is dened y
f amin@w @xACw @ @xAAAY
r r
xTaH
where w @xA denotes the ytewise rmming weightof xF
r
e dierentil tive sE ox is dened s n sE oxgiven nonEzero input diereneF henition P
e liner tive sE oxisdenedsnsE ox given nonEzero output msk vlueF
heorem I he minimumn um er of dierentilGliner tive sE oxes in ny eight onseutive
rounds is equl or lrger thn Pf CIF
m
por ny given SxD Sy D TxD Ty P qp@P AD the dierentilGliner proilities of henition Q
m m
s E oxX qp@P A 3 qp@P A re dened sX
i
m
5fx P qp@P Ajs @xA s @x SxAa Sy g
i i
rs @xA s @x SxAa Sy a
i i
m
x
P
m
5fx P qp@P Ajx Tx a s @xA Ty g
i
r x Tx a s @xA Ty a
i
m
x
P
henition R vet p nd q e the mximum dierentilGliner proilities of ll sE oxes
s s
fs Ys YXXXgF
I P
p a mx mx rs @xA s @x SxAaSy
s i i
x
i
xTaHY y
P
q a mx mx @P rx Tx a s @xA Ty IA
s i
x
i
y TaHYx
heorem P vet h nd v e the minimumn um ers of totl dierentilGliner tive sE oxesF
h v
henD the mximum dierentilGliner hrteristi proilities re ounded y p nd q D
s s
resp etivelyF PT
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
ith the oveEmentioned tehniquesD we prove tht gmelli oers immunity to these
ttks yshowing the upp er ounds of mximumdieren tilGliner hrteristi proilitiesD
sine gmelli is peistel ipher whose round funtion uses the E round funtionF
sn the se of gmelliD the mximumdieren tilGliner proilities of the sE oxes re
T
p a q aP X
s s
he rnhnum er of the liner trnsformtion @ EfuntionA is SD iFeF
f aSX
vetting pD q e the mximumdieren tilGliner hrteristi proilities of gmelli redued
I
to ITEround without pvEndpv EfuntionsD resp etivelyDwehve
P@Pf CIA T PP IQP P@Pf CIA T PP IQP
p p a@P A aP nd q q a@P A aP
s s
from heorems I nd PF foth proilities re elow the seurity threshold of IPVEit lo k
IPV
iphersX P F st follows tht there is no eetive dierentil hrteristi or liner hrE
I
teristi for gmelli redued to more thn IS rounds without pvE nd pv EfuntionsF ine
I
pvE nd pv Efuntions re liner for ny xed keyD they do not mke the verge dierenE
tilGliner proilities of the ipher higherF reneD it is proven tht gmelli oers enough
seurity ginst dierentil nd liner ttksF
xote tht the result ove re sed on heorems I nd PF foth theorems del with generl
ses of peistel iphers with x round funtionD so we exp et tht gmelli is tully more
seure thn shown y the result oveF es supp orting evideneD we ounted the num er of tive
sE oxes of gmelli with redued roundsF he ounting lgorithm is similr to tht desri ed
in wWW exept following three itemsF
repre the tle for the num er of tive sE oxes insted of trnsition proility tleF
gount the num er of tive sE oxes insted of omputing trnsition proilityF
I
pvE nd pv Efuntions set ll elements to the minimumn umeroftive sE oxes in the
tleF his mens tht the lgorithm gives onsidertion to existene of wek sukeys inE
I
serted to pvE nd pv EfuntionsD sine there my e some p ossiility of onneting every
lter dierentilGliner hrteristi with the previous one with the highest proilityD
whih is equivlent to the minimumn um er of tive sE oxesF
es resultD we onrmed tht IPEround gmelli with pvE nd pvEfuntions hs no dierE
IPV
entilGliner hrteristi with proility higher thn P @see les IH nd IIAF
TFP runted hierentil gryptnlysis
he ttks using trunted dierentils were intro dued yunudsen uWSF re dened them
s dierentils where only prt of the dierene n e preditedF he notion of trunted
dierentils intro dued y him is wideD ut with yteEoriented ipher it is nturl to study
ytewise dierentils s trunted dierentils wWWF PU
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
5 of rounds I P Q R S T U V W IH II IP
IP QH RP TT WT
istimtion sed P P P P P
on hF I nd P @PA @SA @UA @IIA @ITA
T IP RP SR TT UP UP UV IHV IPH IQP
gmelli I P P P P P P P P P P P
@HA @IA @PA @UA @WA @IIA @IPA @IPA @IQA @IVA @PHA @PPA
I T IP RP SR TT UV WH IHV IPT IQP
without pvGpv E I P P P P P P P P P P
funtions @HA @IA @PA @UA @WA @IIA @IQA @ISA @IVA @PIA @PPA
xoteX he num ers in rkets re the numeroftivesEoxesF
le IHX pp er ounds of dierentil hrteristi proility of gmelli
5 of rounds I P Q R S T U V W IH II IP
IP QH RP TT WT
istimtion sed P P P P P
on hF I nd P @PA @SA @UA @IIA @ITA
T IP QT SR TT UP UP UV IHP IPH IQP
gmelli I P P P P P P P P P P P
@HA @IA @PA @TA @WA @IIA @IPA @IPA @IQA @IUA @PHA @PPA
I T IP QT SR TT UV VR IHV IPH IQP
without pvGpv E I P P P P P P P P P P
funtions @HA @IA @PA @TA @WA @IIA @IQA @IRA @IVA @PHA @PPA
xoteX he num ers in rkets re the numeroftivesEoxesF
le IIX pp er ounds of liner hrteristi proility of gmelli
he mximumdieren til proility is onsidered to provide the strit evlution of seuE
rity ginst dierentil ryptnlysisD ut omputing its vlue is imp ossile in generlD sine
dierentil is set of ll dierentil hrteristis with the sme input dierene nd the sme
output dierene for wrkov ipher vwwWIF yn the other hndD trunted dierentil
n e regrded s suset of the dierentil hrteristis whih re exploitle in ryptE
nlysisF por some iphersD eFgFD yteEoriented iphersD the proility of trunted dierentil
n e omputed esily nd orretlyD nd it gives more strit evlution thn the mximum
dierentil hrteristi proilityF
e trunted dierentil ryptnlysis of reduedEround vrints of iP ws presented y wtE
sui nd okit t pi9WW wWWF heir nlysis ws sed on the yte hrteristiD4 where
the vlues to the dierene in yte re distinguished etween nonEzero nd zeroF hey found
UEround yte hrteristiD whih leds to p ossile ttk on n VEround vrintofiPwithout
s Epuntion @the initil trnsformtionA nd pEpuntion @the nl trnsformtionAF he est
ttk of iP shown in weuHH reks n VEround vrint of iP with either s Epuntion or
WR
pEpuntion using P hosen plintextsF sn weuHH we lso show the ttk whih distinE
guishes UEround vrint of iP with s EndpEpuntions from rndomp erm uttion using
WI
P hosen plintextsF
gmelli is yteEoriented ipher similr to iPD nd it is imp ortnttoevlute its seurity
ginst trunted dierentil ryptnlysisF e serhed for trunted dierentils using n PV
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
lgorithm similr to the one desri ed in wWWD weuHHF he min dierene of the round
funtion etween iP nd gmelli is the doption of the IEround x not the PEround xD
V
iFeF EEF sn the serh for trunted dierentils of iPD we used out P s the proility
of dierene nelltion in yte t the y of peistel networkF roweverD the round funtion
of gmelli do esn9t hvethe seond sE oxesElyerD nd the nelltion sometimes o urs with
proility IF es resultD more thn IHEround gmelli is indistinguishle from rndom
I
permuttion oth withGwithout pvEGpv Efuntion lyersF
eentlyD ugit et lF9s pp er on trunted nd imp ossile dierentil ryptnlysis of
I
gmelli @without pvEGpv EfuntionsA ws epted for eseg PHHI usHIF hey
limtht they found t wo nonEtrivil WEround trunted dierentils @with the sme inputGoutput
dierentil ptternsAD whih led to p ossile ttk of gmelli redued to II rounds without
I
inputGoutput whitenings nd pvEGpv EfuntionsF rowever we think it is still op en howmny
rounds of gmelli n e ttked using the trunted dierentilsF
TFQ runted viner gryptnlysis
eintro due new ryptnlysis lled trunted liner ryptnlysisF
hue to the dulity etween dierentil nd liner ryptnlysisD we n evlute seurity
ginst trunted liner ryptnlysis y using similr lgorithm to tht oveF o put it
onretelyD we n p erform the serh y repling the mtrix of Efuntion with the trnsE
p osed mtrixF es resultD more thn IHEround gmelli is indistinguishle from rndom
I
permuttion without pvEGpv Efuntion lyersF
TFR gryptnlysis with smp ossile hierentil
he imp ossile dierentil mens the dierentil whih holds with proility HD or the dierenE
til whih never existsF sing suh n imp ossile dierentilD it is p ossile to nrrowdown the
ndidtes of the sukeyF st is known tht there is t lest one SEround imp ossile dierentil
in nypeistel network with ijetive round funtionF ine gmelli hs the peistel network
I
@with pvE nd pv Efuntions inserted etween every T roundsA nd the round funtion is ijeE
tiveD gmelli hs SEround imp ossile dierentilsF edditionlly s reent resultD ugit et lF
I
found UEround imp ossile dierentil for gmelli @without pvEGpv EfuntionsA usHIF e
I
exp et pvE nd pv Efuntions mke ttking gmelli using imp ossile dierentils diultD
sine the funtions hnge dierentil pths dep ending on key vluesF sn onsequentD gmelli
with full rounds will not e roken y ryptnlysis using imp ossile dierentilsF
TFS fo omerng ettk
fo omerng ttk WW requires P dierentilsF vet the proilityof the dierentils e p
nd p F en o omerng ttk tht is sup erior thn exhustivekey serh requires
r
TR
p p ! P X @TA
r
sing le IHD there is no omintion tht stises snequlity@TA for gmelli without pvE
I I
nd pv EfuntionsF he est o omerng proility for gmelli without pvE nd pv E
TT IP
funtions redued to VEround is ounded yP tht is otined y p aP @Q roundsA nd
PW
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
SR I
p aP @S roundsAF ine ttkle rounds for gmelli without pvEnd pv Efuntions is
r
ounded ymuh shorter thn the sp eition of gmelliD IVD gmelli seems seure ginst
o omerng ttkF
TFT righer yrder hierentil ettk
righer order dierentil ttk is generlly pplile to iphers tht n e represented s
fo olen p olynomils of low degreeF sn the higher order dierentil ttk desri ed in tuWUD
heoremID the prop ert y tht if the intermedite its re represented y fo olen p olynomils
of degree t le st dD the @d C IAEth order dierentil of the fo olen p olynomil eomes H is
utilizedF
hegrees of fo olen p olynomils of the sE oxes he funtions ne @over qp@PAA equivE
V
lent to the inversion funtion in qp@P A re dopted s the sE oxesF st is known tht the degree
V
of the fo olen p olynomil of every output it of the inversion funtion in qp@P A is UD ut the
degree for the sE oxes of gmelli is not trivilD sine the ne funtions re dded t the input
nd outputF e onrmed tht the degree of the fo olen p olynomil of every output it of the
sE oxes is U y nding fo olen p olynomil for every output it of the sE oxesF
hegrees of fo olen p olynomils of the entire ipher st is exp eted tht the degree
of n intermedite it in the enryption pro ess inreses s the dt pss through mny sE
oxesD whose degree is UF hereforeD we exp et tht higher order dierentil ttks fil
ginst gmelli with full roundsF roweverD there is still ro omfor further study on higher order
dierentil ttks of gmelliD euse there re other pprohes for higher order dierentil
ttksF sn uuHI uwt et lF shows tht gmelli with IH rounds @without pvE nd
I
pv EfuntionsA n e ttked fster thn exhustive serh when the key size is PSTEitF
he ttk is pplile to W rounds for IWPEit keys nd V rounds for IPVEit keysF elthough
the ove ttk is titled higher order dierentil ttk4D the used pproh is similr to
tht used for the qure ttkF
TFU qure ettk
he qure ttkws prop osed s dedited ttkon qure huWU tht exploits its
yteEoriented strutureF st works well for other yteEoriented iphers suh s ijndelD riero rypt
nd gmelliF por our ryptnlysis of gmelli using the qure ttkD see etF TFVF
he pproh of qure ttk resemles tht of higher order dierentil ttksX one
ho oses ertin omplete set of plintextsD nd fter some rounds of the ipherD predits
keyEindep endent prop erty with proility oneF he higher order dierentil ttk of gmelli
yuwt et lF uuHI lso tkes this pprohF
enother qure ttk y re nd ing rHI on T rounds of gmelli ws epted
for sgsg PHHIF he limed ttk on T rounds of gmelli requires muh more omplexE
IIP
ity thn uwt nd uneko9s ttk @the ttk rHI requires P enryptions nd the
PP V
ttk uuHI P aT enryptionsAD ut fewer plintexts @the ttk rHI requires IQ P
IU
plintexts nd the ttk uuHI P plintextsAF QH
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
TFV snterp oltion ettk nd viner um ettk
he interp oltion ttk prop osed in tuWU is typilly pplile to ttking iphers tht use
simple lgeri funtionsF
he priniple of interp oltion ttk is thtD roughly sp ekingD if the iphertext is represented
s p olynomil or rtionl expression of the plintext whose numer of unknown o eients
is x D the p olynomil or rtionl expression n e onstruted using x pirs of plintexts nd
iphertextsF yne the ttker onstruts the p olynomil or rtionl expressionD he n enrypt
nyplintext into the orresp onding iphertext or derypt ny iphertext into the orresp onding
plintext for the key without knowing the keyF ine x determines the omplexity nd the
num er of pirs required for the ttkD it is imp ortnttomke x s lrge s p ossileF sf x is
so lrge tht it is imprtil for the ttkers to gther x plintextEiphertext pirsD the ipher
is seure ginst interp oltion ttkF
viner sum ttk eHH is generliztion of the interp oltion ttk tuWUF e prtil
lgorithm tht evlutes the seurity ginst liner sum ttk ws prop osed in eHHF e
V
serhed for liner reltions etween ny plintext yte nd ny iphertext yte over qp@P A
using the lgorithmF le IP summrizes the resultsF
le IPX mllest num er of unknown o eients for IPVED IWPED nd PSTEit keys
whitening I C round r @r`RA I
whitening I C round R PSS
wore rounds PST
le IP shows tht gmelli is seure ginst liner sum ttk inluding interp oltion
ttkF st lso implies tht gmelli is seure ginst qure ttk huWU followed y eHHD
heoremQF
TFW xo iquivlent ueys
ine the set of sukeys generted y the key shedule ontin the originl seret keyD there
is no equivlent set of sukeys generted from distint seret keysF hereforeD we exp et tht
there re no distint seret keys oth of whih enrypt eh of mny plintexts into the sme
iphertextF
TFIH lide ettk
sn fWWD fHH the slide ttks were intro duedD sed on erlier work in fWRD uWQF sn
prtiulr it ws shown tht iterted iphers with identil round funtionsD tht isD equl
strutures nd equl sukeys in the round funtionsD re suseptile to slide ttksF
I
sn gmelliD pvE nd pv Efuntions re inserted4 etween every T rounds of peistel
network to provide nonEregulrity ross roundsF woreoverD from the viewp oint of the key
sheduleD slide ttks seems to e very unlikely to sueed @ee etion TFIIAF QI
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
TFII eltedEkey ettk
e re onvined tht the key shedule of gmelli mkes reltedEkey ttks fWRD uWT very
diultF sn these ttksD n ttker must e le to get enryptions using severl relted keysF
sf the reltion etweenD syDtwokeysD is known then if the orresp onding reltions etween the
sukeys n e predeterminedD it might eome p ossile to predit howthekeys would enrypt
pir of dierent plintextsF roweverD sine the sukeys dep end on u nd u D whih re the
e f
results of enryption of seret keyD nd if n ttker wnts to hnge the seret keyD he n9t
get u nd u desiredD nd vie versD these sukey reltions will e very hrd to ontrol nd
e f
preditF
TFIP ttistil ests
wost of sttistil hrteristis dep ends on the dierentil ttk nd other ryptnlyti
ttksF por exmpleD it is frequently disussed how mny iphertext its re omplemented
when one plintext it is omplementedF eording to the denition nd the prop erty of the
dierentil distriution tleD the resistne to dierentil ttks implies tht the numer of
omplemented its is out hlfF yf ourseD we my nd sttistil weknessD if we hve
enough omputtionl resoureF roweverD none in the world hs n eient resoure to ompute
suh sttistil mesure for IPVEit lo k ipherF
xote tht the followingF st is frequently tested for round funtionD euse of the limited
omputtionl resoureF roweverD we think tht it is not signintD euse we n onstrut
ipher tht do es not showgood sttistil prop erties for the round funtion ut shows go o d
sttistil prop erties for ipher nd we n lso onstrut ipher tht shows go o d sttistil
prop erties for the round funtion ut do es not show go o d sttistil prop erties for ipherF
sn the gig ep ort PHHH gHID it is rep orted tht the vlnheEeet evlution on
gmelli ws held nd tht they found some points whih devite from the exp eted vlue in
the round funtionD ut no prtiulr hrteristis in the dtErndomizing prt fter the Rth
roundF
TFIQ smplementtion ettks
st is well known tht poor implementtion n lek informtion y timing ttks uWT or
power nlysis ttks uttWWF sing the lssition prop osed in hWWD gmelli is in the
group of fvorle4 lgorithmsD sine it uses only logil op ertions nd tleElo okups nd xed
rottionsF
yn the other hndD ghri et lF gtWW lims tht ll ei ndidtes re suseptile to
power nlysis ttksF es these two pp ers ontrdit with eh otherD how to resist ginst
power nlysis ttks is not knownD sine study on p ower nlysis ttks hs just egunF e
think tht gmelli should e proteted y the hrdwre tehniques nd should not e evluted
y the seurity diretly derived fromthe sp eitionD onsidering the urren trtF ehopetht
the study on implementtion ttks will e progressed in the ner futureF QP
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
TFIR frute pore ettks
wost rute fore ttks re pplile to ny deterministi lo k ipherD nd the orresp onding
omplexity dep ends on only the lo k size or key size D regrdless of its designF gmelli hs
lo k size of IPVEit nd llows for the three key sizes of IPVED IWPED nd PSTEitF sn the
disussions elowD k denotes the key size in itsF
ixhustive key serhF sn exhustive key serhD if n ttker gets one pir of plintext
nd iphertext enrypted in igf mo deD he n nd the orret key y enrypting the plintext
k
with ll P p ossile keysF
ewekness in the key sheduling of the ipher n help improve the eieny of exhustive
key serh ttk uWRD ut we hvenot found suh wekness in gmelliF he omplexity
k I
of the exhustive key serh is estimted to e out P enryptions on vergeF husD the
IPU IWI PSS
required omplexity for exhustive key serh is P D P D nd P enryptions for gmelli
with IPVED IWPED nd PSTEit keysD resp etivelyF hereforeD gmelli9s seurity ginst exhustive
key serh is dequteF
imeEmemory trdeEo ttkF here re some words tht re often used in plintextsF
k k
sf n ttker enrypts suh plintext lo k using P keys nd store them in spe for P
iphertextsD then fter he gets the orresp onding iphertextD he only hs to lo ok it up to nd
k
the orresp onding keyF his ttkislled tle ttkF sn this ttkD fter P enryption is
doneD the ttk omplexityismuh smller thn is true for exhustivekey serhF
imeEmemory trdeEo ttk rVHD uwWT n drstilly redue oth time omplexityon
interepted iphertexts of exhustivekey serh nd spe omplexity of tle ttkF roweverD
oth ttks require preomputtion equivlent to the time omplexity of exhustivekey serhF
he key sizes supp orted y gmelli re long enough for seurity ginst exhustivekey serh
ytody9s tehnologyF
hitionry ttkF sn ditionry ttkD n ttker ollets plintextEiphertext pirs under
the sme key nd put them in ditionry4F hen the ttker n see only iphertext
enrypted y the keyDhenhek if it is in the ditionryF sf it isD he hs lredy the plintextF
IPV
ine the lo k size of gmelli is IPV itsD ditionry ttkwould require the spe for P
dierent plintext lo ks to llow the ttkers to enrypt or derypt ritrry messges under
n unknown keyF he suess proility dep ends on the spe for the ditionryD nd s
the lo k size is lrgerD the required spe to hieve the sme suess proility inreses
exp onentillyF he IPVEit lo k ipher gmelli hs enough seurity ginst this ttkF
wthing iphertext ttkF sn mthing iphertext ttk uWVD heoremPD when out
the squre ro ot of ll iphertexts re ville identil iphertext lo ks n e exp eted with
I
proility more thn y the irthdy prdox4 for some mo des of op ertions suh s igfD
P
gfgD nd gpf mo desF henD vlule informtion out the plintexts n e derivedF xote
tritly sp ekingD the omputtion time required for the ttk dep ends on the p erformne of the lo k
ipherF roweverD the p erformne only ets the enryption time nd only hnges the time omplexity y
negligile ftorF QQ
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
tht this ttk is indep endent of the key sizeF ine the lo k size of gmelli is IPV itsD the
TR
thret to this ttk is smllD if enryption of s mnysP lo ks under the sme key is not
p erformedF QR
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
U gonlusion
e hve presented gmelliD the rtionle ehind its designD its suitility for oth softwre
nd hrdwre implementtionD nd the results of our ryptnlysesF
he p erformnes shown in this pp er leve ro om for further optimiztionsF he ltest
p erformne results will e p osted on the gmelli home pgeX httpXGGinfoFislFnttFoFjpG
melliGF
ehve nlyzed gmelli nd found no imp ortntweknessF he ipher hs onservtive
design nd ny prtil ttks ginst gmelli would require m jor rekthrough in the
re of ryptnlysisF e think tht gmelli is very strong ipherD whihmthes the seurity
of the existing est lo k iphersF QS
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
eferenes
eHH uF eokiF rtil ivlution of eurity ginst qenerlized snterp oltion ettkF
sisgi rnstions pundmentls of iletronisD gommunitions nd gomputer
ienes @tpnAD olF iVQEeD xoF ID ppF QQ{QVD PHHHF @e preliminry version ws
presented t eg9WWAF
efuWV F endersonD iF fihmD nd vF unudsenF erp entX e plexile flo k gipher ith
wximumessurneF sn he pirst ei gndidte gonfereneD IWWVF
C
esu HH uF eokiD F shikwD wF undD wF wtsuiD F woriiD tF xk jimD nd F okitF
smplementtions of the IPVEit lo k ipher { gmel li {F ehnil ep ort
sigPHHHEUQD he snstitute of iletronisD snformtion nd gommunition inE
gineersD PHHHF @in tpneseAF
C
esu HH uF eokiD F shikwD wF undD wF wtsuiD F woriiD tF xk jimD nd F okitF
gmel liX e IPVEfit flo k gipher uitle for wultiple ltforms { ixtended eE
strt {F sn pirst xisi orkshopD PHHHF
e HH uF eoki nd rF edF yptimized oftwre smplementtions of iPF sisgi
rnstions pundmentls of iletronisD gommunitions nd gomputer ienes
@tpnAD olF iVQEeD xoF ID ppF IHI{IHSD PHHHF @he full pp er is ville on
httpXGGinfoFislFnttFoF7 linerekQjpGePGelhosGAF
fWR iF fihmF xew yp es of gryptnlyti ettks sing elted ueysF tournl of
gryptologyDolF UD xoF RD ppF PPW{PRTD IWWRF @he extended strt ws pp ered
t i yg9WQAF
fWQ iF fihm nd eF hmirF hierentil gryptnlysis of the ht inryption tnE
drdF pringerEerlgD ferlinD reidel ergD xew orkD IWWQF
fWW eF firyukov nd hF gnerF lide ettksF sn vF unudsenD editorD pst oftwre
inryption | Tth snterntionl orkshopD pi9WWD olume ITQT of veture xotes
in gomputer ieneD ppF PRS{PSWD ferlinD reidel ergD xew orkD IWWWF pringerE
erlgF
fHH eF firyukov nd hF gnerF edvned lide ettksF sn F udenyD editorD
edvnes in gryptology | i ygPHHHD olume IVHU of veture xotes in
gomputer ieneD ppF SVW{THTD ferlinD reidel ergD xew orkD PHHHF pringerE
erlgF
gWV gompq gomputer gorp ortionF elph erhiteture rndook @ersion RAD
IWWVF @ou n downlod the mnul from gompq9s tehnil do umenE
ttion lirryX httpXGGwwwFsupportFompqFomGlphEtoolsGdoumenttionG
urrentGhipEdosFhtmlAF
gHI gigF gig ep ort PHHHD epril PHHIF QT
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
gtWW F ghriD gF tutlD tF F oD nd F ohtgiF e gutionry xote egrding ivluE
tion of ei gndidtes on mrtEgrdsF sn eond edvned inryption tndrd
gndidte gonfereneDppF IQQ{IRUD rotel uirinleD omeD stlyD IWWWF snformtion
ehnology v ortoryD xtionl snstitute of tndrds nd ehnologyF
gWS pF ghud nd F udenyF vinks fetween hierentil nd viner gryptnlyE
sisF sn eF hF ntisD editorD edvnes in gryptology | i yg9WRD olume
WSH of veture xotes in gomputer ieneD ppF QST{QTSF pringerEerlgD ferlinD
reidel ergD xew orkD IWWSF
huWU tF hemenD vF F unudsenD nd F ijmenF he flo k gipher qureF sn iF fihmD
editorD pst oftwre inryption | Rth snterntionl orkshopD pi9WUD olume
IPTU of veture xotes in gomputer ieneD ppF SR{TVD ferlinD reidel ergD xew
orkD IWWUF pringerEerlgF
hWV tF hemen nd F ijmenF ei roposlX ijndelD IWWVF @httpXGGwwwFestF
kuleuvenFFeG~rijmenGrijndelGAF
hWW tF hemen nd F ijmenF esistne eginst smplementtion ettksF e gomE
prtive tudy of the ei rop oslsF sn he eond ei gndidte gonfereneD
IWWWF
pHH eF pogF row to optimize for the entium miroproessorsD PHHHF @httpXGGwwwF
gnerForgGssemGAF
rVH wF rellmnF e gryptnlyti timeEmemory trdeEoF siii rnstions on snforE
mtion heoryDolF sEPTD xoF RD ppF RHI{RHTD IWVHF
rHI F re nd F ingF qure ettkon edued gmelli gipherF sumitted to the
Qrd snterntionl gonferene on snformtion nd gommunitions eurity @sgsg
PHHIAD PHHIF
sWW sntel gorp ortionF sntel erhiteture oftwre heveloper9s wnul @olume PX snE
strution et efereneAD IWWWF @ou n downlod the mnul fromsn tel9s develop er
siteX httpXGGdeveloperFintelFomGAF
suwHI F shikwD F orimhiD F usuyD nd wF wtsuiF yn the riteri of hrdwre
evlution of lo k iphers @IAF ehnil ep ort sigPHHIESQD he snstitute of
iletronisD snformtion nd gommunition ingineersD PHHIF @in tpneseAF
tuWU F tkosen nd vF F unudsenF he snterp oltion ettk on flo k gipherF sn
iF fihmD editorD pst oftwre inryption | Rth snterntionl orkshopD pi9WUD
olume IPTU of veture xotes in gomputer ieneDppF PV{RHD ferlinD reidel ergD
xew orkD IWWUF pringerEerlgF
uWQ vF F unudsenF gryptnlysis of vyusWIF sn tF e erry nd F hengD editorsD edE
vnes in gryptology | e g9WPDolume UIV of veture xotes in gomputer
ieneDppF IWT{PHVF pringerEerlgD ferlinD reidel ergD xew orkD IWWQF QU
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
uWR vF F unudsenF rtilly seure peistel iphersF sn F endersonD editorD pst
oftwre inryption IWWQ | gmridge eurity orkshop @piIADolume VHW of
veture xotes in gomputer ieneD ppF PII{PPID ferlinD reidel ergD xew orkD
IWWRF pringerEerlgF
uWS vF F unudsenF runted nd righer yrder hierentilsF sn fF reneelD editorD
pst oftwre inryption | eond snterntionl orkshopDolume IHHV of veture
xotes in gomputer ieneD ppF IWT{PIIF pringerEerlgD ferlinD reidel ergD xew
orkD IWWSF
uWT F uo herF iming ettks on smplementtions of hieErellmnD eD hD nd
yther ystemsF sn xF uolitzD editorD edvnes in gryptology | gy9WTD
olume IIHW of veture xotes in gomputer ieneDppF IHR{IIQF pringerEerlgD
ferlinD reidel ergD xew orkD IWWTF
uWV vF F unudsenF flo k giphers |e urveyF sn fF reneel nd F ijmenD editorsD
tte of the ert in epplied gryptogrphyDolume ISPV of veture xotes in gomputer
ieneDppF IV{RVD ferlinD reidel ergD xew orkD IWWVF pringerEerlgF
uHH wF undF rtil eurityivlution ginst hierentil nd viner ettks for
peistel giphers with x ound puntionF sn egPHHHD eventh ennul orkshop
on eletederes in gryptogrphyD IREIS eugust PHHHD orkshop eordDPHHHF
uttWW FuoherD tF teD nd fF tunF hierentil ower enlysisF sn wF ienerD editorD
edvnes in gryptology | gy9WWDolume ITTT of veture xotes in gomputer
ieneDppF QVV{QWUF pringerEerlgD ferlinD reidel ergD xew orkD IWWWF
uuHI F uwt nd F unekoF e tudy on righer yrder hierentil ettk of
gmelliF sn eond xisi orkshopD PHHIF @his pp er is sed on F uwtD
F yhgki nd F unekoD e tudy on trength of gmelli ginst righer yrder
hierentil ettkD4 @in tpneseAD ehnil rep ort of sisgiD sigPHHIEWD ppFSS{
TPD he snstitute of iletronisD snformtion nd gommunition ingineersD PHHIFAF
uwWT uF uusud nd F wtsumotoF yptimiztion of imeEwemory rdeEy gryptE
nlysis nd sts epplition to hiD pievEQPD nd kip jkF sisgi rnstions
pundmentls of iletronisD gommunitions nd gomputer ienes @tpnAD
olF iUWEeD xoF ID ppF QS{RVD IWWTF
C
uwe WV wF undD F woriiD uF eokiD rF edD wF yhku oD F kshimD uF yhtD nd
F wtsumotoF e xew IPVEit flo k gipher i P F ehnil ep ort sigWVEIPD
he snstitute of iletronisD snformtion nd gommunition ingineersD IWWVF @in
tpneseAF
uWT tF uelseyD fF hneierD nd hF gnerF ueyEhedule gryptnlysis of shieD qE
hiD qyD epiD nd ripleEhiF sn xF uolitzD editorD edvnes in gryptology
|gy9WTDolume IIHW of veture xotes in gomputer ieneDppF PQU{PSIF
pringerEerlgD ferlinD reidel ergD xew orkD IWWTF QV
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
C
uw WW wF undD F kshimD F wtsumotoD uF eokiD nd uF yhtF e trtegy for
gonstruting pst ound puntions with rtil eurity ginst hierentil nd
viner gryptnlysisF sn F vres nd rF weijerD editorsD eletederes in grypE
togrphy | Sth ennul snterntionl orkshopD eg9WVD olume ISST of veture
xotes in gomputer ieneD ppF PTR{PUWD ferlinD reidel ergD xew orkD IWWWF
pringerEerlgF
vwwWI F viD tF vF wsseyD nd F wurphyF wrkov giphers nd hierentil gryptnlysisF
sn hF F hviesD editorD edvnes in gryptology | i yg9WIDolume SRU of
veture xotes in gomputer ieneDppF IU{QVF pringerEerlgD ferlinD reidel ergD
xew orkD IWWIF
wWR wF wtsuiF viner gryptnlysis wetho d for hi gipherF sn F rellesethD editorD
edvnes in gryptology | i yg9WQDolume UTS of veture xotes in gomE
puter ieneD ppF QVT{QWUF pringerEerlgD ferlinD reidel ergD xew orkD IWWRF
@e preliminry version written in tpnese ws presented t gsWQEQgAF
wWS wF wtsuiF yn gorreltion fetween the yrder of E oxes nd the trength of
hiF sn eF hF ntisD editorD edvnes in gryptology | i yg9WRDolume
WSH of veture xotes in gomputer ieneD ppF QTT{QUSF pringerEerlgD ferlinD
reidel ergD xew orkD IWWSF
wWU wF wtsuiF xew flo k inryption elgorithm wsF sn iF fihmD editorD
pst oftwre inryption | Rth snterntionl orkshopD pi9WUD olume IPTU
of veture xotes in gomputer ieneD ppF SR{TVD ferlinD reidel ergD xew orkD
IWWUF pringerEerlgF @e preliminry version written in tpnese ws presented t
sigWTEIIAF
wWW wF wtsuiF hierentil th erh of the flo k gipher iPF ehnil ep ort
sigWWEIWD he snstitute of iletronisD snformtion nd gommunition ingineersD
IWWWF @in tpneseAF
wsVV wF wtsuiD F snoueD eF mgishiD nd rF oshidF e note on lultion iruits
Pn
over qp@P AF ehnil ep ort sVVEIRD he snstitute of iletronisD snformtion
nd gommunition ingineersD IWVVF @in tpneseAF
weuHH F woriiD wF ugitD uF eokiD nd wF undF eurity of iP ginst runted
hierentil gryptnlysisF sn rF reys nd gF edmsD editorsD eleted eres in
gryptogrphy | Tth ennul snterntionl orkshopD eg9WWDolume IUSV of veE
ture xotes in gomputer ieneD ppF IHT{IIUD ferlinD reidel ergD xew orkD PHHHF
pringerEerlgF
wWW wF wtsui nd F okitF gryptnlysis of edued ersion of the flo k gipher
iPF sn vF unudsenD editorD pst oftwre inryption | Tth snterntionl orkshopD
pi9WWD olume ITQT of veture xotes in gomputer ieneD ppF UI{VHD ferlinD
reidel ergD xew orkD IWWWF pringerEerlgF @tpnese version ws presented t
gsWWFAF QW
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
C
h WT F ijmenD tF hemenD fF reneelD eF fosselersD nd iF he inF he gipher
reuF sn hF qollmnnD editorD pst oftwre inryption | hird snternE
tionl orkshopDolume IHQW of veture xotes in gomputer ieneDppF WW{IIIF
pringerEerlgD ferlinD reidel ergD xew orkD IWWTF
usHI wF ugitD uF uorD nd rF smiF eurity of edued ersion of the flo k gipher
gmelli ginst runted nd smp ossile hierentil gryptnlysisF sumitted to
eseg PHHID PHHIF
WW hF gnerF he fo omerng ettkF sn vF F unudsenD editorD pst oftwre inE
ryption | Tth snterntionl orkshopD pi9WWDolume ITQT of veture xotes in
gomputer ieneD ppF IST{IUHD ferlinD reidel ergD xew orkD IWWWF pringerE
erlgF
HI gFErF ngF erformne ivlution of eiGhiGgmelli on the TVHS nd rVGQHH
g sF sn roeedings of the PHHI ymposium on gryptogrphy nd snformtion
eurityDolume s s of gsPHHIDppF UPU{UQHD yisoD tpnD PHHIF ehnil qroup
on snformtion eurity @sisgiAF
HI gFErF ngF upplementry informtion for gFrF ng gs PHHI pp erF
httpXGGwwwFgeo itiesFomGhyngHHGgsPHHID PHHIF RH
gopyright x nd witsuishi iletri gorp ortion PHHHEPHHI
e ristory
er PFH @eptem er PTD PHHIA
estrt ws renewed with the ltest p erformne guresF
etion ID the prgrph of puture developments4 ws renewed sed on the urrent
sttusF he title ws lso hnged into tndrdiztion tivities4F
etion Q ws renewed with the ltest p erformne guresF
sn etion RFPFUD the eqution to lulte iqF@QA using only four tlesD Y Y Y D
I P Q R
ws orretedF
etion S ws renewed y dding the ltest informtion on hrdwre evlutionsF
sn etion TFI @hierentil nd viner gryptnlysisAD n errtum in leIH pp er
ounds of dierentil hrteristi proility of gmelli4 @in the row of without
I
pvapv Efuntions4A ws xedF
etion TFP @runted hierentil gryptnlysisA ws renewed y dding the reent resultF
etion TFR @gryptnlysis with smp ossile hierentilA ws renewed y dding the reent
resultF en errtumw s lso xedX more thn T rounds4 3 more thn S rounds4
etion TFT @righer yrder hierentil ettkA ws renewed sed on the reent resultF
etion TFU @qure ettkA ws ddedF
etion TFIP @ttistil estsA ws renewed y dding more informtionF RI