Ich arbeite an einer Java RCP-Anwendung. Ein Benutzer muss sich mit seiner SmartCard authentifizieren, um Zugang zur Anwendung zu erhalten. Innerhalb dieser Anwendung kann er Dateien öffnen/speichern, die verschlüsselt gespeichert werden müssen.
Derzeit verwende ich eine passwortbasierte AES-Verschlüsselung mit einem fest eingegebenen Passwort. Das ist offensichtlich nicht sicher, also brauche ich einen anderen Ansatz zur Ver-/Entschlüsselung von Dateien.
Das Problem besteht darin, dass einige Voraussetzungen erfüllt werden müssen:
- keine garantierte Netzverbindung (muss im Offline-Modus nutzbar sein)
- mehrere Benutzer müssen Zugriff auf die Dateien haben (also keine Verschlüsselung mit öffentlichem/privatem Schlüssel)
- es sollte nicht ein "Master"-Schlüssel für alle Dateien verwendet werden
Editar: Ich brauche kein sehr hohes Sicherheitsniveau zu haben. Es sollte für einen Angreifer nur etwas schwieriger sein, an den Schlüssel zu gelangen, als einfach die verteilte JAR-Datei zu öffnen und den Schlüssel im Klartext zu erhalten.
Für jeden Hinweis wären wir dankbar.