18212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrompackage org.bouncycastle.math.ec; 28212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom 38212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstromimport java.math.BigInteger; 48212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom 58212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom/** 68212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom * Interface for classes encapsulating a point multiplication algorithm 78212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom * for <code>ECPoint</code>s. 88212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom */ 98212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrominterface ECMultiplier 108212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom{ 118212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom /** 128212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom * Multiplies the <code>ECPoint p</code> by <code>k</code>, i.e. 138212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom * <code>p</code> is added <code>k</code> times to itself. 148212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom * @param p The <code>ECPoint</code> to be multiplied. 158212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom * @param k The factor by which <code>p</code> i multiplied. 168212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom * @return <code>p</code> multiplied by <code>k</code>. 178212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom */ 188212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom ECPoint multiply(ECPoint p, BigInteger k, PreCompInfo preCompInfo); 198212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom} 20