You are on page 1of 19

Kd z utntikciu pruk

Kd z utntikciu pruk (ng. Message Authentication Code MAC)


dnsmrn h funkci, zvisn d klu. MAC s kristi z prvru intgritt pruk i
utntikciu utr pruk. Prvru m d izvri sm n k im klu idntin nm
ki kritn prilikm gnrisnj MAC-a. lgritmi z gnrisnj MAC-a mgu d s
zsnivu n blk ifrskim lgritmim ili n h funkcim.
CBC-MAC je MAC lgritm bzirn n primni CBC md blk ifrskg
lgritm. Pruk x s izdili n n blkv i uz uptrbu klu K itrtivn s izrunv:
H i=E K ( H i1 x i ) ,1 i n

(4)

Iniciln vridnst H0 niz nul, i duin dnk duini blk. MAC vridnst
psldnji ifrvni blk, stli ifrvni blkvi s dbcuu. Vrifikciu MAC vridnsti
m d urdi sm n k im klu K i t n nin d izrun MAC vridnst n pisni
nin i d uprdi s primlnm vridnu. k su vridnsti dnk vrifikci
uspn. k nk k n zn klu K izvri izmn u pruci, n n mi gnristi nvi
MAC z izmnjnu pruku, p MAC n biti vlidn. Rni k blk ifrski lgritm
kritn DES lgritm, li sd s prpruu uptrb AES lgritm.
HMAC (ng. Hash-based MAC) MAC lgritm bzirn n primni h funkci u
kmbincii s klum. st s, u zvisnsti d izbr h funkci, skrnic HMAC
priru ddvnjm nziv h funkci, p tk imm HMAC-MD5, HMAC-SHA1,
HMAC-SHA256, ... snvn id n k s zsnivu MAC glritmi bzirni n h
funkcii d s klu i pruk ndvzuu, ztim s izrunv h dbin vridnsti.
Dv ndnstvni pristup su d s klu dd pruci k prfiks ili k sufiks. k s
klu dd pruci k prfiks MAC izrunv n sldi nin:
MAC k ( x)=h (k || x)

(5)

Slin, k s klu dd pruci k sufiks MAC :


MAC k ( x)=h ( x ||k )

(6)

Simbl || vd znv spnj klu k i pruk x, a h znv h funkciu. v dv


pristup nisu kriptgrfski sigurn.
Kristi s tri pristup, ki zprv dfini HMAC lgritm. Prv s vri
pririvnj klu k ddvnjm niz nul n kr klu, tk d vliin rzultuug klu
k+ bud dnk vliini ulzng blk h funkci. Ztim s vri prci XOR nd
prirnim klum k+ i knstntm ipad. Knstnt ipad prdstvl niz ki sstvln d
bt 00110110, pnvlng nlik put klik ptrbn d s frmir blk vliin
ulzng blk h funkci.
ipad=0011011000110110 ...00110110

(7)

Rzultt prci XOR s sp s prukm x, tk t s dd n ptk pruk. Nd


rzulttm spnj s primnju h funkci h[(k+ ipad)||x]. Ztim s vri prci XOR
nd prirnim klum k+ i knstntm opad. v kntnt , k i ipad, vliin ulzng
blk h funkci, sm bt ki s pnvl drugii.
opad=0101110001011100 ... 01011100

(8)

Rzultt v prci XOR s s sp s izruntm h vridnu, tk t s dd n


ptk h vridnsti. N kru s primnju h funkci n tk dbin niz i izrunt
h vridnst prdstvl HMAC vridnst.
HMAC k ( x)=h[( k + opad )||h [(k + ipad) ||x ]]
HMAC lgritm im irku primnu, izmu stlg kristi s z utntikciu pruk u
prtklim IPsec i TLS.

One-time password
One-time password (OTP) lzink k s kristi sm dnm, dnsn vlidn
sm z dn prcs utntikci. Svk nv utntikci zhtv gnrisnj nv
lzink. Psti vi br lgritm z gnrisnj OTP-, nki su vlsniki (npr. RSA
SecurID lgritm), nki su tvrni (npr. scici Initiative for Open Authentication
rzvi tvrn stndrd).

Lamport-v m
Kk s nvdi u [20] one-time password mu prvi prdstvi Leslie Lamport u
[21], ksni u Bellcore-u n snvu tg rd implmntirn S/KEY one-time password
sistm z utntikciu. Lamport-v m s zsniv n uptrbi h funkci i gnrisnju
lzinki k s bziru n prthdn. N ptku krisnik dbr slun niz P.
Gnrisnj lzinki s vri tk t s izvrav h funkci f vi put n sldi nin f(P),
f(f(P)), f(f(f(x))) i tk dl, sttinu ili hildu put. Dbin h vridnsti mm
zniti s x1, x2, x3, , x100. Krisnik dbi listu vih vridnsti n ppiru ili n nki drugi
nin. Srvr izrunv x101 i uv sm tu h vridnst, z dtg krisnik. Kd krisnik
pristupi prcsu utntikci n unsi, prd svg krisnikg imn, vridnst x100. Srvr
izrunv f(x100) i upru tu vridnst s x101. k s slu, utntikci krisnik
uspn. Srvr sd umst pdtk x101 uv x100. Krisnik prilikm sld utntikci
kristi x99, dkl kristi s psldnj niskritn lzink. U ptm sluu krisnik unsi
h vridnst xi, srvr izrunv f(xi) i upru tu vridnst s xi+1. Kd krisnik
iskristi sv lzink mr d dbr nvu inicilizcinu vridnst P i pr pnvni
prcs gnrisnj nvih lzinki. Sigurnst vg sistm s zsniv n sigurnsti h

(9)

funkci. k npd prislukuui d d lzink xi , n n imti kristi d nj, r


n v iskritn. Npd znim sld lzik xi-1, d bi n snvu xi d d xi-1 n
mr d izvri invrznu prciu prcii hirnj f-1(xi)= xi-1. k h funkci
kriptgrfski sigurn t prktin nizvdliv.

HMAC bzirni One-time password


