private AttributeCertificateInfo(Asn1Sequence seq)
 {
     if (seq.Count < 7 || seq.Count > 9)
     {
         throw new ArgumentException("Bad sequence size: " + seq.Count);
     }
     version                = DerInteger.GetInstance(seq[0]);
     holder                 = Holder.GetInstance(seq[1]);
     issuer                 = AttCertIssuer.GetInstance(seq[2]);
     signature              = AlgorithmIdentifier.GetInstance(seq[3]);
     serialNumber           = DerInteger.GetInstance(seq[4]);
     attrCertValidityPeriod = AttCertValidityPeriod.GetInstance(seq[5]);
     attributes             = Asn1Sequence.GetInstance(seq[6]);
     for (int i = 7; i < seq.Count; i++)
     {
         Asn1Encodable asn1Encodable = seq[i];
         if (asn1Encodable is DerBitString)
         {
             issuerUniqueID = DerBitString.GetInstance(seq[i]);
         }
         else if (asn1Encodable is Asn1Sequence || asn1Encodable is X509Extensions)
         {
             extensions = X509Extensions.GetInstance(seq[i]);
         }
     }
 }
 /// <summary>Set the issuer.</summary>
 public void SetIssuer(
     AttributeCertificateIssuer issuer)
 {
     acInfoGen.SetIssuer(AttCertIssuer.GetInstance(issuer.form));
 }
Exemple #3
0
 public object Clone()
 {
     return(new AttributeCertificateIssuer(AttCertIssuer.GetInstance(form)));
 }