Function mulPublic [src]

Multiply an Edwards25519 point by a PUBLIC scalar IN VARIABLE TIME This can be used for signature verification.

Prototype

pub fn mulPublic(p: Edwards25519, s: [32]u8) (IdentityElementError || WeakPublicKeyError)!Edwards25519

Parameters

p: Edwards25519s: [32]u8

Source

pub fn mulPublic(p: Edwards25519, s: [32]u8) (IdentityElementError || WeakPublicKeyError)!Edwards25519 { if (p.is_base) { return pcMul16(&basePointPc, s, true); } else { const pc = precompute(p, 8); pc[4].rejectIdentity() catch return error.WeakPublicKey; return pcMul(&pc, s, true); } }