FER, ZEMRIS
>>Asimetrični kriptosustavi
|
Seminarski rad
|
Autor: Božidar Benko (36372748
e-mail: bozidar.benko@fer.hr
Dodatno: Diffie-Hellman
(simulacija)
1. Uvod. 1
1.1. Kriptografija. 1
1.2. Asimetrični
kriptosustavi 1
2. Pregled
asimetričnih algoritama. 2
2.1. Kratka
povijest 2
2.2. Terminologija. 2
2.3. Stvarni
algoritmi 3
2.3.1. RSA. 4
2.3.2. Rabin. 4
2.3.3. ElGamal
5
2.3.4. McEliece.
6
2.3.5. Blum-Goldwasser
6
3. Diffie-Hellman. 8
4. Zaključak. 8
5. Literatura. 9
Kriptografija
(kriptiranje) je postupak transformiranja podataka (koje svi mogu čitati)
u nečitljivu formu za svakog tko nema ključ za dekripciju. Svrha
joj je čuvanje privatnosti čuvajući informaciju skrivenom svakome kome
nije namijenjena.
Koristi
se u komunikaciji preko nesigurnog kanala. Klasični scenarij glasi:
1.
osoba A želi poslati osobi B poruku, koju smije samo ona pročitati
2.
osoba A kriptira poruku sa enkripcijskim ključem i šalje je osobi B
3.
kriptiranu poruku dobiva osoba B i dekriptira ju s dekripcijskim ključem
4.
napadač, osoba C, može pokušati dobiti tajni ključ ili otkriti poruku
direktno iz kriptiranog teksta
U sigurnim
kriptosustavima poruka ne može biti otkrivena osim sa dekripcijskim
ključem. Postoje dvije vrste kriptosustava:
1.
simetrični (sustavi s tajnim ključem) enkripcijski ključ je jednak
dekripcijskom
2.
asimetrični (sustavi s javnim ključem) ključevi nisu jednaki
Vrh dokumenta
Asimetrični
kriptosustavi (kriptosustavi s javnim ključem) su izmišljeni u kasnim
sedamdesetima. Postoje dva ključa: javni ključ e i odgovarajući
tajni ključ d. Sa javnim ključem e može osoba B kriptirati
poruku, a dekriptirati je može samo osoba A koja zna tajni ključ d.
Javni
ključ ne treba biti tajna, zapravo, može biti dostupan svima, a njegova
točnost nam garantira da jedino osoba A može čitati poruku.
Glavni cilj asimetričnog kriptosustava
je da pruža privatnost ili povjerljivost. Kako je javni ključ poznat
svima, sam ne pruža vjerodostojnost informacije i autentičnost (može
se dogoditi da se netko lažno predstavi kao osoba A ili B). Za to nam
služe neke dodatne tehnike (digitalni potpis,
).
Vrh
dokumenta
Asimetrični
kriptosustavi su sporiji nego simetrični. Zbog toga, asimetrični kriptosustavi
nam služe za razmjenu ključeva koji se koriste u simetričnom kriptosustavu.
Prvi su to ideju primijenili Whitfield Diffie i Martin Hellman stvorivši
protokol zamjene ključeva koji je počeo eru asimetričnih kriptosustava.
Nedugo poslije toga Ron Rivest, Adi Shamir i Leonard Adleman stvorili
su prvi pravi asimetrični kriptosustav sposoban za kriptiranje i digitalni
potpis. Poslije toga su slijedile mnoge druge ideje (problem naprtnjače,
konačna polja, rešetke,
). Mnoge od njih su nesigurne. Diffie-Hellmanov
protokol i RSA su ostali dva najjača do sad.
Vrh dokumenta
Glavni
sastojak asimetričnog kriptosustava je težak problem za računanje. Sigurnost
kriptosustava je bazirana na činjenici da se tajni ključ d može
izračunati iz javnog ključa e samo rješavajući težak problem.
Evo
nekoliko osnovnih pojmova:
ˇ
Algoritam. Eksplicitni opis kako neki problem treba biti riješen.
Efikasnost se može mjeriti kao broj elementarnih koraka koje treba poduzeti
da bi se riješio problem (primjer: ako algoritmu treba vrijeme O(n)
znači da mu treba n elementarnih koraka, ali se ne specificira
koliko traju ti koraci).
ˇ
Složenost izračunavanja. Problem je polinomne složenosti (P)
ako koristi manje od O(nt) koraka, gdje je t
neki konačni broj. Ako se pogođeno rješenje problema može provjeriti
u polinomnom vremenu onda se kaže da je NP. Skup problema koji
leže u NP je jako velik (uključuje i problem faktorizacije brojeva).
Problem je NP-težak ako nema nijednog problema u NP kojeg
je lakše riješiti. Ne postoji ni jedan algoritam polinomne složenosti
da riješi NP-težak problem. U asimetričnim kriptosustavima napadač
je zainteresiran za rješavanje pojedinih instanci problema (faktorizacija
danog broja), radije nego da rješava cijeli problem (algoritam koji
faktorizira bilo koji broj). To zabrinjava jer instance problema koji
je NP-težak se općenito mogu laganije riješiti.
ˇ
Prosti (prim) brojevi. Broj je prost ako nema drugih djelitelja
osim jedinice i samog sebe (2, 3, 5, 7, 11,
). Ima ih beskonačno mnogo,
a najveći poznati je 26972593-1.
ˇ
Faktorizacija. Svaki prirodni broj se može prikazati jedinstveno
kao produkt prostih brojeva. Vještina faktorizacije je stara koliko
i matematika sama, ali brzi algoritmi faktorizacije su stari samo nekoliko
desetljeća. Jedan mogući algoritam je da se ispitni broj podijeli sa
svim malim prostim brojevima do drugog korijena tog broja. Efikasan
je samo za brojeve do 1016. U asimetričnim kriptosustavima
brojevi su veličine 10300 i trebalo bi provjeriti dijeljenje
sa 10147 prostih brojeva (teorem o prostim brojevima), a
taj broj uvelike prelazi broj atoma u svemiru. Lagana instanca faktoriziranja
bi bila u slučaju da broj ima male proste faktore (759375=35*55).
U kriptografiji se zato koriste brojevi sa velikim prostim faktorima
(RSA koristi dva velika prosta broja). Trenutačno je jedan od najboljih
algoritama je NFS (number field sieve) algoritam. Ne postoji dokaz da
je faktorizacija brojeva NP-težak problem.
ˇ
Diskretni logaritmi. Druga važna klasa problema je problem nalaženja
n ako je zadan samo y takvih da je y=gn.
Problem je lagan za brojeve, ali kad se radi o malo drugačijem okruženju,
postaje jako težek. Priroda tog problema je u tome da ako podijelimo
beskonačan skup brojeva u konačan skup ostataka kod dijeljenja. Intuitivno,
uzmu se svi brojevi i namataju se oko kruga (u krugu je m brojeva).
Brojevi 0, 2m, 3m,
su svi na istoj točki na krugu i zato spadaju
u istu klasu. Svaka klasa ima barem jednog člana iz 0
m-1. Zato se svaki
broj može zapisati kao n=k*m+t, 0<=t<m (to se piše n
º
t (mod m) ). Može se pokazati da se može zbrajati, oduzimati i množiti
te klase brojeva modulo m. Ta struktura gdje je m prost broj
se zove Galoisovo polje GF(m). U tim poljima je dijeljenje brojeva
različitih od nule dobro definirano. Problem diskretnog logaritma u
GF(p) je: ako su dana dva broja a i g različita
od nule, manji od p, izračunaj n takav da je a=gn.
Može se izabrati g tako da rješenje n postoji za bilo
koji a. Ovaj problem se smatra jednako težak kao i faktorizacija.
Problem se može primijeniti u mnogo područja, kao što su eliptičke krivulje.
ˇ
Problem naprtnjače. Ako je dan mali skup brojeva, problem je
u izboru podskupa tih brojeva tako da je njihova suma jednaka danom
broju. Primjer: dan je skup (2, 3, 5, 7) i broj 10, možemo naći rješenje
2+3+5=10. Dokazano je da je problem NP-težak i čini se da je
superiorniji faktorizaciji i diskretnom logaritmu. Nažalost, svi kriptosustavi
koji su koristili ovu ideju su razbijeni jer instance tog problema nisu
stvarno NP-teške.
ˇ
Rešetke. Definira se vektorska baza wi = < w1,
..., wn> za i=1,
,m, i rešetku koju generira
baza. Elementi rešetke su od t1w1 +
t2w2 + ... + tmwm,
gdje su ti cijeli brojevi. Problem nalaženja najkraćeg
vektora (Euklidova udaljenost) u rešetki je NP-težak problem
(za velike rešetke). Ipak, LLL-algoritam (Lenstra, Lenstra i Lovasz)
izračunava približno rješenje u polinomnom vremenu. Efikasnost tog algoritma
izlazi iz činjenice da su u mnogim slučajevima približna rješenja dovoljno
dobra, i iznenađujuće u većini slučajeva LLL daje najkraći vektor.
Ovaj algoritam se često koristi za razbijanje kriptosustava baziranih
na problemu rešetki ili naprtnjača. Također se upotrebljava za napade
protiv RSA i DSS.
Vrh dokumenta
Širok
interes u asimetrične kriptosustave je proizveo nekoliko važnih kriptosustava.
Kao ideja vodilja, asimetrični kriptosustav je izveden iz teškog problema:
uzme se teški problem (NP-težak) za koji se instanca može riješiti
u polinomnom vremenu. Za enkripciju poruke, poruka se pretvori u laganu
instancu teškog problema, onda se koristi javni ključ za pretvaranje
laganog problema u teški. Rezultat se tada šalje primatelju kroz nesigurni
kanal. Za dekripciju se koristi tajni ključ za pretvaranje teškog problema
u lagani, zatim rješavanje laganog da bi se dobila originalna poruka.
Svi asimetrični kriptosustavi koriste isti princip, ali se razlikuju
u detaljima.
Evo
nekih koji se češće koriste:
ˇ
Faktorizacija
1.
RSA
2.
Rabin
3.
Blum-Goldwasser
ˇ
Diskretni logaritmi
1.
Diffie-Hellman
2.
ElGamal
3.
generalizirani ElGamal
4.
DSS
5.
LUC
6.
XDR
ˇ
Naprtnjača
1.
Rivest-Chor
2. Merkle-Hellman
ˇ
Rešetka
1.
NTRU
ˇ
Linearni kod
1.
McEliece
RSA (Rivest, Shamir, Adleman) je
najrašireniji asimetrični kriptosustav. Baziran je na problemu rastavljanja
velikih prirodnih brojeva na proste faktore.
Osoba A stvara ključeve:
1.
nađi dva velika prosta broja p i q (> 10100)
2.
izračunaj n=p*q i z=(p-1)*(q-1)
3.
odaberi e takav da su e i z relativno prosti(nemaju
zajedničkih djelitelja osim 1) i 1<e<z
4.
nađi d takav da je e*d=k*z+1, 1<d<z, k=1,2,3,
5.
javni ključ je (n,e), a tajni (n,d)
Osoba B kriptira poruku m,
dobiva kriptiranu poruku c i šalje je osobi A:
1.
saznaj javni ključ osobe A (n,e)
2.
reprezentiraj poruku sa brojevima m iz intervala [0, n-1]
3.
izračunaj c=me mod n
4.
pošalji poruku c osobi A
Osoba A dekriptira poruku c
i dobiva originalnu poruku m:
1.
koristi tajni ključ (n,d)
2.
izračunaj m=cd mod n
Primjer (s malim brojevima):
A bira brojeve p=2357, q= 2551,n=p*q=
6012707,z=(p-1)*(q-1)=6007800, e=3674911, d=422191.
Neka je poruka m=52334673.
Enkripcija:
B računa:
c=me
mod n = 523346733674911 mod 6012707 = 3650502 i šalje
ga A-u.
Dekripcija:
A računa:
m=cd mod n = 3650502422191
mod 6012707 = 5234673
Vrh dokumenta
Rabin kriptosustav je bio prvi
matematički dokazani kriptosustav da je ekvivalentan faktorizaciji.
Dekripcija je malo teža. Problem je u tome što treba odlučiti koji je
izlaz od nekoliko mogućih točan.
Osoba A stvara ključeve:
1.
nađi dva velika prosta broja p i q (> 10100)
2.
izračunaj n=p*q
3.
javni ključ je (n), a tajni (p,q)
Osoba B kriptira poruku m,
dobiva kriptiranu poruku c i šalje je osobi A:
1.
saznaj javni ključ osobe A (n)
2.
reprezentiraj poruku sa brojevima m iz intervala [0, n-1]
3.
izračunaj c=m2 mod n
4.
pošalji poruku c osobi A
Osoba A dekriptira poruku c
i dobiva originalnu poruku m:
1.
koristi tajni ključ (p,q)
2.
nađi kvadratne korijene m1,
m2, m3 i m4 od c modulo n
3.
poslana poruka je ili m1 ili m2
ili m3 ili m4; A nekako odlučuje
koji od njih je m
Algoritam za nalaženje korijena
od c modulo n = p*q ako izaberemo p i q takve da
je p=k*4+3 i q=l*4+3, k,l=0,1,2,
:
1.
upotrijebi prošireni Euklidov algoritam i nađi cijele brojeve a
i b takve da je a*p+b*q=1
2.
izračunaj r=c(p+1)/4 mod p
3.
izračunaj s=c(q+1)/4 mod q
4.
izračunaj x=(a*p*s+b*q*r) mod n
5.
izračunaj y=(a*p*s-b*q*r) mod n
6.
četiri korijena su: x, -x mod n, y i y mod n
Ova
nejednoznačnost se može u praksi izbjeći dodajući prespecificiranu redundanciju
čistom tekstu prije enkripcije. Onda, sa velikom vjerojatnošću, samo
jedan od četiri korijena ima tu redundanciju. Ako nijedan od korijena
nema redundanciju, c se odbacuje.
Primjer (s malim parametrima):
Osoba A bira p=277, q= 331,n=p*q=91687
Enkripcija:
Neka je poruka 10-bitna m=1001111001.
Sada B replicira zadnjih 6 bitova i dobiva 16-bitovnu poruku m=1001111001111001
(m=40569).
B računa c=m2 mod
n = 405692 mod 91687 = 62111 i šalje A-u.
Dekripcija:
A pomoću p i q izrčunava:
m1 = 69654; m2 = 22033; m3 = 40569; m4 = 51118,
a binarnoj notaciji:
m1 = 10001000000010110; m2 = 101011000010001;
m3 = 1001111001111001; m4 = 1100011110101110:
Kako jedino m3 ima
odgovarajuću redundanciju, A dekriptira c u m3
i dobiva originalnu poruku m=1001111001
Vrh dokumenta
ElGamal
kriprosustav se može gledati Diffie-Hellmanov kriptosustav u razmjeni
ključeva. Temelji se na problemu diskretnog logaritma i Diffie-Hellman-ovom
problemu.
Osoba
A stvara ključeve:
1.
generiraj veliki slučajni broj p i generator a multiplikativne grupe Zp*
brojeva modulo p
2.
izaberi slučajan broj a, 0<a<p-1, i izračunaj aa mod p
3.
javni ključ je (p,a,aa), a tajni (a)
Osoba
B kriptira poruku m, dobiva kriptiranu poruku c i šalje
je osobi A:
1.
saznaj javni ključ osobe A (p,a,aa)
2.
reprezentiraj poruku sa brojevima m iz intervala [0, p-1]
3.
odaberi slučajni broj k, 0<k<p-1
4.
izračunaj g=aa
mod p i d=m*(aa)k
mod p
5.
pošalji poruku c=(g,d) osobi A
Osoba
A dekriptira poruku c i dobiva originalnu poruku m:
1. izračunaj
gp-1-a mod p (napomena: gp-1-a=g-a=a-ak)
2. izračunaj
m=(g-a)*d mod p
Primjer
(s malim parametrima):
Osoba
A bira p=2357 i generator a=2
od Z2357* i a=1751 i računa
aa mod p = 21751 mod 2357
= 1185.
Javni
ključ osobe A je (p=2357, a=2,
aa=1185).
Enkripcija:
Neka
je poruka m=2035, B bira slučajni broj k=1520 i računa
g=21520 mod 2357=1430
i d=2035*11851520 mod 2357=697 i
šalje osobi A (1430,697).
Dekripcija:
A
računa gp-1-a=1430605 mod 2357=872 i m=872*697
mod 2357=2035
Vrh dokumenta
McEliece
kriptosustav je baziran na kodovima za ispravak pogrešaka. Prvo se izabere
neki kod za koji je poznat neki efikasni dekodirajući algoritam, a zatim
zamaskirati kod kao općeniti linearni kod. Kako je problem dekodiranja
linearnog koda je težak, opis originalnog koda može poslužiti kao tajni
ključ, a opis transformiranog koda kao javni ključ.
Ovaj
sustav je prvi koji je koristio slučajne brojeve u enkripciji. Iako
je vrlo efikasan, u praksi se malo koristi jer su javni ključevi jako
veliki.
Osoba A stvara ključeve:
1. prirodni
brojevi k, n i t su konstantni kao parametri sustava
2.
odaberi generatorsku matricu G (kxn) za binarni (n,k)-linearni
kod koji može ispraviti t grešaka, i za koju je poznat efikasni
algoritam dekodiranja
3.
odaberi matricu S (kxk) koja nije jedinična
4. odaberi permutacijsku matricu P (nxn)
5. izračunaj G=S*G*P (kxn)
6. javni ključ je (G,t),
a tajni (S,G,P)
Osoba B kriptira poruku m,
dobiva kriptiranu poruku c i šalje je osobi A:
1. saznaj
javni ključ osobe A (G,t)
2.
reprezentiraj poruku kao binarni string m duljine k
3.
izaberi slučajni binarni vektor z duljine n koji ima najviše
t jedinica(1)
4.
izračunaj binarni vektor c=m*G+z
5.
pošalji poruku c osobi A
Osoba A dekriptira poruku c
i dobiva originalnu poruku m:
1. izračunaj
c=cP-1
2.
upotrijebi dekodirajući algoritam za kod generiran s G i dekodiraj c
u m
3.
izračunaj m=mS-1
Vrh
dokumenta
Blum-Goldwasser je vjerojatnosni
kriptosustav. Koristi Blum-Blum-Shub generator za generiranje pseudoslučajnih
bitovnih sekvenci. S njima se radi "isključivo ili" (XOR)
s tekstom poruke.
Osoba
A stvara ključeve:
1. nađi
dva velika prosta broja p i q (> 10100),
p=k*4+3 i q=l*4+3
2.
izračunaj n=p*q
3.
upotrijebi prošireni Euklidov algoritam i nađi cijele brojeve a
i b takve da je a*p+b*q=1
4. javni ključ je (n), a tajni
(p,q,a,b)
Osoba B kriptira poruku m,
dobiva kriptiranu poruku c i šalje je osobi A:
1. saznaj
javni ključ osobe A (n)
2.
neka je k=[log2n] i h=[log2k]
3.
reprezentiraj poruku m kao string m=m1m2
mt
duljine t, gdje je svaki mi binarni
string duljine h
4.
izaberi sjeme x0 (može se izabrati kao x0=r2
mod n, r=1,2,
,n)
5.
za i od 1 do t radi:
a.
izračunaj xi=xi-12 mod n
b.
neka je pi zadnjih h manje značajnih bitova
od xi
c.
izračunaj ci=pi XOR mi
6.
izračunaj xt+1=xt2 mod n
7.
pošalji poruku c=(c1,c2,..,ct,xt+1)
osobi A
Osoba A dekriptira poruku c
i dobiva originalnu poruku m:
1. izračunaj
d1=((p+1)/4)t+1 mod (p-1)
2. izračunaj d2=((q+1)/4)t+1
mod (q-1)
3.
izračunaj u=xt+1d1 mod p
4.
izračunaj v=xt+1d2 mod q
5.
izračunaj x0=v*a*p+u*b*q mod n
6.
za i od 1 do t radi:
a.
izračunaj xi=xi-12 mod n
b.
neka je pi zadnjih h manje značajnih bitova
od xi
c.
izračunaj mi=pi XOR ci
Primjer (s malim parametrima):
Osoba A bira p=499, q= 547,n=p*q=272953,
a=-57, b=52
Enkripcija:
k=18,
h=4
m=m1m2m3m4m5
(t=5), m1=1001, m2=1100, m3=0001, m4=0000,
m5=1100
x0=159201
(3992 mod n) i izračunava:
i
|
xi=xi-12 mod n
|
pi
|
ci=pi XOR mi
|
1
|
180539
|
1011
|
0010
|
2
|
193932
|
1100
|
0000
|
3
|
245613
|
1101
|
1100
|
4
|
130286
|
1110
|
1110
|
5
|
40632
|
1000
|
0100
|
i x6=139680.
B šalje
A c=(0010,0000,1100,1110,0100,139680).
Dekripcija:
A
računa d1=((p+1)/4)6 mod (p-1)=463, d2=((q+1)/4)6
mod (q-1)=337, u=x6463 mod p=20, v=x6337
mod q=24, x0=v*a*p+u*b*q mod n=159201.
A izračuna
x1 i p1 iz x0
isto kao i B u enkripciji i dobiva mi=pi
XOR ci.
Vrh
dokumenta
U mnogim
kriptografskim protokolima dvije osobe žele početi komunicirati. Ali,
ako pretpostavimo da inicijalno ne posjeduju bilo kakav tajni ključ
i tako ne mogu koristiti kriptosustav s tajnim ključem.
Diffie-Hellmanova
metoda se upotrebljava za dogovor tajnog ključa preko nesigurnog kanala.
Bazirana je na problemu Diffie-Hellmanovom problemu: za zadane g,
p, gx mod p i gy mod p, nađi gxy
mod p. Ovaj problem je smatran teškim, a u nekim svojim instancama
je težak kao i problem diskretnog logaritma. Diffie-Hellmanov protokol
se generalno smatra sigurnim.
Obje osobe rade isti postupak:
1. izaberi
s drugom osobom velik prost broj p i bazu g (g<p).
2. odaberi tajni ključ x (x<p)
3. izračunaj javni ključ y=gx
mod p
4. pošalji drugoj osobi poruku (y)
5.
primi poruku (y') od druge osobe
6.
izračunaj tajni ključ z=(y')x mod p
Primjer (s malim parametrima):
Neka je p=65537 i g=3.
Osoba A odabere tajni ključ xa=39470
i izračuna javni ključ ya=50022 i pošalje ga B-u.
Osoba B odabere tajni ključ xb=19488
i izračuna javni ključ yb=25158 i pošalje ga A-u.
A prima ya'=25158 i
izračuna z=57044.
A prima yb'=5022 i izračuna
z=57044.
Implementacija Diffie-Hellman
protokola u Javi.
Vrh dokumenta
Rješenje problema identifikacije,
autentičnosti i privatnosti na računalnim sustavima leži u polju kriptografije.
Zbog ne-fizičke prirode medija, tradicionalne metode fizičkog označavanja
medija s potpisom su beskorisne. Zbog toga, neke oznake moraju biti
kodirane na informaciju da identificiraju izvor, potvrde autentičnost
sadržaja i pružaju privatnost.
Zaštita privatnosti koristeći simetrični
kriptosustav (kao DES) je relativno lagana u malim mrežama, zahtijevajući
razmjenu tajnih enkripcijskih ključeva između stranaka. Kako se mreža
širi, sigurna razmjena ključeva postaje skuplja. Ovo rješenje postaje
nepraktično već za srednje velike mreže.
DES ima dodatni nedostatak, zahtjeva
dijeljenje tajnog ključa. Svaka osoba mora vjerovati drugoj da će čuvati
njihov tajni ključ. Kako korisnik mora imati drugačiji ključ za svaku
osobu s kojom komunicira, moraju vjerovati svakoj osobi s jednim od
njihovih tajnih ključeva. To znači da u praktičnim implementacijama,
sigurna komunikacija se može održati između ljudi koji su prije imali
neku međusobnu vezu.
Bolji način je asimetrična kriptografija.
Bolje nego da se koristi isti ključ za enkripciju i dekripciju, koristi
se par ključeva. Svaki ključ izvodi jednosmjernu transformaciju podataka.
Svaki ključ je inverz drugog (što jedan napravi, samo drugi može poništiti).
Isto tako, korisnik može poruku kriptirati svojim tajnim ključem. To
pruža osnovni digitalni potpis jer ako korisnik može dekriptirati poruku
sa nečijim tajnim ključem, onda se zna da je poruku napisala prava osoba.
1. http://cacr.math.uwaterloo.ca/hac/
2. http://www.apocalypse.org/pub/u/seven/diffie
3. http://www.swcp.com/~mccurley/talks/msri2/
4.
http://www.ssh.fi/tech/crypto/algorithms.cfm#asymmetric
5.
http://security.tao.ca/crypt_basics.shtml
6.
http://www.verisign.com/repository/crptintr.html
Vrh dokumenta
© Zavod za Elektroniku,
Mikroelektroniku, Računalne i Inteligente Sustave
|