Prüfen mit digestercli und Ant

Prüfen mit digestercli

Die Digester-Software bietet die Möglichkeit, Prüfvorgänge auch über die Kommandozeile starten zu können. Hierzu können dem Programm bei Aufruf Dateien, Verzeichnisse oder Netzdateien übergeben werden. Prinzipiell lassen sich alle Prüfvorgänge der grafischen Programm-Version auch mit digestercli bewerkstelligen, wodurch sich die Software auch direkt z.B. aus Shell-Skripten heraus nutzen lässt.

Sie können die Programmaufrufe manuell erstellen oder die Unterstützung der grafischen Digester-Variante in Anspruch nehmen, die die erforderlichen Parameter passend zusammenstellt. Erstellen Sie hierzu einfach einen Prüfvorgang mit Hilfe des Prüfen-Fensters, so als ob sie diesen dort durchführen wollten. Sind alle Einstellungen wie gewünscht, lässt sich mit der Schaltfläche mit dem Konsolensymbol unten der Aufruf für digestercli anzeigen. Diesen können Sie einfach in eigene Shell-Skripte kopieren.

Alle unterstützten Optionen können in beliebiger Reihenfolge übergeben werden, wobei die dazugehörigen Werte aber an der richtigen Stelle stehen müssen. Alle Parameter sind optional, mögliche Eingabefehler werden soweit wie möglich erkannt und automatisch kompensiert. Entweder meldet das Programm fehlerhafte Parameter direkt oder erzeugt entsprechende Einträge innerhalb der Log-Datei. Zu verarbeitende Dateien, Verzeichnisse oder URLs können mit dem Parameter -targets als Liste durch Leerzeichen getrennt übergeben werden.

Die Kommandozeilen-Variante der Digester-Software digestercli unterstützt aktuell folgende Parameter und Werte, die sich durch den Aufruf von digestercli -? check ausgeben lassen:

 

Verwendung: digestercli [-Optionen] -targets <Datei|Verzeichnis|URL> ...

Unterstützte check-Optionen sind:

-check                          Prüfsummendateien prüfen
-checkbsd                       BSD-Dateien überprüfen
-checkgnu                       GNU-Dateien überprüfen
-checkintermediates             Zwischenprüfsummen prüfen
-checkpgp                       OpenPGP Signatur-Dateien prüfen
-checkxml                       Digester XML-Dateien prüfen
-checkxmlpgp                    Signaturen in Digester XML-Dateien prüfen
-download                       URLs herunterladen und prüfen, sonst direkt geprüft
-downloaddir <Wert>             Verzeichnis für Download-Dateien
-extmd2 <Wert>                  Datei-Endung von MD2-Dateien
-extmd4 <Wert>                  Datei-Endung von MD4-Dateien
-extmd5 <Wert>                  Datei-Endung von MD5-Dateien
-extpgp <Wert>                  Datei-Endung von OpenPGP-Signaturen
-extripemd128 <Wert>            Datei-Endung von RIPEMD-128-Dateien
-extripemd160 <Wert>            Datei-Endung von RIPEMD-160-Dateien
-extripemd256 <Wert>            Datei-Endung von RIPEMD-256-Dateien
-extripemd320 <Wert>            Datei-Endung von RIPEMD-320-Dateien
-extsha1 <Wert>                 Datei-Endung von SHA-1-Dateien
-extsha224 <Wert>               Datei-Endung von SHA-224-Dateien
-extsha256 <Wert>               Datei-Endung von SHA-256-Dateien
-extsha384 <Wert>               Datei-Endung von SHA-384-Dateien
-extsha512 <Wert>               Datei-Endung von SHA-512-Dateien
-exttiger <Wert>                Datei-Endung von Tiger-Dateien
-extwhirlpool <Wert>            Datei-Endung von Whirlpool-Dateien
-extxml <Wert>                  Datei-Endung von Digester XML-Dateien
-ignoreregex <Wert>             Regulärer Ausdruck für ignorierte Dateien
-includeregex <Wert>            Regulärer Ausdruck für berücksichtigte Dateien
-md2                            Verarbeite MD2-Prüfsummen
-md4                            Verarbeite MD4-Prüfsummen
-md5                            Verarbeite MD5-Prüfsummen
-overwrite                      Vorhandene Dateien überschreiben
-pgpkeydownload                 Unbekannte OpenPGP-Schlüssel automatisch herunterladen
-pgpkeyignore                   Signaturen für unbekannte OpenPGP-Schlüssel ignorieren
-pgpkeyinstall                  Heruntergeladene OpenPGP-Schlüssel dauerhaft installieren
-ripemd128                      Verarbeite RIPEMD-128 Hash-Dateien
-ripemd160                      Verarbeite RIPEMD-160 Hash-Dateien
-ripemd256                      Verarbeite RIPEMD-256 Hash-Dateien
-ripemd320                      Verarbeite RIPEMD-320 Hash-Dateien
-sha1 | sha                     Verarbeite SHA-1 Hash-Dateien
-sha224                         Verarbeite SHA-224 Hash-Dateien
-sha256                         Verarbeite SHA-256 Hash-Dateien
-sha384                         Verarbeite SHA-384 Hash-Dateien
-sha512                         Verarbeite SHA-512 Hash-Dateien
-stoponmismatch                 Berechnung bei Abweichungen abbrechen
-subdirectories                 Unterverzeichnisse einbeziehen
-tiger                          Verarbeite Tiger Hash-Dateien
-verbose                        Ausführliche Ausgaben erzeugen
-whirlpool                      Verarbeite Whirlpool Hash-Dateien

 

