Package de.willuhn.security
Class Signature
- java.lang.Object
-
- de.willuhn.security.Signature
-
public class Signature extends java.lang.ObjectHilfsklasse 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 Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voidmain(java.lang.String[] args)Main-Methode, um das Signieren und Verifzieren von der Kommandozeile aus durchfuehren zu koennen.static byte[]sign(java.io.InputStream data, java.security.PrivateKey key)Erzeugt eine Signatur fuer die uebergebenen Daten.static booleanverifiy(java.io.InputStream data, java.security.PublicKey key, byte[] signature)Prueft die Signatur fuer die uebergebenen Daten.
-
-
-
Method Detail
-
sign
public static byte[] sign(java.io.InputStream data, java.security.PrivateKey key) throws java.security.GeneralSecurityException, java.io.IOExceptionErzeugt 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:
java.io.IOException- wenn ein Fehler beim Lesen der Daten auftrat.java.security.GeneralSecurityException- wenn ein Fehler beim Signieren auftrat.
-
verifiy
public static boolean verifiy(java.io.InputStream data, java.security.PublicKey key, byte[] signature) throws java.security.GeneralSecurityException, java.io.IOExceptionPrueft 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:
java.io.IOException- wenn ein Fehler beim Lesen der Daten auftrat.java.security.GeneralSecurityException- wenn ein Fehler beim Verifizieren der Signatur auftrat.
-
main
public static final void main(java.lang.String[] args) throws java.lang.ExceptionMain-Methode, um das Signieren und Verifzieren von der Kommandozeile aus durchfuehren zu koennen.- Parameters:
args-- Throws:
java.lang.Exception
-
-