scici Initiative for Open Authentication 2005. gdin u [22] dfinisl
HOTP, one-time password sistm bzirn n h bzirnm kdu z utntikciu pruk
HMAC. HOTP lgritm s zsniv n uptrbi br C i klu K. Klu pznt sm
srvru ki vri vlidciu i tknu ki gnri dnkrtnu lzinku. Svkm tknu
ddln dinstvn klu. kn kg krisnik kristi m biti hrdvrski ili sftvrski. Z
gnrisnj HOTP vridnsti kristi s HMAC-SHA1 lgritm. Prvi krk kd gnrisnj
HOTP vridnsti prdstvl runnj HMAC-SHA1 vridnsti n snvu klu K i
br C.
HS=HMAC-SHA1(K ,C)

(10)

H funkci SHA1 gnri 160-bitnu h vridnst, p HS vliin 20 btv. Dbin


vridnst prdugk z unnj d strn krisnik prilikm utntikci, p s vri
skrivnj. v prcs s nziv dinmik skrivnj. Dinmik skrivnj zppinj
uzimnjm 4 nni bit krnjg dsng bt vridnsti HS. Knvrtvnjm t 4 bit u
br dbi s pmr i vridnst izmu 0 i 15, ukluuui i njih.
0 p m r 15

(11)

Pmr dru k 4 bt d mguih 20 biti dbrni. Uzim s bt ii rdni br


bri s liv dnk dbinm pmru i uz njg nrdn tri bt.

P=b t [ p m r ] b t[ p m r +3 ]

(12)

Ztim s primnju msk nd dbinm vridnu P, tk d s sigur d vit nvi


tin bud dnk nuli. s rdi zbg pstiznj intrprbilnsti izmu prcsr,
dnsn d s izbgn zbun izmu znnih i nznnih brv prilikm ksnig
mdulrng runnj. skirnj nvig bit s rdi n sldi nin:
PM =P& 0 x 7 FFFFFFF

(13)

I n kru s izrunv HOTP vridnst, tk d im lnu duinu:


HOTP=PMmod 10d
vd d znv lni br cifr u knn HOTP vridnsti. bin t d 6 d 8
cifr.
Br C s n srvru inkrmntu sm nkn uspn utntikci, dk s n
tknu br inkrmntu svki put kd krisnik ztri nvu dinstvnu lzinku HOTP.

(14)

k krisnik n kristi lzinku z utntikciu, gnri ih, bri n srvru i tknu


gub sinhrnizciu. prblm s rv n nin d srvr prvrv HOTP vridnsti
z nklik sldih vridnsti br C i prdi s primlnm HOTP vridnu. k s
vridnsti pklpu, nd izvrn rsinhrnizci.
HOTP bspltn i tvrn lgritm, p rlizvn vi br implmntci u
vidu hrdvrskih tkn, li i u vidu sftvrskih plikci n mbilnim pltfrmm. Pst
implmntci z gtv sv mbiln pltfrm, p mbilni uri mgu d s krist k
tkni.
HOTP s svrstv u grupu sistm z dnkrtn lzink ki su zsnvni n
dgu (ng. event-based one-time password), r s gnrisnj nv dnkrtn lzink
inicir dgm zhtvm krisnik. Svkim nvim zhtvm s inkrmntir vridnst
br C, pt HOTP vridnst dirktn zvisi d br, t vridnst s minj sm
u zvisnsti d kci krisnik.

Time-Based One-Time Password


scici Initiative for Open Authentication 2011. gdin bvil Time-Based
One-Time Password (TOTP) lgritm ki bzirn n vrmnu (ng. time-based one-time
password) u [24]. U sutini TOTP mdifikvn vrzi HOTP lgritm, prilgn d
umst br C kristi vrim k snvu z gnrisnj dinstvnih dnkrtnih
lzinki. U snvi, TOTP s dfini izrzm (15).
TOTP=HOTP( K , T )

(15)

vd clbrn vridnst k s inkrmntu svkih 30 ili 60 skundi, u


zvisnsti d vliin vrmnskg krk X. Prcizni s dbi n sldi nin:
T =(tr nutn _ vri m 0)/ X
Gd X vrmnski krk u skundm, pdrzumivn X = 30. Dk 0 Unix vrim,
d kg s pinj runti vrim, pdrzumivn 0 = 0 (t prdstvl 1.1.1970).
Nkn dilnj vri s zkruivnj n nvi cili br ki mnji d dbing
rzultt dilnj (floor funkci).
One-time password-i gnrisni unutr dng vrmnskg krk X biti isti.
Prilikm utntikci srvr prim krisnikv OTP i gnri OTP z dgvrug
krisnik, kristi vrim kd primln krisnikv OTP. Ztim prdi v dv OTP-,
k su isti utntikci uspn. Dkl, OTP vlidn sm k gnrisn i primln
n vlidcinm srvru u kviru istg vrmnskg krk X.
Zbg vrmnskg knjnj pri prnsu krz mru, vrmnski prid izmu
trnutk kd OTP gnrisn i trnutk kd stig n srvr m biti vlik. Zbg tg
srvr prilikm prvr primlng OTP- m gnristi rzliit OTP d primlng, r
istk vrmnski prid X unutr kg krisnik gnris OTP. I kd knjnj pri

(16)

prnsu krz mru ni vlik v prblm m d s vi k krisnik gnri OTP prd


