Sicherheit

<< Inhaltsverzeichnis anzeigen >>

Navigation:  Umgang mit der Software >

Sicherheit

Attention Trotz aller Maßnahmen, die bei der Gestaltung von ArchiCrypt Passwort Safe ergriffen wurden, raten wir dringend davon ab, die Software auf einem System zu nutzen, über deren Sicherheit Sie nicht informiert sind. Insbesondere in schlecht geführten Internet Cafés im Ausland könnte Schadsoftware installiert sein, die nicht nur Tastatureingaben protokolliert sondern auch den Netzwerkverkehr abhört, Bildschirmmitschnitte anfertigt etc. Auch Ihr heimischer PC sollte stets mit aktueller Antivirensoftware ausgestattet sein.

 

MERKE: Auf einem unsicheren System nützt die beste Sicherheitssoftware nichts

 

Grundsätzliches

 

Alle Daten (Passwörter, Zugangsdaten, Bilddaten, Dateien, Freitext, etc.) werden in einer Datei im so genannten XML Format abgelegt. Sie können diese Datei prinzipiell mit jedem Textprogramm öffnen. Alle Inhalte sind jedoch mit den unten aufgeführten Verfahren verschlüsselt, zu jedem Zeitpunkt. Auf dem Datenträger liegen somit niemals Klartextdaten Ihrer Passwortdatenbank. Auch dann nicht, wenn Sie die Passwortdatenbank mit Ihrem Passwort geöffnet haben.

Bei offenem Passwortsafe werden die Einträge im Hauptspeicher Ihres Rechners gehalten, dort aber mit einem zufälligen Sitzungsschlüssel verschlüsselt. Erst, wenn auf die Daten im Passwort Safe zugegriffen wird, werden diese entschlüsselt. Wenn die Daten aus dem Safe an andere Anwendungen übertragen wurden, obliegt die Sicherheit der Daten diesen Anwendungen.

 

Die Sicherheit in der Cloud ist durch die Verschlüsselung der Passwortdatenbank gewährleistet. Diese bleibt in der Cloud zu jedem Zeitpunkt verschlüsselt. Ihr Safe Passwort wird weder in der Cloud noch auf Ihrem Rechner abgelegt.

 

Eingesetzte Verfahren

 

ArchiCrypt Passwort Safe setzt ausschließlich auf standardisierte Verfahren.

Advanced Encryption Standard (AES; in der 256 BIT Version; CFB (Cipher Feedback) Modus)

Hashverfahren SHA512

Schlüsselableitungsfunktion PBKDF2

Maskengeneratorfunktion MGF1.

 

Informationen zu AES finden Sie unter http://de.wikipedia.org/wiki/Advanced_Encryption_Standard

 

 

Zufallszahlenpool

 

ArchiCrypt Passwort Safe sammelt ab Start Daten für einen Zufallszahlenpool. Dabei werden viele nicht deterministische Systemzustände und das Anwenderverhalten mit einbezogen. Die Änderung eines einzelnen Bits ändert den kompletten Datenpool. Bei Entnahme wird der Pool neu berechnet.

 

Vorgänge beim Erzeugen einer Passwortdatenbank

 

Folgende Werte werden aus dem Zufallszahlenpool erzeugt:

 

Saltwert 1 der Größe 80 BIT

 

Saltwert 2 der Größe 80 BIT

 

Masterkey der Größe 800 BIT (entspricht Passwort der Länge 100 Zeichen inkl. Groß-,Kleinbuchstaben, Ziffern,Sonderzeichen und nicht druckbare Zeichen. Mit diesem Masterkey werden die alle sensiblen Daten im Passwort Safe verschlüsselt.)

 

Folgende kryptografische Berechnungen werden durchgeführt:

 

Der vom Anwender eingegebene Schlüssel  (Passwort/Schlüsseldatei), UserKey genannt, wird mit Hilfe des Salt 1 Wertes in einer Schlüsselableitungsfunktion (KDF;Key Derivation Function) zum so genannten abgeleiteten Nutzerschlüssel (Derived UserKey). Zum Einsatz kommt PBKDF2 gemäß PKCS#5. Als Hashfunktion wird SHA512 eingesetzt. Die Anzahl Iterationen (iterations) beträgt 50000.

 

Aus dem abgeleiteten Nutzerschlüssel, DerivedUserKey, wird zusammen mit dem Salt 2 Wert zunächst mit PBKDF2 und einer Iterationszahl von 1000 ein Prüfwert A (checksum A) berechnet.

 

Aus diesem Prüfwert A wird mit Hilfe einer Mask Generation Function (MGF1 aus PKCS#1) ein Prüfwert A' berechnet. Als Hashfunktion kommt SHA512 zum Einsatz.

 

Dieser Prüfwert A' wird mit dem Saltwert 2 konkateniert. Man erhält den Prüfwert A''=Salt 2 + Prüfwert A'

 

Abschließend wird der Prüfwert A'' mit dem abgeleiteten Nutzerschlüssel zu Enc(Prüfwert A'') verschlüsselt.

 

Der Masterkey wird mit dem abgeleiteten Nutzerschlüssel verschlüsselt (Encrypted MasterKey).

 

 

Im Passwort Safe werden folgende Werte abgelegt:

 

Saltwert 1, Saltwert 2, Enc(Prüfwert A'') und der verschlüsselte Masterkey.

 

Vorgänge beim Öffnen einer Passwort Datenbank

 

Der Anwender gibt den potentiellen Schlüssel (Passwort/Schlüsseldatei) ein. Man erhält den UserKey?.

 

Anm.: Alle Werte, die mit einem Fragezeichen ? versehen sind, sind nur dann korrekt, wenn der eingegebene Schlüssel mit dem beim Erzeugen verwendeten Schlüssel übereinstimmt. Erst am Ende der Prüfroutine steht fest, ob dem so ist.

 

Folgende Daten werden aus der Passwortdatenbank eingelesen:

Saltwert 1

Enc(Prüfwert A'')

Verschlüsselter Masterkey

 

Folgende kryptografische Berechnungen werden ausgeführt:

Der UserKey? wird zusammen mit dem Saltwert 1 an die Schlüsselableitungsfunktion PBKDF2 übergeben. Genau so, wie beim Erzeugen der Datenbank. Man erhält Derived UserKey?. Dieser ist nur korrekt, falls UserKey? korrekt eingegeben wurde.

 

Jetzt wird mit Hilfe von Derived UserKey? der Wert Enc(Prüfwert A'') entschlüsselt zu Prüfwert A'' ? Auch hier erhält man nur dann den korrekten Wert, wenn die Eingabe korrekt war.

 

Dieser Wert wird aufgeteilt in

Salt 2?

und

Prüfwert A'?

 

Derived UserKey? und Salt 2? werden an die Schlüsselableitungsfunktion PBKDF2 übergeben und man erhält den Prüfwert B

Mit Hilfe der Mask Generation Function MGF1 wird daraus der Prüfwert B' berechnet.

 

An dieser Stelle wird Prüfwert A'? mit Prüfwert B' verglichen. Sind beide identisch, ist UserKey? korrekt und stimmt mit UserKey beim Erzeugen der Datenbank überein. Wir können den UserKey verwenden um den verschlüsselten Masterkey zu dechiffrieren. Mit diesem entschlüsselten Masterkey werden die Einträge der Passwortdatenbank entschlüsselt.