Skip to content

Ed25519 adapter for WebAssembly and JS implementations

Notifications You must be signed in to change notification settings

hazae41/ed25519

Repository files navigation

Ed25519

Ed25519 adapter for WebAssembly and JS implementations

npm i @hazae41/ed25519

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 { Ed25519 } from "@hazae41/ed25519"

Ed25519.set(Ed25519.fromNative())

WebAssembly

npm i @hazae41/ed25519.wasm
import { Ed25519 } from "@hazae41/ed25519"
import { Ed25519Wasm } from "@hazae41/ed25519.wasm"

await Ed25519Wasm.initBundled()

Ed25519.set(await Ed25519.fromNativeOrWasm(Ed25519Wasm))

Noble Curves (JavaScript)

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

Ed25519.set(await Ed25519.fromNativeOrNoble(Ed25519Noble))

Noble Ed25519 (JavaScript)

npm i @noble/ed25519
import { Ed25519 } from "@hazae41/ed25519"
import * as ed25519 from "@noble/ed25519"

Ed25519.set(await Ed25519.fromNativeOrNoble({ ed25519 }))