Frage

Ich habe einen Client und Serversystem, das regelmäßig geplante Tasks ausführen und kommuniziert über XML-Dateien, die von GPG verschlüsselt wurden. Alle erforderlichen öffentlichen Schlüssel wurden zwischen dem Client und dem Server erfolgreich ausgetauscht. Die Verschlüsselung und Entschlüsselung Anrufe werden aus einer Batch-Datei.

encrypt Syntax

gpg.exe --batch --yes --recipient% 1% 4 --output --passphrase% 5---local Benutzer% 2 --sign --encrypt% 3

decrypt Syntax

gpg.exe --batch --yes --output% 3% 4 --passphrase --decrypt% 2 2> 1%

Der Client erstellt eine XML-Datei, verschlüsselt sie mit GPG-Server öffentliche Schlüssel, Schildern mit einem privaten Schlüssel und lädt sie auf den FTP-Site des Servers. Server regelmäßig prüft, ob neue Dateien in FTP-Ordnern. Für jede neue Datei entschlüsselt unter Verwendung es GPG und verarbeitet dann die XML innerhalb der Datei.

Für einige der XML-Dateien, die der Server versucht zu entschlüsseln, ich eine Fehlermeldung wie folgt:

gpg: block_filter 00AA8400: Lesefehler (size = 7841, a-> size = 395)

gpg: mdc_packet mit ungültiger Codierung

gpg: Entschlüsselung fehlgeschlagen: ungültiges Paket

gpg: block_filter: anhängigen Bytes

Der Punkt zu beachten ist, dass dies geschieht nicht mit allen Dateien, sondern nur mit einigen Dateien. Ich habe nicht in der Lage gewesen, eine Gemeinsamkeit zwischen den Dateien zu finden, dass sie nicht auf.

Ist jemand vertraut, was dieser Fehler bedeutet? Anregungen zu Hilfe, um diese nach unten verfolgen sind willkommen.

War es hilfreich?

Lösung

dachte sie schließlich heraus. GPG war hier nicht die Schuldige. wenn der Server wurde für Dateien in den angegebenen Ordner überprüft, war es das Anfügen (Filehandler) -Methode auf Delphi-Test, wenn die Datei geöffnet werden konnte. Aber diese Methode hatte einen eigenartigen Zustand, als ob es das ASCII-Zeichen 26 (das heißt CTRL + z) in dem letzten 128-Byte-Block der Datei gefunden, wäre es alles von diesem Charakter bis zum Ende der Datei entfernen. Dies verursachte ein Teil der verschlüsselten Dateien die obigen Fehler gelöscht und anschließend verursacht werden, wenn es durch GPG zu entschlüsseln. Nachdem ich die Append-Methode mit Reset (Filehandler) ersetzt, verschlüsselten Dateien nicht mehr verändert und Entschlüsselung funktioniert perfekt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top