Verschlüsselung

Auf dieser Seite erhalten Sie Informationen zu den eingesetzten Verschlüsselungsverfahren in SmartTaxBalance.

Passwort zur Anmeldung

SmartTaxBalance speichert die Passwörter der Benutzer in der Datenbank. Das Passwort wird mit dem Verfahren PBKDF2 in einen Schlüssel umgewandelt. Weiter Informationen zum Verwendeten Algorithmus erhalten Sie hier.

Die Informationen, die zur Authentifizierung gespeichert werden sind Hash und Salt.

Der Client hasht das eingegebene Passwort mit einem Salt, welcher u.A. den Benutzernamen enthält (client-seitiges PBKDF2). Dieser Hash wird an den Server gesendet und dort mit dem für diesen Nutzer in der Datenbank hinterlegten Salt nochmals gehasht, was nur bei Übereinstimmung mit dem persistieren Wert als erfolgreiche Anmeldung gewertet wird (server-seitiges PBKDF2). Der server-seitige Salt ist eine für jeden Benutzer individuelle und zufällig generierte Bytefolge. Dieses Vorgehen stellt folgende Punkte sicher:

  • Das Passwort wird nicht im Klartext an den Server übertragen.
  • Die an den Server gesendete Information (Hash 1) unterscheidet sich von der zu diesem Benutzer in der Datenbank gespeicherten Information (Hash 2).
  • Der Client erhält keine Kenntnis über die in der Datenbank hinterlegten Werte für Hash oder Salt.
  • Selbst bei identischen Passwörtern sind die Hash-Werte für verschiedene Benutzer unterschiedlich. Dies gilt sogar, wenn die Salt-Werte für zwei Benutzer identisch wären. D.h es ist nicht möglich, die Datenbankeinträge eines Benutzers auf die eines anderen Benutzers sinnvoll zu übertragen.
  • Die Hash-Berechnung ist so gestaltet, dass Brute-Force-Attacken erschwert werden.
  • Das eingesetzte Verfahren ist Bestandteil der Standard .NET-Bibliotheken.

Elster- und XBRL-Einstellungen 

Die PIN für das Elster-Zertifikat und das Proxy-Passwort werden mit einem AES-Algorithmus symmetrisch verschlüsselt. Die Schlüssellänge beträgt 256 bit. Wenn ein SmartTaxBalance-Server verwendet wird, kann auf dem Server ein Zertifikat hinterlegt werden, das bei der Verschlüsselung verwendet wird. In diesem Fall bestimmt das Zertifikat die Schlüssellänge.

Kommunikation zwischen Client- und Server-Anwendung

Der Kommunikationskanal wird mit dem  asymmetrisches kryptographischen Verfahren RSA aufgebaut. In dem sogenannten Handshake zu Beginn der Kommunikation wird dabei ein Schlüssel zwischen Client und Server ausgehandelt, welcher im Anschluss für die symmetrische Verschlüsselung mit AES verwendet wird.  Sowohl bei RSA als auch beim AES wird eine Schlüssellänge von 256 bit verwendet.

Diese Schlüssel können derzeit nicht über ein Zertifikat festgelegt werden. Wird Single-Sign-On in Verbindung mit Kerberos eingesetzt, so wird der Kerberos Token verwendet, um den AES Schlüssel auszutauschen.

Kommunikation mit der Finanzverwaltung mittels Elster-Schnittstelle

Die Elster-Schnittstelle der Finanzverwaltung verschlüsselt die versendeten Daten mittels des Elster-Zertifikats, das in SmartTaxBalance hinterlegt wird.