Class WNafUtil


  • public abstract class WNafUtil
    extends java.lang.Object
    • Constructor Detail

      • WNafUtil

        public WNafUtil()
    • Method Detail

      • generateCompactNaf

        public static int[] generateCompactNaf​(java.math.BigInteger k)
      • generateCompactWindowNaf

        public static int[] generateCompactWindowNaf​(int width,
                                                     java.math.BigInteger k)
      • generateJSF

        public static byte[] generateJSF​(java.math.BigInteger g,
                                         java.math.BigInteger h)
      • generateNaf

        public static byte[] generateNaf​(java.math.BigInteger k)
      • generateWindowNaf

        public static byte[] generateWindowNaf​(int width,
                                               java.math.BigInteger k)
        Computes the Window NAF (non-adjacent Form) of an integer.
        Parameters:
        width - The width w of the Window NAF. The width is defined as the minimal number w, such that for any w consecutive digits in the resulting representation, at most one is non-zero.
        k - The integer of which the Window NAF is computed.
        Returns:
        The Window NAF of the given width, such that the following holds: k = ∑i=0l-1 ki2i , where the ki denote the elements of the returned byte[].
      • getNafWeight

        public static int getNafWeight​(java.math.BigInteger k)
      • getWindowSize

        public static int getWindowSize​(int bits)
        Determine window width to use for a scalar multiplication of the given size.
        Parameters:
        bits - the bit-length of the scalar to multiply by
        Returns:
        the window size to use
      • getWindowSize

        public static int getWindowSize​(int bits,
                                        int[] windowSizeCutoffs)
        Determine window width to use for a scalar multiplication of the given size.
        Parameters:
        bits - the bit-length of the scalar to multiply by
        windowSizeCutoffs - a monotonically increasing list of bit sizes at which to increment the window width
        Returns:
        the window size to use
      • mapPointWithPrecomp

        public static ECPoint mapPointWithPrecomp​(ECPoint p,
                                                  int width,
                                                  boolean includeNegated,
                                                  ECPointMap pointMap)