<PackageReference Include="SSH.NET" Version="2024.1.0" />

X9ECPoint

class X9ECPoint
using Renci.SshNet.Security.Org.BouncyCastle.Math.EC; using Renci.SshNet.Security.Org.BouncyCastle.Utilities; namespace Renci.SshNet.Security.Org.BouncyCastle.Asn1.X9 { internal class X9ECPoint { private readonly byte[] encoding; private ECCurve c; private ECPoint p; public ECPoint Point { get { if (p == null) p = c.DecodePoint(encoding).Normalize(); return p; } } public bool IsPointCompressed { get { byte[] array = encoding; if (array != null && array.Length != 0) { if (array[0] != 2) return array[0] == 3; return true; } return false; } } public X9ECPoint(ECPoint p) : this(p, false) { } public X9ECPoint(ECPoint p, bool compressed) { this.p = p.Normalize(); encoding = p.GetEncoded(compressed); } public X9ECPoint(ECCurve c, byte[] encoding) { this.c = c; this.encoding = Arrays.Clone(encoding); } public byte[] GetPointEncoding() { return Arrays.Clone(encoding); } } }