SecP256R1Field (Bouncy Castle Library 1.85 API Specification)
Date: 2026-07-12

org.bouncycastle.math.ec.custom.sec

## Class SecP256R1Field

- java.lang.Object
- - org.bouncycastle.math.ec.custom.sec.SecP256R1Field

-     public class SecP256R1Field
      extends java.lang.Object

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SecP256R1Field()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static void` | `add(int[] x, int[] y, int[] z)`
    `static void` | `addExt(int[] xx, int[] yy, int[] zz)`
    `static void` | `addOne(int[] x, int[] z)`
    `static int[]` | `fromBigInteger(java.math.BigInteger x)`
    `static void` | `half(int[] x, int[] z)`
    `static void` | `inv(int[] x, int[] z)`
    `static int` | `isZero(int[] x)`
    `static void` | `multiply(int[] x, int[] y, int[] z)`
    `static void` | `multiply(int[] x, int[] y, int[] z, int[] tt)`
    `static void` | `multiplyAddToExt(int[] x, int[] y, int[] zz)`
    `static void` | `negate(int[] x, int[] z)`
    `static void` | `random(java.security.SecureRandom r, int[] z)`
    `static void` | `randomMult(java.security.SecureRandom r, int[] z)`
    `static void` | `reduce(int[] xx, int[] z)`
    `static void` | `reduce32(int x, int[] z)`
    `static void` | `square(int[] x, int[] z)`
    `static void` | `square(int[] x, int[] z, int[] tt)`
    `static void` | `squareN(int[] x, int n, int[] z)`
    `static void` | `squareN(int[] x, int n, int[] z, int[] tt)`
    `static void` | `subtract(int[] x, int[] y, int[] z)`
    `static void` | `subtractExt(int[] xx, int[] yy, int[] zz)`
    `static void` | `twice(int[] x, int[] z)`

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

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

- - ### Constructor Detail

    - #### SecP256R1Field

          public SecP256R1Field()

  - ### Method Detail

    - #### add

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

    - #### addExt

          public static void addExt(int[] xx,
                                    int[] yy,
                                    int[] zz)

    - #### addOne

          public static void addOne(int[] x,
                                    int[] z)

    - #### fromBigInteger

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

    - #### half

          public static void half(int[] x,
                                  int[] z)

    - #### inv

          public static void inv(int[] x,
                                 int[] z)

    - #### isZero

          public static int isZero(int[] x)

    - #### multiply

          public static void multiply(int[] x,
                                      int[] y,
                                      int[] z)

    - #### multiply

          public static void multiply(int[] x,
                                      int[] y,
                                      int[] z,
                                      int[] tt)

    - #### multiplyAddToExt

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

    - #### negate

          public static void negate(int[] x,
                                    int[] z)

    - #### random

          public static void random(java.security.SecureRandom r,
                                    int[] z)

    - #### randomMult

          public static void randomMult(java.security.SecureRandom r,
                                        int[] z)

    - #### reduce

          public static void reduce(int[] xx,
                                    int[] z)

    - #### reduce32

          public static void reduce32(int x,
                                      int[] z)

    - #### square

          public static void square(int[] x,
                                    int[] z)

    - #### square

          public static void square(int[] x,
                                    int[] z,
                                    int[] tt)

    - #### squareN

          public static void squareN(int[] x,
                                     int n,
                                     int[] z)

    - #### squareN

          public static void squareN(int[] x,
                                     int n,
                                     int[] z,
                                     int[] tt)

    - #### subtract

          public static void subtract(int[] x,
                                      int[] y,
                                      int[] z)

    - #### subtractExt

          public static void subtractExt(int[] xx,
                                         int[] yy,
                                         int[] zz)

    - #### twice

          public static void twice(int[] x,
                                   int[] z)