// //------------------ DOK FILE -------------------------------------------------- +Header core.crypto.ec =pkg core.crypto.ec =title core.crypto.ec =short =desc Documentation in progress... // // //------------------ PROTO ----------------------------------------------------- ecVerify +Proto ecVerify =type fun EcKey [BigNum BigNum] a1 (fun a1 -> Str) -> Bool =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EcKey =desc // +arg B =type [BigNum BigNum] =desc // +arg C =type a1 =desc // +arg D =type fun a1 -> Str =desc // +arg result =type Bool =desc // // //------------------ PROTO ----------------------------------------------------- ecSign +Proto ecSign =type fun EcKey a1 (fun a1 -> Str) -> [BigNum BigNum] =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EcKey =desc // +arg B =type a1 =desc // +arg C =type fun a1 -> Str =desc // +arg result =type [BigNum BigNum] =desc // // //------------------ PROTO ----------------------------------------------------- ecEcdhStr +Proto ecEcdhStr =type fun EcKey Str -> Str =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EcKey =desc // +arg B =type Str =desc // +arg result =type Str =desc // // //------------------ PROTO ----------------------------------------------------- ecEcdh +Proto ecEcdh =type fun EcKey [BigNum BigNum] -> [BigNum BigNum] =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EcKey =desc // +arg B =type [BigNum BigNum] =desc // +arg result =type [BigNum BigNum] =desc // // //------------------ PROTO ----------------------------------------------------- ecIsPrivate +Proto ecIsPrivate =type fun EcKey -> Bool =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EcKey =desc // +arg result =type Bool =desc // // //------------------ PROTO ----------------------------------------------------- ecKeyPubStr +Proto ecKeyPubStr =type fun EcKey -> Str =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EcKey =desc // +arg result =type Str =desc // // //------------------ PROTO ----------------------------------------------------- ecKeyPub +Proto ecKeyPub =type fun EcKey -> [BigNum BigNum] =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EcKey =desc // +arg result =type [BigNum BigNum] =desc // // //------------------ PROTO ----------------------------------------------------- ecKeyFromPrivate +Proto ecKeyFromPrivate =type fun EllipticCurve BigNum -> EcKey =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EllipticCurve =desc // +arg B =type BigNum =desc // +arg result =type EcKey =desc // // //------------------ PROTO ----------------------------------------------------- ecKeyFromPublic +Proto ecKeyFromPublic =type fun EllipticCurve Str -> EcKey =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EllipticCurve =desc // +arg B =type Str =desc // +arg result =type EcKey =desc // // //------------------ PROTO ----------------------------------------------------- ecKeyDump +Proto ecKeyDump =type fun EcKey -> EcKey =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EcKey =desc // +arg result =type EcKey =desc // // //------------------ PROTO ----------------------------------------------------- ecPointFromStr +Proto ecPointFromStr =type fun Str -> [BigNum BigNum] =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type Str =desc // +arg result =type [BigNum BigNum] =desc // // //------------------ PROTO ----------------------------------------------------- ecStrFromPoint +Proto ecStrFromPoint =type fun EllipticCurve [BigNum BigNum] -> Str =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EllipticCurve =desc // +arg B =type [BigNum BigNum] =desc // +arg result =type Str =desc // // //------------------ PROTO ----------------------------------------------------- ecDump +Proto ecDump =type fun Str [BigNum BigNum] -> [BigNum BigNum] =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type Str =desc // +arg B =type [BigNum BigNum] =desc // +arg result =type [BigNum BigNum] =desc // // //------------------ PROTO ----------------------------------------------------- ecRandom +Proto ecRandom =type fun EllipticCurve -> BigNum =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EllipticCurve =desc // +arg result =type BigNum =desc // // //------------------ PROTO ----------------------------------------------------- ecName +Proto ecName =type fun EllipticCurve -> Str =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EllipticCurve =desc // +arg result =type Str =desc // // //------------------ PROTO ----------------------------------------------------- ecTest +Proto ecTest =type fun EllipticCurve [BigNum BigNum] -> Bool =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EllipticCurve =desc // +arg B =type [BigNum BigNum] =desc // +arg result =type Bool =desc // // //------------------ PROTO ----------------------------------------------------- ecAdd +Proto ecAdd =type fun EllipticCurve [BigNum BigNum] [BigNum BigNum] -> [BigNum BigNum] =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EllipticCurve =desc // +arg B =type [BigNum BigNum] =desc // +arg C =type [BigNum BigNum] =desc // +arg result =type [BigNum BigNum] =desc // // //------------------ PROTO ----------------------------------------------------- ecMul +Proto ecMul =type fun EllipticCurve BigNum [BigNum BigNum] -> [BigNum BigNum] =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg A =type EllipticCurve =desc // +arg B =type BigNum =desc // +arg C =type [BigNum BigNum] =desc // +arg result =type [BigNum BigNum] =desc // // //------------------ PROTO ----------------------------------------------------- ecCurve25519 +Proto ecCurve25519 =type fun -> EllipticCurve =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg result =type EllipticCurve =desc // // //------------------ PROTO ----------------------------------------------------- ecSecp521r1 +Proto ecSecp521r1 =type fun -> EllipticCurve =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg result =type EllipticCurve =desc // // //------------------ PROTO ----------------------------------------------------- ecSecp384r1 +Proto ecSecp384r1 =type fun -> EllipticCurve =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg result =type EllipticCurve =desc // // //------------------ PROTO ----------------------------------------------------- ecSecp256r1 +Proto ecSecp256r1 =type fun -> EllipticCurve =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg result =type EllipticCurve =desc // // //------------------ PROTO ----------------------------------------------------- ecSecp256k1 +Proto ecSecp256k1 =type fun -> EllipticCurve =mode Function =pkg core.crypto.ec =impl native =link =desc // +arg result =type EllipticCurve =desc // // //------------------ PROTO ----------------------------------------------------- EcKey +Proto EcKey =type EcKey =mode structure =pkg core.crypto.ec =impl native =link =desc // // //------------------ PROTO ----------------------------------------------------- EllipticCurve +Proto EllipticCurve =type EllipticCurve =mode structure =pkg core.crypto.ec =impl native =link =desc // // //------------------ PROTO ----------------------------------------------------- ecCreate +Proto ecCreate =type fun EllipticCurve -> EcKey =mode function =pkg core.crypto.ec =impl mcy =link =desc // +arg A =type EllipticCurve =desc // +arg result =type EcKey =desc // // //------------------ PROTO ----------------------------------------------------- ecKeyCurveName +Proto ecKeyCurveName =type fun EcKey -> Str =mode function =pkg core.crypto.ec =impl mcy =link =desc // +arg A =type EcKey =desc // +arg result =type Str =desc // // //------------------ PROTO ----------------------------------------------------- ecPrivate +Proto ecPrivate =type fun EcKey -> BigNum =mode function =pkg core.crypto.ec =impl mcy =link =desc // +arg A =type EcKey =desc // +arg result =type BigNum =desc