GetBytes Methode crypthographically starke Folge von Werten zurückgibt :
%Vor% Ich muss ein Byte-Array für die TripleDES-Verschlüsselung generieren. Ich möchte .generateKey()
nicht verwenden, da ich die Bytes im Schlüssel kennen muss, um sie an eine andere Anwendung zu übergeben.
Danke für die Antworten, aber ich habe vergessen eines zu erwähnen: die Bytes müssen ungerade Parität sein. Ansonsten kann ich keinen TripleDES-Schlüssel von ihnen generieren. Ich bin nicht so vertraut mit der ungeraden Parität, also denke ich, muss eine Byte-Prüfung erstellen, ob es ungerade Parität hat oder nicht; dann wenn es in das Array geschrieben wird, sonst nicht.
Wie wäre es mit:
%Vor% Beachten Sie, dass RandomNumberGenerator
für die Kryptografie geeignet ist ( in Bezug auf einigermaßen sichere, schwer zu prognostizierende zufällige Daten), während System.Random
nicht ist.
Aber ... was ist das Problem mit nur:
%Vor%Dort bekommen Sie Ihren Schlüssel von dem En- und Decryptor, der mit dieser Instanz erstellt wurde.
Beachten Sie, dass die anderen Antworten keine TripleDES.IsWeakKey
enthalten.
Was ist mit Random.NextBytes()
Weitere Informationen hier .