» »

Davčne blagajne

Davčne blagajne

««
25 / 27
»»

Spura ::

matijaDS je izjavil:

Jaz bi prej rekel da kar celo datoteko porineš v funkcijo in potem zapišeš ti dve vrednosti.
Gre pač za kontrolo, da lahko oni dobijo datoteko, ki jo potem porinejo v to isto funkcjio in pogledajo, če sta md5 in sha vrednosti isti, ker če nista, to pomeni, da je nekdo popravljal datoteko preden jo je poslal.

Ampak ista oseba je lahko napisala tudi drug SHA, torej so hashi povsem neuporabni.

Mavrik ::

Jesus no, SHA1/MD5 za integrity check je pa ja standardna praksa v ITju ko se prenašajo datoteke -_-

Kaki developerji ste to? :)
The truth is rarely pure and never simple.

Strato5 ::

Spura je izjavil:

Ampak ista oseba je lahko napisala tudi drug SHA, torej so hashi povsem neuporabni.


Mavrik je izjavil:

Jesus no, SHA1/MD5 za integrity check je pa ja standardna praksa v ITju ko se prenašajo datoteke -_-

Kaki developerji ste to? :)


This...
Gre za stalno prakso v IT. Je pa res, da jaz kot developer, če bi hotel tajit kake spremembe računov, bi pripravil te tekstovne datoteke (pač izvozil iz programa), potem bi jih ročno pofiksal, da nebi blo kakih "sumljivih" zadev noter, potem bi pa zgeneriral MD5 in SHA vrednosti s kakim online orodjem in pač tiste vrednosti napisal na kuverto. Ampak to sem samo jaz.
Pri pripravi skript za izvoz teh datotek, pa sem se pri slovenski politiki navadil, da se ne sprašujem o smiselnosti kake zadeve ampak pač nardim po specifikacijah in to je to. Pač program mora zadovoljiti zakonske zahteve. Kako inovativni in spretni so potem uporabniki, pa ni več moj problem.

Mavrik ::

Pa saj to ni za preverjanje ponarejanja (ker za tisto bi itak hotel meti digtalni podpis / HMAC). To je sam za preverjanje tega da je fajl prišel čez od ustvarjalca do končne postaje nepoškodovan. Napake pri kopiranju ključkov (ej bom ga kar izvlekel!), pečenju CDjev, uploadu in downloadu se še vedno kar dogajajo. Temu je namenjen MD5/SHA1 check :)
The truth is rarely pure and never simple.

abraxas ::

Glede na to, da sta dve TXT datoteki, ali je treba generirati MD5/SHA1 hash vrednosti za vsako datoteko posebej ali za obe hkrati?

Strato5 ::

abraxas je izjavil:

Glede na to, da sta dve TXT datoteki, ali je treba generirati MD5/SHA1 hash vrednosti za vsako datoteko posebej ali za obe hkrati?

vsako posebej pomoje. sej se integrity check dela za vsako datoteko ločeno. če bi bil samo za eno bi moral skup zazipat pomoje. al se da dat dve datoteki v orodje, pa da en md5 hash generira (ne da bi jaz vedel za tako orodje)?

EDIT: hvala mavrik za Pojasnila in obrazložitve :) čeprav se nebi čudil če bi oni uporabljali to da bi se "prepričali", da ni bla datoteka spremenjnea :D vseeno je govora slovenski politiki :P

Zgodovina sprememb…

  • spremenilo: Strato5 ()

OracleDev ::

@perci (kolikor vidim si sodeloval pri razvoju)
Imam vprašanje. Zakaj ni mogoče na podlagi tega IDja, ki ga pridobiš iz kode računa dobiti preko nekega servisa osnovne podatke o računu, npr. izdajatelj, kupljeni izdelki, cena,..., predvsem pa brez nekih potrebnih birokracijskih postopkov. Govorim o odprti storitvi (enostaven klic z zahtevkom).
No sej mogoče obstaja in je to kdo že odgovoril pa tega nisem zasledil. Če še ne obstaja me zanima kje so omejitve. Ali to pač ni "država" naročila, ali je problem v "zaščiti osebnih podatkov",...?
Hvala za odgovor:)

Veron ::

Ali ima kdo informacijo, da je FURS spremenil API od davčne blagajne do take mere, da so morali proizvajalci SW za blagajno narediti "update" (update zaradi sprememb fursa)?

Sumim (lahko, da se motim), da želi prodajalec enostavno za krpanje lastnik napak, strankam računati (ker je naredil napako v štartu).
Če se motim, obstaja kak "changelog" od fursa?

PureHemp ::

