Skip to main content
Version: 5.14.1

Namespace: weierstrass

ec.weierstrass

Interfaces

Type Aliases

AffinePoint

Ƭ AffinePoint<T>: { x: T ; y: T } & { z?: never ; t?: never }

Type parameters

Name
T

Defined in

node_modules/@noble/curves/abstract/curve.d.ts:3


BasicWCurve

Ƭ BasicWCurve<T>: BasicCurve<T> & { a: T ; b: T ; allowedPrivateKeyLengths?: readonly number[] ; wrapPrivateKey?: boolean ; endo?: EndomorphismOpts ; isTorsionFree?: (c: ProjConstructor<T>, point: ProjPointType<T>) => boolean ; clearCofactor?: (c: ProjConstructor<T>, point: ProjPointType<T>) => ProjPointType<T> }

Type parameters

Name
T

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:17


SignOpts

Ƭ SignOpts: Object

Type declaration

NameType
lowS?boolean
extraEntropy?Entropy
prehash?boolean

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:27


VerOpts

Ƭ VerOpts: Object

Type declaration

NameType
lowS?boolean
prehash?boolean

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:32


CurvePointsType

Ƭ CurvePointsType<T>: BasicWCurve<T> & { fromBytes?: (bytes: Uint8Array) => AffinePoint<T> ; toBytes?: (c: ProjConstructor<T>, point: ProjPointType<T>, isCompressed: boolean) => Uint8Array }

Type parameters

Name
T

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:82


CurvePointsRes

Ƭ CurvePointsRes<T>: Object

Type parameters

Name
T

Type declaration

NameType
ProjectivePointProjConstructor<T>
normPrivateKeyToScalar(key: PrivKey) => bigint
weierstrassEquation(x: T) => T
isWithinCurveOrder(num: bigint) => boolean

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:86


SignatureConstructor

Ƭ SignatureConstructor: Object

Call signature

new SignatureConstructor(r, s): SignatureType

Parameters
NameType
rbigint
sbigint
Returns

SignatureType

Type declaration

NameType
fromCompact(hex: Hex) => SignatureType
fromDER(hex: Hex) => SignatureType

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:154


PubKey

Ƭ PubKey: Hex | ProjPointType<bigint>

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:163


CurveType

Ƭ CurveType: BasicWCurve<bigint> & { hash: CHash ; hmac: HmacFnSync ; randomBytes: (bytesLength?: number) => Uint8Array ; lowS?: boolean ; bits2int?: (bytes: Uint8Array) => bigint ; bits2int_modN?: (bytes: Uint8Array) => bigint }

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:164


CurveFn

Ƭ CurveFn: Object

Type declaration

NameType
CURVEReturnType<typeof validateOpts>
getPublicKey(privateKey: PrivKey, isCompressed?: boolean) => Uint8Array
getSharedSecret(privateA: PrivKey, publicB: Hex, isCompressed?: boolean) => Uint8Array
sign(msgHash: Hex, privKey: PrivKey, opts?: SignOpts) => SignatureType
verify(signature: Hex | SignatureLike, msgHash: Hex, publicKey: Hex, opts?: VerOpts) => boolean
ProjectivePointProjConstructor<bigint>
SignatureSignatureConstructor
utils{ normPrivateKeyToScalar: (key: PrivKey) => bigint ; randomPrivateKey: () => Uint8Array ; precompute: (windowSize?: number, point?: ProjPointType<bigint>) => ProjPointType<bigint> ; isValidPrivateKey: (privateKey: PrivKey) => boolean }
utils.normPrivateKeyToScalar(key: PrivKey) => bigint
utils.randomPrivateKey() => Uint8Array
utils.precompute(windowSize?: number, point?: ProjPointType<bigint>) => ProjPointType<bigint>
utils.isValidPrivateKey[object Object]

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:197

Variables

DER

Const DER: Object

Type declaration

NameType
Err(m?: string) => { name: string ; message: string ; stack?: string }
_parseInt(data: Uint8Array) => { d: bigint ; l: Uint8Array }
toSig(hex: string | Uint8Array) => { r: bigint ; s: bigint }
hexFromSig(sig: { r: bigint ; s: bigint }) => string

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:92

Functions

weierstrassPoints

weierstrassPoints<T>(opts): Object

Type parameters

Name
T

Parameters

NameType
optsCurvePointsType<T>

Returns

Object

NameType
CURVEReadonly<{ nBitLength: number ; nByteLength: number ; Fp: mod.IField<T> ; n: bigint ; h: bigint ; hEff?: bigint ; Gx: T ; Gy: T ; allowInfinityPoint?: boolean ; a: T ; b: T ; allowedPrivateKeyLengths?: readonly number[] ; wrapPrivateKey?: boolean ; endo?: EndomorphismOpts ; isTorsionFree?: (c: ProjConstructor<T>, point: ProjPointType<T>) => boolean ; clearCofactor?: (c: ProjConstructor<T>, point: ProjPointType<T>) => ProjPointType<T> ; fromBytes?: (bytes: Uint8Array) => AffinePoint<T> ; toBytes?: (c: ProjConstructor<T>, point: ProjPointType<T>, isCompressed: boolean) => Uint8Array ; p: bigint }>
ProjectivePointProjConstructor<T>
normPrivateKeyToScalar(key: PrivKey) => bigint
weierstrassEquation(x: T) => T
isWithinCurveOrder(num: bigint) => boolean

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:113


weierstrass

weierstrass(curveDef): CurveFn

Parameters

NameType
curveDefCurveType

Returns

CurveFn

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:212


SWUFpSqrtRatio

SWUFpSqrtRatio<T>(Fp, Z): (u: T, v: T) => { isValid: boolean ; value: T }

Type parameters

Name
T

Parameters

NameType
FpIField<T>
ZT

Returns

fn

▸ (u, v): Object

Parameters
NameType
uT
vT
Returns

Object

NameType
isValidboolean
valueT

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:213


mapToCurveSimpleSWU

mapToCurveSimpleSWU<T>(Fp, opts): (u: T) => { x: T ; y: T }

Type parameters

Name
T

Parameters

NameType
FpIField<T>
optsObject
opts.AT
opts.BT
opts.ZT

Returns

fn

▸ (u): Object

Parameters
NameType
uT
Returns

Object

NameType
xT
yT

Defined in

node_modules/@noble/curves/abstract/weierstrass.d.ts:217