예제 #1
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 = Org.BouncyCastle.Asn1.Pkcs.ContentInfo.GetInstance(enumerator.Current);
            while (enumerator.MoveNext())
            {
                Asn1Object current = (Asn1Object)enumerator.Current;
                if (current is DerTaggedObject)
                {
                    DerTaggedObject obj3 = (DerTaggedObject)current;
                    switch (obj3.TagNo)
                    {
                    case 0:
                    {
                        this.certificates = Asn1Set.GetInstance(obj3, false);
                        continue;
                    }

                    case 1:
                    {
                        this.crls = Asn1Set.GetInstance(obj3, false);
                        continue;
                    }
                    }
                    throw new ArgumentException("unknown tag value " + obj3.TagNo);
                }
                this.signerInfos = (Asn1Set)current;
            }
        }
예제 #2
0
 public SignedData(DerInteger _version, Asn1Set _digestAlgorithms, Org.BouncyCastle.Asn1.Pkcs.ContentInfo _contentInfo, Asn1Set _certificates, Asn1Set _crls, Asn1Set _signerInfos)
 {
     this.version          = _version;
     this.digestAlgorithms = _digestAlgorithms;
     this.contentInfo      = _contentInfo;
     this.certificates     = _certificates;
     this.crls             = _crls;
     this.signerInfos      = _signerInfos;
 }