<PackageReference Include="BouncyCastle.Cryptography" Version="2.7.0-beta.98" />

DHValidationParms

using System; namespace Org.BouncyCastle.Asn1.X9 { public class DHValidationParms : Asn1Encodable { private readonly DerBitString m_seed; private readonly DerInteger m_pgenCounter; public DerBitString Seed => m_seed; public DerInteger PgenCounter => m_pgenCounter; public static DHValidationParms GetInstance(object obj) { if (obj == null) return null; DHValidationParms dHValidationParms = obj as DHValidationParms; if (dHValidationParms != null) return dHValidationParms; return new DHValidationParms(Asn1Sequence.GetInstance(obj)); } public static DHValidationParms GetInstance(Asn1TaggedObject obj, bool isExplicit) { return new DHValidationParms(Asn1Sequence.GetInstance(obj, isExplicit)); } public static DHValidationParms GetOptional(Asn1Encodable element) { if (element == null) throw new ArgumentNullException("element"); DHValidationParms dHValidationParms = element as DHValidationParms; if (dHValidationParms != null) return dHValidationParms; Asn1Sequence optional = Asn1Sequence.GetOptional(element); if (optional != null) return new DHValidationParms(optional); return null; } public static DHValidationParms GetTagged(Asn1TaggedObject taggedObject, bool declaredExplicit) { return new DHValidationParms(Asn1Sequence.GetTagged(taggedObject, declaredExplicit)); } private DHValidationParms(Asn1Sequence seq) { int count = seq.Count; if (count != 2) throw new ArgumentException("Bad sequence size: " + count.ToString(), "seq"); m_seed = DerBitString.GetInstance(seq[0]); m_pgenCounter = DerInteger.GetInstance(seq[1]); } public DHValidationParms(DerBitString seed, DerInteger pgenCounter) { if (seed == null) throw new ArgumentNullException("seed"); m_seed = seed; if (pgenCounter == null) throw new ArgumentNullException("pgenCounter"); m_pgenCounter = pgenCounter; } public override Asn1Object ToAsn1Object() { return new DerSequence(m_seed, m_pgenCounter); } } }