我有一些在中央许可站使用的X509v3证书的数据。我的问题是,以下信息量足以让我使用C#代码解密数据?此外,证书属性如何导入项目?我是否必须创建证书文件才能继续?
我知道的是:
我没有任何证书文件。对不起,如果已经回答了类似的问题,不幸的是我无法找到像我这样的问题。
答案 0 :(得分:2)
这些信息还不够。此数据是加密数据的公钥。 RSAParameters
答案 1 :(得分:2)
不,您的数据还不够。首先,这是所有 public 数据。它不包含私钥。私钥用于解密或签名生成。公钥用于加密和签名验证。
.NET API的特殊之处在于您似乎可以使用证书进行解密。实际情况并非如此;证书和私钥对被视为一个;只有如果包含私钥然后您才能实际解密。我个人认为这是一个小的设计错误。
原则上,您可以根据信息创建证书。基本上,您必须生成具有相同信息的证书,然后替换颁发者和签名字段。
然而,这不是心灵的弱者;在你尝试之前我建议你有几年的经验。如果上面列表中缺少任何信息,您将无法获得有效的证书/签名,并且您不会收到任何错误的警告,只是失败。你有一个优势;如果签名验证或指纹与您获得的签名相同,那么您知道您已成功。当然,你无法解密;私钥仍然缺失。
请注意,签名是256 untitled bytes
。