[ glamoc @ 04.08.2009. 22:24 ] @
Skoro sam citao nesto uopsteno o zastiti izmedju ostalog i o sertifikatima pa bi hteo da probam da radim nesto sa sertifikatima u javi.Ako neko ima neku korisnu literaturu ili neki jednostavan primer neka pise. |
[ glamoc @ 04.08.2009. 22:24 ] @
[ afrodom @ 05.08.2009. 16:49 ] @
Ne bih da te obeshrabrujem, ali ako si mislio o sigurnosnim sertifikatima, to ti je malo obuhvatnija oblast od popodnevnog iscitavanja :)
Naime cela sigurnost jave se sadrzi u nekoliko specifikacija, otvorenog tipa, tako da koliko ja znam, najbolje i najvise sto mozes nauciti o njima jeste iscitavajuci iste specifikacije i testiranjem istih. Ne znam na sta si tacno mislio ali pretpostavljam na "mutual authentication between client and server over SSL". Kao sto samo navodjenje kaze, u pitanju je razmena istih sertifikata gde server salje svoj sertifikat, a klijent ga uporedjujem sa svojom bazom sertifikata. To ti je najuprosceniji okvir u vezi sigurnosti sa sertifikatima. Inace pored SSL (Secure Sockets Layer) koja se koristi za "integrity, confidentiality and authentication" primenom sertifikata, mozes pogledati i specifikaciju XKMS (XML Key Management Specification), sa istim osobinama i primenom kao gorenavedeni SSL transport. To ti je sto se tice nekih osnova sigurnosti. Ja bih ti preporucio XML Signature specifikaciju, i XML Encryption specifikaciju da pogledas, jer su izvrsne. Naravno, ukoliko baratas sa web servisima, WS-Security ti je nezavistan od protocola, i obuhvata pri tom, kompletnu sigurnost. pozzzzz [ djomlaue @ 07.08.2009. 17:47 ] @
Sad sve zavisi sta zelis da postignes sa sertifikatima. U sustini sertifikate koristis za enrkipciju ili digitalno potpisivanje. Odnosno da zastitis podatke od citanja ili kao dokaz da je neki dokument zaista tvoj. U javi se konkretno za sertifikate koristi paket java.security.cert.*, a evo ti i primer kako mozes da ucitas sertifikat iz fajla pa pogledaj malo i klasu Certificate.
Code: public static java.security.cert.Certificate importCertificate(File file) { try { FileInputStream is = new FileInputStream(file); CertificateFactory cf = CertificateFactory.getInstance("X.509"); java.security.cert.Certificate cert = cf.generateCertificate(is); return cert; } catch (CertificateException e) { } catch (IOException e) { } return null; } Kao sto afrodom rece, to ti je prilicno siroka oblast i moras da krenes od pocetka i da ukapiras sve DES, RSA, MD5, SHA-1, CA, CRL, root cert, self-signed cert i mnoge druge skracenice i da ukapiras kako funkciosu simetricni i asimetricni kljucevi, njihova kombinacija, pa onda kad ces da koristis javni a kad privatni kljuc, templejti sertifikata, opet sve u zavisnosti sta ti konkretno treba. Najbolje ti je da pocnes odavde pa prati dalje linkove i reference. Knjiga koja je meni bila zanimljiva je Beginning Cryptography with Java, a verujem da ces je naci na netu. Ako te zanima online literatura nema bolje od zvanicne dokumentacije Pozdrav Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|