kr vrmnskg prid X, p OTP biti primln n srvru u sldm vrmnskm
krku i utntikci n biti uspn. D bi s v prblm izbg srvr trb d
prdi primlni OTP, n sm s nim ki srvr gnris u trnutku kd krisnikv
OTP primln, v i z nklik vrmnskih krk X unzd. Vliin vrmnskg krk X
mr biti dvln vlik d s izbgn nvdni prblm, li i dvln ml d s sprii
d, k npd d d OTP-, m d g iskristi dk vlidn. U [24] s prpruu d
vrmnski krk X bud 30 skundi, dk nki drugi vrmnski bzirni OTP sistmi imu
vrmnski krk d 60 skundi. dbir duin vrmnskg krk X prdstvl prnlnj
blns izmu sigurnsti i uptrblivsti.
dn prblm mui vrmnski bzirn OTP sistm, nsinhrnizvni svnici
kd krisnik s svnikm n srvru. D bi s v prblm rii, srvr pri prvri
isprvnsti primlng OTP-, gnri OTP u trnutku kd primln krisnikv OTP, li
gnri OTP i z nklik vrmnskih krk X unprid i unzd. k s prn
pklpnj primlng OTP- i dng d gnrisnih, srvr bili z dtg krisnik
vrmnsku rzliku. Prilikm sld utntikci srvr uzim u bzir suvnu vrmnsku
rzliku, p n t nin izvrn rsinhrnizci. utim, vkv rsinhrnizci im
grnic. Pt srvr prvrv OTP sm z nklik vrmnskih krk X unprid i
unzd, t zni d mgu d vrmnsk rzlik izmu svnik bud prvlik d bi s
mgl izvriti rsinhrnizci. U tkvim sluvim s mr sigurti d krisnik m d
s utntiku n nki drugi nin i d s td izvri rsinhrnizci.

Challenge-response utntikci
utntikci tip izzv-dgvr (ng. challenge-response authentication) dvi s
u vi krk, tkm kih strn A i strn B rzmnjuu pruk, izzv i dgvr.
Rzmn izzv i dgvr dvi s s cilm d dn strn dk drug spstvni
idntitt, ili d t uin musbn, bz tkrivnj i prns prk mr tng pdtk ki
vzn dtg usnik u utntikcii. k strn A dkzu sv idntitt strni B, n
ptku strn B l izzv (ng. challenge) strni A. Izzv prdstvl prmnliv
pdtk, frmir uptrbm vrmnsk znk, rdng br ili slug br. Strn A,
kristi dgvrni lgritm, n snvu primlng izzv i spstvng tng pdtk
izrunv dgvr (ng. response) i l strni B. Strn B zn dgvrui tni pdtk
strn A, r su g unprid rzminili, i n snvu njg i psltg izzv izrunv tn
dgvr ki strn A trb pslti i upru s dgvrm ki psll strn A. k su
dgvr ki psll strn A i n ki izrunl strn B dnki, nd strn A
dkzl d zn tni pdtk. im strn A dkzl i sv idntitt, r sm strn A i
strn B znu tni pdtk. pisn utntikci dn strn, li mgu i musbn

utntikci dvi strn. U tm sluu bi, u nstvku grnjg prtkl, strn A psll
izzv strni B i strn B izrunl dgvr s svim tnim pdtkm i psll strni A.
Challenge-response utntikci m biti bzirn n uptrbi kriptgrfskih
lgritm s simtrinim klum, k i kriptgrfskih lgritm s simtrinim klum.
Prd tg, m biti bzirn n dkzivnju idntitt bz dvnj ddtnih infrmci
(ng. zero-knowledge authentication).

Challenge-response utntikci bzirn n simtrinm kluu


Challenge-response utntikci bzirn n simtrinm kluu s rlizu
uptrbm simtring lgritm z ifrvnj ili primnm h bzirng lgritm z
utntikciu pruk (HMAC). U b slu, strn A i strn B u prcsu utntikci,
mru imti unprid dgvrn tni klu.
Nprstii prtkl z challenge-response utntikciu ki s rlizu uptrbm
simtring lgritm z ifrvnj izgld vk:

RA
RB, EK(K,RA)
EK(K,RB)

B
B
B

N ptku strn B dkzu strni A sv idntitt. Strn A gnri i l sluni


br RA strni B. Strn B ifru primlni br tnim klum K i vr ifrvnu vridnst
EK(K,RA) i sluni br RB strni A. Strn A prvrv isprvnst primln ifrvn
vridnsti tk t smstln ifru br R A s tnim klum K i prdi s primlnm
vridnu. k su dnk strn A vru d s drug strn zist B. Ztim, strn A
ifru primlni sluni br RB tnim klum K i l ifrvnu vridnst EK(K,RB) strni
B. Strn B prvrv tnst primln ifrvn vridnsti i k utvrdi d tn vru
d s drug strn zist A.
kvivlntn prtkl ki kristi h bzirni MAC lgritm izgld vk:
A
A
A

RA
RB, HK(K,RA)
HK(K,RB)

B
B
B

vd s HK znn h bzirn MAC funkci. N ptku strn A l


sluni br RA strni B. Strn B izrunv HMAC vridnst HK(K,RA) kristi tni klu
K i primlnu vridnst RA, ztim l dbini rzultt i sluni br R B strni A. Strn A
izrunv HK(K,RA) i k rzultt dnk primln vridnsti HK(K,RA) nd strn A
vru d s drug strn B. U trm krku strn A dkzu sv idntitt strni B

lui HK(K,RB).
v dv prtkl, k t vidim, mguvu musbnu utntikciu dviu
strn. Challenge-response utntikcini prtkli su n rlizvni uptrbm h
bzirnih MAC lgritm, p u nstvku biti rzmtrn sm v tip challenge-response
utntikci bzirn n simtrinm kluu.
Ik dv nvdn prtkl n prvi pgld izgldu ssvim krktn, ni su
pdlni npdu rflksim (ng. reflection attack) [27]. Prtpstvim d s npd C
pkuv strni B prdstviti k strn A.
RB

B
RB

C
C

HK(K,RB)

R'B, HK(K,RB)

Npd C prim d strn B sluni br R B i strtu isti prtkl, li u suprtnm


smru, lui mu primlni br RB. Strn B, u uvrnju d dkzu sv idntitt strni A,
kristi klu K strn A z izrunvnj vridnsti HK(K,RB). vu vridnst l npdu
i mguv mu d s u drug dvn ssii utntiku k strn A.
Npd kd vg npd uspstvl dvi dvn ssi s strnm B, p s u
litrturi z v npd kristi i nziv npd prllnim ssim (ng. parallel sessions
attack) [28]. vkv npd mgu zbg simtri prtkl. gu rnj prizilz iz
tg d trb rzbiti unu simtrinst u prtklu. Prv mgu rnj pdrzumiv
uptrbu dv rzliit klu KAB i KBA. Klu KAB s kristi sm kd A l pruku strni
B, t. A sm ifru pruk tim klum, B sm difru. Isti princip vi i z klu K BA,
sm u brnutm smru. Izminjni prtkl izgld vk:
A
A
A

