Closed ChristianSpath closed 6 years ago
Was ist die Fehlermeldung bei 6.?
Lieber Erich!
Code 43: Der übermittelte Beleg ist fehlerhaft. Hier der gesamte Response:
{ "fastnr": null, "paket_nr": "779826191", "art_uebermittlungSpecified": false, "ts_erstellung": "2018-03-17T13:54:36.4137111+01:00", "info": null, "result": [ { "satznr": "779826191", "kundeninfo": null, "rkdbMessage": [ { "rc": "43", "msg": "Der übermittelte Beleg ist fehlerhaft." } ], "verificationResultList": [ { "verificationId": "VERIFICATION_FROM_CASHBOX", "version": "1", "verificationName": "Prüfergebnis - Kasse", "verificationTextualDescription": "Bei der Belegprüfung wird untersucht, ob die Vorgaben der RKSV in Bezug auf den maschinenlesbaren Code am Beleg und auf die meldepflichtigen Metadaten der Sicherheitseinrichtung befolgt werden. Im Fehlerfall sind die genauen Fehlerinformationen nachfolgend angeführt.", "verificationState": 1, "verificationResultDetailedMessage": "Der vorliegende Beleg weist Fehler im maschinenlesbaren Code auf. Die Fehlerursachen sind nachfolgend angeführt:", "input": { "Any": [ { "RECEIPT": { "@xmlns": "https://finanzonline.bmf.gv.at/rkdb", "#text": "_R1-AT1_Kasse1_A2018/3_2018-03-17T09:45:36_6,00_0,00_9,00_2,25_0,00_IUL4R5nQem8=_44301783_ensYsW9bJ1E=_iQJRmfE07ceVYeZx6UJz4WypE1fdamCfVjI7D0vWq0s8Zu4tmPnEekANjG9ugJNtTpZB/fvo/e/vTnvEXqKdAA==" } } ] }, "output": null, "verificationTimestamp": "2018-03-17T13:54:35.022+01:00", "verificationResultList": [ { "verificationId": "RECEIPT_FULL", "version": "1", "verificationName": "Detailprüfung des maschinenlesbaren Codes", "verificationTextualDescription": "Dieses Modul und die dazugehörigen Submodule überprüfen die Gültigkeit des Belegs. Dabei werden sowohl Formatprüfungen, kryptographische Prüfungen (verschlüsselter Umsatzzähler, Signatur) als auch Prüfungen im Zusammenhang mit dem Status der Kasse bzw. der Signatur-/Siegelerstellungseinheit durchgeführt.", "verificationState": 1, "verificationResultDetailedMessage": null, "input": null, "output": null, "verificationTimestamp": "2018-03-17T13:54:35.131+01:00", "verificationResultList": [ { "verificationId": "CRYPTO", "version": "1", "verificationName": "Kryptographische Prüfungen", "verificationTextualDescription": "In diesem Modul und den dazugehörigen Submodulen werden die kryptographische Validität des Umsatzzählers und des Signaturwerts überprüft. Für den Umsatzzähler kann eine detaillierte Prüfung nur beim Startbeleg durchgeführt werden, da nur in diesem Fall der entschlüsselte Wert bekannt ist (Umsatzzähler = 0).", "verificationState": 1, "verificationResultDetailedMessage": null, "input": null, "output": null, "verificationTimestamp": "2018-03-17T13:54:35.133+01:00", "verificationResultList": [ { "verificationId": "CRYPTO_SIGNATURE", "version": "1", "verificationName": "Kryptographie: Überprüfung der kryptographischen Gültigkeit der Signatur", "verificationTextualDescription": "In diesem Modul wird die kryptographische Gültigkeit der Signatur mit Hilfe des öffentlichen Schlüssels überprüft.", "verificationState": 1, "verificationResultDetailedMessage": "Bei der Überprüfung des maschinenlesbaren Codes wurde ein Fehler beim Abgleich des Signaturwertes mit dem öffentlichen Schlüssel festgestellt. Bitte überprüfen Sie, ob die verwendete Signatur- bzw. Siegelerstellungseinheit korrekt in FinanzOnline registriert wurde.", "input": null, "output": null, "verificationTimestamp": "2018-03-17T13:54:35.133+01:00", "verificationResultList": null } ] } ] } ] } ], "abfrage_ergebnis": null } ] }
Danke für deine Hilfe
Na ja, die Fehlermeldung scheint eindeutig zu sein. Die Signatur wird als nicht gültig erkannt. Also bleibt an Möglichkeiten:
Hallo Erich,
Hallo zusammen!
Danke für eure Hilfe. Es sind definitiv beide Zertifikate korrekt. Ich kann das ganze nämlich umdrehen. D.H. zuerst SmartCard2 registrieren und Startbeleg erstellen, und dann halt mit SmartCard1 weiterarbeiten. In dem Fall bekomme ich die Fehlermeldung hat bei SmartCard1. Jene welche zuerst registriert wird funktioniert einwandfrei.
Alle Belege, die mit der jeweils zuerst angemeldeten SmartCard signiert werden, funkionerien. Auch wenn ich dazwischen mit der danach angemeldeten SmartCard arbeite.
Schon seltsam das Ganze.... Aber es kann ja nur an mir liegen. Ich bin sicher nicht der erste, der zwei SmartCards verwendet.
Danke
@AxelKutschera - schon richtig, Axel - das war mehr theoretisch-summarisch gemeint.
@ChristianSpath - auch OK. Das schließt aber einen möglichen Fehler mit der Verwendung der falschen Seriennummer/des falschen Zertifikats nicht zwangsläufig aus. Also beispielsweise: es wird die erst-verwendete Seriennummer gespeichert, das zweite Zertifikat zum signieren verwendet und dabei die Seriennummer des ersten Zertifikats verwendet (oder eben umgekehrt - es wird das gespeicherte Erst-Zertifikat verwendet und die zweite Seriennummer).
Was sagt denn die DEP- und Beleg-Prüfung mit dem A-SIT-Tool?
Ja, daran hab ich auch schon gedacht. Da bin ich gerade am Eruieren. Das A-SIT-Tool sagt in 0002_cashbox_full.json im Abschnitt "CRYPTO": "Die kryptographische Gültigkeit der Signatur ist nicht gegeben. Es scheint aber nicht der definierte Fall der ausgefallenen Sicherheitseinrichtung zuzutreffen."
Gut - damit sind sich Prüftool und Finanz-Online mal einig. Damit sollte sich der Fehler in obigem Sinne gut einkreisen lassen.
Hallo zusammen!
Vielen Dank an alle, die bei der Lösung geholfen haben. Erich's Vermutung war korrekt. Der gesamte RKSV-Workflow besteht ja aus einigen Klassen. Die zum Erstellen des Maschinencoderepräsentation hat ganz stur die erste Seriennummer verwendet.
Danke nochmal
"was irgendwie zu erwarten war" - freut mich - bitte gerne!
Hallo zusammen!
Ich bin am Testsystem folgendermaßen vorgegangen: 1) SmartCard1 registriert => lt. FinanzOnline OK 2) Kasse registriert => lt. FinanzOnline OK 3) Startbeleg erstellt => lt. FinanzOnline OK 4) Beleg erstellt => lt. FinanzOnline OK 5) SmartCard2 registriert => lt. FinanzOnline OK 6) Beleg erstellt und mit SmartCard2 signiert => lt. FinanzOnline NICHT OK 7) Beleg erstellt und mit SmartCard1 signiert => lt. FinanzOnline OK
Es handelt sich um Gemalto Sticks von ATRUST.
Kann sich das jemand erklären?
Vielen Dank und liebe Grüße