Package org.bitcoinj.crypto
Class LazyECPoint
java.lang.Object
org.bitcoinj.crypto.LazyECPoint
A wrapper around a SECP256K1 ECPoint that delays decoding of the point for as long as possible. This is useful because point
 encode/decode in Bouncy Castle is quite slow especially on Dalvik, as it often involves decompression/recompression.
- 
Constructor Summary
ConstructorsConstructorDescriptionLazyECPoint(byte[] bits) Construct a LazyECPoint from a public key.LazyECPoint(org.bouncycastle.math.ec.ECCurve curve, byte[] bits) Deprecated.LazyECPoint(org.bouncycastle.math.ec.ECPoint point, boolean compressed) Construct a LazyECPoint from an already decoded point. - 
Method Summary
Modifier and TypeMethodDescriptionorg.bouncycastle.math.ec.ECPointadd(org.bouncycastle.math.ec.ECPoint b) compress()Returns a compressed version of this elliptic curve point.Returns a decompressed version of this elliptic curve point.booleanbooleanequals(org.bouncycastle.math.ec.ECPoint other) org.bouncycastle.math.ec.ECPointget()org.bouncycastle.math.ec.ECFieldElementorg.bouncycastle.math.ec.ECFieldElementorg.bouncycastle.math.ec.ECCurvegetCurve()org.bouncycastle.math.ec.ECPointbyte[]byte[]getEncoded(boolean compressed) org.bouncycastle.math.ec.ECFieldElementgetX()org.bouncycastle.math.ec.ECFieldElementorg.bouncycastle.math.ec.ECFieldElementgetY()org.bouncycastle.math.ec.ECFieldElementorg.bouncycastle.math.ec.ECFieldElementgetZCoord(int index) org.bouncycastle.math.ec.ECFieldElement[]inthashCode()booleanbooleanbooleanbooleanisValid()org.bouncycastle.math.ec.ECPointorg.bouncycastle.math.ec.ECPointnegate()org.bouncycastle.math.ec.ECPointorg.bouncycastle.math.ec.ECPointscaleX(org.bouncycastle.math.ec.ECFieldElement scale) org.bouncycastle.math.ec.ECPointscaleY(org.bouncycastle.math.ec.ECFieldElement scale) org.bouncycastle.math.ec.ECPointsubtract(org.bouncycastle.math.ec.ECPoint b) org.bouncycastle.math.ec.ECPointorg.bouncycastle.math.ec.ECPointtimesPow2(int e) org.bouncycastle.math.ec.ECPointtwice()org.bouncycastle.math.ec.ECPointtwicePlus(org.bouncycastle.math.ec.ECPoint b)  
- 
Constructor Details
- 
LazyECPoint
public LazyECPoint(byte[] bits) Construct a LazyECPoint from a public key. Due to the delayed decoding of the point the validation of the public key is delayed too, e.g. until a getter is called.- Parameters:
 bits- public key bytes
 - 
LazyECPoint
Deprecated.Construct a LazyECPoint from a public key. Due to the delayed decoding of the point the validation of the public key is delayed too, e.g. until a getter is called.- Parameters:
 curve- a curve the point is onbits- public key bytes
 - 
LazyECPoint
public LazyECPoint(org.bouncycastle.math.ec.ECPoint point, boolean compressed) Construct a LazyECPoint from an already decoded point.- Parameters:
 point- the wrapped pointcompressed- true if the represented public key is compressed
 
 - 
 - 
Method Details
- 
compress
Returns a compressed version of this elliptic curve point. Returns the same point if it's already compressed. See theECKeyclass docs for a discussion of point compression. - 
decompress
Returns a decompressed version of this elliptic curve point. Returns the same point if it's already compressed. See theECKeyclass docs for a discussion of point compression. - 
get
public org.bouncycastle.math.ec.ECPoint get() - 
getEncoded
public byte[] getEncoded() - 
getDetachedPoint
public org.bouncycastle.math.ec.ECPoint getDetachedPoint() - 
isInfinity
public boolean isInfinity() - 
timesPow2
public org.bouncycastle.math.ec.ECPoint timesPow2(int e)  - 
getYCoord
public org.bouncycastle.math.ec.ECFieldElement getYCoord() - 
getZCoords
public org.bouncycastle.math.ec.ECFieldElement[] getZCoords() - 
isNormalized
public boolean isNormalized() - 
isCompressed
public boolean isCompressed() - 
multiply
 - 
subtract
public org.bouncycastle.math.ec.ECPoint subtract(org.bouncycastle.math.ec.ECPoint b)  - 
isValid
public boolean isValid() - 
scaleY
public org.bouncycastle.math.ec.ECPoint scaleY(org.bouncycastle.math.ec.ECFieldElement scale)  - 
getXCoord
public org.bouncycastle.math.ec.ECFieldElement getXCoord() - 
scaleX
public org.bouncycastle.math.ec.ECPoint scaleX(org.bouncycastle.math.ec.ECFieldElement scale)  - 
equals
public boolean equals(org.bouncycastle.math.ec.ECPoint other)  - 
negate
public org.bouncycastle.math.ec.ECPoint negate() - 
threeTimes
public org.bouncycastle.math.ec.ECPoint threeTimes() - 
getZCoord
public org.bouncycastle.math.ec.ECFieldElement getZCoord(int index)  - 
getEncoded
public byte[] getEncoded(boolean compressed)  - 
add
public org.bouncycastle.math.ec.ECPoint add(org.bouncycastle.math.ec.ECPoint b)  - 
twicePlus
public org.bouncycastle.math.ec.ECPoint twicePlus(org.bouncycastle.math.ec.ECPoint b)  - 
getCurve
public org.bouncycastle.math.ec.ECCurve getCurve() - 
normalize
public org.bouncycastle.math.ec.ECPoint normalize() - 
getY
public org.bouncycastle.math.ec.ECFieldElement getY() - 
twice
public org.bouncycastle.math.ec.ECPoint twice() - 
getAffineYCoord
public org.bouncycastle.math.ec.ECFieldElement getAffineYCoord() - 
getAffineXCoord
public org.bouncycastle.math.ec.ECFieldElement getAffineXCoord() - 
getX
public org.bouncycastle.math.ec.ECFieldElement getX() - 
equals
 - 
hashCode
public int hashCode() 
 - 
 
LazyECPoint(byte[])