RA
RB, HK(KBA,RA)
HK(KAB,RB)

B
B
B

Drug mgu rnj pdrzumiv ukluivnj imn pilc pruk u pruku


d bi s spriil mgunst pnvn uptrb pruk u drugm smru. Prcs utntikci
u vm sluu izgld vk:

RA
RB, HK(K,RA,B)
HK(K,RB,A)

B
B
B

Ov dv rnj su prdln u [27]. r mgu rnj d rzliit strn u


prcsu utntikci krist rzliit skupv slunih brv, npr. skup prnih brv z
dnu strnu i skup nprnih z drugu strnu.
Prdln rnj sprvu nvdni npd rflksim, li vkv rnj i dl
n du sigurn prtkl. U sluvim kd mgun musbn utntikci dvi
strn, vi prtkli su pdlni sldm npdu:
A
A

R1

R2, HK(K,R1,A)

M
M
M

HK(K,R2,B)

R2
R3, HK(K,R2,B)

B
B

Npd M nsti d s strni A prdstvi k B. N ptku l sluni br R 1


strni A. Strn A gnri R2 i izrunv HK(K,R1,A) i l ih npdu M. Npd
uspstvl prllnu ssiu s B i l mu R 2 ki primi d A, pri tm glumi strnu A.
Strn B gnri R3 i izrunv HK(K,R2,B) i l npdu M. Npd primln
HK(K,R2,B) prslu strni A i uspiv d ubidi strnu A d n zprv strn B.
Vidim d u vm npdu npd vri mnipulciu tkm prtkl i pdtk iz dn
ssi kristi u drug ssii. Rnj k sprv v npd, prdln u [28], izgld
vk:
A
A
A

RB
RA, HK(K,RA,RB,A)
HK(K,RA,B)

B
B
B

Vidim d s u drugm i trm krku unsi rzlik u izrunvnju HMAC


vridnsti. U drugm krku, kd A dgvr strni B, pri izrunvnju HMAC vridnsti
krist s RA i RB, dk s u trm krku kristi sm RA. N t nin HMAC vridnst iz
drugg krk s n m iskristiti z prslivnj u tri krk, k t bi slu kd
prthdng npd.

OATH Challenge-Response Algorithm


Kk s iz smg nziv m zkluiti OATH Challenge-Response Algorithm
(OCRA) challenge-response utntikcini lgritm ki krirl rgnizci OATH
(Initiative for Open Authentication), cil bi d s dbi sigurn, flksibiln, tvrn i
bspltn challenge-response utntikcini lgritm. OCRA mguv prd challengeresponse utntikci i digitln ptpisivnj, li t n biti rzmtrn vd. OCRA

dtln pisn u [30]. OCRA bzirn n HOTP lgritmu, s tim d s umst br ki s


inkrmntu kristi prmnlivi pdtk ki sdri slun dbrn izzv. OCRA s
dfini sldim izrzm:
OCRA=CryptoFunction(K , DataInput )

(17)

CryptoFunction prdstvl dn d blik HOTP lgritm ki, kristi klu K i


prmnlivi pdtk DataInput, izrunv OCRA vridnst. Pdrzumivn s kristi
HOTP-SHA1-6, gd 6 znv d s vri dinmik skrivnj n 6 cifr. ni klu K
pznt bm strnm. DataInput sdri spn vridnsti vi rzliitih ulznih
pdtk.
DataInput={OCRASuite , 00,C ,Q , P , S , T }

OCRASuite string ki dfini tn blik HOTP lgritm ki s kristi k


CryptoFunction, ztim dfini frmt prmtr C, Q, P, S i T, k i ki d pcinih
prmtr su ukluni u DataInput.

00 bt ki slui z rzdvnj OCRASuite d sttk znkvng niz.

C nznni 8-btni br i prdstvl pcini prmtr z sv OCRA mdv.

Q 128-btni izzv i v bvzn prmtr. k s vri musbn


utntikci Q sdri: | izzv drug strn | v izzv |.

P prdstvl h vridnst PIN- ili lzink k pznt bm strnm i v


pcini prmtr.

S sdri infrmci trnutn ssii i prdstvl pcini prmtr.

T prdstvl vrmnsku znku, tk pcini prmtr.

Nzvim vd dvi strn u prcsu utntikci klint i srvr. Klint i srvr


trb d s dgvr k dn ili dvi OCRASuite vridnsti, u zvisnsti d tg d li s
utntiku sm dn ili b strn. Z musbnu utntikciu trb d s dgvr 2
OCRASuite vridnsti.
OCRASuite s ssti d tri dil rzdvn dvtkm i t:
<Algorithm>:<CryptoFunction>:<DataInput>

Algorithm dfini vrziu OCRA lgritm i im dlik OCRA-v, gd v br ki


znv vrziu.

CryptoFunction dfini k funkci s kristi z izrunvnj OCRA vridnsti,


npr. HOTP-SHA512-8, HOTP-SHA1-6,

DataInput pisu listu i frmt vlidnih prmtr z izrunvnj, pri tm [ ]


znv d vridnst pcin.
[C] | QFxx | [PH | Snn | TG]

(18)

Vidim d sm izzv Q bvzn, stli prmtri su pcini. znk QFxx


spcificir frmt F izzv Q. Frmt F m d im sld vridnsti: A z
lfnumrik, N z numrik i H z hksdcimln vridnsti izzv. Sld dvi cifr
xx prdstvlu duinu izzv Q, duin m d bud d 4 d 64 bt. Pdrzumivni
frmt N08, t zni d izzv numriki d 8 cifr. znk PH dfini k s h
funkci kristi z izrunvnj h vridnsti lzink. H funkci H m biti SHA1,
SHA256 ili SHA512. S Snn s dfini duin pdtk ssii, gd nn br btv.
Vliin krk s kim s minj vrmnsk znk dfinisn s TG, gd G br
skundi, minut ili sti kliki krk, iz br id dgvru znk z skund S,
minut M i st H.
v pr primr OCRASuite prmtr:
OCRA-1:HOTP-SHA512-8:C-QN08-PSHA1
OCRA-1:HOTP-SHA256-6:QA10-T1M
OCRA-1:HOTP-SHA1-4:QH8-S512

