Mir stellt sich gerade die Frage, in wie fern man die Datenbank sicher verschlüsseln kann, ohne jedoch die Funktionalität einzuschränken. Gute Verschlüsselungstechniken sind nämlich nicht linear, das bedeutet das man wahrscheinlich auf Suchfunktionen verzichten muss.
Mal angenommen in der DB steht folgenders:
Herr Prof. Dr. Max Mustermann
Musterweg 44
44444 Musterstatt
Musterland
nach der Chiffrierung steht da:
564gvf5rag23z6Fdahd56gfFhaeWdhfdca5DbggrSewgds8etu gRTrte3shSre3
7Sfseasrrztz523ggrtwgg4wfHgssetHgsrZHf3q3gfSdhjgzh huzkhtJujhJdrFGj6
744fGqw3yGqH4Stfw3SqqasVyXyyCVj23ufvaJhdtz854FhkMb DMlOzhjSDsD
Fgr338auz1
nun habe ich eine Suchfunktion die mit ... LIKE '%$suchstring%' arbeiten soll. Man müsste nun den Suchstring chiffrieren damit es bei der Suche nach "Max Mustermann" einen match geben kann - was z.b. bei linearer monoalphabetischer Substitution (exrem unsicher) gehen müsste. Wie ist das aber bei nonlinearer polyalphabetischer Verschlüsselung?
Dann noch eine Frage, die ich mal so in den Raum stellen möchte: Bringt es überhaupt etwas, sich um die Verschlüsselung der DB gedanken zu machen? Gedanke: Wenn jemand an meine DB kommt, kommt er auch an meine Skripte. Und damit hat er dann auch das Werkzeug zum dechiffrieren. Was spricht dafür, die DB zu verschlüsseln, und was dagegen?
Wie macht ihr das - verschlüsselt ihr eure DB? Warum? Warum nicht?
Ich freue mich über sachliche Kommentare.
Mal angenommen in der DB steht folgenders:
Herr Prof. Dr. Max Mustermann
Musterweg 44
44444 Musterstatt
Musterland
nach der Chiffrierung steht da:
564gvf5rag23z6Fdahd56gfFhaeWdhfdca5DbggrSewgds8etu gRTrte3shSre3
7Sfseasrrztz523ggrtwgg4wfHgssetHgsrZHf3q3gfSdhjgzh huzkhtJujhJdrFGj6
744fGqw3yGqH4Stfw3SqqasVyXyyCVj23ufvaJhdtz854FhkMb DMlOzhjSDsD
Fgr338auz1
nun habe ich eine Suchfunktion die mit ... LIKE '%$suchstring%' arbeiten soll. Man müsste nun den Suchstring chiffrieren damit es bei der Suche nach "Max Mustermann" einen match geben kann - was z.b. bei linearer monoalphabetischer Substitution (exrem unsicher) gehen müsste. Wie ist das aber bei nonlinearer polyalphabetischer Verschlüsselung?
Dann noch eine Frage, die ich mal so in den Raum stellen möchte: Bringt es überhaupt etwas, sich um die Verschlüsselung der DB gedanken zu machen? Gedanke: Wenn jemand an meine DB kommt, kommt er auch an meine Skripte. Und damit hat er dann auch das Werkzeug zum dechiffrieren. Was spricht dafür, die DB zu verschlüsseln, und was dagegen?
Wie macht ihr das - verschlüsselt ihr eure DB? Warum? Warum nicht?
Ich freue mich über sachliche Kommentare.
Kommentar