How to store 32 hex decimal digits in 16 bytes array?
本问题已经有最佳答案,请猛点这里访问。
我正在使用三重DES算法进行加密。在执行此操作时,我需要传递十六进制十进制(32个字符)密钥。当我将其转换为字节数组时,它将存储在32个字节中。但该算法的输入密钥应仅为16个字节。所以我的问题是如何在16个字节数组中存储32个十六进制十进制数字?
您所追求的可能与此扩展方法类似
1 2 3 4 5 6 7 8 9 10 | 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; } |
您有一个看起来像"a123ff25"的字符串,您希望将该字符串中的每个2字符块视为十六进制数,并从中得到一个字节数组,该数组的长度是原始字符串的一半…