<PackageReference Include="BouncyCastle.Cryptography" Version="2.6.2" />

CompressedData

public class CompressedData : Asn1Encodable
using Org.BouncyCastle.Asn1.X509; using System; namespace Org.BouncyCastle.Asn1.Cms { public class CompressedData : Asn1Encodable { private readonly DerInteger m_version; private readonly AlgorithmIdentifier m_compressionAlgorithm; private readonly ContentInfo m_encapContentInfo; public DerInteger Version => m_version; public AlgorithmIdentifier CompressionAlgorithmIdentifier => m_compressionAlgorithm; public ContentInfo EncapContentInfo => m_encapContentInfo; public static CompressedData GetInstance(object obj) { if (obj == null) return null; CompressedData compressedData = obj as CompressedData; if (compressedData != null) return compressedData; return new CompressedData(Asn1Sequence.GetInstance(obj)); } public static CompressedData GetInstance(Asn1TaggedObject ato, bool explicitly) { return new CompressedData(Asn1Sequence.GetInstance(ato, explicitly)); } public static CompressedData GetTagged(Asn1TaggedObject taggedObject, bool declaredExplicit) { return new CompressedData(Asn1Sequence.GetTagged(taggedObject, declaredExplicit)); } public CompressedData(AlgorithmIdentifier compressionAlgorithm, ContentInfo encapContentInfo) { m_version = DerInteger.Zero; if (compressionAlgorithm == null) throw new ArgumentNullException("compressionAlgorithm"); m_compressionAlgorithm = compressionAlgorithm; if (encapContentInfo == null) throw new ArgumentNullException("encapContentInfo"); m_encapContentInfo = encapContentInfo; } [Obsolete("Use 'GetInstance' instead")] public CompressedData(Asn1Sequence seq) { int count = seq.Count; if (count != 3) throw new ArgumentException("Bad sequence size: " + count.ToString(), "seq"); m_version = DerInteger.GetInstance(seq[0]); m_compressionAlgorithm = AlgorithmIdentifier.GetInstance(seq[1]); m_encapContentInfo = ContentInfo.GetInstance(seq[2]); } public override Asn1Object ToAsn1Object() { return new BerSequence(m_version, m_compressionAlgorithm, m_encapContentInfo); } } }