使用 X509 证书解密
Using a X509 certificate for decryption
我有一些在中央许可站使用的 X509v3 证书的数据。我的问题是以下信息量是否足以让我使用 C# 代码解密数据?此外,证书属性如何导入到项目中?我必须创建证书文件才能继续吗?
我知道的有:
- 主题
- 序列号
- 发行人
- "root-ca"
- Public 关键算法:"rsaEncryption"
- RSA 模数,128 字节
- RSA Public 密钥指数
- X509v3 扩展密钥用法:"critical"
- 签名算法:"md5WithRSAEncryption",后跟 256 个无标题字节
- SHA1 指纹
我没有任何证书文件。对不起,如果类似的问题已经得到回答,不幸的是我找不到像我这样的问题。
此信息还不够。此数据是用于加密数据的 public 密钥。
RSAParameters
不,您的数据不够。首先,这是所有public数据。它不包含私钥。私钥用于解密或签名生成。 public 密钥用于加密和签名验证。
.NET API 的独特之处在于您似乎可以使用证书进行解密。事实并非如此。证书和私钥对被视为一个;只有 if 包含私钥 then 你才能真正解密。我个人认为这是一个小设计错误。
原则上您可以根据信息创建证书。基本上,您必须生成具有相同信息的证书,然后替换颁发者和签名字段。
但这不适合心脏虚弱的人;我建议您在尝试之前先积累几年的经验。如果上面的列表中缺少任何信息,您将不会获得有效的证书/签名,并且您不会收到任何错误警告,只是失败。不过,您有一个优势;如果签名验证或指纹与您得到的相同,那么您知道您已经成功了。
你当然无法解密;私钥仍然会丢失。
注意签名是 256 untitled bytes
.
我有一些在中央许可站使用的 X509v3 证书的数据。我的问题是以下信息量是否足以让我使用 C# 代码解密数据?此外,证书属性如何导入到项目中?我必须创建证书文件才能继续吗?
我知道的有:
- 主题
- 序列号
- 发行人
- "root-ca"
- Public 关键算法:"rsaEncryption"
- RSA 模数,128 字节
- RSA Public 密钥指数
- X509v3 扩展密钥用法:"critical"
- 签名算法:"md5WithRSAEncryption",后跟 256 个无标题字节
- SHA1 指纹
我没有任何证书文件。对不起,如果类似的问题已经得到回答,不幸的是我找不到像我这样的问题。
此信息还不够。此数据是用于加密数据的 public 密钥。 RSAParameters
不,您的数据不够。首先,这是所有public数据。它不包含私钥。私钥用于解密或签名生成。 public 密钥用于加密和签名验证。
.NET API 的独特之处在于您似乎可以使用证书进行解密。事实并非如此。证书和私钥对被视为一个;只有 if 包含私钥 then 你才能真正解密。我个人认为这是一个小设计错误。
原则上您可以根据信息创建证书。基本上,您必须生成具有相同信息的证书,然后替换颁发者和签名字段。
但这不适合心脏虚弱的人;我建议您在尝试之前先积累几年的经验。如果上面的列表中缺少任何信息,您将不会获得有效的证书/签名,并且您不会收到任何错误警告,只是失败。不过,您有一个优势;如果签名验证或指纹与您得到的相同,那么您知道您已经成功了。
你当然无法解密;私钥仍然会丢失。
注意签名是 256 untitled bytes
.