我正在使用Triple DES算法进行加密。虽然这样做我需要传入十六进制十进制(32个字符)键。当我将其转换为字节数组时,它将以32个字节存储。但算法的输入键应该只有16个字节。所以我的问题是如何在16字节数组中存储32个十六进制十进制数字?
答案 0 :(得分:1)
你所追求的可能类似于这种扩展方法
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-char块视为十六进制数,并从中获取一个字节数组,该数组是原始字符串长度的一半。 ..