Class TSPUtil

java.lang.Object
org.bouncycastle.tsp.TSPUtil

public class TSPUtil extends Object
Utility methods supporting the RFC 3161 time-stamp protocol implementation - extraction of signature time-stamps from a SignerInformation, validation of TSA certificates against the id-kp-timeStamping extended key usage requirement, and digest-length lookups.
  • Constructor Details

    • TSPUtil

      public TSPUtil()
  • Method Details

    • getSignatureTimestamps

      public static Collection getSignatureTimestamps(SignerInformation signerInfo, DigestCalculatorProvider digCalcProvider) throws TSPValidationException
      Fetches the signature time-stamp attributes from a SignerInformation object. Checks that the MessageImprint for each time-stamp matches the signature field. (see RFC 3161 Appendix A).
      Parameters:
      signerInfo - a SignerInformation to search for time-stamps
      digCalcProvider - provider for digest calculators
      Returns:
      a collection of TimeStampToken objects
      Throws:
      TSPValidationException
    • validateCertificate

      public static void validateCertificate(X509CertificateHolder cert) throws TSPValidationException
      Validate the passed in certificate as being of the correct type to be used for time stamping. To be valid it must have an ExtendedKeyUsage extension which has a key purpose identifier of id-kp-timeStamping.
      Parameters:
      cert - the certificate of interest.
      Throws:
      TSPValidationException - if the certificate fails on one of the check points.