2016-03-21 12 views
0

Ich verwende Triple-DES-Algorithmus für die Verschlüsselung.Während dies tun, muss ich in einem Hexadezimal (32 Zeichen) Schlüssel übergeben.Wenn ich das in Byte-Array konvertieren wird es in 32 Bytes gespeichert.Aber der Eingabe-Schlüssel für den Algorithmus sollte nur von 16 Bytes. So meine Frage ist, wie 32 Hexadezimalziffern in 16-Byte-Array zu speichern?Wie 32 Hexadezimalziffern in 16-Byte-Array gespeichert werden?

+1

Zeigen Sie uns einige Code, wie Sie es tun – derpirscher

Antwort

1

Was sind Sie nach ist wahrscheinlich ähnlich wie diese Erweiterung Methode

public static byte[] HexToByteArray(this string hex) 
    { 
     hex = hex.Replace(" ", "").Replace("-", ""); 

     var numberChars = hex.Length; 
     var bytes = new byte[numberChars/2]; 
     for (var i = 0; i < numberChars; i += 2) 
      bytes[i/2] = Convert.ToByte(hex.Substring(i, 2), 16); 
     return bytes; 
    } 

Sie haben eine Zeichenfolge, die so etwas wie „A123FF25“ aussieht, und Sie wollen jedes 2-Zeichen-Block in dieser Zeichenfolge als hexadezimale behandeln Nummer, und erhalten Sie eine Byte-Array aus das ist die halbe Länge des Originals ...

+0

thnq u jackob.its funktioniert gut – spk

Verwandte Themen