我通过我们的旧版 VB6 应用程序使用 CAPICOM 库加密了大量数据。
我需要从 .Net 3.5 应用程序访问这些数据,但在调用 Decrypt 方法时出现错误:“ASN1 bad tag value met”。谷歌在追踪体面的代码示例或对该错误含义的解释方面几乎没有帮助。
以下代码几乎完全复制了 VB6 代码中发生的情况:
static string DecryptEncryptedText(string encryptedText, string secretKey)
{
var encryptedDataObj = new CAPICOM.EncryptedData();
encryptedDataObj.SetSecret(secretKey, CAPICOM_SECRET_TYPE.CAPICOM_SECRET_PASSWORD);
encryptedDataObj.Decrypt(encryptedText);
return encryptedDataObj.Content;
}