Jump to content
Abschaltung der Forum zum 03.01.2024 ×

Interne Konsistenzprüfung ist fehlgeschlagen


Empfohlene Beiträge

Hallo zusammen,

wir versuchen mittels einer Signaturkarte der Bundesdruckerei PDF Dokumente zu signieren.

Wir nutzen einen ReinerSCT cyberJack RFID standard.

Zusätzlich noch die Middleware Nexus Personal.

 

Wenn ich versuche zu signieren kommt die PIN Abfrage und der PIN wird auch als korrekt quittiert (auf dem Gerät), allerdings kommt dann folgende Fehlermeldung:

 

Beim Unterschreiben ist ein Fehler aufgetreten:

Fehlermeldung von Windows Cryptographic Service Provider:

Eine interne Konsistenzprüfung ist fehlgeschlagen.

Fehlercode: 2148532225

 

Das war im Acrobat Reader 2017.

 

 

Testweise habe ich es mal mit dem Foxit Reader probiert.

Dort lässt sich die Signatur einfügen, wird aber als ungültig angezeigt.

 

 

 

Ich bin für jede Hilfe dankbar, die mich in die richtige Richtung weißt.

 

Die Bundesdruckerei sagt, dass die Karte in Ordnung ist und sie dafür nicht zuständig sind.




 

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 month later...

Ich habe denselben Fehler mit einer Test-Signaturkarte 3.1 von D-Trust, einem CyberJack RFID komfort und der Nexus Personal Middleware. Das Signieren mit dem Authentisierungszertifikat funktioniert. Mit dem qualifizierten Zertifikat meldet Word einen Fehler, nachdem die PIN-Eingabe erfolgreich war. Versuche mit eigenem C#-Code (.NET Framework 4.7.2) scheitern mit derselben Fehlermeldung, die mszk angegeben hat (lediglich auf Englisch).

Auch bei mir lässt sich die Signatur mit dem Foxit Reader einfügen, wird dann aber als ungültig angezeigt. Die Fehlermeldung ist "Unexpected byte range values defining scope of signed data".

Gibt es hierfür ggf. bereits eine Lösung?

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ein weiterer Versuch mit Adobe Acrobat Reader DC führt zur selben Fehlermeldung:

22-08-_2020_16-16-52.jpg.d1f0f0e209f9b834e2e9079e7d47caaf.jpg

Mir ist nicht 100% klar, welche Komponente dafür verantwortlich ist. Ohne Anspruch auf Vollständigkeit kommen aus meiner Sicht in Frage:

  • die D-Trust Card 3.1 (Testkarte),
  • der D-Trust Card Assistant v3.7 oder
  • die Nexus Personal Middleware v5.3.1.

Mein C# Testprogramm fängt eine Exception mit einem HRESULT-Wert von 0x80100001 (SCARD_F_INTERNAL_ERROR) und der Nachricht "An internal consistency check failed." Der HRESULT-Wert enstpricht dem Error Code 2148532225, den auch Adobe Acrobat Reader DC meldet. Mit der Information hätte ich aber am ehesten die SmartCard im Verdacht.

Wichtig zu verstehen ist, dass es "grundsätzlich" funktioniert, d.h. eine Signatur mit dem nicht-qualifizierten Authentisierungszertifikat, das sich neben dem qualifizierten Signaturzertifikat auf der SmartCard befindet, ist z.B. mit Word, dem Adobe Acrobat Reader DC und meinem C#-Testprogramm erfolgreich. Nur das qualifizierte Signaturzertifikat führt zu dem Fehler. Allerdings werden auch unterschiedliche Signaturalgorithmen benutzt. Das Signaturzertifikat gibt RSASSA-PSS an, während das Authentisierungszertifikat sha256RSA verwendet.

Ich wäre für jegliche Hinweise dankbar.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 12 Stunden schrieb René:

Vielen Dank!

Den ersten Beitrag hatte ich gesehen. Allerdings bezieht der sich auf einen anderen Fehlercode. Weiterhin habe ich das Kartenlesegerät (cyberJack RFID komfort) und die Software (Base Components 7.8.6 und Nexus Personal 5.3.1) gerade erst installiert. Deshalb gehe ich davon aus, dass die Treiber aktuell sind. Die Treiberversion des cyberJack ist 6.1.1.0 (Datum 23.3.2017).

Der andere Link bezieht sich auf andere Fehler. Allerdings habe ich mal die Zertifikate gelöscht. Die wurden dann wahrscheinlich von der Nexus Personal Middleware wieder erzeugt. Der Fehler verschwindet dadurch leider nicht.

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 4 weeks later...
vor 47 Minuten schrieb Dantirae:

Hast du schon eine Lösung zu dem Problem gefunden?
Ich stehe gerade selbst auf der gleichen Leitung und soll Montag was abgeben, dass zwingend qualifiziert signiert werden muss.

