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

X962Parameters

using System; namespace Org.BouncyCastle.Asn1.X9 { public class X962Parameters : Asn1Encodable, IAsn1Choice { private readonly Asn1Object _params; public bool IsNamedCurve => _params is DerObjectIdentifier; public bool IsImplicitlyCA => _params is Asn1Null; public Asn1Object Parameters => _params; public static X962Parameters GetInstance(object obj) { if (obj == null) return null; X962Parameters x962Parameters = obj as X962Parameters; if (x962Parameters != null) return x962Parameters; Asn1Object asn1Object = obj as Asn1Object; if (asn1Object != null) return new X962Parameters(asn1Object); byte[] array = obj as byte[]; if (array != null) try { return new X962Parameters(Asn1Object.FromByteArray(array)); } catch (Exception ex) { throw new ArgumentException("unable to parse encoded data: " + ex.Message, ex); } throw new ArgumentException("unknown object in GetInstance()"); } public static X962Parameters GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) { return Asn1Utilities.GetInstanceFromChoice(taggedObject, declaredExplicit, GetInstance); } public X962Parameters(X9ECParameters ecParameters) { _params = ecParameters.ToAsn1Object(); } public X962Parameters(DerObjectIdentifier namedCurve) { _params = namedCurve; } public X962Parameters(Asn1Null obj) { _params = obj; } private X962Parameters(Asn1Object obj) { _params = obj; } public override Asn1Object ToAsn1Object() { return _params; } } }