-check

Aktiviert den Betriebmodus zur Prüfung von Prüfsummen und OpenPGP-Signaturen. Die Parameter entsprechen dabei weitgehend den Optionen des Prüfen-Fensters der grafischen Variante der Digester-Software.

Fehlen die unten dargestellten Parameter, so werden möglichst die vom Prüfen-Fenster verwendeten Standardwerte eingesetzt. Sie können sich alle für den Vorgang verwendeten Parameter samt Werten mit dem Parameter -verbose auflisten lassen.

-checkbsd

Aktiviert die Prüfung von Prüfsummen-Dateien im BSD-Format. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extmd2, -extmd4 , -extmd5 usw.).

-checkgnu

Aktiviert die Prüfung von Prüfsummen-Dateien im GNU-Format. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extmd2, -extmd4 , -extmd5 usw.).

-checkintermediates

Aktiviert die Prüfung von Zwischenprüfsummen. Optional kann abgebrochen werden, sobald eine Abweichung der berechneten von den Datei-Zwischenprüfsummen festgestellt wurde (siehe Parameter -stoponmismatch).

-checkpgp

Aktiviert die Erkennung von Signatur-Dateien mit OpenPGP-Signaturen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extpgp).

-checkxml

Aktiviert die Erkennung von Digester XML-Dateien mit Prüfsummen/Signaturen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extxml).

-checkxmlpgp

Aktiviert die Prüfung von OpenPGP-Signaturen in Digester XML-Dateien. Hierzu muss die Erkennung von XML-Dateien aktiviert sein (siehe Parameter -checkxml) und mindestens eine XML-Dateiendung hinterlegt sein (siehe Parameter -extxml).

-download

Aktiviert das Herunterladen von URLs, die über die Kommandozeile übergeben wurden und geprüft werden sollen (siehe Parameter -downloaddir und -overwrite). Die URLs werden dann zunächst in das hinterlegte Verzeichnis heruntergeladen und im zweiten Schritt geprüft. Wird dieser Parameter nicht angegeben, werden URL-Parameter direkt auf dem Zielsystem geprüft, was dem Prüfen aus dem Netzdateisystem-Fenster heraus entspricht.

Das Herunterladen von OpenPGP-Schlüsseln kann mit den Parametern -pgpkeydownload, -pgpkeyignore und -pgpkeyinstall gesteuert werden.

-downloaddir <Wert>

Legt das Verzeichnis zum Speichern von heruntergeladenen Dateien fest. In dieses Verzeichnis werden z.B. heruntergeladene Schlüsselbund-Dateien oder URLs gespeichert, die im Zuge der Prüfung automatisch heruntergeladen werden (siehe Parameter -download und -overwrite).

-extmd2 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit MD2-Prüfsummen fest (Standard: .md2). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extmd4 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit MD4-Prüfsummen fest (Standard: .md4). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extmd5 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit MD5-Prüfsummen fest (Standard: .md5). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extpgp <Wert>

Legt die Dateiendungen für Signatur-Dateien mit OpenPGP-Signaturen fest (Standard: .asc .sig). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extripemd128 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit RIPEMD-128-Prüfsummen fest (Standard: .rip128). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extripemd160 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit RIPEMD-160-Prüfsummen fest (Standard: .rip160). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extripemd256 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit RIPEMD-256-Prüfsummen fest (Standard: .rip256). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extripemd320 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit RIPEMD-320-Prüfsummen fest (Standard: .rip320). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extsha1 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit SHA-1-Prüfsummen fest (Standard: .sha .sha1). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extsha224 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit SHA-224-Prüfsummen fest (Standard: .sha224). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extsha256 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit SHA-256-Prüfsummen fest (Standard: .sha256). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extsha384 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit SHA-384-Prüfsummen fest (Standard: .sha384). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extsha512 <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit SHA-512-Prüfsummen fest (Standard: .sha512). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-exttiger <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit Tiger-Prüfsummen fest (Standard: .tiger). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extwhirlpool <Wert>