Pri nas sprememb API-ja nismo zasledili. Tudi na uradni strani so še vedno tehnična navodila iz leta 2015. Mislim, da vas želijo nategniti :8)

Veron ::

PureHemp je izjavil:

Pri nas sprememb API-ja nismo zasledili. Tudi na uradni strani so še vedno tehnična navodila iz leta 2015. Mislim, da vas želijo nategniti :8)

So že neki druzga hotel nategnt, ampak tisto je moje področje, tako da je tašča že zavrnila fakturo z obrazložitvijo.

Hvala za podatek

perci ::

Od uvedbe blagajn, se ni nič spreminjalo. Če se kdaj bo, bo to precej prej javno napovedano. In zaenkrat niti najmanj ne kaže v to smer.

trstenjak ::

Vse moje blagajne delujejo brez problema z nespremenjenim API-jem že od začetka 2016 :)

zipposi ::

Pozdrav vsem!

Vprašanje, če morda kdo ve, kakšna je razlika med ExemptVATTaxebleAmount in NontaxableAmount? Če račun izdaja nezavezanec (torej račun brez DDV), kam se vpiše znesek? ČE ima kdo povezavo do kake razlage je tudi OK, vendar v dokumentaciji FURS-a ni razloženo tako, da bi razumel. Sumim, da se vpiše pod NontaxableAmount, a nisem 100%.

Iz dokumentacije FURS-a:

ExemptVATTaxableAmount:
Skupna vrednost dobav blaga ali storitev na računu, ki so v skladu z Zakonom o davku na dodano vrednost oproščene plačila DDV (po zmanjšanju za popuste).

NontaxableAmount:
Vrednost neobdavčljivih dobav blaga ali storitev na računu (po zmanjšanju za popuste). Podatek se vpiše le, če na
računu obstaja vrednost dobav, ki v skladu z Zakonom o davku na dodano vrednost niso predmet DDV.

lp

SonjaP ::

zipposi je izjavil:

Če račun izdaja nezavezanec (torej račun brez DDV), kam se vpiše znesek?

Glej pojasnila FURS - vprašanje 247:
http://www.fu.gov.si/fileadmin/Internet...

alansi ::

Kar sem se bal, se je zgodilo. Pri stranki so pred dobrimi 3 meseci izdali račun za nekaj čez 300€, ki ni bil plačan v roku. Kupec je po opominu predvčerajšnjim prinesel dolžni znesek in plačal v gotovini, za kar je bil izdan blagajniški prejemek. Vem, da mora sedaj prodajalec ta račun davčno potrditi na FURS v roku 10 dni. Vendar imam dileme:
- Račun je bil že obdelan skozi knjigo izdanih računov in ustrezno obračunan DDV.
- Kako je s številčenjem tega računa, ki že ima svojo številko.
- Ali ne bo zaradi potrditve tega računa na FURS nastala nova obveznost za DDV?
Zanima me, kako imate pri vas urejene takšne primere

krho ::

Pri nas potrjujemo čisto vse račune. Problem rešen.
si.Mail odprto-kodni odjemalec elektronske pošte. - http://www.simail.si
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net

DamijanD ::

alansi: če prav razumem vi nimate davčne blagajne, ker ste računali, da bo zadeva potekala strogo negotovinsko. Predlagam, da pošlješ mail na lokalni FURS.

vofra ::

nakaži gotovino na TRR z ustreznim imenom na poloznici

Malajlo ::

Ja ... Če se ti to dogaja redno, potrjuj vse račune. Nepotrjen naj bo izjema.
Sicer pa storniraš starega nepotrjenega in izdaš novega potrjenega.
S TRRjem in imenom se ne hecaj. Na pošti ti DNK po novem vzamejo, ko naročnino na Kih plačaš.

pix ::

A kdo ve, če se bo testno okolje kaj prej pred 30.6.2018 zaprlo za protokole tls 1 in 1.1?

trstenjak ::

pix je izjavil:

A kdo ve, če se bo testno okolje kaj prej pred 30.6.2018 zaprlo za protokole tls 1 in 1.1?

Lahko poveš kaj več, od kod ta informacija?

pix ::

Iz tehnične dokumentacije, starn 9:
http://www.datoteke.fu.gov.si/dpr/files...

Za vzpostavitev varne seje se uporablja dvosmerni protokol TLS. Odjemalec za avtentikacijo in
vzpostavitev TLS seje uporabi namensko digitalno potrdilo (postopek pridobitve je opisan v poglavju 2.2.).
Omogočena je uporaba TLS protokola verzij 1.0, 1.1 in 1.2. Verziji TLS 1.0 in 1.1 bosta omogočeni do
30.6.2018. Iz varnostnega stališča priporočamo uporabo TLS protokola verzije 1.2 oz. čimprejšnji prehod

