Files
2026-05-27 23:29:53 +01:00

9 lines
506 B
TypeScript

import { compactSign, compactVerify, jwkToCryptoKey } from "@suaveplan/jws";
const secret = new TextEncoder().encode("super-secret-test-key-32bytes!");
const tok = await compactSign(JSON.stringify({sub:"u1", iss:"i", aud:"a"}), secret, "HS256");
console.log("token", tok);
const jwk = { kty: "oct", k: Buffer.from(secret).toString("base64url") };
const key = jwkToCryptoKey(jwk, "HS256").key;
const res = await compactVerify(tok, key, { algorithms: ["HS256"] });
console.log("payload", res.payloadString);