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

UserNotice

public class UserNotice : Asn1Encodable
using System; namespace Org.BouncyCastle.Asn1.X509 { public class UserNotice : Asn1Encodable { private readonly NoticeReference m_noticeRef; private readonly DisplayText m_explicitText; public virtual NoticeReference NoticeRef => m_noticeRef; public virtual DisplayText ExplicitText => m_explicitText; public static UserNotice GetInstance(object obj) { if (obj == null) return null; UserNotice userNotice = obj as UserNotice; if (userNotice != null) return userNotice; return new UserNotice(Asn1Sequence.GetInstance(obj)); } public static UserNotice GetInstance(Asn1TaggedObject obj, bool explicitly) { return new UserNotice(Asn1Sequence.GetInstance(obj, explicitly)); } public static UserNotice GetTagged(Asn1TaggedObject taggedObject, bool declaredExplicit) { return new UserNotice(Asn1Sequence.GetTagged(taggedObject, declaredExplicit)); } private UserNotice(Asn1Sequence seq) { int count = seq.Count; int sequencePosition = 0; if (count < 0 || count > 2) throw new ArgumentException("Bad sequence size: " + count.ToString(), "seq"); m_noticeRef = Asn1Utilities.ReadOptional(seq, ref sequencePosition, NoticeReference.GetOptional); m_explicitText = Asn1Utilities.ReadOptional(seq, ref sequencePosition, DisplayText.GetOptional); if (sequencePosition != count) throw new ArgumentException("Unexpected elements in sequence", "seq"); } public UserNotice(NoticeReference noticeRef, DisplayText explicitText) { m_noticeRef = noticeRef; m_explicitText = explicitText; } public UserNotice(NoticeReference noticeRef, string str) : this(noticeRef, new DisplayText(str)) { } public override Asn1Object ToAsn1Object() { Asn1EncodableVector asn1EncodableVector = new Asn1EncodableVector(2); asn1EncodableVector.AddOptional(m_noticeRef, m_explicitText); return new DerSequence(asn1EncodableVector); } } }