Legt die Dateiendungen für GNU/BSD-Dateien mit Whirlpool-Prüfsummen fest (Standard: .wpool). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-extxml <Wert>

Legt die Dateiendungen für Digester XML-Dateien mit Prüfsummen/Signaturen fest (Standard: .digest). Sie können hier mehrere Dateiendungen durch Leerzeichen getrennt eingeben. Bitte verwenden Sie folgende Zeichen nicht: \ / : * ? " < > |

-ignoreregex <Wert>

Legt einen regulären Ausdruck fest, mit dem sich Dateien bei der Suche nach Prüfsummen/Signaturen ausschließen lassen (werden nicht verarbeitet). Alternativ können Sie bestimmte Dateien mit dem Parameter -includeregex einbeziehen.

-includeregex <Wert>

Legt einen regulären Ausdruck fest, mit dem sich Dateien bei der Suche nach Prüfsummen/Signaturen einbeziehen lassen (werden verarbeitet). Alternativ können Sie bestimmte Dateien mit dem Parameter -ignoreregex ausschließen.

-md2

Aktiviert die Erkennung von GNU/BSD-Dateien mit MD2-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extmd2).

-md4

Aktiviert die Erkennung von GNU/BSD-Dateien mit MD4-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extmd4).

-md5

Aktiviert die Erkennung von GNU/BSD-Dateien mit MD5-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extmd5).

-overwrite

Aktiviert das Überschreiben existierender Dateien, die heruntergeladen wurden und in das hinterlegte Download-Verzeichnis geschrieben werden sollen (siehe Parameter -download und -downloaddir).

Überschriebene Download-Dateien lassen sich programmseitig nicht wiederherstellen, bitte sichern Sie Ihre Daten vorher durch ein Backup.

-pgpkeydownload

Aktiviert das automatische Herunterladen von OpenPGP-Schlüsseln in das Download-Verzeichnis (siehe Parameter -downloaddir und -overwrite). Netzwerk-Adressen für den Download von Schlüsselbund-Dateien werden nur vom Digester XML-Format unterstützt.

OpenPGP-Schlüssel werden dann heruntergeladen, wenn benötigte Schlüssel noch nicht innerhalb der Schlüssel-Verwaltung der Digester-Software hinterlegt (unbekannt) sind. Sollen heruntergeladene Schlüssel dauerhaft importiert werden, ist der Parameter -pgpkeyinstall ebenfalls zu aktivieren. Um unbekannte Schlüssel zu ignorieren, verwenden Sie stattdessen den Parameter -pgpkeyignore.

Das Herunterladen von URLs zur Prüfung kann mit dem Parameter -download gesteuert werden.

-pgpkeyignore

Unbekannte OpenPGP-Schlüssel werden einfach ignoriert (kein Download). Signaturen können dann nicht berechnet und geprüft werden. In diesem Fall muss ein manueller Import der Schlüssel z.B. über die Schlüssel-Verwaltung der Digester-Software durchgeführt werden. Um unbekannte Schlüssel automatisch herunterzuladen, verwenden Sie stattdessen den Parameter -pgpkeydownload und ggf. auch -pgpkeyinstall .

-pgpkeyinstall

Heruntergeladene OpenPGP-Schlüssel werden dauerhaft in die Schlüssel-Verwaltung der Digester-Software importiert. Diese Schlüssel stehen dann für die nächsten Prüfungen sofort (ohne Download) zur Verfügung. Damit unbekannte Schlüssel automatisch heruntergeladen werden, ist der Parameter -pgpkeydownload ebenfalls zu aktivieren.

-ripemd128

Aktiviert die Erkennung von GNU/BSD-Dateien mit RIPEMD-128-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extripemd128).

-ripemd160

Aktiviert die Erkennung von GNU/BSD-Dateien mit RIPEMD-160-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extripemd160).

-ripemd256

Aktiviert die Erkennung von GNU/BSD-Dateien mit RIPEMD-256-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extripemd256).

-ripemd320

Aktiviert die Erkennung von GNU/BSD-Dateien mit RIPEMD-320-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extripemd320).

-sha1 | sha

Aktiviert die Erkennung von GNU/BSD-Dateien mit SHA-1-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extsha1).

