GetInstance() public static method

public static GetInstance ( Asn1TaggedObject obj, bool isExplicit ) : ContentInfo
obj Org.BouncyCastle.Asn1.Asn1TaggedObject
isExplicit bool
return ContentInfo
Esempio n. 1
0
        private AuthenticatedData(
            Asn1Sequence seq)
        {
            int index = 0;

            version = (DerInteger)seq[index++];

            Asn1Encodable tmp = seq[index++];

            if (tmp is Asn1TaggedObject)
            {
                originatorInfo = OriginatorInfo.GetInstance((Asn1TaggedObject)tmp, false);
                tmp            = seq[index++];
            }

            recipientInfos = Asn1Set.GetInstance(tmp);
            macAlgorithm   = AlgorithmIdentifier.GetInstance(seq[index++]);

            tmp = seq[index++];
            if (tmp is Asn1TaggedObject)
            {
                digestAlgorithm = AlgorithmIdentifier.GetInstance((Asn1TaggedObject)tmp, false);
                tmp             = seq[index++];
            }

            encapsulatedContentInfo = ContentInfo.GetInstance(tmp);

            tmp = seq[index++];
            if (tmp is Asn1TaggedObject)
            {
                authAttrs = Asn1Set.GetInstance((Asn1TaggedObject)tmp, false);
                tmp       = seq[index++];
            }

            mac = Asn1OctetString.GetInstance(tmp);

            if (seq.Count > index)
            {
                unauthAttrs = Asn1Set.GetInstance((Asn1TaggedObject)seq[index], false);
            }
        }
Esempio n. 2
0
        private SignedData(Asn1Sequence seq)
        {
            IEnumerator enumerator = seq.GetEnumerator();

            enumerator.MoveNext();
            this.version = (DerInteger)enumerator.Current;
            enumerator.MoveNext();
            this.digestAlgorithms = (Asn1Set)enumerator.Current;
            enumerator.MoveNext();
            this.contentInfo = ContentInfo.GetInstance(enumerator.Current);
            while (enumerator.MoveNext())
            {
                Asn1Object asn1Object = (Asn1Object)enumerator.Current;
                if (asn1Object is Asn1TaggedObject)
                {
                    Asn1TaggedObject asn1TaggedObject = (Asn1TaggedObject)asn1Object;
                    switch (asn1TaggedObject.TagNo)
                    {
                    case 0:
                        this.certsBer     = (asn1TaggedObject is BerTaggedObject);
                        this.certificates = Asn1Set.GetInstance(asn1TaggedObject, false);
                        break;

                    case 1:
                        this.crlsBer = (asn1TaggedObject is BerTaggedObject);
                        this.crls    = Asn1Set.GetInstance(asn1TaggedObject, false);
                        break;

                    default:
                        throw new ArgumentException("unknown tag value " + asn1TaggedObject.TagNo);
                    }
                }
                else
                {
                    this.signerInfos = (Asn1Set)asn1Object;
                }
            }
        }
Esempio n. 3
0
        private SignedData(Asn1Sequence seq)
        {
            //IL_00dd: Unknown result type (might be due to invalid IL or missing references)
            global::System.Collections.IEnumerator enumerator = seq.GetEnumerator();
            enumerator.MoveNext();
            version = (DerInteger)enumerator.get_Current();
            enumerator.MoveNext();
            digestAlgorithms = (Asn1Set)enumerator.get_Current();
            enumerator.MoveNext();
            contentInfo = ContentInfo.GetInstance(enumerator.get_Current());
            while (enumerator.MoveNext())
            {
                Asn1Object asn1Object = (Asn1Object)enumerator.get_Current();
                if (asn1Object is Asn1TaggedObject)
                {
                    Asn1TaggedObject asn1TaggedObject = (Asn1TaggedObject)asn1Object;
                    switch (asn1TaggedObject.TagNo)
                    {
                    case 0:
                        certsBer     = asn1TaggedObject is BerTaggedObject;
                        certificates = Asn1Set.GetInstance(asn1TaggedObject, explicitly: false);
                        break;

                    case 1:
                        crlsBer = asn1TaggedObject is BerTaggedObject;
                        crls    = Asn1Set.GetInstance(asn1TaggedObject, explicitly: false);
                        break;

                    default:
                        throw new ArgumentException(string.Concat((object)"unknown tag value ", (object)asn1TaggedObject.TagNo));
                    }
                }
                else
                {
                    signerInfos = (Asn1Set)asn1Object;
                }
            }
        }
Esempio n. 4
0
 public CompressedData(Asn1Sequence seq)
 {
     version = (DerInteger)seq[0];
     compressionAlgorithm = AlgorithmIdentifier.GetInstance(seq[1]);
     encapContentInfo     = ContentInfo.GetInstance(seq[2]);
 }
Esempio n. 5
0
		public static ContentInfo GetInstance(Asn1TaggedObject obj, bool isExplicit)
		{
			return ContentInfo.GetInstance(Asn1Sequence.GetInstance(obj, isExplicit));
		}