Table of Contents

Class F2mCurve

Namespace
Org.BouncyCastle.Math.EC
Assembly
BouncyCastle.Cryptography.dll
public class F2mCurve : AbstractF2mCurve
Inheritance
F2mCurve
Inherited Members

Constructors

F2mCurve(int, int, BigInteger, BigInteger)

[Obsolete("Use constructor taking order/cofactor")]
public F2mCurve(int m, int k, BigInteger a, BigInteger b)

Parameters

m int
k int
a BigInteger
b BigInteger

F2mCurve(int, int, BigInteger, BigInteger, BigInteger, BigInteger)

public F2mCurve(int m, int k, BigInteger a, BigInteger b, BigInteger order, BigInteger cofactor)

Parameters

m int
k int
a BigInteger
b BigInteger
order BigInteger
cofactor BigInteger

F2mCurve(int, int, int, int, BigInteger, BigInteger)

[Obsolete("Use constructor taking order/cofactor")]
public F2mCurve(int m, int k1, int k2, int k3, BigInteger a, BigInteger b)

Parameters

m int
k1 int
k2 int
k3 int
a BigInteger
b BigInteger

F2mCurve(int, int, int, int, BigInteger, BigInteger, BigInteger, BigInteger)

public F2mCurve(int m, int k1, int k2, int k3, BigInteger a, BigInteger b, BigInteger order, BigInteger cofactor)

Parameters

m int
k1 int
k2 int
k3 int
a BigInteger
b BigInteger
order BigInteger
cofactor BigInteger

Fields

m_infinity

protected readonly F2mPoint m_infinity

Field Value

F2mPoint

Properties

FieldSize

public override int FieldSize { get; }

Property Value

int

Infinity

public override ECPoint Infinity { get; }

Property Value

ECPoint

K1

public int K1 { get; }

Property Value

int

K2

public int K2 { get; }

Property Value

int

K3

public int K3 { get; }

Property Value

int

M

public int M { get; }

Property Value

int

Methods

CloneCurve()

protected override ECCurve CloneCurve()

Returns

ECCurve

CreateCacheSafeLookupTable(ECPoint[], int, int)

Create a cache-safe lookup table for the specified sequence of points. All the points MUST belong to this

ECCurve
instance, and MUST already be normalized.
public override ECLookupTable CreateCacheSafeLookupTable(ECPoint[] points, int off, int len)

Parameters

points ECPoint[]
off int
len int

Returns

ECLookupTable

CreateDefaultMultiplier()

protected override ECMultiplier CreateDefaultMultiplier()

Returns

ECMultiplier

CreateRawPoint(ECFieldElement, ECFieldElement)

protected override ECPoint CreateRawPoint(ECFieldElement x, ECFieldElement y)

Parameters

x ECFieldElement
y ECFieldElement

Returns

ECPoint

CreateRawPoint(ECFieldElement, ECFieldElement, ECFieldElement[])

protected override ECPoint CreateRawPoint(ECFieldElement x, ECFieldElement y, ECFieldElement[] zs)

Parameters

x ECFieldElement
y ECFieldElement
zs ECFieldElement[]

Returns

ECPoint

FromBigInteger(BigInteger)

public override ECFieldElement FromBigInteger(BigInteger x)

Parameters

x BigInteger

Returns

ECFieldElement

IsTrinomial()

public bool IsTrinomial()

Returns

bool

SupportsCoordinateSystem(int)

public override bool SupportsCoordinateSystem(int coord)

Parameters

coord int

Returns

bool