Class AbstractVerifier

java.lang.Object
com.wechat.pay.java.core.cipher.AbstractVerifier
All Implemented Interfaces:
Verifier
Direct Known Subclasses:
RSAVerifier

public abstract class AbstractVerifier extends Object implements Verifier
  • Field Details

    • logger

      protected static final org.slf4j.Logger logger
    • certificateProvider

      protected final CertificateProvider certificateProvider
    • publicKey

      protected final PublicKey publicKey
    • publicKeyId

      protected final String publicKeyId
    • algorithmName

      protected final String algorithmName
  • Constructor Details

    • AbstractVerifier

      protected AbstractVerifier(String algorithmName, CertificateProvider certificateProvider)
      AbstractVerifier 构造函数
      Parameters:
      algorithmName - 获取Signature对象时指定的算法,例如SHA256withRSA
      certificateProvider - 验签使用的微信支付平台证书管理器,非空
    • AbstractVerifier

      protected AbstractVerifier(String algorithmName, PublicKey publicKey, String publicKeyId)
      AbstractVerifier 构造函数
      Parameters:
      algorithmName - 获取Signature对象时指定的算法,例如SHA256withRSA
      publicKey - 验签使用的微信支付平台公钥,非空
      publicKeyId - 验签使用的微信支付平台公钥id
    • AbstractVerifier

      protected AbstractVerifier(String algorithmName, PublicKey publicKey, String publicKeyId, CertificateProvider certificateProvider)
      AbstractVerifier 构造函数,仅在平台证书和平台公钥灰度切换阶段使用
      Parameters:
      algorithmName - 获取Signature对象时指定的算法,例如SHA256withRSA
      publicKey - 验签使用的微信支付平台公钥,非空
      publicKeyId - 验签使用的微信支付平台公钥id
      certificateProvider - 验签使用的微信支付平台证书管理器,非空
  • Method Details

    • verify

      protected boolean verify(X509Certificate certificate, String message, String signature)
    • verify

      public boolean verify(String serialNumber, String message, String signature)
      Description copied from interface: Verifier
      验证签名
      Specified by:
      verify in interface Verifier
      Parameters:
      serialNumber - 用于验证签名的证书序列号或者公钥id
      message - 签名信息
      signature - 待验证的签名
      Returns:
      是否验证通过
    • getSerialNumber

      public String getSerialNumber()
      Specified by:
      getSerialNumber in interface Verifier