Org.BouncyCastle.Asn1.Cms.EnvelopedData.CalculateVersion C# (CSharp) Method

CalculateVersion() public static method

public static CalculateVersion ( OriginatorInfo originatorInfo, Asn1Set recipientInfos, Asn1Set unprotectedAttrs ) : int
originatorInfo OriginatorInfo
recipientInfos Org.BouncyCastle.Asn1.Asn1Set
unprotectedAttrs Org.BouncyCastle.Asn1.Asn1Set
return int
        public static int CalculateVersion(OriginatorInfo originatorInfo, Asn1Set recipientInfos, Asn1Set unprotectedAttrs)
        {
            if (originatorInfo != null || unprotectedAttrs != null)
            {
                return 2;
            }

            foreach (object o in recipientInfos)
            {
                RecipientInfo ri = RecipientInfo.GetInstance(o);

                if (ri.Version.Value.IntValue != 0)
                {
                    return 2;
                }
            }

            return 0;
        }
    }

Usage Example

Ejemplo n.º 1
0
 public EnvelopedData(OriginatorInfo originatorInfo, Asn1Set recipientInfos, EncryptedContentInfo encryptedContentInfo, Attributes unprotectedAttrs)
 {
     this.version              = new DerInteger(EnvelopedData.CalculateVersion(originatorInfo, recipientInfos, Asn1Set.GetInstance(unprotectedAttrs)));
     this.originatorInfo       = originatorInfo;
     this.recipientInfos       = recipientInfos;
     this.encryptedContentInfo = encryptedContentInfo;
     this.unprotectedAttrs     = Asn1Set.GetInstance(unprotectedAttrs);
 }