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

SubjectDirectoryAttributes

using Org.BouncyCastle.Utilities.Collections; using System.Collections.Generic; namespace Org.BouncyCastle.Asn1.X509 { public class SubjectDirectoryAttributes : Asn1Encodable { private readonly List<AttributeX509> m_attributes; public IEnumerable<AttributeX509> Attributes => CollectionUtilities.Proxy(m_attributes); public static SubjectDirectoryAttributes GetInstance(object obj) { if (obj == null) return null; SubjectDirectoryAttributes subjectDirectoryAttributes = obj as SubjectDirectoryAttributes; if (subjectDirectoryAttributes != null) return subjectDirectoryAttributes; return new SubjectDirectoryAttributes(Asn1Sequence.GetInstance(obj)); } private SubjectDirectoryAttributes(Asn1Sequence seq) { m_attributes = new List<AttributeX509>(); foreach (Asn1Encodable item in seq) { Asn1Sequence instance = Asn1Sequence.GetInstance(item); m_attributes.Add(AttributeX509.GetInstance(instance)); } } public SubjectDirectoryAttributes(IList<AttributeX509> attributes) { m_attributes = new List<AttributeX509>(attributes); } public override Asn1Object ToAsn1Object() { Asn1Encodable[] elements = m_attributes.ToArray(); return new DerSequence(elements); } } }