<PackageReference Include="SSH.NET" Version="2020.0.0-beta1" />

AbstractECMultiplier

namespace Renci.SshNet.Security.Org.BouncyCastle.Math.EC.Multiplier { internal abstract class AbstractECMultiplier : ECMultiplier { public virtual ECPoint Multiply(ECPoint p, BigInteger k) { int signValue = k.SignValue; if (signValue == 0 || p.IsInfinity) return p.Curve.Infinity; ECPoint eCPoint = MultiplyPositive(p, k.Abs()); ECPoint p2 = (signValue > 0) ? eCPoint : eCPoint.Negate(); return CheckResult(p2); } protected abstract ECPoint MultiplyPositive(ECPoint p, BigInteger k); protected virtual ECPoint CheckResult(ECPoint p) { return ECAlgorithms.ImplCheckResult(p); } } }