kz.gamma.hardware.crypto.software.ec
Class ECPoint

java.lang.Object
  extended by kz.gamma.hardware.crypto.software.ec.ECPoint
Direct Known Subclasses:
ECPoint.F2m, ECPoint.Fp

public abstract class ECPoint
extends java.lang.Object

base class for points on elliptic curves.


Nested Class Summary
static class ECPoint.F2m
          Elliptic curve points over F2m
static class ECPoint.Fp
          Elliptic curve points over Fp
 
Field Summary
private static X9IntegerConverter converter
           
(package private)  ECCurve curve
           
protected  ECMultiplier multiplier
           
protected  PreCompInfo preCompInfo
           
protected  boolean withCompression
           
(package private)  ECFieldElement x
           
(package private)  ECFieldElement y
           
 
Constructor Summary
protected ECPoint(ECCurve curve, ECFieldElement x, ECFieldElement y)
           
 
Method Summary
abstract  ECPoint add(ECPoint b)
           
(package private)  void assertECMultiplier()
          Sets the default ECMultiplier, unless already set.
 boolean equals(java.lang.Object other)
           
 ECCurve getCurve()
           
abstract  byte[] getEncoded()
           
 ECFieldElement getX()
           
 ECFieldElement getY()
           
 int hashCode()
           
 boolean isCompressed()
           
 boolean isInfinity()
           
 ECPoint multiply(java.math.BigInteger k)
          Multiplies this ECPoint by the given number.
abstract  ECPoint negate()
           
(package private)  void setPreCompInfo(PreCompInfo preCompInfo)
          Sets the PreCompInfo.
abstract  ECPoint subtract(ECPoint b)
           
abstract  ECPoint twice()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

curve

ECCurve curve

x

ECFieldElement x

y

ECFieldElement y

withCompression

protected boolean withCompression

multiplier

protected ECMultiplier multiplier

preCompInfo

protected PreCompInfo preCompInfo

converter

private static X9IntegerConverter converter
Constructor Detail

ECPoint

protected ECPoint(ECCurve curve,
                  ECFieldElement x,
                  ECFieldElement y)
Method Detail

getCurve

public ECCurve getCurve()

getX

public ECFieldElement getX()

getY

public ECFieldElement getY()

isInfinity

public boolean isInfinity()

isCompressed

public boolean isCompressed()

equals

public boolean equals(java.lang.Object other)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

setPreCompInfo

void setPreCompInfo(PreCompInfo preCompInfo)
Sets the PreCompInfo. Used by ECMultipliers to save the precomputation for this ECPoint to store the precomputation result for use by subsequent multiplication.

Parameters:
preCompInfo - The values precomputed by the ECMultiplier.

getEncoded

public abstract byte[] getEncoded()

add

public abstract ECPoint add(ECPoint b)

subtract

public abstract ECPoint subtract(ECPoint b)

negate

public abstract ECPoint negate()

twice

public abstract ECPoint twice()

assertECMultiplier

void assertECMultiplier()
Sets the default ECMultiplier, unless already set.


multiply

public ECPoint multiply(java.math.BigInteger k)
Multiplies this ECPoint by the given number.

Parameters:
k - The multiplicator.
Returns:
k * this.


Copyright © 2013 Gamma Technologies. All Rights Reserved.