Top Fields Constructors Methods
org.bouncycastle.math.ec

pack-priv Class LongArray

extends Object
implements Cloneable
Class Inheritance
All Implemented Interfaces
java.lang.Cloneable
Imports
org.bouncycastle.util.Arrays, java.math.BigInteger

Field Summary

Modifier and TypeField and Description
pack-priv static final byte[]
private static final short[]
private static final int[]
private static final int[]
private static final int[]
private static final long[]
private long[]
private static final String

Constructor Summary

AccessConstructor and Description
public
LongArray(int intLen)

public
LongArray(long[] ints)

public
LongArray(long[] ints, int off, int len)

public

Method Summary

Modifier and TypeMethod and Description
private static void
add(long[] x, int xOff, long[] y, int yOff, int count)

private static void
add(long[] x, int xOff, long[] y, int yOff, long[] z, int zOff, int count)

private static void
addBoth(long[] x, int xOff, long[] y1, int y1Off, long[] y2, int y2Off, int count)

public LongArray
private void
addShiftedByBitsSafe(LongArray other, int otherDegree, int bits)

public void
addShiftedByWords(LongArray other, int words)

private static long
addShiftedDown(long[] x, int xOff, long[] y, int yOff, int count, int shift)

private static long
addShiftedUp(long[] x, int xOff, long[] y, int yOff, int count, int shift)

private static int
bitLength(long w)

public Object
clone()

Overrides java.lang.Object.clone.

Creates and returns a copy of this object.
pack-priv void
copyTo(long[] z, int zOff)

public int
private int
degreeFrom(int limit)

private static void
distribute(long[] x, int src, int dst1, int dst2, int count)

public boolean
equals(Object
the reference object with which to compare.
o
)

Overrides java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.
private static void
flipBit(long[] buf, int off, int n)

private static void
flipVector(long[] x, int xOff, long[] y, int yOff, int yLen, int bits)

private static void
flipWord(long[] buf, int off, int bit, long word)

public int
public int
public int
public int
hashCode()

Overrides java.lang.Object.hashCode.

Returns a hash code value for the object.
private static void
interleave(long[] x, int xOff, long[] z, int zOff, int count, int width)

private static long
private static void
interleave2_n(long[] x, int xOff, long[] z, int zOff, int count, int rounds)

private static long
interleave2_n(long x, int rounds)

private static void
interleave3(long[] x, int xOff, long[] z, int zOff, int count)

private static long
interleave3(long x)

private static long
private static long
private static long
private static void
interleave5(long[] x, int xOff, long[] z, int zOff, int count)

private static long
interleave5(long x)

private static void
interleave7(long[] x, int xOff, long[] z, int zOff, int count)

private static long
interleave7(long x)

public boolean
public boolean
public LongArray
modInverse(int m, int[] ks)

public LongArray
modMultiply(LongArray other, int m, int[] ks)

public LongArray
modMultiplyAlt(LongArray other, int m, int[] ks)

public LongArray
modMultiplyLD(LongArray other, int m, int[] ks)

public LongArray
modReduce(int m, int[] ks)

public LongArray
modSquare(int m, int[] ks)

public LongArray
modSquareN(int n, int m, int[] ks)

public LongArray
multiply(LongArray other, int m, int[] ks)

private static void
multiplyWord(long a, long[] b, int bLen, long[] c, int cOff)

public void
reduce(int m, int[] ks)

private static void
reduceBit(long[] buf, int off, int bit, int m, int[] ks)

private static void
reduceBitWise(long[] buf, int off, int bitlength, int m, int[] ks)

private static int
reduceInPlace(long[] buf, int off, int len, int m, int[] ks)

private static LongArray
reduceResult(long[] buf, int off, int len, int m, int[] ks)

private static void
reduceVectorWise(long[] buf, int off, int len, int words, int m, int[] ks)

private static void
reduceWord(long[] buf, int off, int bit, long word, int m, int[] ks)

private static void
reduceWordWise(long[] buf, int off, int len, int toBit, int m, int[] ks)

private long[]
resizedInts(int newLen)