perci ::

A bi rad, da se prej zapre? Sej 1.2. lahko že sedaj furaš. Mislim, da bo problem obraten - da bo folk jokal, naj se še ne, ker....stroški itd.

pix ::

ja na testnem okolju bi bilo fajn da se zapre prej, hrvati so isto testno okloje zaprli en mesec prej.

hruske ::

Smiseln predlog.
Rad imam tole državico. <3

trstenjak ::

"z varnostnega stališča priporočamo uporabo TLS protokola verzije 1.2"

nič ni govora o zaprtju 1.0 in 1.1, samo priporočilo.

Ales ::

"Omogočena je uporaba TLS protokola verzij 1.0, 1.1 in 1.2. Verziji TLS 1.0 in 1.1 bosta omogočeni do 30.6.2018. Iz varnostnega stališča priporočamo uporabo TLS protokola verzije 1.2 oz. čimprejšnji prehod."

En stavek prej sporočajo datum, po katerem bo povezava preko TLS 1.0 in 1.1. onemogočena.

trstenjak ::

Ales je izjavil:

"Omogočena je uporaba TLS protokola verzij 1.0, 1.1 in 1.2. Verziji TLS 1.0 in 1.1 bosta omogočeni do 30.6.2018. Iz varnostnega stališča priporočamo uporabo TLS protokola verzije 1.2 oz. čimprejšnji prehod."

En stavek prej sporočajo datum, po katerem bo povezava preko TLS 1.0 in 1.1. onemogočena.

Imaš prav, to je čisto drugačno sporočilo.

perci ::

hruske je izjavil:

Smiseln predlog.

OK, lahko na kratko elaboriraš, prosim?

DamijanD ::

Verjetno je bistvo samo v tem, da je dobro, da v testu neha delati prej kot v produkciji, tako se lahko do časa ugotovi neustrezne rešitve.

perci ::

ok, makes sense

hruske ::

DamijanD je izjavil:

Verjetno je bistvo samo v tem, da je dobro, da v testu neha delati prej kot v produkciji, tako se lahko do časa ugotovi neustrezne rešitve.

Točno to.
Rad imam tole državico. <3

perci ::

Testno okolje naj bi se za 1.0 zaprlo že sredi februarja - bo menda novica o tem v kratkem. 1.1 naj bi do nadaljnjega ostal.

Zgodovina sprememb…

  • spremenil: perci ()

trstenjak ::

Perci, imaš mogoče podatek, koliko jih uporablja TLS 1.0 ali 1.1 ?

perci ::

Sorry, spregledal tole...statistika za en dan

TLS Version 1.0 1420837
TLS Version 1.1 1343
TLS Version 1.2 1175778

Zgodovina sprememb…

  • spremenil: perci ()

trstenjak ::

perci je izjavil:

Sorry, spregledal tole...statistika za en dan

TLS Version 1.0 1420837
TLS Version 1.1 1343
TLS Version 1.2 1175778


Presenetljivo, imam občutek da bo kar nekaj blagajn obstalo, ko bo napočil dan D.

krho ::

To je pa zelo slabo. Jaz bi rekel, da folk uporablja staro javo ali pa prastare openssl knjižnice < 1.0.
si.Mail odprto-kodni odjemalec elektronske pošte. - http://www.simail.si
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net

AndraZK ::

Ali pa morajo podpirat Win XP z .net Frameworkom 4, ki nima tls 1.2. Ceprav vidim, da se je tu nekaj premaknilo in mogoce obstaja/dela workaround za tls1.2 na FW4.
The Matrix Has Me...

trstenjak ::

krho je izjavil:

To je pa zelo slabo. Jaz bi rekel, da folk uporablja staro javo ali pa prastare openssl knjižnice < 1.0.

Java TLS 1.2 lepo teče na vseh platformah od XP - WIN10 + vsi linuxi - preverjeno brez tweakov. Prav tako dvomim, da bi kdo razvijal za prešnji standard 1.0 ali 1.1, v kolikor to ni res nujno. Ne vem pa, kakšno je stanje na androidu. Sklepam, da je na eni od platform problem z 1.2 in so programerji pač uporabili, kar je bilo še dovolj dobro, da je delovalo.

val1 ::

Pozdravljeni,
imam eno težavo in sicer... FURS bo ukinil TLS1.0 in TLS1.1
Na bazi podatkov imam nameščeno Javo 1.6 (Oracle 11g).. Verzije se ne da nadgraditi.. razen če bi nadgradil bazo (so velike firme in ne gre to čez noč)..
Trenutno imam celotno logiko podpisovanja in pošiljanja rešeno na bazi preko Java stored procedur..
Sedaj se pa zakomplicira ker Java 1.6 ne podpira TLS1.1 in TLS1.2