dnsmrn OCRA utntikci izgld vk:

A
A
A

OCRA(K, {[C]|Q|[P|S|T]})
OK/NOK

B
B

Nk strn A bud srvr, strn B klint, dnsn strn B dkzu sv idntitt.


Strn l izzv Q strni B, k g prihvt i izrunv dgvr OCRA(K, {[C] | Q |
[P | S | T]}) ki l strni A. Strn A kristi tni klu K strn B i izzv ki psll
strni B, k i stl pcin prmtr ki su dgvrni u OCRASuite izrunv OCRA
vridnst i prdi s primlnm d strn B. k su t vridnsti dnk l s strni
B ptvrd uspn utntikcii s OK, k su rzliit bvtv strnu B d
utntikci ni uspl s NOK.
usbn OCRA utntikci izgld vk:

A
A
A
A

QC
QS, RS=OCRA(K, {[C]|QC|QS|[S|T]})
RC=OCRA(K, {[C]|QS|QC|[P |S|T]})
OK

B
B
B
B

Kd musbn utntikci klint prvi l sluni izzv QC srvru. Srvr


izrunv dgvr RS = OCRA(K, {[C] | QC | QS | [S | T]}) i l klintu. Istvrmn

srvr B l srvrski izzv QS klintu A. Klint A prvrv isprvnst srvrskg


dgvr RS, tk t smstln izrun isprvnu OCRA vridnst ku bi trb primiti
d srvr i prdi s primlnim srvrskim dgvrm RS. k v dvi vridnsti nisu
dnk, klint prkid kmunikciu s srvrm. k su vridnsti dnk klint A
uvrn d kmunicir s srvrm B i prlzi u fzu dkzivnj spstvng idntitt.
Klint run dgvr RC = OCRA(K, {[C] | QS | QC | [P | S | T]}) i l g srvru. Srvr
prvrv klintv dgvr tk t smstln izrun isprvnu OCRA vridnst i prdi
s klintskim dgvrm RC. k su vridnsti rzliit srvr prkid kmunikciu s
klintm. k su vridnsti dnk klint A uspn utntikvn, p mu srvr u
psldnjm krku l OK.
U spcifikcii OCRA lgritm dt i mgunst d, kd s kristi z musbnu
utntikciu, OCRA m d s implmntir tk d kristi dv klu. dn s kristi z
gnrisnj srvrskg dgvr i z njgvu vrifikciu n klintsk strni. Drugi s
kristi z runnj klintskg dgvr i z njgvu vrifikciu n srvrsk strni.
U trminlgii k s kristi u [30] prd trmin srvr s kristi i trmin
vrifiktr (ng. verifier), dnsn strn k prvrv idntitt drug strn, prd
trmin klint s kristi i trmin dkziv (ng. prover), dnsn strn k dkzu sv
idntitt. Prm tm, n psti grninj d dvi strn n mgu d budu dv klint.
Ptrbn sm d b klint psduu simtrini klu ki krist z musbnu
utntikciu.

Challenge-response utntikci bzirn n simtrin


kriptgrfii
Challenge-response utntikci bzirn n simtrin kriptgrfii s zsniv n
prcsu dkzivnj d strn k s utntiku psdu sv privtni klu. Nim, svk
strn k dkzu sv idntitt mr d psdu privtni i vni klu. Privtni klu
smi biti sm u psdu njgvg vlsnik. Uprv zbg t injnic strn k dkzu
sv idntitt m d dk idntitt, tk t dkzu d im u psdu spstvni privtni
klu. Prcs dkzivnj m d s izvri n dv nin i t tk t strn k prvrv
idntitt l izzv strni k dkzu idntitt, strn k dkzu sv idntit:
1. difru izzv ifrvn njgvim vnim klum uptrbm privtng
klu i simtring lgritm
2. digitln ptpisu izzv
Strnu k dkzu sv idntitt znim s A, strnu k vri prvru
idntitt znim s B. ifvnj pruk M vnim klum strn A znim eP A(M),
ptpisivnj pruk M k vri strn A znim s sSA(M) 1.
1

ISO 9798-3

Nprstii prtkl z utntikciu ki s bzir n difrvnju izzv ki


ifrvn vnim klum strn k trb d s utntiku izgld vk:
A
A

ePA(R)
R

B
B

K t vidim strn A dkzu sv idntitt strni B. U prvm krku strn B


ifru sluni br R vnim klum strn A i l ifrt strni A. Strn A d bi dkzl
sv idntitt mr d dk d zn (t. psdu, dri pd kntrlm) spstvni privtni
klu i t tk t difru ifrt privtnim klum. Difrvnjm dbi sluni br R ki
l strni B. Strn B prvrv tnst primlng slung br R i k tn strn
A uspn utntikvn.
v prtkl im zbiln prblm. k strn A kristi isti pr privtni/vni klu
z utntikciu i z ifrvnj drugih dkumnt, npd ki prsr nku ifrvnu
pruku k ifrvn vnim klum strn A m d s prdstvi k strn B i d
pdmtn tu ifrvnu pruku umst ifrvng slung br. Strn A difrvti
pruku i pslti npdu difrvni tkst.
Prtkl ki s bzir n digitlnm ptpisivnju izzv, ki prst k i
prthdni, izgld vk:
A
A

R
sSA(R)

B
B

I vd A dkzu idntitt strni B i u tu svrhu strn B l sluni br R strni A.


