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

Renci.SshNet.Security.Org.BouncyCastle.Math.EC.Abc.Tnaf

class Tnaf
namespace Renci.SshNet.Security.Org.BouncyCastle.Math.EC.Abc { internal class Tnaf { public const sbyte Width = 4; public const sbyte Pow2Width = 16; public static readonly ZTauElement[] Alpha0; public static readonly sbyte[][] Alpha0Tnaf; public static readonly ZTauElement[] Alpha1; public static readonly sbyte[][] Alpha1Tnaf; public static BigInteger Norm(sbyte mu, ZTauElement lambda); public static SimpleBigDecimal Norm(sbyte mu, SimpleBigDecimal u, SimpleBigDecimal v); public static ZTauElement Round(SimpleBigDecimal lambda0, SimpleBigDecimal lambda1, sbyte mu); public static SimpleBigDecimal ApproximateDivisionByN(BigInteger k, BigInteger s, BigInteger vm, sbyte a, int m, int c); public static sbyte[] TauAdicNaf(sbyte mu, ZTauElement lambda); public static AbstractF2mPoint Tau(AbstractF2mPoint p); public static sbyte GetMu(AbstractF2mCurve curve); public static sbyte GetMu(ECFieldElement curveA); public static sbyte GetMu(int curveA); public static BigInteger[] GetLucas(sbyte mu, int k, bool doV); public static BigInteger GetTw(sbyte mu, int w); public static BigInteger[] GetSi(AbstractF2mCurve curve); public static BigInteger[] GetSi(int fieldSize, int curveA, BigInteger cofactor); protected static int GetShiftsForCofactor(BigInteger h); public static ZTauElement PartModReduction(BigInteger k, int m, sbyte a, BigInteger[] s, sbyte mu, sbyte c); public static AbstractF2mPoint MultiplyRTnaf(AbstractF2mPoint p, BigInteger k); public static AbstractF2mPoint MultiplyTnaf(AbstractF2mPoint p, ZTauElement lambda); public static AbstractF2mPoint MultiplyFromTnaf(AbstractF2mPoint p, sbyte[] u); public static sbyte[] TauAdicWNaf(sbyte mu, ZTauElement lambda, sbyte width, BigInteger pow2w, BigInteger tw, ZTauElement[] alpha); public static AbstractF2mPoint[] GetPreComp(AbstractF2mPoint p, sbyte a); public Tnaf(); } }