Skip to content

A WebAssembly (via AssemblyScript) set of cryptographic primitives for building authentication and key exchange protocols.

License

Notifications You must be signed in to change notification settings

jedisct1/wasm-crypto

Repository files navigation

npm version GitHub Actions CI

wasm-crypto

A WebAssembly (via AssemblyScript) set of cryptographic primitives for building authentication and key exchange protocols.

Currently provides:

  • RFC 8032/libsodium-compatible detached EdDSA signatures
  • Ed25519 deterministic and non-deterministic signatures with cofactored verification.
  • Deterministic and non-deterministic signatures over the Ristretto group.
  • Hashing (simple + multi-parts)
  • Authentication (HMAC-SHA-512, HMAC-SHA-256)
  • Point validation, point addition, scalar multiplication with and without clamping over Edwards25519 using the standard Ed25519 point encoding.
  • Fast encoded element validation, hash-to-group, 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.
  • Constant-time comparison and encoding.

Example use case.

About

A WebAssembly (via AssemblyScript) set of cryptographic primitives for building authentication and key exchange protocols.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published