Professional Documents
Culture Documents
Kriptografija
Kriptografija
Crypto-tajnost
Graphy-zapisati
Postoje dve vrste kriptografije to su simetrična i asimetrična. Simetrična kriptografija ima isti
kljič za enkripciju i dekripciju, dok asimetrična (kriptografija javnog ključa) nema isti ključ za
enkripciju i dekripciju, jedan ključ je javan i ona je složena za razliku od simetrične. Postoje
algoritmi koji kombinuju simetričnu i asimetričnu kriptografiju.
Supstitucioni algoritmi vrše zamenu jednog slova drugim i dele se na monoalfabetski algoritam
(Cezarov algoritam) i polialfabetski algoritam (Vigener algoritam).
One Time Pad (OTP) algoritam- u pitanju je Stream-cipher algoritam. To je dobar algoritam jer
je sigurnost ‘perfektna’. Dužina ključa mora biti veća ili jednaka dužini poruke, takođe ključ
mora biti ‘slučajan’.
Ako je ciphertext poznat, a poznat je i deo plaintexta, npr. SMTP (Simple Mail Transfer
Protocol) počije sa From, ako postoji algoritam koji bi odredio ostatak ključa onda ovakav sistem
postaje nesiguran.
U ovom algoritmu je veoma lako predvideti sledeći bit na osnovu prethodnog, tako da se ovaj
algoritam retko koristi u kriptografiji.
OTP algoritam koristi XOR funkciju i PRG da bi implementirao algoritam enkripcije i algoritam
dekripcije. Sigurnost ovog algoritma počiva na nepredvidivosti niza bitova koji generiše PRG
algoritam. Mogući napad odnosi se na slučaj kada se isti ključ k koristi dva puta čime nastaje
Two Time Pad (TTP).
Point to Point Transfer Protokol (PPTP)- klijent komunicira sa serverom pri čemu koristi isti
ključ k. Server ne sme koristiti isti ključ k pri odazivu.
802.11b WEP
WEP- klijent koristi vrednost IV na koju se konkateciom dodaje ključ k. Ova vrednost je ustvari
brojač. Sa druge strane veze brojač je isti, a ključ k je poznat. Sledeći paket koristi sledeću
vrednost za IV. Vrednost IV se sastoji od 24 bita, posle određenog broja frejmova vednost IV se
resetuje. Pri nekim hardverskim implementacijama vrednost IV se resetuje na 0 posle prekida
napajanja.
Većinom se koristi logaritam osnove 2 jer se radi o računarima. Java nema implementiran
logaritam osnove 2. Biblioteka math ima implementiran logaritam osnove e, ovo je ‘prirodni’
logaritam često oznalen sa ln. Na osnovu proračuna prirodnog algoritma možemo proračunati
algoritam bilo koje osnove. Logaritam osnove 2 možemo koristit da proračunamo približan broj
bitova potreban za predstavljanje datom integer-a.
Blokovski algoritmi rade sa nizom bitova, a ne samo sa jednim. Na ulazu u blokovski algoritam
je niz bitova odjednom. Nizovi su različitih dužina u zavisnosti od algoritma.
Poznat je Data Encryption Standard- DES nastao je sredinom 1970-ih godina, to je simetričan
blokovski algoritam kao i prvi moderni kripto-algoritam za komercijalnu upotrebu koji je
standardizovan (FIPS 46-2). Algoritmi na kojima počiva DES su Product ciphers i Feistel
ciphers. Ovakvi algoritmi rade u rundama(R-oznaka za rundu), od originalnog ključa nastaje niz
ključeva 𝑘1 ,𝑘2 ... Runda R(𝑝1,𝑘1 ) prima ključ 𝑘1 i deo poruke 𝑝1. Za DES standardan broj rundi
je 16, 3DES ima 48 rundi, a AES 128 (Advanced Encryption Standard sa ključem dužine 128)
ima broj rundi 10. Performanse po brzini manje su od stream cipher-a.
Feistel algoritam je iterativni blokovski algoritam koji mapira bitove otvorenog (plaintext) teksta
u r rundi, gde je r ≥1.
DES S-kutije: