A WebAssembly (via AssemblyScript) set of cryptographic primitives for building authentication and key exchange protocols.
- RFC 8032/libsodium-compatible detached EdDSA signatures
- Ed25519 signatures and non-deterministic signatures using Trevor Perrin's generalized EdDSA scheme
- Deterministic and non-deterministic Schnorr signatures over the Ristretto group.
- Hashing (simple + multi-parts)
- Authentication (HMAC-SHA-512)
- Point validation, point addition, scalar multiplication with and without clamping over Edwards25519 using the standard Ed25519 point encoding.
- Fast point validation, hash-to-point, point addition, scalar multiplication over the Ristretto prime-order group.
- Scalar reduction, scalar multiplication, scalar inversion mod the order of the prime-order groups for multiparty computation and oblivious pseudorandom functions.
This is fairly easy (see the Terrarium access control example for an example), so if you think you can help, please do!