Rešitev naj bi bila knjižnica BouncyCastle.. imam pa težavo ker ne vem kako naj določim, da upošteva certifikat test-tls.cer, ki ga imam na disku..

V predhodni različici mi je zadeva delovala Bp tako:

            SSLContext sslcontext = SSLContext.getInstance("TLS");  //TLSv1.1, TLSv1.2
            KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509");
            KeyStore ks = KeyStore.getInstance("PKCS12");
            ks.load(new FileInputStream(direktorij + "/" + certifikat), geslo.toCharArray());
            kmf.init(ks, geslo.toCharArray());

            CertificateFactory cf = CertificateFactory.getInstance("X.509");

            InputStream is = new FileInputStream(direktorij + "/" + trustStoreCertifikat); //"c:/cert/test-tls.cer");
            InputStream caInput = new BufferedInputStream(is);
            Certificate ca;
            try {
                ca = cf.generateCertificate(caInput);
                System.out.println("ca=" + ((X509Certificate) ca).getSubjectDN());
            } finally {
                caInput.close();
            }
            String keyStoreType = KeyStore.getDefaultType();
            KeyStore keyStore = KeyStore.getInstance(keyStoreType);
            keyStore.load(null, null);
            keyStore.setCertificateEntry("ca", ca);

            // Create a TrustManager that trusts the CAs in our KeyStore
            String tmfAlgorithm = TrustManagerFactory.getDefaultAlgorithm();
            TrustManagerFactory tmf = TrustManagerFactory.getInstance(tmfAlgorithm);
            tmf.init(keyStore);

            TrustManager[] tm = tmf.getTrustManagers();
            sslcontext.init(kmf.getKeyManagers(), tm, null);
            HttpsURLConnection.setDefaultSSLSocketFactory(sslcontext.getSocketFactory());


Ima kdo kakšen primer kako spravit zgornji primer z uporabo BouncyCastle (kako določiti, da upošteva test-tlc.cer, certifikat ob prijavi na server)?

hvala

Zgodovina sprememb…

  • spremenilo: val1 ()

peglezn ::

Tudi java 1.6 podpira tls 1.1 in tls 1.2, samo protokola po defaultu nista enabled.
Ne rabis library za to, samo extendaj tisti SSLFactory in v njem enablaj protokole.

val1 ::

Moment.. če uporabim

TLSv1.2, dobim napako spodaj: (to je z javo 1.6.0_25)
 java1.6

java1.6



Če probam z java 1.7 ali višjo bo seveda šlo skozi..
 java1.7

java1.7



Na Oracle-ovi strani piše to:
 jdk

jdk



peglezen, mi lahko prosim pomagaš kako to narediti z Java1.6? kako enejblam TLS1.2 za javo 1.6?

Če uporabljam BouncyCastle potem ja extendam SSLSocketFactory

primer:
public class Test {
    public static void main(String[] args)
    {
       String url = "https://blagajne-test.fu.gov.si:9002";
      
        try {
         
            URLConnection connection = new URL(url).openConnection();
            HttpsURLConnection httpsURLConnection = (HttpsURLConnection) connection;
            httpsURLConnection.setSSLSocketFactory(new TSLSocketConnectionFactory());
            
            int responseCode = httpsURLConnection.getResponseCode();
            System.out.println("Odgovor: " + responseCode);
            
        } catch (MalformedURLException ex) {
            Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
        }
       
    } 


ko poženem dobim: "org.bouncycastle.crypto.tls.TlsFatalAlertReceived: handshake_failure(40)
at org.bouncycastle.crypto.tls.TlsProtocol.handleAlertMessage(Unknown Source)"

probam pa tako:
@Override
                            public void notifyServerCertificate(Certificate serverCertificate) throws IOException {

                                try {
                                    CertificateFactory cf = CertificateFactory.getInstance("X.509");
                                    
                                    InputStream caInput = new FileInputStream(new File("c:/ascert/test-tls.cer")); //"c:/cert/test-tls.cer");
                                    java.security.cert.Certificate ca;
                                    try {
                                        ca = cf.generateCertificate(caInput);
                                        System.out.println("ca=" + ((java.security.cert.X509Certificate) ca).getSubjectDN());
                                    } finally {
                                        caInput.close();
                                    }

                                    String keyStoreType = KeyStore.getDefaultType();
                                    KeyStore keyStore = KeyStore.getInstance(keyStoreType);
                                    keyStore.load(null, null);
                                    keyStore.setCertificateEntry("ca", ca);
                                    
                                    

                                    List<java.security.cert.Certificate> certs = new LinkedList<java.security.cert.Certificate>();
                                    boolean trustedCertificate = false;
                                    
                                    for (org.bouncycastle.asn1.x509.Certificate c : serverCertificate.getCertificateList()) {
                                        
                                        java.security.cert.Certificate cert = cf.generateCertificate(new ByteArrayInputStream(c.getEncoded()));
                                        certs.add(cert);
                                        
                                        String alias = keyStore.getCertificateAlias(cert);
                                        if(alias != null) {
                                            if (cert instanceof java.security.cert.X509Certificate) {
                                                try {
                                                    ( (java.security.cert.X509Certificate) cert).checkValidity();
                                                    trustedCertificate = true;
                                                } catch(CertificateExpiredException cee) {
                                                  
                                                }
                                            }
                                        } else {
                                            
                                        }

                                    }
                                    if (!trustedCertificate) {
                                        
                                    }
                                    peertCerts = certs.toArray(new java.security.cert.Certificate[0]);

                                  
                                    System.out.println("end notifyServerCert..");
                                } catch (Exception e) {
                                    System.out.println("Failed to cache server certs" + e);
                                    throw new IOException(e);
                                }

                            }

Zgodovina sprememb…

