Class TimeStampRequest

java.lang.Object
org.bouncycastle.asn1.ASN1Object
org.bouncycastle.asn1.microsoft.TimeStampRequest
All Implemented Interfaces:
org.bouncycastle.asn1.ASN1Encodable, org.bouncycastle.util.Encodable

public class TimeStampRequest extends org.bouncycastle.asn1.ASN1Object
The Microsoft Authenticode time stamp request, as sent to a legacy (pre-RFC 3161) Authenticode time stamping service (the protocol behind signtool /t; the RFC 3161 protocol is signtool /tr).
TimeStampRequest ::= SEQUENCE {
   countersignatureType OBJECT IDENTIFIER,
   attributes Attributes OPTIONAL,
   content  ContentInfo
}
The countersignatureType identifying a time stamp countersignature is the exact OID 1.3.6.1.4.1.311.3.2.1 (MicrosoftObjectIdentifiers.microsoftTimeStampRequest). No attributes are currently included in requests. The content is a PKCS#7 ContentInfo of type data whose content is the encryptedDigest (signature) from the SignerInfo of the PKCS#7 SignedData to be time stamped.

On the wire the request travels as the body of an HTTP 1.1 POST, base64 encoded, with Content-Type application/octet-stream. The response is a base64 encoded PKCS#7 SignedData whose SignerInfo the requester copies into the original SignedData as a PKCS#9 countersignature (an unsigned attribute of the original SignerInfo), merging the time stamper's certificates into the original SignedData's certificate set.

See Time Stamping Authenticode Signatures.

  • Constructor Details

    • TimeStampRequest

      public TimeStampRequest(ContentInfo content)
      Construct a time stamp request for the given content using the standard Authenticode countersignature type OID, 1.3.6.1.4.1.311.3.2.1, and no attributes.
      Parameters:
      content - a ContentInfo of type data carrying the signature to be time stamped.
    • TimeStampRequest

      public TimeStampRequest(org.bouncycastle.asn1.ASN1ObjectIdentifier countersignatureType, Attributes attributes, ContentInfo content)
  • Method Details

    • getInstance

      public static TimeStampRequest getInstance(Object obj)
    • getCountersignatureType

      public org.bouncycastle.asn1.ASN1ObjectIdentifier getCountersignatureType()
    • getAttributes

      public Attributes getAttributes()
      Return the attributes included in the request, or null if there are none.
    • getContent

      public ContentInfo getContent()
    • toASN1Primitive

      public org.bouncycastle.asn1.ASN1Primitive toASN1Primitive()
      Specified by:
      toASN1Primitive in interface org.bouncycastle.asn1.ASN1Encodable
      Specified by:
      toASN1Primitive in class org.bouncycastle.asn1.ASN1Object