cryptix.math
Class BigNum
java.lang.Object
|
+--cryptix.math.BigNum
- All Implemented Interfaces:
- java.lang.Cloneable
- Direct Known Subclasses:
- BigInteger
- public class BigNum
- extends java.lang.Object
- implements java.lang.Cloneable
This class is public, but the constructor is protected.
It is intended that this class be used as a base for the BigInteger
wrapper class, and not used directly.
It is an implementation class, and should really be called
BigIntegerImpl :-(
Copyright © 1995-1997
Systemics Ltd on behalf of the
Cryptix Development Team.
All rights reserved.
$Revision: 1.5 $
- Since:
- Cryptix 2.2
- Author:
- unattributed
Field Summary |
(package private) static int |
BITS
|
(package private) static int |
LBITS
|
(package private) static int |
LMASK
|
(package private) static int |
LRADIX
|
(package private) static int |
MASK
|
(package private) static int |
RADIX
|
Constructor Summary |
protected |
BigNum()
|
Method Summary |
(package private) static void |
()
|
static void |
add_unsigned(BigNum r,
BigNum a,
BigNum b)
|
static void |
add_unsigned(BigNum r,
int a)
|
static void |
add(BigNum r,
BigNum a,
BigNum b)
|
static void |
add(BigNum r,
int a)
|
static void |
assign(BigNum r,
int val)
|
int |
bignum_hashCode()
|
static boolean |
bit(BigNum n,
int i)
|
static int |
bitLength(BigNum n)
|
int |
byteLength()
|
void |
check_state()
|
java.lang.Object |
clone()
|
static int |
cmp(BigNum a,
BigNum b)
Returns 0 if a == b, -1 if a < b, or 1 if a > b. |
protected static void |
copy(BigNum dst,
BigNum src)
|
void |
copy(java.lang.Object src)
|
static void |
dec(BigNum a)
|
static void |
display(java.io.PrintStream out,
BigNum x)
|
static void |
display(java.io.PrintWriter out,
BigNum x)
|
static void |
div(BigNum dv,
BigNum m,
BigNum d)
|
static void |
div(BigNum dv,
BigNum rem,
BigNum m,
BigNum d)
|
static void |
euclid(BigNum r,
BigNum x,
BigNum y)
|
static boolean |
even(BigNum a)
|
static void |
extended_euclid(BigNum u1,
BigNum u2,
BigNum u3,
BigNum a,
BigNum b)
|
protected void |
finalize()
|
protected void |
fromBinary(byte[] buffer)
|
static void |
gcd(BigNum r,
BigNum a,
BigNum b)
|
static void |
grow(BigNum a,
int i)
|
static void |
inc(BigNum a)
|
int |
intoBinary(byte[] buffer)
|
static void |
inverseModN(BigNum r,
BigNum a,
BigNum n)
|
static boolean |
isOne(BigNum a)
|
static boolean |
isZero(BigNum a)
|
static void |
main(java.lang.String[] args)
|
static void |
mod(BigNum r,
BigNum m,
BigNum d)
r must not be the same object as m. |
static void |
modExp(BigNum r,
BigNum a,
BigNum power,
BigNum modulo)
|
static void |
modMul(BigNum r,
BigNum a,
BigNum b,
BigNum modulo)
|
static void |
modMulRecip(BigNum r,
BigNum x,
BigNum y,
BigNum m,
BigNum i,
short nb)
|
static void |
mul(BigNum r,
BigNum a,
BigNum b)
r must not be the same object as a or b. |
static boolean |
odd(BigNum a)
|
static void |
one(BigNum a)
|
static int |
recip(BigNum r,
BigNum m)
|
static void |
self_test(java.io.PrintWriter out)
|
static void |
shiftLeft(BigNum r,
BigNum a,
int n)
|
static void |
shiftLeft(BigNum r,
BigNum a,
short n)
|
static void |
shiftLeftOnce(BigNum r,
BigNum a)
|
static void |
shiftRight(BigNum r,
BigNum a,
int n)
|
static void |
shiftRight(BigNum r,
BigNum a,
short n)
|
static void |
shiftRightOnce(BigNum r,
BigNum a)
|
static void |
sub_unsigned(BigNum r,
BigNum a,
BigNum b)
|
static void |
sub_unsigned(BigNum r,
int a)
|
static void |
sub(BigNum r,
BigNum a,
BigNum b)
|
static void |
sub(BigNum r,
int a)
|
static int |
ucmp(BigNum a,
BigNum b)
|
static void |
zero(BigNum a)
|
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
BITS
static final int BITS
RADIX
static final int RADIX
MASK
static final int MASK
LBITS
static final int LBITS
LRADIX
static final int LRADIX
LMASK
static final int LMASK
BigNum
protected BigNum()
static void ()
byteLength
public int byteLength()
check_state
public void check_state()
bitLength
public static int bitLength(BigNum n)
bit
public static boolean bit(BigNum n,
int i)
clone
public java.lang.Object clone()
- Overrides:
clone
in class java.lang.Object
copy
public void copy(java.lang.Object src)
copy
protected static void copy(BigNum dst,
BigNum src)
grow
public static void grow(BigNum a,
int i)
intoBinary
public int intoBinary(byte[] buffer)
fromBinary
protected void fromBinary(byte[] buffer)
assign
public static void assign(BigNum r,
int val)
zero
public static void zero(BigNum a)
one
public static void one(BigNum a)
isOne
public static boolean isOne(BigNum a)
even
public static boolean even(BigNum a)
odd
public static boolean odd(BigNum a)
isZero
public static boolean isZero(BigNum a)
inc
public static void inc(BigNum a)
dec
public static void dec(BigNum a)
add
public static void add(BigNum r,
int a)
sub
public static void sub(BigNum r,
int a)
add
public static void add(BigNum r,
BigNum a,
BigNum b)
add_unsigned
public static void add_unsigned(BigNum r,
int a)
add_unsigned
public static void add_unsigned(BigNum r,
BigNum a,
BigNum b)
sub
public static void sub(BigNum r,
BigNum a,
BigNum b)
sub_unsigned
public static void sub_unsigned(BigNum r,
int a)
sub_unsigned
public static void sub_unsigned(BigNum r,
BigNum a,
BigNum b)
cmp
public static int cmp(BigNum a,
BigNum b)
- Returns 0 if a == b, -1 if a < b, or 1 if a > b.
ucmp
public static int ucmp(BigNum a,
BigNum b)
shiftLeft
public static void shiftLeft(BigNum r,
BigNum a,
int n)
shiftLeft
public static void shiftLeft(BigNum r,
BigNum a,
short n)
shiftLeftOnce
public static void shiftLeftOnce(BigNum r,
BigNum a)
shiftRight
public static void shiftRight(BigNum r,
BigNum a,
int n)
shiftRight
public static void shiftRight(BigNum r,
BigNum a,
short n)
shiftRightOnce
public static void shiftRightOnce(BigNum r,
BigNum a)
mul
public static void mul(BigNum r,
BigNum a,
BigNum b)
- r must not be the same object as a or b.
mod
public static void mod(BigNum r,
BigNum m,
BigNum d)
- r must not be the same object as m.
div
public static void div(BigNum dv,
BigNum m,
BigNum d)
div
public static void div(BigNum dv,
BigNum rem,
BigNum m,
BigNum d)
modExp
public static void modExp(BigNum r,
BigNum a,
BigNum power,
BigNum modulo)
modMul
public static void modMul(BigNum r,
BigNum a,
BigNum b,
BigNum modulo)
recip
public static int recip(BigNum r,
BigNum m)
euclid
public static void euclid(BigNum r,
BigNum x,
BigNum y)
gcd
public static void gcd(BigNum r,
BigNum a,
BigNum b)
modMulRecip
public static void modMulRecip(BigNum r,
BigNum x,
BigNum y,
BigNum m,
BigNum i,
short nb)
extended_euclid
public static void extended_euclid(BigNum u1,
BigNum u2,
BigNum u3,
BigNum a,
BigNum b)
inverseModN
public static void inverseModN(BigNum r,
BigNum a,
BigNum n)
finalize
protected void finalize()
- Overrides:
finalize
in class java.lang.Object
display
public static void display(java.io.PrintStream out,
BigNum x)
display
public static void display(java.io.PrintWriter out,
BigNum x)
bignum_hashCode
public int bignum_hashCode()
main
public static void main(java.lang.String[] args)
self_test
public static void self_test(java.io.PrintWriter out)
throws java.lang.Exception