TSPUtil (Bouncy Castle Library 1.54 API Specification)
Date: 2015-12-29

org.bouncycastle.tsp

## Class TSPUtil

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

-     public class TSPUtil
      extends java.lang.Object

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `TSPUtil()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static java.util.Collection` | `getSignatureTimestamps(SignerInformation signerInfo, DigestCalculatorProvider digCalcProvider)` Fetches the signature time-stamp attributes from a SignerInformation object.
    `static void` | `validateCertificate(X509CertificateHolder cert)` Validate the passed in certificate as being of the correct type to be used for time stamping.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### TSPUtil

          public TSPUtil()

  - ### Method Detail

    - #### getSignatureTimestamps

          public static java.util.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.