Generieren Sie zufällige bytes für TripleDES-Schlüssel C#
Muss ich generieren byte-array für die TripleDES-Verschlüsselung. Ich möchte nicht .generateKey()
weil ich wissen muss, um die bytes in den Schlüssel übergeben Sie an eine andere Anwendung.
Danke für die Antworten, aber ich vergaß zu erwähnen, eine Sache: die bytes werden ungerade Parität. Ansonsten kann ich nicht erzeugen einen TripleDES-Schlüssel von Ihnen. Ich bin nicht so vertraut mit der ungeraden Parität, also denke ich, haben erstellen ein byte-überprüfen, ob es ungerade Parität oder nicht; dann, wenn es nicht, legen Sie es in das array, sonst nicht.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie brauchen, um die ungerade Parität, haben Sie, um zu berechnen, es selbst. Dies tun sollten:
Wie etwa:
Beachten Sie, dass
RandomNumberGenerator
ist geeignet für crypto-Arbeit (im Sinne von einigermaßen sicheren, schwer vorhersagbare Zufallszahlen), in der Erwägung, dassSystem.Random
nicht.Aber ... was ist das problem mit nur:
Dort bekommen Sie Ihren Schlüssel, mit dem die de - und decryptor erzeugt mit dieser Instanz.
Beachten Sie, dass die anderen Antworten fehlt, ist die
TripleDES.IsWeakKey
.Den GetBytes Methode gibt crypthographically starke Sequenz von Werten:
Was
Random.NextBytes()
Mehr info hier.
Random
ist nicht sicher für kryptographische verwenden.