| Modifier and Type | Field and Description |
|---|---|
| private static final int | |
| private static final long | |
| private static final long | |
| private static final int | |
| public static final BigInteger | |
| private static final int | |
| public static final IntegerPolynomial25519 |
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| protected void | carry(long[]
[in|out] the limbs for carry operation. limbs, int [in] the starting position of carry. start, int [in] the ending position of carry. end)Overrides sun. Carry from a range of limb positions. |
| protected void | carry(long[]
[in|out] the limbs for carry operation. limbs)Overrides sun. Carry operation for all limb positions. |
| private static BigInteger | |
| protected void | finalCarryReduceLast(long[]
[in|out] the limbs to fully carry and reduce. limbs)Implements abstract sun. Carry from high order limb and reduce to the lower order limb. |
| protected void | mult(long[]
[in] the limb operand to multiply. a, long[] [in] the limb operand to multiply. b, long[] [out] the product of the limbs operands that is fully reduced. r)Implements abstract sun. Multiply two limbs using a high/low digit technique that allows for larger limb sizes. |
| protected void | multByInt(long[]
[in|out] the limbs to multiply a carry operation. 'a' is
assumed to be reduced. a, long [in] the scalar value to be muliplied with the limbs. b)Overrides sun. Multiply limbs by scalar value. |
| protected void | reduce(long[]
[in|out] the limbs to carry and reduce. limbs)Implements abstract sun. Carry in all positions and reduce high order limb. |
| protected void | reduceIn(long[]
[in|out] the limbs to reduce in. limbs, long [in] the digit to reduce to the lower limb. v, int [in] the limbs to reduce from. i)Implements abstract sun. Reduces digit 'v' at limb position 'i' to a lower limb. |
| protected void | square(long[]
[in] the limb operand to square. a, long[] [out] the resulting square of the limb which is fully reduced. r)Implements abstract sun. Takes a single limb and squares it using a high/low digit technique that allows for larger limb sizes. |
| BITS_PER_LIMB | back to summary |
|---|---|
| private static final int BITS_PER_LIMB | |
| CARRY_ADD | back to summary |
|---|---|
| private static final long CARRY_ADD | |
| LIMB_MASK | back to summary |
|---|---|
| private static final long LIMB_MASK | |
| MAX_ADDS | back to summary |
|---|---|
| private static final int MAX_ADDS | |
| MODULUS | back to summary |
|---|---|
| public static final BigInteger MODULUS | |
| NUM_LIMBS | back to summary |
|---|---|
| private static final int NUM_LIMBS | |
| ONE | back to summary |
|---|---|
| public static final IntegerPolynomial25519 ONE | |
| IntegerPolynomial25519 | back to summary |
|---|---|
| private IntegerPolynomial25519() | |
| carry | back to summary |
|---|---|
| protected void carry(long[] limbs, int start, int end) Overrides sun. Carry from a range of limb positions. Override for performance (unnesting).
| |
| carry | back to summary |
|---|---|
| protected void carry(long[] limbs) Overrides sun. Carry operation for all limb positions. Override for performance (unroll and unnesting).
| |
| evaluateModulus | back to summary |
|---|---|
| private static BigInteger evaluateModulus() | |
| finalCarryReduceLast | back to summary |
|---|---|
| protected void finalCarryReduceLast(long[] limbs) Implements abstract sun. Carry from high order limb and reduce to the lower order limb. Assumed to be called two times to propagate the carries.
| |
| mult | back to summary |
|---|---|
| protected void mult(long[] a, long[] b, long[] r) Implements abstract sun. Multiply two limbs using a high/low digit technique that allows for larger limb sizes. It is assumed that both limbs have already been reduced.
| |
| multByInt | back to summary |
|---|---|
| protected void multByInt(long[] a, long b) Overrides sun. Multiply limbs by scalar value. Superclass assumes that limb primitive radix > (bits per limb * 2)
| |
| reduce | back to summary |
|---|---|
| protected void reduce(long[] limbs) Implements abstract sun. Carry in all positions and reduce high order limb.
| |
| reduceIn | back to summary |
|---|---|
| protected void reduceIn(long[] limbs, long v, int i) Implements abstract sun. Reduces digit 'v' at limb position 'i' to a lower limb.
| |
| square | back to summary |
|---|---|
| protected void square(long[] a, long[] r) Implements abstract sun. Takes a single limb and squares it using a high/low digit technique that allows for larger limb sizes. It is assumed that the limb input has already been reduced.
| |