private static long
shiftUp(long[] x, int xOff, int count, int shift)

private static long
shiftUp(long[] x, int xOff, long[] z, int zOff, int count, int shift)

public LongArray
square(int m, int[] ks)

private static void
squareInPlace(long[] x, int xLen, int m, int[] ks)

private static boolean
testBit(long[] buf, int off, int n)

public boolean
public BigInteger
public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.
Inherited from java.lang.Object:
finalizegetClassnotifynotifyAllwaitwaitwait

Field Detail

bitLengthsback to summary
pack-priv static final byte[] bitLengths
INTERLEAVE2_TABLEback to summary
private static final short[] INTERLEAVE2_TABLE
INTERLEAVE3_TABLEback to summary
private static final int[] INTERLEAVE3_TABLE
INTERLEAVE4_TABLEback to summary
private static final int[] INTERLEAVE4_TABLE
INTERLEAVE5_TABLEback to summary
private static final int[] INTERLEAVE5_TABLE
INTERLEAVE7_TABLEback to summary
private static final long[] INTERLEAVE7_TABLE
m_intsback to summary
private long[] m_ints
ZEROESback to summary
private static final String ZEROES

Constructor Detail

LongArrayback to summary
public LongArray(int intLen)
LongArrayback to summary
public LongArray(long[] ints)
LongArrayback to summary
public LongArray(long[] ints, int off, int len)
LongArrayback to summary
public LongArray(BigInteger bigInt)

Method Detail

addback to summary
private static void add(long[] x, int xOff, long[] y, int yOff, int count)
addback to summary
private static void add(long[] x, int xOff, long[] y, int yOff, long[] z, int zOff, int count)
addBothback to summary
private static void addBoth(long[] x, int xOff, long[] y1, int y1Off, long[] y2, int y2Off, int count)
addOneback to summary
public LongArray addOne()
addShiftedByBitsSafeback to summary
private void addShiftedByBitsSafe(LongArray other, int otherDegree, int bits)
addShiftedByWordsback to summary
public void addShiftedByWords(LongArray other, int words)
addShiftedDownback to summary
private static long addShiftedDown(long[] x, int xOff, long[] y, int yOff, int count, int shift)
addShiftedUpback to summary
private static long addShiftedUp(long[] x, int xOff, long[] y, int yOff, int count, int shift)
bitLengthback to summary
private static int bitLength(long w)
cloneback to summary
public Object clone()

Overrides java.lang.Object.clone.

Doc from java.lang.Object.clone.

Creates and returns a copy of this object. The precise meaning of "copy" may depend on the class of the object. The general intent is that, for any object x, the expression:

x.clone() != x
will be true, and that the expression:
x.clone().getClass() == x.getClass()
will be true, but these are not absolute requirements. While it is typically the case that:
x.clone().equals(x)
will be true, this is not an absolute requirement.

By convention, the returned object should be obtained by calling super.clone. If a class and all of its superclasses (except Object) obey this convention, it will be the case that x.clone().getClass() == x.getClass().

By convention, the object returned by this method should be independent of this object (which is being cloned). To achieve this independence, it may be necessary to modify one or more fields of the object returned by super.clone before returning it. Typically, this means copying any mutable objects that comprise the internal "deep structure" of the object being cloned and replacing the references to these objects with references to the copies. If a class contains only primitive fields or references to immutable objects, then it is usually the case that no fields in the object returned by super.clone need to be modified.

Returns:Object

a clone of this instance.

copyToback to summary
pack-priv void copyTo(long[] z, int zOff)
degreeback to summary
public int degree()
degreeFromback to summary
private int degreeFrom(int limit)
distributeback to summary
private static void distribute(long[] x, int src, int dst1, int dst2, int count)
equalsback to summary
public boolean equals(Object o)

Overrides java.lang.Object.equals.

Doc from java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
o:Object

the reference object with which to compare.

Returns:boolean

true if this object is the same as the obj argument; false otherwise.