Ich habe verschiedene Tests (in C#, Java und mit Adobe Acrobat Reader DC und Foxit Reader) durchgeführt und dabei festgestellt, dass zumindest der Weg über die Microsoft CryptoAPI (und dann weiter über den Microsoft BaseCSP und den Nexus Personal Minidriver und erst abschließend das PKCS#11 Modul "personal64.dll") leider nicht funktioniert. Ich habe hier den Nexus Personal Minidriver im Verdacht und über REINER SCT ein Ticket bei der Nexus Group aufgemacht.

Was geht sind die folgenden Wege:

  1. Direkt über die PC/SC Schnittstelle
  2. Über das Nexus Personal PKCS#11 Modul (personal64.dll), das dann wohl auch wieder über PC/SC geht.
  3. Über eine quasi speziell für qualifizierte Signaturen gebaute Signatur-Software (habe das selbst mit dem kostenlosen SecSigner von SecCommerce ausprobiert, siehe https://seccommerce.com/secsigner/, aber es gibt auch andere wie z.B. von Secrypt). Diese Programme nutzen auch die PC/SC Schnittstelle

Die PC/SC Schnittstelle wird über die in Windows bereitgestellte WinSCard.dll angesprochen und muss durch den vom SmartCard-Hersteller bereitgestellten Treiber unterstützt werden (was bei REINER SCT natürlich der Fall ist). Die PKCS#11-Module kommen normalerweise vom SmartCard-Hersteller bzw. man nimmt die Open Source Bibliotheken von OpenSC. Für die D-TRUST-Karten eignet sich eben das von Nexus Personal bereitgestellte PKCS#11 Modul.

Leider ist der Weg über die PC/SC-Schnittstelle ziemlich komplex und man braucht hier Handbücher der SmartCard-Hersteller (z.B. D-TRUST, TeleSec). Und natürlich ist auch der Weg über PKCS#11 nicht einfach. Je nach Programmiersprache gibt es aber Produkte (z.B. von IAIK) oder Open Source NuGet Packages, die einem das Leben zumindest ein wenig erleichtern. 

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 4 weeks later...

Hallo,

nach meiner fachkundigen Einschätzung wird der Fehler durch die Interaktion von Acrobat Reader mit dem OS verursacht. Ein einfacher Test mit Windows 10 und Windows 7 hat ergeben, dass mit Windows 10 und der Personal - Software v5.1.2 kein Fehler auftritt.

Mit Windows 7 jedoch, kommen diverse Fehler zum Vorschein: z.B. "Der Signatur - Vorgang mit RSASSA-PSS Signatur konnte nich abgeschlossen werden". Für Adobe Reader & Acrobat gibt es noch Registry - Settings die das Verhalten des Acrobat Reader beeinflussen:

Schlüssel: HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\DC\Security\cPubSec\cRSAPSSSigning

bEnableRSAPSSSigning (DWORD) : 1

aRSAPSSHashAlgorithm (REGSZ): SHA256

iRSAPSSSaltLength (DWORD) : 32 (Hex 20)

Leider verändern diese Einstellungen die Fehlersymptomatik nicht!

Ein Ausweg aus dieser SItuation stellt die Nutzung des "TyCryptoKI" - Layer dar. Wir haben diesen Layer entwickelt, um auch unter Windows 7 mit Adobe Reader Dokumente digital signieren zu können. Dieses Modul wird anstelle des Personal PKCS11 Moduls in Adobe Acrobat geladen. Ein Nachteil dieser Lösung: die PKCS11 - Implementation von Adobe Reader weicht signifikant vom PKCS11 - Standard ab. Deshalb muss vor einem Signatur - Vorgang das Token - Login über das Sicherheitscenter von Adobe Reader erfolgen. Wenn sich auf der Smart-Card 2 Zertifikate befinden (E-Mail & Signatur), dann muss sich der Anwender bei beiden Token anmelden.

Im Vergleich zu der Alternative unsere gesamte IT auf Windows 10 umzustellen, ist dieser Nachteil hinnehmbar.

Mit freundlichen Grüßen

Dipl.-Ing. M. Türschmann

TYTEC GmbH

Update für Acrobat Reader Version 20.13.20064

Mit der neuen Version hat Adobe auch das Modul "PPKLite.api" (C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\plug_ins) verändert. Dieses Modul ist für die Erzeugung der digitalen Signatur verantwortlich. Leider kommt es nach dem Festlegen des Signatur - Fensters im Dokument zum "Einfrieren" der Anwendung. Das Problem tritt unter Windows 7 mit .NET Framework 4.X auf.

Dieser Fehler ist auf das neue GUI für die Parametrierung der Signatur - Eigenschaften zurückzuführen (.NET basiert). Mit der folgenden Anpassung in der Registry kann das Problem behoben werden:

Schlüssel: HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\DC\Security\cPubSec

bEnableCEFBasedUI (DWORD) : 0

Übrigens, wer im Signatur-Feld einen Grund angeben möchte, kann mit dem folgenden Eintrag die Listbox mit vordefinierten Signatur - Gründen aktivieren:

Schlüssel: HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\DC\Security\cPubSec

bAllowReasonWhenSigning (DWORD) : 1

Wenn Bedarf für die Anpassung der "Signatur - Gründe" hat, kann unter diesem Schlüssel die entsprechenden Änderungen vornehmen:

Schlüssel:  HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\DC\Security\cPubSec\cReasons

Mit freundlichen Grüßen

Dipl.-Ing. M. Türschmann

TYTEC GmbH

bearbeitet von AuroraBorealis
Update
Link zu diesem Kommentar
Auf anderen Seiten teilen

×
×
  • Neu erstellen...

Wichtige Information

Diese Website verwendet Cookies – nähere Informationen dazu und zu Ihren Rechten als Benutzer finden Sie in unserer Datenschutzerklärung am Ende der Seite. Klicken Sie auf „Ich stimme zu“, um Cookies zu akzeptieren und direkt unsere Website besuchen zu können.