Mercur
Mercur SOAP
SOAP in Wikipedia
Introduction to XML
Fiskalizacija-DEV
kako na Linux instalirati certifikat
Fiskalizacija
Mercur Correspondence
ToDo list
What does KISS stand for?

 
FINA certifikat
compillation


FINA certifikat

problemi koje treba riješiti:
• kako potpisati XML datoteku FINA certifikatom?
• kako koristiti x.509 certifikat ili fiskal cistest?
• kako se spojiti na cistest.aspic-it.hr server i slati potpisani XML-a preko SOAP i HTTPS-a?
• XML kanonikalizacija
• XML shema ili WSDL za fiskalizacija
• kako SSL komunicira sa demo serverom FINE?
• kako generirati zaštitni kod računa za fiskalne blagajne?


dkustec wrote:
cuckovic wrote:
Jedino ostaje problem kako na Linux instalirati certifikat preuzet sa http://demo-pki.fina.hr/ (Verifikacijski/root (samopotpisani) certifikat za Demo CA ).
Vrlo jednostavno:

# cd /etc/pki/tls/certs
# wget http://demo-pki.fina.hr/crl/democacert.cer
# ln -s democacert.cer `openssl x509 -hash -noout -in democacert.cer`.0
# openssl verify -CApath /etc/pki/tls/certs democacert.cer
democacert.cer: OK

# openssl s_client -showcerts -connect #ovdje_ide_adresa_za_ssl:443# -CApath /etc/pki/tls/certs
Ovo će raditi na većini linux platformi, jedino je različit path do "certs" direktorija...

------------------------------------------------------------------------------------------------------
meni baš nije htjelo tako raditi, ali ovako je:
# wget http://demo-pki.fina.hr/crl/democacert.cer
# openssl x509 -inform der -in democacert.cer -out democacert.pem
# openssl x509 -hash -noout -in democacert.pem
ce65b455
# ln -s democacert.pem ce65b455.0
# openssl verify -CApath /etc/pki/tls/certs democacert.pem
democacert.pem: OK
# openssl s_client -showcerts -connect cistest.apis-it.hr:8449 -CApath /etc/pki/tls/certs
na kraju puno svega treba pisati ako je ok:
Verify return code: 0 (ok)

-------------------------------------------------------------------------------------
https://cistest.apis-it.hr:8449/FiskalizacijaServiceTest

-------------------------------------------------------------------------------------
Certifikati i fiskalizacija
by Nino17. October 2012 09:07

Ovo što dalje pišem u ovom postu jesu stvari proizašle iz našeg iskustva i prakse, te iz pitanja/problema koje ostale kolege imaju, a koja dolaze do nas. Kako ne znamo koja je generalna ideja FINA-e, APIS IT-a i Porezne uprave, unaprijed se ograđujem ukoliko napišemo nešto netočno - u svakom slučaju, neka nas netko ispravi :)

Prema dostupnim informacijama, nekoliko je certifikata u "igri":
1. FISKAL (DEMO) certifikat, informatičke tvrtke odnosno, kasnije, obveznika
2. Aplikacijski certifikat CIS-a, fiskalcistest
3. Verifikacijski/root (samopotpisani) certifikat za Demo CA, democacert
4. Poslužiteljski certifikat CIS-a, cistest.apis-it.hr

Certifikat pod brojem 4.) je certifikat koji se ne koristi za digitalno potpisivanje XML poruka - on se koristi kod uspostavljanja SSL (HTTPS) između vašeg računala (klijenta) i CIS servera.

Certifikat pod brojem 1.) je ključan u cijeloj ovoj priči - naime - on služi kako bi obveznik mogao digitalno potpisati svaku XML poruku (RacunZahtjev, PoslovniProstorZahtjev) prilikom slanja u Poreznu upravu. Svaki račun potpisan ovim certifikatom Poreznoj upravi, zakonski, znači da ste upravo vi poslali tu poruku. Drugim riječima, ako netko dođe u posjed ovog certifikata, on može u vaše ime u Poreznu slati bilo kakve podatke, tako da treba skrenuti pažnju da je sigurnost ovog certifikata vrlo važna. Pripremamo članak na ovom blogu na tu temu.

Certifikat pod rednim brojem 2.) se koristi (trebao bi se koristiti ?) za potpisivanje XML dokumenata koje Porezna uprava vraća obvezniku. Na taj način PU jamči da je odgovor koji ste zaprimili zaista došao od njih.

Certifikat pod rednim brojem 3.) je prilično važan - radi se o certifikatu koji je ROOT certifikat za sve ostale DEMO FISKAL certifikate. Ovo "ROOT", pojednostavljeno, znači da je taj certifikat "iznad" (certification path) svakog drugog FISKAL DEMO certifikata. Kako je FINA taj certifikat sama sebi izdala (certifikat je "samopotpisan"), tako znači da iznad njega nema nekog drugog ROOT certifikata.

E, sad, ako iz vaše aplikacije pokušate poslati ECHO XML poruku usklađenu sa XSD-om, dakle XML poruku koja nije digitalno potpisana certifikatom pod 1.), prilikom spajanja na CIS vrlo vjerojatno ćete dobiti greške "The remote certificate is invalid according to the validation procedure." i "The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.". Tehnička specifikacija definira da se prilikom spajanja na CIS mora koristiti SSL (HTTPS) i ove se greške javljaju upravo iz razloga što se ne može osigurati sigurna veza od vašeg klijentskog računala do CIS servera. Razlog za to je certifikat pod brojem 4.), odnosno, činjenica da ne postoji ispravan "certificate chain" do "trusted authority" (odnosno, certifikat pod brojem 3.) je samopotpisan). Obratite pažnju da u ovom slučaju certifikat pod brojem 1.) ne igra nikakvu ulogu - ECHO možete slati bez svog FISKAL certifikata, s obzirom da se on koristi samo za digitalno potpisivanje RacunZahtjev i PoslovniProstorZahtjev poruka. Treba, dakle, razlikovati certifikate koji se koriste za digitalno potpisivanje od onih koji su potrebni za uspostavu SSL (HTTPS) veze.

U trenutku kada i certifikat pod brojem 3.) uključite u cijelu priču (Kako preuzeti i instalirati democacert - Verifikacijski/root (samopotpisani) certifikat za Demo CA), sve sjeda na svoje mjesto.