Strn A digitln ptpisu sluni br R i l sSA(R) strni B, k prvrv
utntinst ptpis, tim i idntitt strn A.
I v prtkl im prblm k i prthdni. k strn A kristi isti pr kluv z
utntikciu i ptpisivnj drugih dkumnt, npd m d pdmtn strni A d
ptpi bil t. N primr, m d mu umst slung br R pl h vridnst
h(x) pruk x. dgvr strn A npdu bzbiditi ptpis strn A n pruci x, bz
sglsnsti i znnj strn A. Dkl, pr privtni/vni klu ki s kristi z utntikciu u
vm i prthdnm prtklu n bi trb d s kristi u drug svrh (ifrvnj, dnsn
ptpisivnj), r kmbinvn uptrb mguv zluptrbu utntikcing prtkl
[9].
Ukluivnjm dng slung br, kg gnrisl strn A, mu pdtk
n snvu kih s run dgvr mgu s riiti b nvdn prblm. v pristup s
kristi u prvm d nrdn dv prtkl.
Rzmtrim dv challenge-response utntikcin prtkl bzirn n difrvnju izzv. U [9] pisn mdifikvni Needham-Schroeder prtkl bzirn n

kriptgrfii vng klu. Kmpltn prtkl sdri sdm krk [31], mdifikvn
vrzi rdukvn n tri krk. U krcim ki s izstvlu, dvi strn u prcsu
utntikci A i B pribvlu vni klu drug strn d srvr ki dri vn kluv.
Izstvlnjm vih krk pdrzumivm d svk strn psdu vni klu drug
strn. v prtkl prd musbn utntikci mguv i rzmnu kluv k 1 i k2
izmu dvi strn. k ni ptrbn rzmn kluv, k1 i k2 mgu d s izstv, p td
v prtkl izgld vk:
A
A
A

ePB(R1,A)
ePA(R1,R2)
ePB(R2)

B
B
B

Strn A dkzu idntitt strni B. U prvm krku strn A gnri sv sluni


br R1 i ifru g vnim klum strn B, zdn s svim idntifiktrm A.
Idntifiktr prdstvl dinstvn im, dnsn znku, n snvu k s musbn
mgu rspznvti sv strn k mgu d kmuniciru musbn. U vm sluu
idntifiktri dviu strn su A i B. Strn B prim ifrvnu vridnst, difru u i uzim
sluni br R1. Ztim gnri sluni br R2 i zdn s R1 ifru vnim klum strn
A i l ifrt strni A. N v nin strn A dirktn uti n ifrt ki s l.
sprv d npd pdmtn pruku, ifrvnu njnim vnim klum, d bi z
ptrb npd difrvl. U zdnjm krku strn A difru primlnu ifrvnu
pruku i prvrv d li br R 1 zist n ki psll strni B. k st, ifru
sluni br R2 vnim klum strn B i l strni B 2. Strn B prvrv br R2 i k
isprvn utntikci uspn.
Nlst i v Needham-Schroeder-v prtkl z utntikciu bzirn n
kriptgrfii vng klu im prblm. U [32] pisn sldi npd km pdln
v prtkl:

[9] , R 2.

1:

2:

3:

ePI (R1,A)

1:

I(A)

2:

I(A)

ePA(R1,R2)

ePA(R1,R2)

B
B

ePI (R2)

3:

ePB(R1,A)

I
I(A)

ePB(R2)

S I sm znili ulz (ng. intruder). Vidim d ulz I ustvu u dvi dvn


ssi. Pruk k s rzmnjuu prilikm izvrvnj prtkl s strnm A znili sm
s i, s strnm B s i. U pruci 1 strn A zpinj izvrvnj prtkl s strnm I,
lui sluni br R1 i sv idntifiktr A, ifrvn vnim klum ulz I. Ulz I l
isti br R1 i idntifiktr A strni B, s nmrm d uvri strnu B d kmunicir s
strnm A. Nrvn, ulz I v pdtk prthdn ifrv vnim klum strn B.
Strn B dbir dn sluni br R 2, ifru g zdn s R1 vnim klum strn A i
l u pruci 2. Ulz n m difrvti vu pruku d bi d d R 2. Pt v pruk
im idntinu frmu kkvu u drugm krku ku strn A, ulz u pruci 2 prslu
vu pruku strni A. Strn A difru pruku, dlzi d R 2 i u pruci 3 l g ulzu,
ifrvng vnim klum ulz. I sd m d difru vu pruku i d d d R 2. U
pruci 3 ulz I l R2 strni B, ifrvn vnim klum strn B. im ulz I uspi d
uvri strnu B d uspn prvl prtkl utntikci s strnm A.
U [32] prdln isprvk k sprv vkv npd. Isprvlni prtkl
izgld vk:

A
A
A

ePB(R1,A)
ePA(R1,R2,B)
ePB(R2)

B
B
B

K t vidim, u drugm krku s dd idntitt ng k l pruku, u vm


sluu strn B. N t nin s sprv d s ifrvn pruk iz drugg krk prslidi
tr strni n difrvnj, d tr strn t n m tkriti.
Nkn Needham-Schroeder-vg prtkl, rzmtrim dn challengeresponse utntikcini prtkl bzirn n difrvnju izzv. v prtkl im sld

krk:

A
A

h(R), B, ePA(R,B)
R

B
B

I v prtkl , k i prthdni Needham-Schroeder-v, pisn u [9]. I vd strn


