🚧 This is very experimental. Not for production use.
npm i @transmute/xmss --save
Based on danielhavir/go-xmss
import { generate, sign, verify } from "@transmute/xmss";
const message = Buffer.from("hello");
const signature = "AAAAACf...qRWhlbGxv";
const jwk = await generate();
// const jwk = {
// kty: 'PQK',
// alg: 'xmss.SHA2_10_256',
// x: 'xZppyqOqWrydjvrxgOdpg-ORa8Y1IIsni32luKKn-fNP8oe1hznHgVU9UE5_KE1F9s4qDbbsqHGMxJfmW4Ca_g',
// d: 'AA..._nz',
// };
const signature = await sign(message, jwk);
const verified = await verify(message, signature, jwk);
- W3C Decentralized Identifiers
- W3C Verifiable Credentials
- JSON Web Token (JWT)
- JSON Web Key (JWK)
- Bitcoin Improvement Protocol 39
- Bitcoin Improvement Protocol 44