Klasse Api

java.lang.Object
org.iqtig.tpacker.cli.Api

public final class Api extends Object
Klasse, die Methoden zum Zippen, Ver- und Entschlüsseln von Dateien bereitstellt.
  • Methodendetails

    • zip

      public static void zip(List<File> in, File out, Boolean timeStamp) throws IOException
      Zippt Dateien.
      Parameter:
      in - Zu zippende Dateien
      out - Dateiname inklusive Verzeichnispfad, in dem die Datei abgelegt werden soll.
      timeStamp - Wenn true, wird an den Dateinamen das aktuelle Datum angehängt.
      Löst aus:
      IOException - Exception die auftreten kann
    • unzip

      public static void unzip(List<File> in, File out) throws IOException
      Entzippt Dateien.
      Parameter:
      in - Zu entzippende Dateien
      out - Verzeichnispfad, in dem die Dateien abgelegt werden sollen
      Löst aus:
      IOException - Exception die auftreten kann
    • encrypt

      public static void encrypt(List<File> in, File out, String password, Boolean timeStamp) throws IOException
      Verschlüsselt Dateien.
      Parameter:
      in - Zu verschlüsselnde Dateien
      out - Dateiname inklusive Verzeichnispfad, wenn in nur eine Datei enthält. Sind mehrere Dateien in in enthalten, ist ein Verzeichnispfad anzugeben.
      password - Passwort für das Verschlüsseln
      timeStamp - Wenn true, wird an den bzw. die Dateinamen das aktuelle Datum angehängt.
      Löst aus:
      IOException - Exception die auftreten kann
    • hybridEncrypt

      public static void hybridEncrypt(List<File> in, File out, File keyFile, Boolean timeStamp) throws IOException
      Verschlüsselt Dateien im hybriden Verfahren, das heißt die Eingangsateien werden symmetrisch mit einem geheimen Schlüssel und dieser wiederrum asymmetrisch mit einem öffentlichen Schlüssel verschlüsselt.
      Parameter:
      in - zu verschlüsselnde Dateien
      out - Dateiname inklusive Verzeichnispfad, wenn in nur eine Datei enthält. Sind mehrere Dateien in in enthalten, ist ein Verzeichnispfad anzugeben.
      keyFile - Pfad zu der Datei, die den öffentlichen Schlüssel enthält.
      timeStamp - Wenn true, wird an den bzw. die Dateinamen das aktuelle Datum angehängt.
      Löst aus:
      IOException - Exception, die auftreten kann
    • decrypt

      public static void decrypt(List<File> in, File out, String password) throws IOException
      Entschlüsselt Dateien.
      Parameter:
      in - Zu entschlüsselnde Dateien
      out - Dateiname inklusive Verzeichnispfad, wenn in nur eine Datei enthält. Sind mehrere Dateien in in enthalten, ist ein Verzeichnispfad anzugeben.
      password - Passwort für das Entschlüsseln
      Löst aus:
      IOException - Exception die auftreten kann
    • decrypt

      public static void decrypt(List<File> in, File out, String password, Charset characterSetPasswordDecrypt) throws IOException
      Entschlüsselt Dateien.
      Parameter:
      in - Zu entschlüsselnde Dateien
      out - Dateiname inklusive Verzeichnispfad, wenn in nur eine Datei enthält. Sind mehrere Dateien in in enthalten, ist ein Verzeichnispfad anzugeben.
      password - Passwort für das Entschlüsseln
      characterSetPasswordDecrypt - Das optionale CharacterSet (Zeichencodierung), das zur Interpretation des Passworts zur Entschlüsselung verwendet werden soll.

      Eine Bestückung wird nur in Problemfällen empfohlen, d.h. wenn eine Entschlüsselung nicht möglich ist, obschon vermeintlich das korrekte Passwort zum Einsatz kommt.

      Hintergrund: Ab Vesion 4.2.11 codiert der TPacker das Passwort zur Ver- und Entschlüsselung einheitlich als 'UTF-8'. In Versionen davor hingegen konnte sich die 'Interpretation' des Passworts von Plattform zu Plattform unterscheiden. Dies führte zu Entschlüsselungsproblemen, bei Verwendung eines Passworts mit Sonderzeichen und abweichendem Standard-Encoding von Ziel- und Quellplattform.

      Der Parameter ist ausschließlich zur Problemlösung gedacht: Sofern mit dem TPacker (ab Version 4.2.11) Altdaten entschlüsselt werden müssen, die auf einer früheren Version, mit einem Sonderzeichen-Passwort, auf einer Plattform mit abweichendem Standard-Encoding, verschlüsselt wurden.

      Löst aus:
      IOException - Exception die auftreten kann
    • hybridDecrypt

      public static void hybridDecrypt(List<File> in, File out, File keyFile) throws IOException
      Entschlüsselt eine hybrid verschlüsselte Datei.
      Parameter:
      in - zu entschlüsselnde Dateien
      out - Dateiname inklusive Verzeichnispfad, wenn in nur eine Datei enthält. Sind mehrere Dateien in in enthalten, ist ein Verzeichnispfad anzugeben.
      keyFile - Pfad zu Datei, die den privaten Schlüssel zur Entschlüsselung enthält.
      Löst aus:
      IOException - Exception, die auftreten kann
    • hybridDecrypt

      public static void hybridDecrypt(List<File> in, File out, File keyStoreFile, String keyAlias, String keyStorePassword, String keyEntryPassword) throws IOException
      Entschlüsselt eine hybrid verschlüsselte Datei.
      Parameter:
      in - zu entschlüsselnde Dateien
      out - Dateiname inklusive Verzeichnispfad, wenn in nur eine Datei enthält. Sind mehrere Dateien in in enthalten, ist ein Verzeichnispfad anzugeben.
      keyStoreFile - Pfad zu Datei, die den PKCS12-Keystore enthält.
      keyAlias - Alias, unter dem der zu ladende Schlüssel abgespeichert ist.
      keyStorePassword - Passwort, mit der Keystore geschützt ist.
      keyEntryPassword - Passwort, mit dem der zu ladende Schlüsseleintrag geschützt ist.
      Löst aus:
      IOException - Exception, die auftreten kann
    • zipEncrypt

      public static void zipEncrypt(List<File> in, File out, String password, Boolean timeStamp) throws IOException
      Zippt und verschlüsselt Dateien in einem Schritt.
      Parameter:
      in - Zu zippende und verschlüsselnde Dateien
      out - Dateiname inklusive Verzeichnispfad, wenn in nur eine Datei enthält. Sind mehrere Dateien in in enthalten, ist ein Verzeichnispfad anzugeben.
      password - Passwort für das Verschlüsseln
      timeStamp - Wenn true, wird an den Dateinamen das aktuelle Datum angehängt.
      Löst aus:
      IOException - Exception die auftreten kann
    • zipHybridEncrypt

      public static void zipHybridEncrypt(List<File> in, File out, File keyFile, Boolean timeStamp) throws IOException
      Zippt und verschlüsselt Dateien hybrid in einem Schritt.
      Parameter:
      in - zu zippende und verschlüsselnde Dateien
      out - Pfad zur Ausgabedatei, an den dann noch ".zip.aes" angehängt wird.
      keyFile - Pfad zur Datei, die den öffentlichen Schlüssel zur Verschlüsselung enthält.
      timeStamp - Wenn true, wird an den Dateinamen das aktuelle Datum angehängt.
      Löst aus:
      IOException - Exception, die auftreten kann.
    • zipHybridEncrypt

      public static void zipHybridEncrypt(List<File> in, File out, PublicKey publicKey, Boolean timeStamp) throws IOException
      Zippt und verschlüsselt Dateien hybrid in einem Schritt.
      Parameter:
      in - zu zippende und verschlüsselnde Dateien
      out - Pfad zur Ausgabedatei, an den dann noch ".zip.aes" angehängt wird.
      publicKey - Öffentlicher Schlüssel, mit dem verschlüsselt wird.
      timeStamp - Wenn true, wird an den Dateinamen das aktuelle Datum angehängt.
      Löst aus:
      IOException - Exception, die auftreten kann.
    • unzipDecrypt

      public static void unzipDecrypt(List<File> in, File out, String password) throws IOException
      Entzippt und entschlüsselt Dateien in einem Schritt.
      Parameter:
      in - Zu entzippende und entschlüsselnde Dateien
      out - Dateiname inklusive Verzeichnispfad, wenn in nur eine Datei enthält. Sind mehrere Dateien in in enthalten, ist ein Verzeichnispfad anzugeben.
      password - Passwort für das Entschlüsseln
      Löst aus:
      IOException - Exception die auftreten kann
    • unzipDecrypt

      public static void unzipDecrypt(List<File> in, File out, String password, Charset characterSetPasswordDecrypt) throws IOException
      Entzippt und entschlüsselt Dateien in einem Schritt.
      Parameter:
      in - Zu entzippende und entschlüsselnde Dateien
      out - Dateiname inklusive Verzeichnispfad, wenn in nur eine Datei enthält. Sind mehrere Dateien in in enthalten, ist ein Verzeichnispfad anzugeben.
      password - Passwort für das Entschlüsseln
      characterSetPasswordDecrypt - Das optionale CharacterSet (Zeichencodierung), das zur Interpretation des Passworts zur Entschlüsselung verwendet werden soll.

      Eine Bestückung wird nur in Problemfällen empfohlen, d.h. wenn eine Entschlüsselung nicht möglich ist, obschon vermeintlich das korrekte Passwort zum Einsatz kommt.

      Hintergrund: Ab Vesion 4.2.11 codiert der TPacker das Passwort zur Ver- und Entschlüsselung einheitlich als 'UTF-8'. In Versionen davor hingegen konnte sich die 'Interpretation' des Passworts von Plattform zu Plattform unterscheiden. Dies führte zu Entschlüsselungsproblemen, bei Verwendung eines Passworts mit Sonderzeichen und abweichendem Standard-Encoding von Ziel- und Quellplattform.

      Der Parameter ist ausschließlich zur Problemlösung gedacht: Sofern mit dem TPacker (ab Version 4.2.11) Altdaten entschlüsselt werden müssen, die auf einer früheren Version, mit einem Sonderzeichen-Passwort, auf einer Plattform mit abweichendem Standard-Encoding, verschlüsselt wurden.

      Löst aus:
      IOException - Exception die auftreten kann
    • unzipHybridDecrypt

      public static void unzipHybridDecrypt(List<File> in, File out, File keyFile) throws IOException
      Entzippt und entschlüsselt (hybrid) Dateien in einem Schritt.
      Parameter:
      in - zu entzippende und entschlüsselnde Dateien
      out - Verzeichnis, in das entpackt werden soll.
      keyFile - Datei, die privaten Schlüssel enthält.
      Löst aus:
      IOException - Exception, die auftreten kann.
    • unzipHybridDecrypt

      public static void unzipHybridDecrypt(List<File> in, File out, PrivateKey privateKey) throws IOException
      Entzippt und entschlüsselt (hybrid) Dateien in einem Schritt.
      Parameter:
      in - zu entzippende und entschlüsselnde Dateien
      out - Verzeichnis, in das entpackt werden soll.
      privateKey - Privater Schlüssel, der zur Entschlüsselung herangezogen wird.
      Löst aus:
      IOException - Exception, die auftreten kann.
    • unzipHybridDecrypt

      public static void unzipHybridDecrypt(List<File> in, File out, File keyStoreFile, String keyAlias, String keyStorePassword, String keyEntryPassword) throws IOException
      Entzippt und entschlüsselt (hybrid) Dateien in einem Schritt.
      Parameter:
      in - zu entzippende und entschlüsselnde Dateien
      out - Verzeichnis, in das entpackt werden soll.
      keyStoreFile - Pfad zu Datei, die den PKCS12-Keystore enthält.
      keyAlias - Alias, unter dem der zu ladende Schlüssel abgespeichert ist.
      keyStorePassword - Passwort, mit der Keystore geschützt ist.
      keyEntryPassword - Passwort, mit dem der zu ladende Schlüsseleintrag geschützt ist.
      Löst aus:
      IOException - Exception, die auftreten kann.