  • spremenilo: val1 ()

Mavrik ::

Kaj ti ni jasno? Obkrožen tekst na strani pravi da rabiš Java 1.6 update 161. Ti probavaš na update 25. Posodobi Javo.
The truth is rarely pure and never simple.

val1 ::

Mhmhm..

v drugi vrstici sem napisal da imam bazo Oracle 11g.. Na bazi je tudi Java, ki se uporablja (lahko preko stored procedur).. Težava je, da je 1.6 in se je ne da nadgraditi ( https://stackoverflow.com/questions/381... razen če bi "družbe" nadgradile bazo na 12c..

Torej imam dve opcije:
1.) da najdem neko rešitev, ki bi mi omogočala povezavo z FURS-om preko Jave 1.6
2.) da spišem ločen webservis, ki bo vmes med bazo in furs-om ampak to bo spet dvojno delo in vzdrževanje..

še kakšen predlog?

Zgodovina sprememb…

  • spremenilo: val1 ()

hruske ::

Pejte na Postgres. Poleg ugodnejše licenčnine ima dokaj kul compatibility layer z Oracle.
Rad imam tole državico. <3

videc ::

hruske je izjavil:

Pejte na Postgres. Poleg ugodnejše licenčnine ima dokaj kul compatibility layer z Oracle.
Povej kaj več o licenčnini Postgres-a, če lahko. Hvala.

Ales ::

Postgres je odprtokoden, pod licenco podobno MIT oz. BSD: PostgreSQL License.

Na kratko, za uporabo ni potrebno plačevati ničesar, lahko ga uporabljaš tako za zasebne kot za poslovne potrebe.

Zgodovina sprememb…

  • spremenil: Ales ()

hruske ::

Poleg tega, kar je napisal Ales, je bistveno, da nisi omejen s številom namestitev, niti nisi omejen s številom jeder, ki jih bo baza uporabljala, tako da ne rabiš imet database admina, ki skrbi da nisi v licenčnem neskladju, ampak namesto tega lahko optimizira delovanje sistema.
Rad imam tole državico. <3

videc ::

Saj zato sem pa vprašal, ker mi je bilo malo čudno glede "ugodnejše licenčnine" , če vem, da je zastonj. :)

val1 ::

hruske je izjavil:

Pejte na Postgres. Poleg ugodnejše licenčnine ima dokaj kul compatibility layer z Oracle.


Huh... :) Govorimo o večjih zavarovalnicah kjer se uporablja Oraclova tehnologija na vseh področjih... ne pride v upoštev menjava baze :))..
Neki se mantram z BouncyCastle knjižnico.. Ta naj bi omogočala delovanje TLS1.2 celo na JDK1.5...
Sporočim če mi bo uspelo.. za enkrat mi slabo kaže..
««
25 / 27
»»


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Davčne blagajne - PHP

Oddelek: Programiranje
116060 (1106) vsepocenv
»

C# davčno potrjevanje

Oddelek: Programiranje
163902 (3371) windigo
»

E-račun

Oddelek: Programiranje
217037 (3800) ivanhoe5x
»

PHP davčna blagajna

Oddelek: Programiranje
187611 (5635) brble
»

[JAVA] HTTPS client

Oddelek: Programiranje
173030 (1760) peterv6i

Več podobnih tem