UVOD


Pompozni naslovi o i oko Jave čak ni danas ne prestaju puniti stranice informatičke štampe. Međutim što je zapravo Java, koje su njene prednosti, koji nedostaci? Kako je programirati u njoj, na što treba paziti, kako zaobići nedostatke?

Ovo su samo neka od pitanja koje svaki programer postavlja kad stoji pred izazovom novog programskog jezika kao što je Java. Da li se okrenuti programiranju u novom programskom jeziku ili ostati na starim, provjerenim programskim jezicima. U ovom diplomskom radu autor je pokušao odgovoriti na većinu tih pitanja.
Sam diplomski rad je koncipiran na taj način da demistificira mnoga pitanja oko Jave te može poslužiti kao solidna osnova i uvod programerima u ovaj nadasve jednostavan i izuzetno dobro konstruiran programski jezik.

Nadalje, većina literature kao i sam programski jezik je dohvatljiva potpuno besplatno na mnogim mjestima širom Interneta, međutim loša strana svega toga je da ima previše informacija a osim toga gotovo sve je na Engleskom. Ovaj rad bi trebao predstavljati jedan koncizan filtrat velikog broja tih informacija jer je autor koristio preko 50 različitih izvora informacija (internet adresa, ne internet dokumenata) a u popisu literature možete naći reference onih interesantnijih informacija vezanih za PGP, kriptografiju općenito i Javu.

Autor se ispričava zbog negdje neizbježne upotrebe Engleskih termina, no u nekim slučajevima u Hrvatskom jeziku ili ne postoji zamjenska riječ ili zamjenska riječ zvuči naprosto smiješnom i daleko je od pravog značenja termina. No ti engleski termini su se obično već toliko udomaćili barem u informatičkom rječniku da ne bi smjeli imati nikakvog utjecaja na razumijevanje samog sadržaja.

Također, autor se unaprijed ispričava zbog stilskih i gramatičkih pogrešaka kojim ovaj diplomski rad nesumnjivo vrvi. Međutim prije nego što krenete preoštro osuđivati autora, razmotrite količinu pa i kvalitetu materijala koji držite u ruci, pa tek onda donesite svoj sud imajući na umu vrlo ograničeno vrijeme izrade rada.

Glede kriptografije, autor je pokušao dati jedan presjek poznatih i korištenih algoritama i protokola ne ulazeći u specifične matematičke strukture koje su u biti osnova svakog kriptografskog algoritma. Nadalje, u ovom radu možete pronaći detaljan opis načina rada poznatog PGP algoritma te njegovu implementaciju unutar Jave u konkretnoj realizaciji korisnik/poslužioc modela komunikacije u svrhu osiguravanja sigurnog prijenosa podataka. Uslijed vremenske ograničenosti nažalost nije dovoljno detaljno opisana realizacija SSL protokola kao alternativa i nadopuna PGP zaštiti podataka unutar već navedene implementacije komunikacije korisnik/poslužioc putem Jave.

Nadalje, u posebnim poglavljima su opisani novi pristupi definirani novom verzijom Jave(JDK v1.1), konkretno JavaBeans način programiranja klasa te JNI proširenje Jave putem funkcija pisanih u C/C++ programskim jezicima. Pored toga dat je pregled važnijih noviteta koje JDK v1.1 donosi.

Poštujući začetnu ideju koncepcije ovog diplomskog rada kao osnove budućim studentima koji će programirati u Javi, dat je presjek danas aktualnih Java prevodioca i vizualnih alata uz navođenje njihovih prednosti/nedostataka kako bi im se olakšao odabir programskog alata koji namjeravaju koristiti.

Glede same razrade modela sigurne komunikacije korisnik/poslužitelj, on također predstavlja samo svojevrsnu bazu (engine) koja tek treba poslužiti realizaciji konkretnih problema. Naime, informacije koje pribavljamo putem poslužioca nasumce se odabiru iz liste privilegiranih odnosno neprivilegiranih informacija. U konkretnoj implementaciji mogli bi postojeći model iskoristiti za iščitavanje pojedinih instrumenata te prijenos tako dohvaćene informacije na zaštićen način putem Interneta. Možemo ga iskoristiti za uspostavljanje studentskog servisa za prijavu i odjavu ispita putem Interneta jer dotičan model osigurava i identifikaciju samog korisnika putem digitalnog potpisa gdje su falsifikati nemogući a prednosti servisa očite. Po istoj liniji bi mogao naći primjenu u bankarstvu, no to povlači čitav niz drugih pitanja kao što je pravna osnova dokumenta potpisanog digitalnim potpisom. Vidljivo je da su primjene brojne i gotovo neograničene jer se ovako razrađenim servisom može zamijeniti bilo koja radnja koja bi zahtijevala identifikaciju korisnika te dopuštanje korisniku na osnovu identifikacije određene radnje (plaćanje računa, izdavanje potvrda možda čak i polaganje ispita).

U realizaciji dotičnog modela komunikacije korišteni su materijali (Cryptix paket) dobavljeni sa sljedeće internet adrese:

http://www.systemics.com/software/cryptix-java

Dotični materijali sadrže već izrađen zbir klasa i native funkcija za podršku PGP kriptiranju i besplatni su za nekomercijalnu upotrebu. Međutim ti materijali nisu bez mana tako da se autor ovog diplomskog rada aktivno uključio u razvoj dotičnog programskog paketa i razradio podršku KeyServer servisu (za pribavljanje PGP javnih ključeva korisnika), ispravio neke nepravilnosti glede strukture informacija PGP (de)kriptirane poruke te izradio keycache klasu koja služi privremenom pamćenju korištenih ključeva. Navedena proširenja sada su (ili tek trebaju biti) ugrađena u postojeći programski paket (uz komplimente izvornih autora).

Nadalje, korišteni su materijali (IAIK paket) pribavljeni sa sljedeće adrese:

http://kopernikus.iaik.tu-graz.ac.at

Konkretni materijali su također besplatni za nekomercijalnu upotrebu, međutim sadrže samo zbir klasa bez izvornih kodova tek sa par jednostavnih primjera. Konkretni primjeri poslužili su autoru da izradi SSL podršku sigurne komunikacije i alternativu PGP poslužiocu. Nažalost, dijelom zbog vremenskog ograničenja a dijelom zbog nedostupnosti informacija (Netscape u toj grani pokušava držati monopol) po procjeni autora dokumentacija ne pokriva dovoljno samu temu, no ipak može poslužiti kao solidna osnova razvoju SSL baziranih servisâ.

Na kraju bih se želio zahvaliti sljedećim osobama:



U Koprivnici, 4. prosinca 1997. godine




[<<Natrag] [Doma] [Sadržaj] [Šalji pismo] [Naprijed>>]