0

我正在尝试使用身份证书加密最终的 mdm 配置文件(在 SCEP 有效负载之后获得响应)。我有以下代码:

context.Request.InputStream.CopyTo(deviceResponse);

  var signer = new SignedCms();
  signer.Decode(deviceResponse.ToArray());
  X509Certificate2 certificate = signer.Certificates[0];
  string str= sonething; //my final configuraton profile                       
 encryptedProfile = AESEncryption(str, cerificate.GetPublicKeyString(), true, Encoding.Default, pkcs);

我得到了例外:密钥长度不是 128/192/256 位。

如何加密最终配置文件(我正在使用 Bouncy Castle 库)?

问候

麦格

4

2 回答 2

1

您的“cerificate.GetPublicKeyString()”似乎没有返回具有适当长度(128/192/256 位)的密钥。您需要的最小值是 128 位(16 字节 = 16 长度)。

于 2014-02-24T12:47:46.127 回答
0

这不应该是 AES 加密。它必须是 CMSAlgorithm.DES_EDE3_CBC 加密的。

于 2013-09-24T11:58:48.993 回答