import { Curve25519 } from "https://deno.land/x/bwt@v0.6.0/deps.ts";
Curve25519 class.
Methods
private
A(o: Int32Array,
a: Int32Array,
b: Int32Array,
private
add(p: Array<Int32Array>, q: Array<Int32Array>): voidprivate
car25519(o: Int32Array): voidprivate
crypto_scalarmult(q: Uint8Array,
s: Uint8Array,
p: Uint8Array,
private
cswap(p: Array<Int32Array>,
q: Array<Int32Array>,
b: number,
private
gf(init?: Array<number>): Int32Arrayprivate
inv25519(o: Int32Array, i: Int32Array): voidprivate
M(o: Int32Array,
a: Int32Array,
b: Int32Array,
private
neq25519(a: Int32Array, b: Int32Array): booleanprivate
pack25519(o: Uint8Array, n: Int32Array): voidprivate
par25519(a: Int32Array): numberprivate
pow2523(o: Int32Array, i: Int32Array): voidprivate
S(o: Int32Array, a: Int32Array): voidprivate
sel25519(p: Int32Array,
q: Int32Array,
b: number,
private
set25519(r: Int32Array, a: Int32Array): voidprivate
unpack25519(o: Int32Array, n: Uint8Array): voidprivate
unpackNeg(r: Array<Int32Array>, p: Uint8Array): numberprivate
Z(o: Int32Array,
a: Int32Array,
b: Int32Array,
generateKeys(seed: Uint8Array): null | { secretKey: Uint8Array; publicKey: Uint8Array; }
Generates a curve 25519 keypair.
seed is a 32 byte cryptographic secure random array. This is basically the secret key Returns an object containing a secret and public key as 32 byte typed arrays
scalarMult(secretKey: Uint8Array, publicKey: Uint8Array): Uint8Array
Generates the common key as the produkt of secretKey1 * publicKey2.
secretKey must be a 32 byte secret key of pair 1 publicKey must be a 32 byte public key of pair 2 Returns secretKey * publicKey
selftest(): boolean