35 Stimmen

Wie erstellt man einen Verschlüsselungscode für Verschlüsselungsalgorithmen?

Ich möchte Verschlüsselungsalgorithmus im .Net Security-Namensraum verwenden, aber ich versuche zu verstehen, wie der Schlüssel zu generieren, zum Beispiel AES-Algorithmus braucht 256 Bits, dass 16 Byte Schlüssel, und einige Initialisierungsvektor, der auch einige Bytes ist.

  1. Kann ich jede beliebige Kombination von Werten in meinem Schlüssel und IV verwenden? z.B. sind alle Nullen in Schlüssel und IV gültig oder nicht? Ich kenne die Details von Algorithmen, die viele Xoren verwenden, so dass Nullen nichts nützen, aber gibt es bei diesen Algorithmen irgendwelche Einschränkungen?

  2. Oder muss ich den Schlüssel mit einem Programm generieren und ihn irgendwo dauerhaft speichern?

Ich möchte Daten in der Datenbank nach der Verschlüsselung speichern, die sicheren Profildaten wie Benutzername, Passwort, Telefonnummer usw., und der Schlüssel wird nur für den in der Verbindungszeichenfolge genannten Datenbankbenutzer und den Administrator verfügbar sein.

0voto

Adam Ruth Punkte 3457

Es hängt wirklich davon ab, was Sie mit dem Schlüssel machen wollen.

Wenn der Schlüssel vom Computer generiert werden soll (und ein beliebiger Zufallswert sein kann), nehme ich in der Regel ein SHA256 von ein paar GUIDs. Dies ist der zufälligste Wert, den man ohne einen Hardware-Zufallszahlengenerator erhalten kann.

Sie können Schlüssel mit allen 0en verwenden, aber das ist natürlich nicht sehr sicher.

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