让我们以需要192位密钥的TripesDES算法为例。C#如何处理较小的密钥?假设128位密钥(请参见下面的示例)
在nodejs中,尝试使用较小的密钥将引发“无效密钥大小”错误。C#继续并输出加密。我想内部使用某种填充?如果是这种情况,哪种填充?我认为PKCS7仅用于填充每个加密块,对吗?它与加密密钥本身无关。
var cryptoProvider = new TripleDESCryptoServiceProvider
{
Key = new byte[]
{
0xAA,
0xAA,
0xAA,
0xAA,
0xAA,
0xAA,
0xAA,
0xAA,
0xAA,
0xAA,
0xAA,
0xAA,
0xAA,
0xAA,
0xAA,
0xAA
},
Mode = CipherMode.ECB,
Padding = PaddingMode.PKCS7
};
var encryptor = cryptoProvider.CreateEncryptor();
var token = encryptor.TransformFinalBlock(bytes, 0, bytes.Length);
千万里不及你
相关分类