flipBitback to summary
private static void flipBit(long[] buf, int off, int n)
flipVectorback to summary
private static void flipVector(long[] x, int xOff, long[] y, int yOff, int yLen, int bits)
flipWordback to summary
private static void flipWord(long[] buf, int off, int bit, long word)
getLengthback to summary
public int getLength()
getUsedLengthback to summary
public int getUsedLength()
getUsedLengthFromback to summary
public int getUsedLengthFrom(int from)
hashCodeback to summary
public int hashCode()

Overrides java.lang.Object.hashCode.

Doc from java.lang.Object.hashCode.

Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by java.util.HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
Returns:int

a hash code value for this object.

interleaveback to summary
private static void interleave(long[] x, int xOff, long[] z, int zOff, int count, int width)
interleave2_32to64back to summary
private static long interleave2_32to64(int x)
interleave2_nback to summary
private static void interleave2_n(long[] x, int xOff, long[] z, int zOff, int count, int rounds)
interleave2_nback to summary
private static long interleave2_n(long x, int rounds)
interleave3back to summary
private static void interleave3(long[] x, int xOff, long[] z, int zOff, int count)
interleave3back to summary
private static long interleave3(long x)
interleave3_13to65back to summary
private static long interleave3_13to65(int x)
interleave3_21to63back to summary
private static long interleave3_21to63(int x)
interleave4_16to64back to summary
private static long interleave4_16to64(int x)
interleave5back to summary
private static void interleave5(long[] x, int xOff, long[] z, int zOff, int count)
interleave5back to summary
private static long interleave5(long x)
interleave7back to summary
private static void interleave7(long[] x, int xOff, long[] z, int zOff, int count)
interleave7back to summary
private static long interleave7(long x)
isOneback to summary
public boolean isOne()
isZeroback to summary
public boolean isZero()
modInverseback to summary
public LongArray modInverse(int m, int[] ks)
modMultiplyback to summary
public LongArray modMultiply(LongArray other, int m, int[] ks)
modMultiplyAltback to summary
public LongArray modMultiplyAlt(LongArray other, int m, int[] ks)
modMultiplyLDback to summary
public LongArray modMultiplyLD(LongArray other, int m, int[] ks)
modReduceback to summary
public LongArray modReduce(int m, int[] ks)
modSquareback to summary
public LongArray modSquare(int m, int[] ks)
modSquareNback to summary
public LongArray modSquareN(int n, int m, int[] ks)
multiplyback to summary
public LongArray multiply(LongArray other, int m, int[] ks)
multiplyWordback to summary
private static void multiplyWord(long a, long[] b, int bLen, long[] c, int cOff)
reduceback to summary
public void reduce(int m, int[] ks)
reduceBitback to summary
private static void reduceBit(long[] buf, int off, int bit, int m, int[] ks)
reduceBitWiseback to summary
private static void reduceBitWise(long[] buf, int off, int bitlength, int m, int[] ks)
reduceInPlaceback to summary
private static int reduceInPlace(long[] buf, int off, int len, int m, int[] ks)
reduceResultback to summary
private static LongArray reduceResult(long[] buf, int off, int len, int m, int[] ks)
reduceVectorWiseback to summary
private static void reduceVectorWise(long[] buf, int off, int len, int words, int m, int[] ks)
reduceWordback to summary
private static void reduceWord(long[] buf, int off, int bit, long word, int m, int[] ks)
reduceWordWiseback to summary
private static void reduceWordWise(long[] buf, int off, int len, int toBit, int m, int[] ks)
resizedIntsback to summary
private long[] resizedInts(int newLen)
shiftUpback to summary
private static long shiftUp(long[] x, int xOff, int count, int shift)
shiftUpback to summary
private static long shiftUp(long[] x, int xOff, long[] z, int zOff, int count, int shift)
squareback to summary
public LongArray square(int m, int[] ks)
squareInPlaceback to summary
private static void squareInPlace(long[] x, int xLen, int m, int[] ks)
testBitback to summary
private static boolean testBit(long[] buf, int off, int n)
testBitZeroback to summary
public boolean testBitZero()
toBigIntegerback to summary
public BigInteger toBigInteger()
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object.

Returns:String

a string representation of the object.