A dkzu idntitt strni B. Strn B u prvm krku gnri sluni br R i run h
vridnst tg br h(R). Ztim, ifru vnim klum strn A sluni br R i sv
idntifiktr B. N kru l strni A h vridnst slung br h(R), spstvni
idntifiktr B i ifrt ePA(R, B). H vridnst h(R) i idntitt B s lu d bi s spriil
mgunst d strn B pdmtn strni A prsrtnuti prizvlni ifrt ifrvn vnim
klum strn , s cilm d g strn difru i pl k dgvr n izzv. H
vridnst h(R) s u vm prtklu nziv svdk (ng. witness) i pmu nj strn B
dkzu strni d zn t ifrvn u ifrtu eP A(R, B), dnsn ki sluni br R i t
bz tkrivnj tg br. Strn B zdn s slunim brm R ifru i sv idntifiktr B,
t slui k dkz strni d ifrt im prikl d strn B, ni pruzt d nk tr
strn. Idntifiktr B ki s l k tvrni tkst strn kristi z prnj s
idntifiktrm ki dbi difrvnjm ifrt.
Dkl, strn A dkzu sv idntitt tk t vri difrvnj izzv ePA(R, B)
svim privtnim klum i dbi sluni br R' i idntifiktr B'. Sd strn A prvrv
d li strn B zn t zprv ifrvn, dnsn ki sluni br R i d li ifrt sdri
dgvrui idntifiktr strn B. rdi tk t run h vridnst h(R') i prdi s
primlnm h vridnu, dnsn svdkm h(R). k h(R') h(R), dnsn R' R,
t zni d nt ni u rdu, t. d strn B ni dkzl d zn ki sluni br ifrvn.
U vm sluu strn A prkid kmunikciu s strnm B.
Strn A prdi i difrvni idntifiktr B' i primlni u tvrnm tkstu B i k
B' B strn A prkid kmunikciu s strnm B. k B' B, t zni d strn B ni
dkzl d v ifrt pti d nj, t. d g strn B ifrvl vnim klum strn A,
p mgu d u pitnju pdmtnj ifrt iz drug ssi gd tr strn C krirl
ifrt. U tm scnriu strn B li d s prdstvi strni C k strn A. Strn C ifru
sluni br R i spstvni idntitt C vnim klum strn A i ifrt eP A(R, C), zdn s
svdkm h(R) i idntifiktrm C l strni B. Strn B n m difrvti ifrt, p u
sluu vntulng zhtv strn A d s utntiku upung strni B, strn B m
pkuti d pdmtn ifrt ePA(R, C) primln d strn C d g strn A difru i vrti
R. U tm pkuu pdmtnj m d umst idtifiktr C u tvrnm tkstu, stvi
sv idntifiktr B, li n m prminiti idntifiktr C u ifrtu. Strn A, kd difru
ifrt prdi idntifiktr u tvrnm tkstu i idntifiktr iz ifrt i k idtifiktri nisu
isti, t. nisu idntifiktri strn B, strn A zkluu d ifrt n pti d strn B i prkid
kmunikciu.
k h(R') = h(R) i k B' = B, strn A m d zklui d ifrt pti d strn

B i d strn B zn ki sluni br ifrvn, p u drug pruci prtkl l sluni


br R strni B. Strn B prvrv d li t br ki psll strni A i k st strn A
uspn utntikvn.

U [33] pisn ISO 9798-3 stndrd ki dfini challenge-response utntikciu


bzirnu n digitlnm ptpisivnju izzv. mriki FIPS 196 [34] priru i dtlni
pnjv v munrdni stndrd. v stndrd mguv uniltrlnu i musbnu
utntikciu dviu strn. Uniltrln utntikci im sld krk:
A
A

RB
[certA], RA, RB, B, sSA(RA,RB,B)

B
B

Strn A dkzu idntitt strni B. U prvm krku strn B gnri sluni br


RB i l g, k izzv, strni A. Strn A gnri sv sluni br R A, ki zdn s RB i
idntifiktrm strn B digitln ptpisu, t znn s sSA(RA, RB, B). Ukluivnj
slung br RA u pdtk ki s ptpisuu sprv strnu B d pribvi ptpis n
prizvlnim pdcim dbrnim d strn B. Prd tg, ukluivnj idntifiktr B
mu ptpisn pdtk sprv mgunst d pruk iz drugg krk bud prihvn d
bil kg drugg sim strn B. Dkl, strn u drug pruci l strni B slun
brv RA i RB, idntifiktr strn B i digitlni ptpis sSA(RA, RB, B). Slnj digitlng
srtifikt strn certA pcin. k strn B m n nki drugi nin d pribvi
digitlni srtifikt i vni klu strn A, nd slnj srtifikt ni ptrbn. U [33] i [34]
dfinisn d prd nvdnih pdtk, u prv i drug pruci, mgu d s lu i pcini
tkstulni pdci Text1, Text2 i Text3. Text1 bi bi u sstvu prv pruk, Text2 u drug pruci
mu pdcim ki su digitln ptpisni, Text3 u drug pruci k tvrni tkst. Nin
n ki s krist vi tkstulni pdci ni dfinisn u ISO 9798-3 stndrdu, li n im
nmn rzmn kluv izmu dviu strn. Rdi dnstvnsti vd n nvdim v
tkstuln pl. P primu pruk, strn B prvrv d li primlni sluni br RB
dnk nm ki psll u prvm krku, p ztim prdi primlni idntifiktr B s
spstvnim idntifiktrm. k su slun vridnsti dnk i idntifiktri dnki,
strn B pribvl digitlni srtifikt strn A i vri vlidciu srtifikt. Vlidci srtifikt
pdrzumv prvru d li srtifikt ptpisn d strn srtifikcing til km strn
B vru, d li vrmnski prid vnj srtifikt istk i d li srtifikt pvun.
k srtifikt isprvn, uzim vni klu strn A i prvrv digitlni ptpis strn A n
pdcim RA, RB i B. k ptpis sSA(RA, RB, B) isprvn, strn A uspn dkzl
sv idntitt strni B.
usbn utntikci im dn ddtni krk u dnsu n uniltrlnu
utntikciu.

RB

A
A
A

[certA], RA, RB, B, sSA(RA,RB,B)


[certB], RB, RA, A, sSB(RB,RA,A)

B
B
B

Prv dv krk su prktin ist k kd uniltrln utntikci. Nkn


izvrvnj prv dv krk, strn A dkzl idntitt strni B. U trm krku strn B
dkzu idntitt strni A. U tu svrhu strn B digitln ptpisu slun brv R B, RA i
idntifiktr strn A i tk dbi sS B(RB, RA, A). Strn B l strni A sv digitlni
srtifikt certB, slun brv RB i RA, idntifiktr A i, n t nbitni, digitlni ptpis
sSB(RB, RA, A). Nrvn, i vd slnj srtifikt certB pcin. P primu pruk u trm
krku, strn A prvrv d li primln vridnst R A idntin n ku psll
strni B u drugm krku. k, prvrv i d li primln vridnst slung br
RB idntin n ku strn B psll u prvm krku. prvrv i d li primlni
idntifiktr A dnk njnm idntifiktru. k su vridnsti k su uprivn dnk
nd strn A pribvl digitlni srtifikt strn B i vri vlidciu srtifikt. k
srtifikt isprvn, uzim vni klu strn B i prvrv ptpis sS B(RB, RA, A). k utvrdi
d t zist digitlni ptpis strn B nd pdcim RB, RA i A, nd uspn zvrn
utntikci strn B strni A. im uspn knn i musbn utntikci.
rb npmnuti d ISO 9798-3 stndrd pisu i vrzi vg lgritm u kim
s umst slunih brv krist vrmnsk znk. U tm sluu prtkl im dn
krk mnj, r n psti krk ki u gr nvdnm prtklu prvi, u km strn
k s dkzu idntitt gnri sluni br i l strni k dkzu sv idntitt.
Strn k dkzu sv idntitt l prvu pruku s digitlnim ptpism, umst
slung br digitln ptpisu vrmnsku znku. N t nin dbim, umst
dvprlzng ili trprlzng prtkl, kvivlntn dnprlzn i dvpplzn prtkl.
Challenge-response utntikci bzirn n digitlnm ptpisivnju izzv s u
principu svdi n dvi prvr. Prvru isprvnsti digitlng srtifikt strn k
dkzu idntitt i prvru digitlng ptpis izzv.

Zero-knowledge utntikci
Zero-knowledge prtkli mguvu d strn A, k zn tnu infmciu s,
m d dk strni B d zn tnu bz tkrivnj tn ili bil kkv krisn infrmci
tni. U zero-knowledge trminlgii strn A, k dkzu d zn tnu, s nziv
dkziv (ng. prover), strn B k prvrv d li strn A zist zn tnu nziv s
vrifiktr (ng. verifier). Zero-knowledge prtkli imu blik intrktivnih prtkl.
Vrifiktr B pstvl dkzivu A niz pitnj. k A zn tnu infrmciu s nd mi
tn d dgvri n sv pitnj. k n zn tnu nd im nsu d dgvri tn n prv

pitnj s vrvtnm
2

1/ 2

, n tri

1/2

1/2 . Vrvtn d dgvriti tn n dv pitnj

itd. k vrifiktr B pstvi vi br pitnj, vrvtn d

dkziv A ki n zn tnu s dgvri n sv pitnj tn pst k ml. k s


zpiu sv pitnj i dgvri dbi s trnskript prtkl. Zero-knowledge prtkli s
zsnivu n krinju tkih prblm i slunih brv. Dkziv psdu tnu
infrmciu k rnj tkg prblm. Vrifiktr m d prvri d li dkziv zn
tnu infrmciu, dnsn rnj dtg tkg prblm, li n m d izrun
dkzivvu tnu n snvu njgvih dgvr. Kk pisn u [5] zero-knowledge
prtkli imu sld krk:
1. Dkziv kristi svu tnu infrmciu i sluni br trnsfrmi tk
prblm u drugi tk prblm ki izmrfn s izvrnim prblmm. Ztim
kristi svu tnu infrmciu i t sluni br d bi rii nvi tki prblm.
2. Dkziv l rnj nvg tkg prblm, kristi mu z prdvnj bit
(ng. bit-commitment scheme)
3. Dkziv tkriv vrifiktru nvi tki prblm. Vrifiktr n m d
iskristi nvi tki prblm d dbi bil kkvu infrmciu izvrnm tkm
prblmu i njgvm rnju.
4. Vrifiktr tri d dkziv d:
1) dk d su stri i nvi tki prblmi izmrfni.
2) tvri rnj k psl u krku 2. i dk d t rnj nvg
tkg prblm.
5. Dkziv prist i rdi n t vrifiktr tri.
6. Dkziv i vrifiktr pnvlu krk 1. d 5. n put.
ki prblmi ki s mgu kristiti u zero-knowledge prtklim su runnj diskrtng
lgritm, izmrfizm vlikih grfv, Hmiltnv ciklus z vlik grfv itd. Zeroknowledge prtkli mru d imu tri sbin: kmpltnst, isprvnst i zero-knowledge
sbinu.
Kmpltnst (ng. completeness) pdrzumiv d, k imm ptng dkziv
i ptng vrifiktr, prtkl s s vm vlikm vrvtnm zvrv s usphm,
t. vrifiktr prihvt dkzivvu tvrdnju.
Isprvnst (ng. soundness) pdrzumiv d nptn dkziv n m d uvri
ptng vrifiktr d ln tvrdnj zprv tn, sim s vm mlm
vrvtnm. Stg s prtkl, u tkvim sluvim, zvrv nusphm.
Zero-knowledge sbin sigurv d vrifiktr n m sznti bil kkvu
infrmciu dkzivv tni, sim injnic d njgv tvrdnj tn ili ni tn.
Prtkl im zero-knowledge sbinu k psti simultr, lgritm ki m u

plinmilnm izvrvnju d bz intrkci s dkzivm prizvd trnskript ki s


n mgu rzlikvti d nih dbinih s prvim dkzivm. Vrifiktr B zbg tg n
m nikm dkzti d dkziv A zn tnu infrmciu, ik s prthdn n u t
uvri, zbg injnic d tr strn n m rzlikvti d li trnskript ki mu
vrifiktr B d k dkz prvi ili simulirn.
k psti simultr ki d trnskript idntin prvim trnskriptim prtkl,
nd km d t svrn zero-knowledge prtkl. k simultr d trnskript
idntin prvim trnskriptim prtkl, izuzv knstntng br sluv, nd km
d t sttistiki zero-knowledge prtkl. k psti simultr ki d trnskript z
k n psti fiksn plinmilni lgritm ki m d ih rzliku d prvih
trnskript, nd km d t runski zero-knowledge prtkl. U prksi s uglvnm,
k ni suprtn ngln, rdi runskim zero-knowledge prtklim.

You might also like