FP24

Kind: global class
this: {FP24}

new FP24()

Creates an instance of FP24.

fP24.reduce()

Reduces all components of possibly unreduced FP24 mod Modulus

Kind: instance method of FP24
this: {FP24}

fP24.norm()

Normalises the components of an FP24

Kind: instance method of FP24
this: {FP24}

fP24.iszilch()

Tests for FP24 equal to zero

Kind: instance method of FP24
this: {FP24}

fP24.isunity()

Tests for FP24 equal to unity

Kind: instance method of FP24
this: {FP24}

fP24.cmove(g, d)

Conditional copy of FP24 number

Kind: instance method of FP24
this: {FP24}

ParamDescription
gFP24 instance
dcopy depends on this value

fP24.select()

Constant time select from pre-computed table

Kind: instance method of FP24
this: {FP24}

fP24.geta()

extract a from this

Kind: instance method of FP24
this: {FP24}

fP24.getb()

extract b from this

Kind: instance method of FP24
this: {FP24}

fP24.getc()

extract c from this

Kind: instance method of FP24
this: {FP24}

fP24.equals(x)

Tests for equality of two FP24s

Kind: instance method of FP24
this: {FP24}

ParamDescription
xFP24 instance to compare

fP24.copy(x)

Copy FP24 to another FP24

Kind: instance method of FP24
this: {FP24}

ParamDescription
xFP24 instance to be copied

fP24.one(x)

Set FP24 to unity

Kind: instance method of FP24
this: {FP24}

ParamDescription
xFP24 instance to be set to one

fP24.zero()

Set FP24 to zero

Kind: instance method of FP24
this: {FP24}

fP24.conj()

Conjugation of FP24

Kind: instance method of FP24
this: {FP24}

fP24.set(d, e, f)

Set FP24 from three FP8 values

Kind: instance method of FP24
this: {FP24}

ParamDescription
dFP8 instance
eFP8 instance
fFP8 instance

fP24.seta(c)

Set FP24 from one FP8 value

Kind: instance method of FP24
this: {FP24}

ParamDescription
cFP8 instance

fP24.usqr()

Fast Squaring of an FP24 in “unitary” form

Kind: instance method of FP24
this: {FP24}

fP24.sqr()

Fast Squaring of an FP24

Kind: instance method of FP24
this: {FP24}

fP24.mul(y)

Full unconditional Multiplication of two FP24s

Kind: instance method of FP24
this: {FP24}

ParamDescription
yFP24 instance, the multiplier

fP24.smul(y)

Fast multiplication of two sparse FP24s that arises from ATE pairing line functions

Kind: instance method of FP24
this: {FP24}

ParamDescription
yFP24 instance, the multiplier

fP24.ssmul(y)

Fast multiplication of what may be sparse multiplicands

Kind: instance method of FP24
this: {FP24}

ParamDescription
yFP24 instance, the multiplier

fP24.inverse()

Inverting an FP24

Kind: instance method of FP24
this: {FP24}

fP24.frob(f)

Raises an FP24 to the power of the internal modulus p, using the Frobenius

Kind: instance method of FP24
this: {FP24}

ParamDescription
fModulus

fP24.trace()

Calculate the trace of an FP24

Kind: instance method of FP24
this: {FP24}

fP24.toString()

convert this to hex string

Kind: instance method of FP24
this: {FP24}

fP24.toBytes(w)

convert this to byte array

Kind: instance method of FP24
this: {FP24}

ParamDescription
wByte array

fP24.pow(e)

Raises an FP24 to the power of a BIG

Kind: instance method of FP24
this: {FP24}

ParamDescription
eBIG instance exponent

fP24.pinpow(e, bts)

Raises an FP24 instance x to a small integer power, side-channel resistant

Kind: instance method of FP24
this: {FP24}

ParamDescription
esmall integer exponent
btsmaximum number of bits in exponent

fP24.compow(e, r)

Raises an FP24 instance to a BIG power, compressed to FP4

Kind: instance method of FP24
this: {FP24}

ParamDescription
eBIG exponent
rBIG group order

FP24.fromBytes(w)

convert from byte array to FP24

Kind: static method of FP24
this: {FP24}

ParamDescription
wByte array

FP24.teq()

return 1 if b==c, no branching

Kind: static method of FP24
this: {FP24}

FP24.pow8()

p=q0^u0.q1^u1.q2^u2.q3^u3...

Kind: static method of FP24
this: {FP24}