9 lines
506 B
TypeScript
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);
|