Bouncy Castle Cryptography 1.50

org.bouncycastle.math.ec
Class WNafUtil

java.lang.Object
  extended by org.bouncycastle.math.ec.WNafUtil

public abstract class WNafUtil
extends java.lang.Object


Constructor Summary
WNafUtil()
           
 
Method Summary
static int[] generateCompactNaf(java.math.BigInteger k)
           
static int[] generateCompactWindowNaf(int width, java.math.BigInteger k)
           
static byte[] generateJSF(java.math.BigInteger g, java.math.BigInteger h)
           
static byte[] generateNaf(java.math.BigInteger k)
           
static byte[] generateWindowNaf(int width, java.math.BigInteger k)
          Computes the Window NAF (non-adjacent Form) of an integer.
static int getWindowSize(int bits)
          Determine window width to use for a scalar multiplication of the given size.
static int getWindowSize(int bits, int[] windowSizeCutoffs)
          Determine window width to use for a scalar multiplication of the given size.
static WNafPreCompInfo getWNafPreCompInfo(PreCompInfo preCompInfo)
           
static WNafPreCompInfo precompute(ECPoint p, int width, boolean includeNegated)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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[].

getWNafPreCompInfo

public static WNafPreCompInfo getWNafPreCompInfo(PreCompInfo preCompInfo)

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

precompute

public static WNafPreCompInfo precompute(ECPoint p,
                                         int width,
                                         boolean includeNegated)

Bouncy Castle Cryptography 1.50