Class TSPUtil


  • public class TSPUtil
    extends java.lang.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 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.