-sha224

Aktiviert die Erkennung von GNU/BSD-Dateien mit SHA-224-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extsha224).

-sha256

Aktiviert die Erkennung von GNU/BSD-Dateien mit SHA-256-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extsha256).

-sha384

Aktiviert die Erkennung von GNU/BSD-Dateien mit SHA-384-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extsha384).

-sha512

Aktiviert die Erkennung von GNU/BSD-Dateien mit SHA-512-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extsha512).

-stoponmismatch

Bricht die Prüfung ab, sobald eine Abweichung der berechneten von den Datei-Zwischenprüfsummen festgestellt wurde (siehe Parameter -checkintermediates). Die anderen Algorithmen werden dann ebenfalls nicht mehr berechnet.

-subdirectories

Aktiviert die Verarbeitung von Unterverzeichnissen für die verzeichnisbasierte Prüfung. Sonst werden nur die übergebenen Verzeichnisse selbst (ohne Unterverzeichnisse) verarbeitet.

-tiger

Aktiviert die Erkennung von GNU/BSD-Dateien mit Tiger-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -exttiger).

-verbose

Ausführlichere Ausgaben erzeugen. Hier werden insbesondere alle übergebenen Parameter und Werte als Liste zur Kontrolle ausgegeben. Für viele Einstellungen des Programms werden Standardwerte eingesetzt, wenn ein Parameter nicht übergeben wird. Diese Funktion ist sinnvoll nutzbar, wenn z.B. Vorlagen als Standardwerte verwendet werden und die verwendeten Einstellungen noch einmal vor der Ausführung zur Kontrolle aufgelistet werden sollen.

-whirlpool

Aktiviert die Erkennung von GNU/BSD-Dateien mit Whirlpool-Prüfsummen bei der verzeichnisbasierten Prüfung. Dabei werden die Dateien gemäß den hinterlegten Dateiendungen berücksichtigt (siehe Parameter -extwhirlpool).

 

Prüfen mit Ant

Die Digester-Software bietet die Möglichkeit, Prüfvorgänge auch aus Ant Build-Skripten heraus zu starten. Prinzipiell lassen sich alle Prüfvorgänge der grafischen Programm-Version auch mit Apache Ant bewerkstelligen, wodurch sich die Software auch direkt z.B. aus eigenen Build-Skripten heraus nutzen lässt.

Sie können die XML-Fragmente manuell erstellen oder die Unterstützung der grafischen Digester-Variante in Anspruch nehmen, die die erforderlichen Elemente und Attribute passend zusammenstellt. Erstellen Sie hierzu einfach einen Prüfvorgang mit Hilfe des Prüfen-Fensters, so als ob sie diesen dort durchführen wollten. Sind alle Einstellungen wie gewünscht, lässt sich mit der Schaltfläche mit dem Ameisensymbol unten das XML-Fragment für Ant anzeigen. Dieses können Sie einfach in eigene Build-Skripte kopieren.

Alle unterstützten Optionen können in beliebiger Reihenfolge übergeben werden, wobei die dazugehörigen Werte aber an der richtigen Stelle stehen müssen. Alle Parameter sind optional, mögliche Eingabefehler werden soweit wie möglich erkannt und automatisch kompensiert. Das Programm meldet fehlerhafte Parameter direkt und bricht ab, wenn Sie das failonerror-Element aktiviert haben.

Für die Prüfung aus Ant heraus stehen alle Parameter der Kommandozeilen-Variante der Digester-Software digestercli zur Verfügung, die als separate XML-Elemente eingetragen werden. Im Kopfbereich muss in Ihrem Build-Skript jeweils der Task digestercli deklariert werden. Bitte ersetzen Sie den Klassenpfad im Attribut classpath durch einen Wert passend zu Ihrer Installation. Für Web Start ist die Nutzung wie hier beschrieben leider nicht möglich.

<taskdef name="digestercli"
   classname="com.lf.digester.ant.DigesterCLITask"
   classpath="C:\Programme\digester-1.6.3\ant\digester-ant.jar"/>

Ein Beispiel-Fragment für Ant Build-Skripte sieht folgendermaßen aus, wobei eine einzelne Datei im Digester XML-Format geprüft wird:

<digestercli>
   <check />
   <checkxml />
   <extxml>.digest</extxml>
   <checkxmlpgp />
   <checkintermediates />
   <stoponmismatch />
   <pgpkeyignore />
   <fileset dir="D:\checksum_test">
       <include name="jnlp-1_5-mr-spec.pdf.digest" />
   </fileset>
</digestercli>

 

Weiterführende Links