Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 给定两个证书,如何验证其中一个证书是否已与另一个证书签名';谁的私钥?_C#_Certificate_X509certificate_X509certificate2 - Fatal编程技术网

C# 给定两个证书,如何验证其中一个证书是否已与另一个证书签名';谁的私钥?

C# 给定两个证书,如何验证其中一个证书是否已与另一个证书签名';谁的私钥?,c#,certificate,x509certificate,x509certificate2,C#,Certificate,X509certificate,X509certificate2,我有两个X509Certificate2s。叫他们toCheck和checkWith 如何检查toCheck是否由checkWith的私钥签名 基本上,我想要Java的C#等价物 toCheck.verify(checkWith.getPublicKey()); 谢谢我不确定那会有什么价值。如果用于签名(checkWith)的证书被吊销怎么办?听起来你会有一种错误的确认感 如果要验证证书,可以使用方法该值用于确认toCheck是否由checkWith签名。换句话说,除了普通的验证(证书是合法的

我有两个
X509Certificate2
s。叫他们
toCheck
checkWith

如何检查
toCheck
是否由
checkWith
的私钥签名

基本上,我想要Java的C#等价物

toCheck.verify(checkWith.getPublicKey());

谢谢

我不确定那会有什么价值。如果用于签名(checkWith)的证书被吊销怎么办?听起来你会有一种错误的确认感


如果要验证证书,可以使用方法

该值用于确认toCheck是否由checkWith签名。换句话说,除了普通的验证(证书是合法的,日期是合法的,签名者没有被撤销,等等),我还想知道checkWith签署了它。。。简单地检查一个证书是否由另一个证书签名并不意味着签名证书有效。。。验证整个证书链。我理解。但检查证书是否“由有效证书签名”对于我来说是不够的。我想知道它是由这个有效的证书签名的。据我所知,这个签名是不可用的。虽然您可以根据GetRawCertData的结果计算签名,但没有什么可与之比较的。验证证书的推荐方法是使用X509Chain。如果您从DER数据创建了证书,您可以手动提取签名,计算与其他证书的签名,并比较。。。