Nat (Bouncy Castle Library 1.52 API Specification)
Date: 2015-03-01

org.bouncycastle.math.raw

## Class Nat

- java.lang.Object
- - org.bouncycastle.math.raw.Nat

-     public abstract class Nat
      extends java.lang.Object

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Nat()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static int` | `add(int len, int[] x, int[] y, int[] z)`
    `static int` | `add33At(int len, int x, int[] z, int zPos)`
    `static int` | `add33At(int len, int x, int[] z, int zOff, int zPos)`
    `static int` | `add33To(int len, int x, int[] z)`
    `static int` | `add33To(int len, int x, int[] z, int zOff)`
    `static int` | `addBothTo(int len, int[] x, int[] y, int[] z)`
    `static int` | `addBothTo(int len, int[] x, int xOff, int[] y, int yOff, int[] z, int zOff)`
    `static int` | `addDWordAt(int len, long x, int[] z, int zPos)`
    `static int` | `addDWordAt(int len, long x, int[] z, int zOff, int zPos)`
    `static int` | `addDWordTo(int len, long x, int[] z)`
    `static int` | `addDWordTo(int len, long x, int[] z, int zOff)`
    `static int` | `addTo(int len, int[] x, int[] z)`
    `static int` | `addTo(int len, int[] x, int xOff, int[] z, int zOff)`
    `static int` | `addWordAt(int len, int x, int[] z, int zPos)`
    `static int` | `addWordAt(int len, int x, int[] z, int zOff, int zPos)`
    `static int` | `addWordTo(int len, int x, int[] z)`
    `static int` | `addWordTo(int len, int x, int[] z, int zOff)`
    `static int[]` | `copy(int len, int[] x)`
    `static void` | `copy(int len, int[] x, int[] z)`
    `static int[]` | `create(int len)`
    `static int` | `dec(int len, int[] z)`
    `static int` | `dec(int len, int[] x, int[] z)`
    `static int` | `decAt(int len, int[] z, int zPos)`
    `static int` | `decAt(int len, int[] z, int zOff, int zPos)`
    `static boolean` | `eq(int len, int[] x, int[] y)`
    `static int[]` | `fromBigInteger(int bits, java.math.BigInteger x)`
    `static int` | `getBit(int[] x, int bit)`
    `static boolean` | `gte(int len, int[] x, int[] y)`
    `static int` | `inc(int len, int[] z)`
    `static int` | `inc(int len, int[] x, int[] z)`
    `static int` | `incAt(int len, int[] z, int zPos)`
    `static int` | `incAt(int len, int[] z, int zOff, int zPos)`
    `static boolean` | `isOne(int len, int[] x)`
    `static boolean` | `isZero(int len, int[] x)`
    `static void` | `mul(int len, int[] x, int[] y, int[] zz)`
    `static void` | `mul(int len, int[] x, int xOff, int[] y, int yOff, int[] zz, int zzOff)`
    `static int` | `mul31BothAdd(int len, int a, int[] x, int b, int[] y, int[] z, int zOff)`
    `static int` | `mulAddTo(int len, int[] x, int[] y, int[] zz)`
    `static int` | `mulAddTo(int len, int[] x, int xOff, int[] y, int yOff, int[] zz, int zzOff)`
    `static int` | `mulWord(int len, int x, int[] y, int[] z)`
    `static int` | `mulWord(int len, int x, int[] y, int yOff, int[] z, int zOff)`
    `static int` | `mulWordAddTo(int len, int x, int[] y, int yOff, int[] z, int zOff)`
    `static int` | `mulWordDwordAddAt(int len, int x, long y, int[] z, int zPos)`
    `static int` | `shiftDownBit(int len, int[] z, int c)`
    `static int` | `shiftDownBit(int len, int[] z, int zOff, int c)`
    `static int` | `shiftDownBit(int len, int[] x, int c, int[] z)`
    `static int` | `shiftDownBit(int len, int[] x, int xOff, int c, int[] z, int zOff)`
    `static int` | `shiftDownBits(int len, int[] z, int bits, int c)`
    `static int` | `shiftDownBits(int len, int[] z, int zOff, int bits, int c)`
    `static int` | `shiftDownBits(int len, int[] x, int bits, int c, int[] z)`
    `static int` | `shiftDownBits(int len, int[] x, int xOff, int bits, int c, int[] z, int zOff)`
    `static int` | `shiftDownWord(int len, int[] z, int c)`
    `static int` | `shiftUpBit(int len, int[] z, int c)`
    `static int` | `shiftUpBit(int len, int[] z, int zOff, int c)`
    `static int` | `shiftUpBit(int len, int[] x, int c, int[] z)`
    `static int` | `shiftUpBit(int len, int[] x, int xOff, int c, int[] z, int zOff)`
    `static int` | `shiftUpBits(int len, int[] z, int bits, int c)`
    `static int` | `shiftUpBits(int len, int[] z, int zOff, int bits, int c)`
    `static int` | `shiftUpBits(int len, int[] x, int bits, int c, int[] z)`
    `static int` | `shiftUpBits(int len, int[] x, int xOff, int bits, int c, int[] z, int zOff)`
    `static void` | `square(int len, int[] x, int[] zz)`
    `static void` | `square(int len, int[] x, int xOff, int[] zz, int zzOff)`
    `static int` | `squareWordAdd(int[] x, int xPos, int[] z)`
    `static int` | `squareWordAdd(int[] x, int xOff, int xPos, int[] z, int zOff)`
    `static int` | `sub(int len, int[] x, int[] y, int[] z)`
    `static int` | `sub(int len, int[] x, int xOff, int[] y, int yOff, int[] z, int zOff)`
    `static int` | `sub33At(int len, int x, int[] z, int zPos)`
    `static int` | `sub33At(int len, int x, int[] z, int zOff, int zPos)`
    `static int` | `sub33From(int len, int x, int[] z)`
    `static int` | `sub33From(int len, int x, int[] z, int zOff)`
    `static int` | `subBothFrom(int len, int[] x, int[] y, int[] z)`
    `static int` | `subBothFrom(int len, int[] x, int xOff, int[] y, int yOff, int[] z, int zOff)`
    `static int` | `subDWordAt(int len, long x, int[] z, int zPos)`
    `static int` | `subDWordAt(int len, long x, int[] z, int zOff, int zPos)`
    `static int` | `subDWordFrom(int len, long x, int[] z)`
    `static int` | `subDWordFrom(int len, long x, int[] z, int zOff)`
    `static int` | `subFrom(int len, int[] x, int[] z)`
    `static int` | `subFrom(int len, int[] x, int xOff, int[] z, int zOff)`
    `static int` | `subWordAt(int len, int x, int[] z, int zPos)`
    `static int` | `subWordAt(int len, int x, int[] z, int zOff, int zPos)`
    `static int` | `subWordFrom(int len, int x, int[] z)`
    `static int` | `subWordFrom(int len, int x, int[] z, int zOff)`
    `static java.math.BigInteger` | `toBigInteger(int len, int[] x)`
    `static void` | `zero(int len, int[] z)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Nat

          public Nat()

  - ### Method Detail

    - #### add

          public static int add(int len,
                int[] x,
                int[] y,
                int[] z)

    - #### add33At

          public static int add33At(int len,
                    int x,
                    int[] z,
                    int zPos)

    - #### add33At

          public static int add33At(int len,
                    int x,
                    int[] z,
                    int zOff,
                    int zPos)

    - #### add33To

          public static int add33To(int len,
                    int x,
                    int[] z)

    - #### add33To

          public static int add33To(int len,
                    int x,
                    int[] z,
                    int zOff)

    - #### addBothTo

          public static int addBothTo(int len,
                      int[] x,
                      int[] y,
                      int[] z)

    - #### addBothTo

          public static int addBothTo(int len,
                      int[] x,
                      int xOff,
                      int[] y,
                      int yOff,
                      int[] z,
                      int zOff)

    - #### addDWordAt

          public static int addDWordAt(int len,
                       long x,
                       int[] z,
                       int zPos)

    - #### addDWordAt

          public static int addDWordAt(int len,
                       long x,
                       int[] z,
                       int zOff,
                       int zPos)

    - #### addDWordTo

          public static int addDWordTo(int len,
                       long x,
                       int[] z)

    - #### addDWordTo

          public static int addDWordTo(int len,
                       long x,
                       int[] z,
                       int zOff)

    - #### addTo

          public static int addTo(int len,
                  int[] x,
                  int[] z)

    - #### addTo

          public static int addTo(int len,
                  int[] x,
                  int xOff,
                  int[] z,
                  int zOff)

    - #### addWordAt

          public static int addWordAt(int len,
                      int x,
                      int[] z,
                      int zPos)

    - #### addWordAt

          public static int addWordAt(int len,
                      int x,
                      int[] z,
                      int zOff,
                      int zPos)

    - #### addWordTo

          public static int addWordTo(int len,
                      int x,
                      int[] z)

    - #### addWordTo

          public static int addWordTo(int len,
                      int x,
                      int[] z,
                      int zOff)

    - #### copy

          public static int[] copy(int len,
                   int[] x)

    - #### copy

          public static void copy(int len,
                  int[] x,
                  int[] z)

    - #### create

          public static int[] create(int len)

    - #### dec

          public static int dec(int len,
                int[] z)

    - #### dec

          public static int dec(int len,
                int[] x,
                int[] z)

    - #### decAt

          public static int decAt(int len,
                  int[] z,
                  int zPos)

    - #### decAt

          public static int decAt(int len,
                  int[] z,
                  int zOff,
                  int zPos)

    - #### eq

          public static boolean eq(int len,
                   int[] x,
                   int[] y)

    - #### fromBigInteger

          public static int[] fromBigInteger(int bits,
                             java.math.BigInteger x)

    - #### getBit

          public static int getBit(int[] x,
                   int bit)

    - #### gte

          public static boolean gte(int len,
                    int[] x,
                    int[] y)

    - #### inc

          public static int inc(int len,
                int[] z)

    - #### inc

          public static int inc(int len,
                int[] x,
                int[] z)

    - #### incAt

          public static int incAt(int len,
                  int[] z,
                  int zPos)

    - #### incAt

          public static int incAt(int len,
                  int[] z,
                  int zOff,
                  int zPos)

    - #### isOne

          public static boolean isOne(int len,
                      int[] x)

    - #### isZero

          public static boolean isZero(int len,
                       int[] x)

    - #### mul

          public static void mul(int len,
                 int[] x,
                 int[] y,
                 int[] zz)

    - #### mul

          public static void mul(int len,
                 int[] x,
                 int xOff,
                 int[] y,
                 int yOff,
                 int[] zz,
                 int zzOff)

    - #### mulAddTo

          public static int mulAddTo(int len,
                     int[] x,
                     int[] y,
                     int[] zz)

    - #### mulAddTo

          public static int mulAddTo(int len,
                     int[] x,
                     int xOff,
                     int[] y,
                     int yOff,
                     int[] zz,
                     int zzOff)

    - #### mul31BothAdd

          public static int mul31BothAdd(int len,
                         int a,
                         int[] x,
                         int b,
                         int[] y,
                         int[] z,
                         int zOff)

    - #### mulWord

          public static int mulWord(int len,
                    int x,
                    int[] y,
                    int[] z)

    - #### mulWord

          public static int mulWord(int len,
                    int x,
                    int[] y,
                    int yOff,
                    int[] z,
                    int zOff)

    - #### mulWordAddTo

          public static int mulWordAddTo(int len,
                         int x,
                         int[] y,
                         int yOff,
                         int[] z,
                         int zOff)

    - #### mulWordDwordAddAt

          public static int mulWordDwordAddAt(int len,
                              int x,
                              long y,
                              int[] z,
                              int zPos)

    - #### shiftDownBit

          public static int shiftDownBit(int len,
                         int[] z,
                         int c)

    - #### shiftDownBit

          public static int shiftDownBit(int len,
                         int[] z,
                         int zOff,
                         int c)

    - #### shiftDownBit

          public static int shiftDownBit(int len,
                         int[] x,
                         int c,
                         int[] z)

    - #### shiftDownBit

          public static int shiftDownBit(int len,
                         int[] x,
                         int xOff,
                         int c,
                         int[] z,
                         int zOff)

    - #### shiftDownBits

          public static int shiftDownBits(int len,
                          int[] z,
                          int bits,
                          int c)

    - #### shiftDownBits

          public static int shiftDownBits(int len,
                          int[] z,
                          int zOff,
                          int bits,
                          int c)

    - #### shiftDownBits

          public static int shiftDownBits(int len,
                          int[] x,
                          int bits,
                          int c,
                          int[] z)

    - #### shiftDownBits

          public static int shiftDownBits(int len,
                          int[] x,
                          int xOff,
                          int bits,
                          int c,
                          int[] z,
                          int zOff)

    - #### shiftDownWord

          public static int shiftDownWord(int len,
                          int[] z,
                          int c)

    - #### shiftUpBit

          public static int shiftUpBit(int len,
                       int[] z,
                       int c)

    - #### shiftUpBit

          public static int shiftUpBit(int len,
                       int[] z,
                       int zOff,
                       int c)

    - #### shiftUpBit

          public static int shiftUpBit(int len,
                       int[] x,
                       int c,
                       int[] z)

    - #### shiftUpBit

          public static int shiftUpBit(int len,
                       int[] x,
                       int xOff,
                       int c,
                       int[] z,
                       int zOff)

    - #### shiftUpBits

          public static int shiftUpBits(int len,
                        int[] z,
                        int bits,
                        int c)

    - #### shiftUpBits

          public static int shiftUpBits(int len,
                        int[] z,
                        int zOff,
                        int bits,
                        int c)

    - #### shiftUpBits

          public static int shiftUpBits(int len,
                        int[] x,
                        int bits,
                        int c,
                        int[] z)

    - #### shiftUpBits

          public static int shiftUpBits(int len,
                        int[] x,
                        int xOff,
                        int bits,
                        int c,
                        int[] z,
                        int zOff)

    - #### square

          public static void square(int len,
                    int[] x,
                    int[] zz)

    - #### square

          public static void square(int len,
                    int[] x,
                    int xOff,
                    int[] zz,
                    int zzOff)

    - #### squareWordAdd

          public static int squareWordAdd(int[] x,
                          int xPos,
                          int[] z)

    - #### squareWordAdd

          public static int squareWordAdd(int[] x,
                          int xOff,
                          int xPos,
                          int[] z,
                          int zOff)

    - #### sub

          public static int sub(int len,
                int[] x,
                int[] y,
                int[] z)

    - #### sub

          public static int sub(int len,
                int[] x,
                int xOff,
                int[] y,
                int yOff,
                int[] z,
                int zOff)

    - #### sub33At

          public static int sub33At(int len,
                    int x,
                    int[] z,
                    int zPos)

    - #### sub33At

          public static int sub33At(int len,
                    int x,
                    int[] z,
                    int zOff,
                    int zPos)

    - #### sub33From

          public static int sub33From(int len,
                      int x,
                      int[] z)

    - #### sub33From

          public static int sub33From(int len,
                      int x,
                      int[] z,
                      int zOff)

    - #### subBothFrom

          public static int subBothFrom(int len,
                        int[] x,
                        int[] y,
                        int[] z)

    - #### subBothFrom

          public static int subBothFrom(int len,
                        int[] x,
                        int xOff,
                        int[] y,
                        int yOff,
                        int[] z,
                        int zOff)

    - #### subDWordAt

          public static int subDWordAt(int len,
                       long x,
                       int[] z,
                       int zPos)

    - #### subDWordAt

          public static int subDWordAt(int len,
                       long x,
                       int[] z,
                       int zOff,
                       int zPos)

    - #### subDWordFrom

          public static int subDWordFrom(int len,
                         long x,
                         int[] z)

    - #### subDWordFrom

          public static int subDWordFrom(int len,
                         long x,
                         int[] z,
                         int zOff)

    - #### subFrom

          public static int subFrom(int len,
                    int[] x,
                    int[] z)

    - #### subFrom

          public static int subFrom(int len,
                    int[] x,
                    int xOff,
                    int[] z,
                    int zOff)

    - #### subWordAt

          public static int subWordAt(int len,
                      int x,
                      int[] z,
                      int zPos)

    - #### subWordAt

          public static int subWordAt(int len,
                      int x,
                      int[] z,
                      int zOff,
                      int zPos)

    - #### subWordFrom

          public static int subWordFrom(int len,
                        int x,
                        int[] z)

    - #### subWordFrom

          public static int subWordFrom(int len,
                        int x,
                        int[] z,
                        int zOff)

    - #### toBigInteger

          public static java.math.BigInteger toBigInteger(int len,
                                          int[] x)

    - #### zero

          public static void zero(int len,
                  int[] z)