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 */ 95db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Rootpublic interface 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. 155db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root * @param k The factor by which <code>p</code> is multiplied. 168212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom * @return <code>p</code> multiplied by <code>k</code>. 178212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom */ 185db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root ECPoint multiply(ECPoint p, BigInteger k); 198212855a312dc8ebe081a3e08b1d2d8f8757af02Brian Carlstrom} 20