c
he iih gipher
uling heng
hool of gomputingD wonsh niversity
wwhons odD prnkstonD wel ourneD sg QIWWD eustrli
imilX yzhengdfitFmonshFeduFu
estrtF iih is privte key lo k ipherF st supp orts three vriE
le prmetersX @IA dt length | the length of plintextGiphertext
of iih n e TRD IPV or PST itsF @PA key length | the length of n
enryptionGderyption key of iih n e ny integer etween RV nd
PST @inlusiveA nd divisile y ITF @QA rounds | the numer of rounds
involved in enryptionGderyption n e ny integer divisile y R ut
not smller thn QPF
iih is omptD whih is indited y the ft tht the o jet o de
of strightforwrd implementtion of iih in the progrmming lnE
guge g o upies less thn Q kiloEytesF st mkes full use of urrentD
nd more imp ortntlyD emerging g rhitetures whih host lrge
numer of highEsp eed hrdwre registers diretly ville to ppliE
tion progrmsF enother imp ortnt feture of iih is tht it is uilt
on reent reserh results on highly nonliner ryptogrphi funtionsD
s well s other ounterEmesures ginst dierentil nd liner ryptE
nlyti ttksF
st is hop ed tht the omptnessD high throughput nd djustle pE
rmeters oered y iihD together with the ft tht the ipher is
in the puli dominD would mke it n ttrtive lterntive ipher for
seurity pplitions inluding eletroni nnil trnstionsF
I hesign hilosophy
he im of this pp er is to introdue privte key ipher tht is suitle for softE
wre implementtion nd tkes the mximum dvntge of emerging omputer
rhitetures tht host n inresing numer of fst internl hrdwre registers
diretly ville to pplition progrmsF he ipher is lled iih whih
stnds for eure kge for inrypting iletroni htF
gryptogrphi strength of iih is uilt on reent reserh results on onE
struting highly nonliner fo olen funtions ISD ITF yp ertion eieny is n
imp ortnt ftor tht hs een tken into ount in the pro ess of designF enE
other design gol is to provide the ipher with ppliility to fst oneEwy hshE
ing nd eient genertion of ryptogrphilly strong pseudoErndom numersF
inryption nd pseudoErndom numer genertion hve diret pplitions in
c
he soure o de of iih implemented in the progrmming lnguge g is lo ted
t the following vX httpXGGpsitEwwwFfitFmonshFeduFuG~yulingG
providing dt ondentilityD wheres oneEwy hshing is essentil for eient
uthentition nd digitl signtureF
hile most smrt rds use VEit g sD worksttions nd p ersonl omputE
ers re minly sed on QPEit g s whih supp ort fst pro essing of VD IT nd
QPEit dtF imilrlyD emerging TREit g s supp ort eient hndling of VD ITD
QP nd TREit dtF his results in our deision for the si dt unit for the
enryptionGderyption op ertion of iih to e VEitD ITEit or QPEit wordF
es plintextGiphertext of iih onsists of V wordsD hoosing VEit word s
the si dt unit results in lo k ipher on TREit dtD ITEit word results
in lo k ipher on IPVEit dtD nd QPEit word results in lo k ipher on
PSTEit dtF he pro ess of iih is omp osed of R pssesD eh involving V
or more onseutive roundsF hus similrly to gS IRD iih supp orts three
vrile prmetersD nmely dt lengthD key length nd the numer of roundsF
elevnt ides on vrile prmeters were previously used in oneEwy hshing
lgorithm lled reev IVF
e itEwise nonliner fo olen op ertion is employed in eh roundF o strengthen
the ipher ginst the dierentil ttk prop osed y fihm nd hmir ID
dtEdep endent yli shift is pplied on the output of the op ertionF his tehE
nique ws inspired y gSF he use of mximlly nonliner fo olen funtion
in itEwise fo olen op ertion would help thwrt the liner ttk disovered
y wtsui WF
he reminder of this pp er is orgnized s followsX etion P detils the
sp eition of iihD etion Q provides kground informtion on the round
trnsform used in iihD nd etion R disusses the onstrution nd prop erE
ties of the ve nonliner fo olen funtions used in iihF e preliminry nlE
ysis of the strength of the ipher ginst ryptnlysis is rep orted in etion SD
while omprison of iih with other iphers in terms of its throughput @the
numer of its enryptedGderypted p er unit of timeA is provided in etion TF
pinlly pplitions of iih in oneEwy hshing nd pseudoErndom numer
genertion re suggested in etions U nd VF
P hesription of iih
pirst we introdue few terms used in this pp erF es ommon prtieD yte
is omp osed of V itsF es we mentioned erlierD y word we men string of VD
IT or QP itsF ell its in yte or word re indexedD strting with HD from right
to left hnd sideF st is onvenient to ll right hnd side its lower its D while
left hnd side its upper itsF hree types of op ertions re pplied to dtF he
rst is itEwise fo olen op ertionsD the seond is yli shifts @iFeFD rottionA to
the right or leftD nd the third is mo dulr dditionsF
sn the following disussions we use w to indite the length of @iFeD the numer
of its inA plintextGiphertextD the length of keyD nd r the numer of
roundsF w n e hosen to e TRD IPV or PSTD n integer etween RV nd PST
@inlusiveA nd divisile y ITD nd r n integer lrger thn or equl to QP nd
divisile y RF iih with prmeters w D nd r my e denoted y @w Y Y r AE
iihD or simply y w Eit iih if the length of key nd the numer
of rounds re not onernedF sn le ID vrious p ossile omintions of the
P
prmeters w D nd r tht would provide dequte seurity re suggested F st
is reommended tht iih with less thn RH rounds e used only for oneEwy
hshingF
plinGiphertext length w TR IPV PST
@in itsA
key length @in itsA
@ a RVY TRY XXXY PSTD ! TR ! TR ! TR
divisile y ITA
numer of rounds r
@r a QPY QTY RHY XXXD ! TR ! RV ! RV
divisile y RA
le IF iih rmeters for edequte eurity @ r ` RV my e hosen only when
iih is used for oneEwy hshingA
PFI inryption
qiven key u of itsD iih srmles plintext w of w its into
iphertext g of the sme lengthF
plow of ht he ow of dt in iih is depited in pigure IF e ryptoE
grphi key u D whih is string of itsD is rst expnded y the key sheduling
funtion into four suEkeys u D u D u nd u F ih u D i a IY PY QY RD onsists
I P Q R i
r r
words or round keys where indites the numer of rounds in eh pssF of
R R
w
e plintext w is internlly represented s V wordsD eh itsF hese V
V
words re pro essed y D D nd onseutivelyF ih D i a IY PY QY RD
I P Q R i
is lled pss nd involves suEkey u F he output g of represents the
i R
iphertext of the originl plintext w F
pour snternl sses es n e seen from pigure PD the four internl psses
D i a IY PY QY RD ll op erte in similr fshionD lthough eh pss employs
i
dierent suEkeyD s well s dierent nonliner funtion for itEwise fo olen
op ertionsF he four nonliner itEwise op ertions re shown in le P in the
form of logi sum @yA of pro dut @exhA4F
P
ee lso reent rep ort y flze et l P whih suggests tht the length of key for
privte key ipher should e t lest US to provide dequte seurity for ritil
ommeril pplitionsF M
K 1 P 1
K 2 P 2 M a plaintext (64, 128 or 256 bits) K S C a ciphertext (64, 128 or 256 bits) K an encryption key (48,64,..., or 256 bits) K 3 P 3 K i a sub-key (r/4 words, r=32,36,40,...)
Pi a pass (r/4 rounds) S key scheduling K 4 P 4
C
pigF IF inryption sing iih
in p @ Y Y FFF Y A a
I I T S H T Q S I R P I H H
in p @ Y Y FFF Y A a
P P T S H T R H R Q H S P R Q R I Q H I
in p @ Y Y FFF Y A a
Q Q T S H S R H T R S P Q H I H Q
in p @ Y Y FFF Y A a
R R T S H T R P H T S R Q Q P I H P
where
w
Eit word @w a TRY IPV or PSTAD eh is
i
V
represents the itEwise exhD nd
i j
represents the itEwise y of the two words involvedF
i j
le PF fitEise xonliner fo olen yp ertions sed in D D nd
I P Q R
r
he input dt @ string of V wordsA to is pro essed in onseutive
i
R
roundsD eh involving the orresp onding word in the suEkey u D where i a
i
IY PY QY RF sn the rst round @round HAD the rst U words in the input re itEwise
pro essed ording to p whih is shown in le PF he result of this op ertion
i
is then ylilly shifted to rightF he ext numer of its y whih the result is
w
ylilly shifted is determined y the upp er log its of the @hlfEwordA sum
P
V
w
its re indexed of the left nd right hlves of the resultF hese upp er log
P
V
y ID P nd Q for w a TRD y RD SD T nd U for w a IPVD nd y IID IPD IQD IR
nd IS for w a PSTF he shifted version of the result of the nonliner itEwise
w
V
op ertion is dded @in the sense of mo dulo P A to the ylilly shifted @to the
w