/x25519

X25519 adapter for WebAssembly and JS implementations

Primary LanguageTypeScript

X25519

X25519 adapter for WebAssembly and JS implementations

npm i @hazae41/x25519

Node Package 📦

Features

Current features

  • 100% TypeScript and ESM
  • No external dependencies

Usage

Native (WebCrypto)

https://github.com/tQsW/webcrypto-curve25519/blob/master/explainer.md

import { X25519 } from "@hazae41/x25519"

X25519.set(await X25519.fromNative())

WebAssembly

npm i @hazae41/x25519.wasm
import { X25519 } from "@hazae41/x25519"
import { X25519Wasm } from "@hazae41/x25519.wasm"

await X25519Wasm.initBundled()

X25519.set(await X25519.fromNativeOrWasm(X25519Wasm))

Noble (JavaScript)

npm i @noble/curves
import { X25519 } from "@hazae41/x25519"
import * as Ed25519Noble from "@noble/curves/ed25519"

X25519.set(await X25519.fromNativeOrNoble(Ed25519Noble))