Wenn ich nun zwangsläufig personenbezogene Daten in meiner Datenbank speichern muss, dann möchte ich sie schon gut verschlüsseln, um bei einer potentiellen Hackerattacke keine Klardaten rausgehen können.
Nur ist eben base64 gerade keine Verschlüsselung. Leute wie ich und erst recht jedes Skript-KidBaby sehen einem String die base64-Kodierung an und versuchen base64decode als Erstes…
Vielleicht hat ja einer von euch ne Idee, wie man das lösen könnte. Das Problem nur ist, dass ich mit Excel verschlüsseln muss
Eine Möglichkeit wäre, die Daten durch ein externes Programm zu verschlüsseln, z.B.
Das geht durchaus auch in Excel:
Die andere wäre, Du findest eine Excel/VBA-Funktion, die sowas kann oder Du baust den Algo nach, in dem Du die Funktion in VBA implementierst.
Dein Job:
- Du baust - für jedes Zeugnis - ein individuelles ausreichend langes und ausreichend zufälliges Passwort. Dazu eine „PIN“, die Du später dem Benutzer gibst.
- Leider musst Die zu verschlüsselnden Daten dann erst mal in eine Datei schreiben und dann die verschlüsselte Datei lesen, die Daten sodann base64-kodiert in Dein Excel-Tabelle aufnehmen
- Mit diesem Passwort und der PIN (zu einem String verknüpft) verschlüsselst Du mit ccrypt die Daten.
- Du speicherst das Passwort nur als Bestandteil der URL im QR-Code. Ebenfalls im QR-Code: Eine ID (z.b: Zeugnisnummer). Auch diese muss ausreichend groß und vor allem nicht erratbar sein.
- Die PIN bekommt der Schüler. Nach Scannen des Codes und Eingabe der PIN werden also ID, PIN und das PASSWORT via HTTPS zum Server übermittelt.
- Dort wird anhand der ID der Datenbankeintrag geholt, dieser wird wieder mit der zu einem String vereinigten PIN und dem Passwort entschlüsselt (Dazu müssen die Daten mit base64dercrypt behandelt und in eine temporäre Datei geschrieben werden).
- Apropos Dateien: Wie wär's mit einer RAM-Disk?
- Dann sendest Du die Daten via HTTPS.
- liefert ccdecrypt kein Ergebnis, dann war die PIN falsch…
- Nach einer bestimmten Anzahl falscher PINs muss die Abfrage des betroffenen Datensatzes temporär gesperrt werden…
Jetzt musst Du Dir nur noch einfallen lassen, was Du machst, wenn die PIN vergessen wurde. Die PIN selbst speichern ist ein Problem, weil sowohl Du selbst als auch ein Angreifer dann ja jederzeit die Daten entschlüsseln könnte. Die PIN nicht für das endgültige „gemeinsame“ Geheimnis zu nutzen geht aber auch nicht.
Wie auch immer Du DAS regelst: Viel Spaß DABEI!