[ nezki @ 29.07.2007. 10:21 ] @
Zdravo drustvo, Radim za diplomski rad test aplikaciju zastita podataka na smart kartici. Za rad koristim citac kartica firme Axalto Reflex USB V3 i za njega sam skinuo drajver sa njihovog sajta(to je ustvari jedan exe fajl reflexv3-xp2k-setup.exe) i GemSafe karticu i od druga sam uzeo jedan .dll (gclib.dll) fajl koji valjda prestavlja API za pristup podacima na kartici(on j eto dobio uz svoju GemSafe karticu). Sve sam to konfigurisao na sledeci nacin: 1.Instalirao sam drajver za citac 2.U root folderu particije na kojoj mi je instaliran OS, definisao sam jedan konfiguracioni fajl, pkcs11.cfg (c:/gemsafe/pkcs11.cfg). Sadrzaj tog fajla je: name = GemSafe library = C:\gemsafe\gclib.dll (putanja do dll fajla koji sam uzeo od druga) disabledMechanisms = { CKM_SHA1_RSA_PKCS } Definisanjem ovog konfiguracionog fajla, dodao sam kriptografski provajder u java.security fajl. security.provider.8=sun.security.pkcs11.SunPKCS11 c:/gemsafe/pkcs11.cfg Sta je moj zadatak za diplomski? 1.Treba da na karticu upisem moje ime i prezime i JMBG 2.Treba da digitalno potpisem neki tekst (koji se unosi preko korisnickog interfejsa) sa tajnim kljucem koji se nalazi na kartici 3.Napravim aplikaciju koja preuzima digitalno potpisan tekst sa kartice i digitalni sertifikat(on se nalazi na istoj kartici i njegov javni kljuc odgovara tajnom kljucu sa kartice sa kojim je tekst potpisan) i njihovim povezivanjem se uverim u verodostojnost tog digitalno potpisanog teksta(uploadovao sam uz poruku sliku koja sve ovo objasnjava). Ceo program bih radio u Javi. E sad problem je nastao jos na samom pocetku kod konfiguracije.Nista ne radi kako treba.Cak ni citac ne registruje kada ubacim karticu u njega(ne svetli led dioda).Za primer sam pokusao da izlistam kriptografske provajdere sa sledecim primerom(ubacio sam karticu u citac): Code: import java.security.Provider; import java.security.Security; public class Proba { public static void main(String[] args) { // TODO Auto-generated method stub Provider[] providers = Security.getProviders(); for(Provider p : providers){ System.out.println(p.getName() + "\n"); } } } ALi mi prijavljuje sledecu gresku: Exception in thread "main" java.security.ProviderException: Initialization failed at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:340) at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:86) ..... ..... at sun.security.pkcs11.wrapper.PKCS11.connect(Native Method) at sun.security.pkcs11.wrapper.PKCS11.<init>(PKCS11.java:141) at sun.security.pkcs11.wrapper.PKCS11.getInstance(PKCS11.java:154) at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:281) ... 14 more Da li neko moze da mi pomogne i uputi me u neki slican primer koji bi mogao da mi pomogne da zavrsim diplomski ili ako je neko radio nesto slicno pa da mi malo pojasni stvari. Unapred hvala svima. |