<PackageReference Include="BouncyCastle.Cryptography" Version="2.7.0-beta.98" />

TimeStampedDataParser

public class TimeStampedDataParser
namespace Org.BouncyCastle.Asn1.Cms { public class TimeStampedDataParser { private DerInteger version; private DerIA5String dataUri; private MetaData metaData; private Asn1OctetStringParser content; private Evidence temporalEvidence; private Asn1SequenceParser parser; public virtual DerIA5String DataUri => dataUri; public virtual MetaData MetaData => metaData; public virtual Asn1OctetStringParser Content => content; private TimeStampedDataParser(Asn1SequenceParser parser) { this.parser = parser; version = DerInteger.GetInstance(parser.ReadObject()); Asn1Object asn1Object = parser.ReadObject().ToAsn1Object(); if (asn1Object is DerIA5String) { dataUri = DerIA5String.GetInstance(asn1Object); asn1Object = parser.ReadObject().ToAsn1Object(); } if (asn1Object is Asn1SequenceParser) { metaData = MetaData.GetInstance(asn1Object.ToAsn1Object()); asn1Object = parser.ReadObject().ToAsn1Object(); } if (asn1Object is Asn1OctetStringParser) content = (Asn1OctetStringParser)asn1Object; } public static TimeStampedDataParser GetInstance(object obj) { if (obj is Asn1Sequence) return new TimeStampedDataParser(((Asn1Sequence)obj).Parser); if (obj is Asn1SequenceParser) return new TimeStampedDataParser((Asn1SequenceParser)obj); return null; } public virtual Evidence GetTemporalEvidence() { if (temporalEvidence == null) temporalEvidence = Evidence.GetInstance(parser.ReadObject().ToAsn1Object()); return temporalEvidence; } } }