7 Stimmen

Wie verschlüsselt und entschlüsselt man hochsensible Informationen in einer SQL Server-Datenbank mit ASP Classic?

Ich habe verschiedene Fragen auf Stackoverflow und natürlich Google überprüft, aber ich kann keine spezifische Lösung für diese Frage finden:

Wie erstelle ich eine Funktion in ASP Classic, um hochsensible Informationen in einer SQL Server-Datenbank zu verschlüsseln und zu entschlüsseln? Wie z.B. eine Sozialversicherungsnummer oder ähnliches?

(Oder ist es möglich, dies in meinem SQL-String zu tun?)

Und ja, ich weiß, wie man eine Funktion mit ASP erstellt ;)

Und nein, ich kann die Informationen nicht einfach mit SHA oder MD5 hashen, weil sie nur in eine Richtung funktionieren. Ich brauche es, dass es in beide Richtungen funktioniert!

Je mehr Sicherheit, desto besser! :)

EDIT:
Danach habe ich dies gefunden:

https://web.archive.org/web/20210728063606/https://www.4guysfromrolla.com/webtech/010100-1.shtml

Aber ich weiß nicht wirklich, ob das sicher genug ist und funktioniert? Soweit ich sehen kann, funktioniert es in beide Richtungen?

4voto

ChrisBint Punkte 12706

Es kann durchaus von Vorteil sein, SQL Server die Verschlüsselung/Entschlüsselung mithilfe von Schlüsseln/Zertifikaten übernehmen zu lassen. Auf diese Weise müssen Sie nicht mit ASP Ihre eigene Methode entwickeln, und die Verwaltung dieses Systems bleibt dort, wo die Daten selbst liegen. Es besteht auch der Vorteil, diesen Prozess nicht aktualisieren zu müssen, wenn Sie sich entscheiden, auf eine andere Plattform zu wechseln.

Es ist ein einfacher Prozess, die Schlüssel auf dem Server zu erstellen, und die Verwendung von ihnen nach diesem Punkt ist ebenfalls einfach, zum Beispiel;

Verschlüsselung;

OPEN SYMMETRIC KEY mykey DECRYPTION BY CERTIFICATE [mycert]
UPDATE table SET number = EncryptByKey(Key_GUID('mykey'), @number)

Entschlüsselung;

 OPEN SYMMETRIC KEY mykey DECRYPTION BY CERTIFICATE [mycert]
 SELECT CONVERT(varchar, DecryptByKey(number)) AS number FROM TABLE

Eine gute Übersicht hierzu finden Sie hier Einführung in die SQL Server-Verschlüsselung

1voto

MikeMurko Punkte 2099

Sie können den Rinjdael-Chiffre erfolgreich in VBScript mit dieser Bibliothek verwenden. Die Schlüsselfunktionen sind EncryptData() und DecryptData().

Es scheint für mich sicher genug zu sein. Offensichtlich möchten Sie Ihren Schlüssel ziemlich geheim halten. Ein Anwendungsfeld in der global.asa könnte ein guter Ort sein, um dies zu speichern (da dies normalerweise der Ort ist, an dem Verbindungszeichenfolgen und ähnliches gefunden werden).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X