Class Signature

java.lang.Object
de.willuhn.security.Signature

public class Signature extends Object
Hilfsklasse mit statischen Methoden zur Erzeugung und Verifizierung von Signaturen. Die Signaturen basieren auf SHA1-Checksummen der Daten und werden mittels Public-/Privatekey geschuetzt. Alternativ kann man die Signaturen auch mit den folgenden beiden OpenSSL-Befehlen erstellen/verifizieren. Die von dieser Java-Klasse erzeugten Signaturen sind kompatibel zu denen von OpenSSL.
 openssl dgst -sha1 -sign ${privatekey-file} -out ${signature-file} < {file}
 openssl dgst -sha1 -verify ${publickey-file} -signature ${signature-file} {file}
 
  • Method Details

    • sign

      public static byte[] sign(InputStream data, PrivateKey key) throws GeneralSecurityException, IOException
      Erzeugt eine Signatur fuer die uebergebenen Daten. Die Signatur wird mit dem Algorithmus "SHA1withRSA" erstellt.
      Parameters:
      data - die zu signierenden Daten.
      key - der Private-Key zum Signieren.
      Returns:
      die Signatur.
      Throws:
      IOException - wenn ein Fehler beim Lesen der Daten auftrat.
      GeneralSecurityException - wenn ein Fehler beim Signieren auftrat.
    • verifiy

      public static boolean verifiy(InputStream data, PublicKey key, byte[] signature) throws GeneralSecurityException, IOException
      Prueft die Signatur fuer die uebergebenen Daten. Die Signatur wird mit dem Algorithmus "SHA1withRSA" geprueft.
      Parameters:
      data - die zu signierenden Daten.
      key - der Public-Key zum Pruefen.
      signature - die Signatur.
      Returns:
      true, wenn die Signatur ok ist.
      Throws:
      IOException - wenn ein Fehler beim Lesen der Daten auftrat.
      GeneralSecurityException - wenn ein Fehler beim Verifizieren der Signatur auftrat.
    • main

      public static final void main(String[] args) throws Exception
      Main-Methode, um das Signieren und Verifzieren von der Kommandozeile aus durchfuehren zu koennen.
      Parameters:
      args -
      Throws:
      Exception