IText7:CertIDBC.MatchesIssuer 实现正确吗?

问题描述 投票:0回答:1

IText7 点网。

CertIDBC 中的当前实现:

public virtual bool MatchesIssuer(IX509Certificate issuerCert) {
    return new CertIDBC(
        certificateID.HashAlgorithm.Algorithm.Id, 
        issuerCert, 
        new BigIntegerBC(certificateID.SerialNumber.Value)
    ).GetCertID().Equals(certificateID);
}

不应该是:

public virtual bool MatchesIssuer(IX509Certificate issuerCert) {
    return new CertIDBC(
        certificateID.HashAlgorithm, 
        issuerCert, 
        new BigIntegerBC(certificateID.SerialNumber.Value)
    ).GetCertID().Equals(certificateID);
}

通过仅传递算法 id,我们忘记了算法参数(AlgorithmIdentifier.parameters),这也是相等性检查的一部分。

.net certificate itext7
1个回答
0
投票

如果我们检查 Bouncy Castle 实现,我们会发现没有预见到任何算法参数。

当我们研究OCSP 规范时也是如此。

© www.soinside.com 2019 - 2024. All rights reserved.